var ns6=document.getElementById&&!document.all

function restrictinput(maxlength,e,placeholder){
if (window.event&&event.srcElement.value.length>=maxlength)
return false
else if (e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength){
var pressedkey=/[a-zA-Z0-9\.\,\/]/ 
if (pressedkey.test(String.fromCharCode(e.which)))
e.stopPropagation()
}
}

function countlimit(maxlength,e,placeholder){
var theform=eval(placeholder)
var lengthleft=maxlength-theform.value.length
var placeholderobj=document.all? document.all[placeholder] : document.getElementById(placeholder)
if (window.event||e.target&&e.target==eval(placeholder)){
if (lengthleft<0)
theform.value=theform.value.substring(0,maxlength)
placeholderobj.innerHTML=lengthleft
}
}

function displaylimit(theform,thelimit){
if (document.getElementById(theform) != null) {
var limit_text='<font size=1 face=Verdana><b><span id="'+theform.toString()+'">'+thelimit+'</span></b></font>'
if (document.all||ns6)
document.write(limit_text)
if (document.all){
eval(theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)}
eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)}
}
else if (ns6){
document.body.addEventListener('keypress', function(event) { restrictinput(thelimit,event,theform) }, true); 
document.body.addEventListener('keyup', function(event) { countlimit(thelimit,event,theform) }, true); 
}
}

}

function submit_once(theform){
  if (document.all || document.getElementById){
    for (i=0;i<theform.length;i++){
      var tempobj=theform.elements[i]
        if(tempobj.type.toLowerCase()=="submit"||tempobj.type.toLowerCase()=="reset")
          tempobj.disabled=true
    }
  }
}

function flipBox(who) {
 var box=document.getElementById('box_'+who);
 var sbox=document.getElementById('sbox_'+who);
 if (box.style.display=='none') {
  box.style.display='block';
  sbox.innerHTML='&#9650;'
 } else { 
  box.style.display='none';
  sbox.innerHTML='&#9660;'
 } 
}

function get_sel() {
  if (document.getSelection){
    selek = document.getSelection();
  }else {
    selek = document.selection.createRange().text;
  }
return selek;
}

function sr(str) {
  l = str.length;
  str2 = '';
  for (var i=1; i<=l; i++) {
    str2 += str.substring(l-i, l-i+1);
  }
  return str2;
}

function sr2(str) {
 str = replaceString("!","'",str);
 str = replaceString("%","+",str);
 str = replaceString("}","<",str);
 str = replaceString("{",">",str);
 return str;
}

function sr3(str) {
document.write(eval(sr2(sr(str))));
}


function write_quote(sel,textarea) {
var els = textarea.split('.');
var elname = els[1];
var formname = els[0];

 if (sel=='') {
  alert('Select text!');
 } else {
  sel = "<div style='border:1px solid gray; padding:5px'><i>"+sel+'</i></div> ';
  if (document.selection) {
   document.forms[formname].elements[elname].focus();
   document.forms[formname].document.selection.createRange().text = sel+document.forms[formname].document.selection.createRange().text;
  } else {
   document.forms[formname].elements[elname].value += sel;
  }
 }
}

function addText(tarea, wrap1, wrap2) {
var els = tarea.split('.');
var elname = els[1];
var formname = els[0];
	if (document.selection) { // for IE 
		var str = document.selection.createRange().text;
		document.forms[formname].elements[elname].focus();
		var sel = document.selection.createRange();
		sel.text = wrap1 + str + wrap2;
		return;
	} else if ((typeof document.forms[formname].elements[elname].selectionStart) != 'undefined') { // for Mozilla
		var txtarea = document.forms[formname].elements[elname];
		var selLength = txtarea.textLength;
		var selStart = txtarea.selectionStart;
		var selEnd = txtarea.selectionEnd;
		var oldScrollTop = txtarea.scrollTop;
		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(tarea, what) {
var els = tarea.split('.');
var elname = els[1];
var formname = els[0];
	if (document.forms[formname].elements[elname].createTextRange) {
		document.forms[formname].elements[elname].focus();
		document.selection.createRange().duplicate().text = what;
	} else if ((typeof document.forms[formname].elements[elname].selectionStart) != 'undefined') { // for Mozilla
		var tarea = document.forms[formname].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[formname].elements[elname].value += what;
		document.forms[formname].elements[elname].focus();
	}
}

function replaceString(oldS,newS,fullS) {
   for (var i=0; i<fullS.length; i++) {
      if (fullS.substring(i,i+oldS.length) == oldS) {
         fullS = fullS.substring(0,i)+newS+fullS.substring(i+oldS.length,fullS.length)
      }
   }
   return fullS
}

function window_resize(form,el,pix)
{
	var box = document.forms[form].elements[el];
	var cur_height = parseInt( box.style.height ) ? parseInt( box.style.height ) : 100;
	var new_height = cur_height + pix;
	
	if ( new_height > 0 )
	{
		box.style.height = new_height + "px";
	}
	return false;
}

