var ie4=false;
if(document.all) ie4=true;

if (!document.getElementById) {
	if(document.all)	document.getElementById = function() {	return document.all[arguments[0]];	}
	else if(document.layers)	document.getElementById = function() {	return document[arguments[0]];	}
}

function getObject(id){
 return document.getElementById(id);
}

function SimpleSwap(el,which){
 el.src=el.getAttribute(which || "origsrc");
}
function SimpleSwapSetup(){
 var x=document.getElementsByTagName("img");
 for(var i=0; i<x.length; i++){
  var oversrc=x[i].getAttribute("oversrc");
  var clicksrc=x[i].getAttribute("clicksrc");
  if(oversrc){
   x[i].oversrc_img=new Image();
   x[i].oversrc_img.src=oversrc;
   x[i].onmouseover=new Function("SimpleSwap(this,'oversrc');");
   x[i].onmouseout=new Function("SimpleSwap(this);");
   x[i].setAttribute("origsrc",x[i].src);
  }
  if(clicksrc){
   x[i].clicksrc_img=new Image();
   x[i].clicksrc_img.src=clicksrc;
   x[i].onmousedown=new Function("SimpleSwap(this,'clicksrc');");
   if(oversrc) x[i].onmouseup=new Function("SimpleSwap(this,'oversrc');");
   else x[i].onmouseup=new Function("SimpleSwap(this);");
   x[i].setAttribute("origsrc",x[i].src);
  }
 }
}

function inputkind(){
 var x=document.getElementsByTagName("input");
 for(var i=0; i<x.length; i++){
  var kind=x[i].getAttribute("kind");
  if(!kind) continue;
  switch(kind){
   case "numonly":
    x[i].onkeyup=new Function("numonly(this)");
    x[i].onkeydown=new Function("numonly(this)");
   break;
   case "phone":
    x[i].onkeyup=new Function("numonly(this)");
    x[i].onkeydown=new Function("numonly(this)");
    x[i].onblur=new Function("phone(this)");
   break;
   case "currency":
    x[i].onkeyup=new Function("numonly(this)");
    x[i].onkeydown=new Function("numonly(this)");
    x[i].onblur=new Function("currency(this)");
   break;
   case "postalcode":
    x[i].onkeyup=new Function("nospace(this)");
    x[i].onkeydown=new Function("nospace(this)");
    x[i].onblur=new Function("postalcode(this)");
   break;
  }
 }
}

function postalcode(el){
 var temp='';
 var tempval=el.value;
 for(var t=0; t<el.value.length; t++){
  if(t>'5') break;
  var letter=tempval.substring(0, 1);
  tempval=tempval.substring(1, tempval.length);
  if(t=='3') temp+=' ';
  temp+=letter;
 }
 el.value=temp;
}

function nospace(el){
 var temp='';
 var tempval=el.value;
 for(var t=0; t<el.value.length; t++){
  var letter=tempval.substring(0, 1);
  tempval=tempval.substring(1, tempval.length);
  if(letter==' ') continue;
  temp+=letter;
 }
 el.value=temp;
}

function formsubmit(webpage,target){
 if(target==null) target='_top';
 document.form.target=target;
 document.form.action=webpage;
 document.form.submit();
}

function formconfirm(message,webpage,target){
 var conf=confirm(message);
 if(conf) formsubmit(webpage,target);
}

function phone(el){
 var out=temp="";
 var tempval=el.value;
 for(var t=0; t<el.value.length; t++){
  var letter=tempval.substring(0, 1);
  tempval=tempval.substring(1, tempval.length);
  if(letter=='1'||letter=='2'||letter=='3'||letter=='4'||letter=='5'||letter=='6'||letter=='7'||letter=='8'||letter=='9'||letter=='0') temp+=letter;
 }
 for(var t=0; t<14; t++){
  if(t==0){
   out+='(';
  }else if(t==4){
   out+=') ';
   t++;
  }else if(t==9){
   out+='-';
  }else{
   var number=temp.substring(0,1);
   temp=temp.substring(1, temp.length);
   out+=number;
  }
 }
 el.value=out;
}

