function stripHTML(oldString) {
  return oldString.replace(/<&#91;^>&#93;*>/g, "");
}

function setCookie(name, value, expires, path, domain, secure) {
    document.cookie= name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires.toGMTString() : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}
function getCookie(name) {
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    } else {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end == -1) {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}
function deleteCookie(name, path, domain) {
    if (getCookie(name)) {
        document.cookie = name + "=" +
            ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") +
            "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}

function leftTrim(sString){
	while (sString.substring(0,1) == ' '){
		sString = sString.substring(1, sString.length);
	}
	return sString;
}

function rightTrim(sString){
	while (sString.substring(sString.length-1, sString.length) == ' '){
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}
function trimAll(sString){
	return leftTrim(rightTrim(sString));
}
function formError(obj){
  Element.Class.add(obj, 'error');
  obj.focus();
  alert(obj.getAttribute("required"));
  return false;
}
function checkFormErrorRadios(obj){
  var form = obj.form;
  for( var i=0; i<form.elements.length; i++){
    if( (obj.name == form.elements[i].name) && (form.elements[i].checked) ) return true;
  }
  return formError(obj);
}

function autoCheck_onSubmit(form){
  var checkedradios = [];
  var found = false;
  for(var k=0; k<form.elements.length; k++){
    if(Element.Class.has(form.elements[k], 'required') ){
      if( ((form.elements[k].type.toLowerCase()=='text') || (form.elements[k].type.toLowerCase()=='textarea')) && (form.elements[k].value.length<1) ){
        return formError(form.elements[k]);
      }else
        if((form.elements[k].type.toLowerCase()=='checkbox') && (!form.elements[k].checked) ){
          if( form.elements[k].name.indexOf('[]')>-1 ){
            return checkFormErrorRadios(form.elements[k]);
          }else return formError(form.elements[k]);
        }else
          if((form.elements[k].type.toLowerCase()=='radio') && (1) ){
            found = false;
            if(checkedradios.length)
              for(t in checkedradios){
                if(checkedradios[t] == form.elements[k].name) found = true;
              }
            if(!found){
              checkedradios.push(form.elements[k].name);
              return checkFormErrorRadios(form.elements[k]);
            }
          }else
            if( ((form.elements[k].type.toLowerCase()=='select-one') || (form.elements[k].type.toLowerCase()=='select-multiple')) ){
              if(form.elements[k].selectedIndex == -1)
                return formError(form.elements[k]);
            }
    }
  }
  return true;
}

function autoCheckForms(){
  for(var i=0; i< document.forms.length; i++){
    for(var k=0; k<document.forms[i].elements.length; k++){
      if(Element.Class.has(document.forms[i][k], 'required')){
        if(typeof document.forms[i].onsubmit != 'function')
          document.forms[i].onsubmit = function(){return autoCheck_onSubmit(this)}
      }
    }
  }
}

Event.observe(window, 'load', autoCheckForms, false);

function putRemove(obj){
  obj = $(obj);
  if( (obj.style.display=="")){
      obj.style.display="none";
  }else{
      obj.style.display="";
  }
}
function show(obj){
  $(obj).style.display="";
}
function hide(obj){
  $(obj).style.display="none";
}
function addClass(obj, cls){
  Element.Class.add(obj, cls);
}
function removeClass(obj, cls){
  Element.Class.remove(obj, cls);
}
function toggleClass(obj, cls){
  Element.Class.toggle(obj, cls);
}
function changeClass(obj, cls1, cls2){
  Element.Class.remove(obj, cls1);
  Element.Class.add(obj, cls2);
}

function timer(obj, interval, url){
  obj = $(obj);
  if(parseInt(obj.innerHTML-1)>=0){
    setTimeout("timer('"+obj.id+"',"+interval+",'"+url+"')", interval*1000);
    obj.innerHTML = parseInt(obj.innerHTML-interval);
  }else{
    if(url.length){
      location.href = url;
    }
  }
}

function openWindow(document,name,width,height) {
   window.open(document,name,'width='+width+',height='+height+',scrollbars=yes,resizable=yes,toolbar=no,directories=no,location=no,menubar=no,status=no,left=100,top=100');
}

function formCheckBox(form, flag){
	form = $(form);
	if(!flag) flag=false;
		else flag=true;
	for(i=0; i<form.elements.length;i++){
		if('checkbox' == form[i].type) form[i].checked = flag;
	}
}

function getPageSize(){

	var xScroll, yScroll;

	if (window.innerHeight && window.scrollMaxY) {
		xScroll = document.body.scrollWidth;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}

	var windowWidth, windowHeight;
	if (self.innerHeight) {	// all except Explorer
		windowWidth = self.innerWidth;
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}

	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else {
		pageHeight = yScroll;
	}

	// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth){
		pageWidth = windowWidth;
	} else {
		pageWidth = xScroll;
	}


	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight)
	return arrayPageSize;
}
function changeArrow(obj){
	obj.blur();
	img = obj.getElementsByTagName('img')[0];
	if(img.src.indexOf('right.gif')!=-1){
		img.src=img.src.replace('right.gif', 'down.gif');
	}else{
		img.src=img.src.replace('down.gif', 'right.gif');
	}
}

function showSelectBoxes(){
	selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "visible";
	}
}

// ---------------------------------------------------

function hideSelectBoxes(){
	selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "hidden";
	}
}

function hideLightBox(){
	selects = document.getElementsByTagName("select");
      for (i = 0; i != selects.length; i++) {
              selects[i].style.visibility = "visible";
      }
//	new Effect.Fade('overlay', { duration: 0.1});
	objOverlay.style.display = 'none';
}
function showLightBox(){
	selects = document.getElementsByTagName("select");
      for (i = 0; i != selects.length; i++) {
              selects[i].style.visibility = "hidden";
      }
	var arrayPageSize = getPageSize();
	objOverlay.style.width = (arrayPageSize[0] + 'px');
	objOverlay.style.height = (arrayPageSize[1] +10+ 'px');
	objOverlay.style.display = '';
}


ajaxindicator=document.createElement("img");
ajaxindicator.id="ajaxindicator";
ajaxindicator.setAttribute("id","ajaxindicator");
ajaxindicator.style.position="absolute";
ajaxindicator.style.display="none";
ajaxindicator.style.zIndex="100";
ajaxindicator.style.left="100px";
ajaxindicator.style.top="100px";
ajaxindicator.src = "/themes/default/images/ajaxindicator.gif";

objOverlay = document.createElement("div");
objOverlay.setAttribute('id','overlay');
objOverlay.onclick = function () {return false;}
objOverlay.style.display = 'none';
objOverlay.style.position = 'absolute';
objOverlay.style.top = '0';
objOverlay.style.left = '0';
objOverlay.style.zIndex = '90';
objOverlay.style.width = '100%';
objOverlay.style.height = '500px';
//objOverlay.innerHTML = '123456';

Event.observe(window, 'load', function(){document.getElementsByTagName("body")[0].appendChild(ajaxindicator)}, false);
Event.observe(window, 'load', function(){document.getElementsByTagName("body")[0].appendChild(objOverlay)}, false);

var mousex = 0;
var mousey = 0;

Event.observe(document, 'mousemove', function(e){mousex=Event.pointerX(e);mousey=Event.pointerY(e);ajaxindicator.style.left=Event.pointerX(e)+10+'px';ajaxindicator.style.top=Event.pointerY(e)+10+'px';}, false);
