/* (C) Sherv.NET 2003-2009 */

function flip(){
	var result = flipStr(document.f.original.value.toLowerCase(), flipTable);
	var result2 = flipStr(document.f.original.value.toLowerCase(), flipTable2);
	document.f.flipped.value = result;
	document.f.flipped2.value = result2;
}

function flipStr(aString, tbl){
	var last = aString.length - 1;
	var result = new Array(aString.length);
	for (var i = last; i >= 0; --i){
		var c = aString.charAt(i);
		var r = tbl[c];
		result[last - i] = r != undefined ? r : c
	}
	return result.join('');
}

function initFlipTable(tbl){
for(i in tbl){tbl[tbl[i]] = i;}
}

var flipTable = {
a : '\u0250',
b : 'q',
c : '\u0254',
d : 'p',
e : '\u01DD',
f : '\u025F',
g : '\u0183',
h : '\u0265',
i : '\u0131',
j : '\u027E',
k : '\u029E',
l : 'l',
m : '\u026F',
n : 'u',
o : 'o',
p : 'd',
q : 'b',
r : '\u0279',
s : 's',
t : '\u0287',
u : 'n',
v : '\u028C',
w : '\u028D',
y : '\u028E',
z : 'z',
'.' : '\u02D9',
',' : "\'",
"\'" : ',',
"\"" : ',,',
"´" : ',',
"`" : ',',
';' : '\u061B',
'!' : '\u00A1',
'\u00A1' : '!',
'?' : '\u00BF',
'\u00BF' : '?',
'[' : ']',
']' : '[',
'(' : ')',
')' : '(',
'{' : '}',
'}' : '{',
'<' : '>',
'>' : '<',
'_' : '\u203E',
'\r' : '\n'
}


var flipTable2 = {
a : '\u0250',
b : 'q',
c : '\u0254',
d : 'p',
e : '\u01DD',
f : '\u025F',
g : '\u0183',
h : '\u0265',
i : '\u0131',
j : '\u027E',
k : '\u029E',
l : 'l',
m : '\u026F',
n : 'u',
o : 'o',
p : 'd',
q : 'b',
r : '\u0279',
s : 's',
t : '\u0287',
u : 'n',
v : '\u028C',
w : '\u028D',
y : '\u028E',
z : 'z',
1 : '\u21C2',
2 : '\u1105',
3 : '\u1110',
4 : '\u3123',
5 : '\u078E',  /* or u03DB */
6 : '9',
7 : '\u3125',
8 : '8',
9 : '6',
0 : '0',
'.' : '\u02D9',
',' : "\'",
"\'" : ',',
"\"" : ',,',
"´" : ',',
"`" : ',',
';' : '\u061B',
'!' : '\u00A1',
'\u00A1' : '!',
'?' : '\u00BF',
'\u00BF' : '?',
'[' : ']',
']' : '[',
'(' : ')',
')' : '(',
'{' : '}',
'}' : '{',
'<' : '>',
'>' : '<',
'_' : '\u203E',
'\r' : '\n'
};

function flip_init()
{
	var sDefText = 'Ketikan Tulisanmu di sini !';
	var oInput = document.getElementById('original');
	oInput.value = sDefText;
	oInput.onclick=function(){if(oInput.value==sDefText) oInput.value=''; }
	oInput.onblur=function(){if(oInput.value=='') oInput.value=sDefText; }

	initFlipTable(flipTable);
	initFlipTable(flipTable2);
}

