var HtmlLoadComplete=0;
var isIE=(document.all)?true:false; var isNS=!isIE;

function gete(i){return document.getElementById(i);}
function firstTag(t,g){if(g){do{g=g.firstChild?g.firstChild:g.nextSibling}while(g&&g.tagName!=t);}return g;}
function nextTag(t,g){while((g=g.nextSibling)&&g.tagName!=t);return g;}
function lastTag(t,g){var r='';if(g=firstTag(t,g)){do{r=g;}while(g&&(g=g.nextSibling)&&g.tagName==t);return r;}}
function prevTag(t,g){while(g&&(g=g.previousSibling)&&g.tagName!=t);return g;}
function parentTag(t,g){while(g&&(g=g.parentNode)&&g.tagName!=t);return g;}
function parentID(t,g){while(g&&(g=g.parentNode)&&(!g.id||g.id.substr(0,t.length)!=t));return g;}
function getn(i){return document.getElementsByName(i);}
function getv(i){
	if(i=gete(i)){
		return i.value;
	}
	return '';
}
function gethtml(i){
	if(i=gete(i)){
		return i.innerHTML;
	}
	return '';
}
function setv(i,v){
	if(i=gete(i)){
		i.value=v;
	}
}
function sethtml(i,h){
	if(i=gete(i)){
		i.innerHTML=h;
	}
}

function chr(ascii){
	return String.fromCharCode(ascii);
}

function url_decode(url){
  if(isNS){
		url = str_replace('%27',unescape('%27'),url);
		url = str_replace('%28',unescape('%28'),url);
		url = str_replace('%29',unescape('%29'),url);
	}
	return url;
}

function str_replace(text,by,string){
	return string.split(text).join(by);
}

function SubmitInput(event,inp,func,maxValue,subValue){
	if(event && event.keyCode!=13) return;
	if(event) event.returnValue=false;
	var v=inp.value.length?parseInt(inp.value):0;
	if(v<1) v=10;
	if(v>maxValue) v=maxValue;
	eval(str_replace("%value%",v+subValue,func));
}

var Base64={
	_keyStr : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
	encode:function(input){
		var output="";
		var c1,c2,c3,e1,e2,e3,e4;
		var i=0;
		input=Base64._utf8_encode(input);
		while(i<input.length){
			c1=input.charCodeAt(i++);
			c2=input.charCodeAt(i++);
			c3=input.charCodeAt(i++);
			e1=c1>>2;
			e2 =((c1&3)<<4)|(c2>>4);
			e3 =((c2&15)<<2)|(c3>>6);
			e4=c3&63;
			if(isNaN(c2)){
				e3=e4=64;
			}else if(isNaN(c3)){
				e4=64;
			}
			output=output+this._keyStr.charAt(e1)+this._keyStr.charAt(e2)+this._keyStr.charAt(e3)+this._keyStr.charAt(e4);
		}
		return output;
	},
	decode:function(input){
		var output="";
		var c1,c2,c3;
		var e1,e2,e3,e4;
		var i=0;
		input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");
		while(i<input.length){
			e1=this._keyStr.indexOf(input.charAt(i++));
			e2=this._keyStr.indexOf(input.charAt(i++));
			e3=this._keyStr.indexOf(input.charAt(i++));
			e4=this._keyStr.indexOf(input.charAt(i++));
			c1 =(e1<<2)|(e2>>4);
			c2 =((e2&15)<<4)|(e3>>2);
			c3 =((e3&3)<<6)|e4;
			output=output+String.fromCharCode(c1);
			if(e3 != 64){
				output=output+String.fromCharCode(c2);
			}
			if(e4 != 64){
				output=output+String.fromCharCode(c3);
			}
		}
		output=Base64._utf8_decode(output);
		return output;
	},
	_utf8_encode:function(string){
		string=string.replace(/\r\n/g,"\n");
		var utftext="";
		for(var n=0;n<string.length;n++){
			var c=string.charCodeAt(n);
			if(c<128){
				utftext+=String.fromCharCode(c);
			}else if((c>127)&&(c<2048)){
				utftext+=String.fromCharCode((c>>6)|192);
				utftext+=String.fromCharCode((c&63)|128);
			}else{
				utftext+=String.fromCharCode((c>>12)|224);
				utftext+=String.fromCharCode(((c>>6)&63)|128);
				utftext+=String.fromCharCode((c&63)|128);
			}
		}
		return utftext;
	},
	_utf8_decode : function(utftext){
		var string="";
		var i=0;
		var c=c1=c2=0;
		while(i<utftext.length){
			c=utftext.charCodeAt(i);
			if(c<128){
				string+=String.fromCharCode(c);
				i++;
			}else if((c>191)&&(c<224)){
				c2=utftext.charCodeAt(i+1);
				string+=String.fromCharCode(((c&31)<<6)|(c2&63));
				i+=2;
			}else{
				c2=utftext.charCodeAt(i+1);
				c3=utftext.charCodeAt(i+2);
				string+=String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));
				i+=3;
			}
		}
		return string;
	}
}