function numonly(el){
 var temp="";
 var tempval=el.value;
 for(var t=0; t<el.value.length; t++){
  var letter=tempval.substring(0, 1);
  tempval=tempval.substring(1, tempval.length);
  if(letter=='1'||letter=='2'||letter=='3'||letter=='4'||letter=='5'||letter=='6'||letter=='7'||letter=='8'||letter=='9'||letter=='0'||letter=='('||letter==')'||letter==' '||letter=='-'||letter=='.') temp+=letter;
 }
 el.value=temp;
}

function empty(string){
 if(string==''||string==undefined||string.length==0) return true;
 return false;
}

function ajaxsubmit(div,file){
 var forms=document.getElementsByTagName("input");
 var data=new Array();
 var k=0;
 for(var i=0; i<forms.length; i++){
  switch(forms[i].type){
   case "radio":
    if(forms[i].checked==true){
     data[k]=forms[i].name+'='+forms[i].value;
     k++;
    }
   break;
   case "text":
   case "textbox":
    if(!empty(forms[i].value)){
     data[k]=forms[i].name+'='+forms[i].value;
     k++;
    }
   break;
  }
 }
 var data=cleanup(data);
 if(file.indexOf('?')==-1) var file=file+'?'+data.join('&');
 else var file=file+'&'+data.join('&');
 MyAjaxRequest(div,file);
}

function cleanup(array){
 var out=new Array();
 for(var i=0; i<array.length; i++){
  if(!empty(array[i])) out[i]=array[i];
 }
 return out;
}

function MyAjaxRequest(target_div,file){
 var MyHttpRequest = false;
 var ErrorMSG = 'Sorry - No XMLHTTP support in your browser, buy a newspaper instead';
 if(window.XMLHttpRequest){
  try{
   MyHttpRequest = new XMLHttpRequest();
  }catch(e){
   MyHttpRequest = false;
  }
 }else if(window.ActiveXObject){
  try{
   MyHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");
  }catch(e){
   try{
    MyHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
   }catch(e){
    MyHttpRequest = false;
   }
  }
 }else MyHttpRequest = false;
 if(MyHttpRequest){
  MyHttpRequest.open("POST", file, true);
  MyHttpRequest.onreadystatechange = function (){
   if(MyHttpRequest.readyState == 4) document.getElementById(target_div).innerHTML = MyHttpRequest.responseText;
  }
  MyHttpRequest.send(null);
 }else document.getElementById(target_div).innerHTML = ErrorMSG;
}

function url_encode(string){
 var string;
 var safechars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz/-_.&?=";
 var hex = "0123456789ABCDEF";
 var encoded_string="";
 for(var i=0; i<string.length; i++){
  var character = string.charAt(i);
  if(character == " ") encoded_string += "+";
  else if(safechars.indexOf(character) != -1) encoded_string += character;
  else{
   var hexchar = character.charCodeAt(0);
   if(hexchar > 255) encoded_string += "+";
   else{
    encoded_string += "%";
    encoded_string += hex.charAt((hexchar >> 4) & 0xF);
    encoded_string += hex.charAt(hexchar & 0xF);
   }
  }
 }
 return encoded_string;
}

function toggle(link, divId, Name){
 var lText=link.innerHTML;
 var d=getObject(divId);
 if(d.style.display=='none'){
  link.innerHTML='<img src="images/minus-butt.jpg">';
  d.style.display='block';
  document.cookie=Name+"=shown";
 }else{
  link.innerHTML='<img src="images/plus-butt.jpg">';
  d.style.display='none';
  document.cookie=Name+"=hidden";
 }
}

function getEleHeight(id){
 return getObject(id).offsetHeight;
}

function getEleWidth(id){
 return getObject(id).offsetWidth;
}

function swatch(url){
 var ob=getObject('swatch');
 var src=ob.src;
 if(src.indexOf(url)!=-1) return;
 ob.src=url;
}

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 addtextbox(ele,name,splitter){
 getObject(ele).innerHTML+=splitter+'<input type=text name='+name+'>';
}
