/* 
------------------------------------------
	Flipbox written by CrappoMan
	simonpatterson@dsl.pipex.com
------------------------------------------
*/
function flipBox(who) {
	var tmp; 
	if (document.images['b_' + who].src.indexOf('_on') == -1) { 
		tmp = document.images['b_' + who].src.replace('_off', '_on');
		document.getElementById('box_' + who).style.display = 'none';
		document.images['b_' + who].src = tmp;
	} else { 
		tmp = document.images['b_' + who].src.replace('_on', '_off');
		document.getElementById('box_' + who).style.display = 'block';
		document.images['b_' + who].src = tmp;
	} 
}

function addText(elname, wrap1, wrap2) {
	if (document.selection) { // for IE 
		var str = document.selection.createRange().text;
		document.forms['inputform'].elements[elname].focus();
		var sel = document.selection.createRange();
		sel.text = wrap1 + str + wrap2;
		return;
	} else if ((typeof document.forms['inputform'].elements[elname].selectionStart) != 'undefined') { // for Mozilla
		var txtarea = document.forms['inputform'].elements[elname];
		var selLength = txtarea.textLength;
		var selStart = txtarea.selectionStart;
		var selEnd = txtarea.selectionEnd;
		var oldScrollTop = txtarea.scrollTop;
		//if (selEnd == 1 || selEnd == 2)
		//selEnd = selLength;
		var s1 = (txtarea.value).substring(0,selStart);
		var s2 = (txtarea.value).substring(selStart, selEnd)
		var s3 = (txtarea.value).substring(selEnd, selLength);
		txtarea.value = s1 + wrap1 + s2 + wrap2 + s3;
		txtarea.selectionStart = s1.length;
		txtarea.selectionEnd = s1.length + s2.length + wrap1.length + wrap2.length;
		txtarea.scrollTop = oldScrollTop;
		txtarea.focus();
		return;
	} else {
		insertText(elname, wrap1 + wrap2);
	}
}

function insertText(elname, what) {
	if (document.forms['inputform'].elements[elname].createTextRange) {
		document.forms['inputform'].elements[elname].focus();
		document.selection.createRange().duplicate().text = what;
	} else if ((typeof document.forms['inputform'].elements[elname].selectionStart) != 'undefined') { // for Mozilla
		var tarea = document.forms['inputform'].elements[elname];
		var selEnd = tarea.selectionEnd;
		var txtLen = tarea.value.length;
		var txtbefore = tarea.value.substring(0,selEnd);
		var txtafter =  tarea.value.substring(selEnd, txtLen);
		var oldScrollTop = tarea.scrollTop;
		tarea.value = txtbefore + what + txtafter;
		tarea.selectionStart = txtbefore.length + what.length;
		tarea.selectionEnd = txtbefore.length + what.length;
		tarea.scrollTop = oldScrollTop;
		tarea.focus();
	} else {
		document.forms['inputform'].elements[elname].value += what;
		document.forms['inputform'].elements[elname].focus();
	}
}

function show_hide(msg_id) {
	msg_id.style.display = msg_id.style.display == 'none' ? 'block' : 'none';
}

function translate(tex)
{
var lat=new Array("jo","zh","i'","ch","sh","xh","je","ju","ja","a","b","v","g","d","e","z","i","k","l","m","n","o","p","r","s","t","u","f","x","c","'","y","`","j","h"); 
var cyr=new Array("¸","æ","é","÷","ø","ù","ý","þ","ÿ","à","á","â","ã","ä","å","ç","è","ê","ë","ì","í","î","ï","ð","ñ","ò","ó","ô","õ","ö","ü","û","ú","æ","õ"); 

var latcap=new Array("JO","Jo","ZH","Zh","I'","Ch","CH","Sh","SH","Xh","XH","Je","JE","Ju","JU","Ja","JA","A","B","V","G","D","E","Z","I","K","L","M","N","O","P","R","S","T","U","F","X","C","Y","J","H"); 
var cyrcap=new Array("¨","¨","Æ","Æ","É","×","×","Ø","Ø","Ù","Ù","Ý","Ý","Þ","Þ","ß","ß","À","Á","Â","Ã","Ä","Å","Ç","È","Ê","Ë","Ì","Í","Î","Ï","Ð","Ñ","Ò","Ó","Ô","Õ","Ö","Û","Æ","Õ");
var buf=tex;
var i;
for (i=0;i<latcap.length;i++)
 {
 buf=replace(buf,latcap[i],cyrcap[i],1,0);
 }

for (i=0;i<lat.length;i++)
 {
 buf=replace(buf,lat[i],cyr[i],1,0);
 }

tex=buf;
return tex;
}

function replace(target,oldTerm,newTerm,caseSens,wordOnly) {

 var work = target;
 var ind = 0;
 var next = 0;

 if (!caseSens) {
 oldTerm = oldTerm.toLowerCase();
 work = target.toLowerCase();
 }

 while ((ind = work.indexOf(oldTerm,next)) >= 0) {
 if (wordOnly) {
 var before = ind - 1;
 var after = ind + oldTerm.length;
 if (!(space(work.charAt(before)) && space(work.charAt(after)))) {
 next = ind + oldTerm.length;
 continue;
 }
 }
 target = target.substring(0,ind) + newTerm +
 target.substring(ind+oldTerm.length,target.length);
 work = work.substring(0,ind) + newTerm +
 work.substring(ind+oldTerm.length,work.length);
 next = ind + newTerm.length;
 if (next >= work.length) { break; }
 }

 return target;

}

