var aDlg;
var curpic={};
var rots={};
var xmlHttp;
var ajxCmd=new Array();
var callback;
var ajxCpl=false;
var isIE=window.navigator.appName.match('Microsoft')=='Microsoft';
var isOpera=window.navigator.appName.match('Opera')=='Opera';
var isGChrome=window.navigator.appName.match('Netscape')=='Netscape';
var ajaxStop=false;
function DIALOG() {
	this.onCancel=null;
	this.onOk=null;
	this.formName=null;
	this.arrayInput=Array();
	this.content=null
	this.createElt=function(eltS,css,prop) {
		var elt=document.createElement(eltS);
		setEleSty(elt,css);
		setEleProp(elt,prop);
		return elt;
	};
	this.open=function(){
		var fD=frstDlg[0];
		if (this.iconPath) fD._rClose.src=this.iconPath+'kill.png';
		fD._rForm.name=this.formName;
		fD._rForm.dlgId=this.id;
		fD._rTitle.innerHTML=this.title;
		setEleSty(fD._rClt,Array('width:'+fD._rClt.offsetWidth+'px','height:'+fD._rClt.offsetHeight+'px',
		'top:0','bottom:0','left:0','right:0','position:fixed','visibility:visible'));
		fD.elt.style.visibility='visible';
	};
	this.close=function(){
		var fD=frstDlg[0];
		fD._rClt.style.visibility='hidden';
		fD.elt.style.visibility='hidden';
		setEleSty(fD._rClt,Array('visibility:hidden','position:absolute',
		'top:auto','bottom:auto','left:auto','right:auto','width:auto','height:auto'));
		fD._rBody.innerHTML='';
		try { 
			if (this.tagName=='FORM') {
				var fD=frstDlg[this.dlgId.value];
				if (fD.onOk) setTimeout(function(){fD.onOk(fD);},0); 
			} else if (this.tagName=='INPUT') {
				var fD=frstDlg[this.value];
				if (fD.onCancel) setTimeout(function(){fD.onCancel(fD);},0); 
			}
		} catch(e) {return false};
		return false;
	};
	this.init=function(){
		this.elt=this.createElt('DIV',Array('position:fixed','zIndex:200','visibility:hidden',
			'left:0','right:0','top:0','bottom:0','margin:auto'));
		this._rClt=this.createElt('DIV',Array('position:absolute','padding:4px','visibility:hidden','background:transparent url(images/alphabg.png) top left repeat',
			'MozBorderRadius:8px','WebkitBorderRadius:8px','OpBorderRadius:8px','borderRadius:8px',
			'margin:auto auto auto auto','color:white','textAlign:center'));
		this._rForm=this.createElt('FORM',Array('margin:0px','padding:0px'),Array('method:POST','enctype:multipart/form-data'));
		this._rForm.onsubmit=this.close;
		this._rClose=this.createElt('INPUT',Array('margin:0px 4px 0px 0px','cursor:pointer','display:block','cssFloat:right'),
			Array('type:IMAGE','name:dlgId','src:'+this.iconPath+'kill.png','title:Cancel'));
		var _rClose=this._rClose;
		_rClose.value=this.id;
		_rClose.onclick=this.close;
		this._rTitle=this.createElt('DIV',Array('font:bolder 15px arial','margin:2px'));
		this._rTitle.innerHTML='Test 123';
		this._rBody=this.createElt('DIV',Array('minWidth:200px','marginTop:12px','padding:4px','border:1px solid'));
		this._rOk=this.createElt('INPUT',Array('left:0','right:0','margin:8px auto 0px auto'),Array('type:SUBMIT','value:OK'));
		this._rForm.appendChild(_rClose);
		this._rForm.appendChild(this._rTitle);
		this._rForm.appendChild(this._rBody);
		this._rForm.appendChild(this._rOk);
		this._rClt.appendChild(this._rForm);
		this.elt.appendChild(this._rClt);
		this.cont=document.createElement('DIV');
		document.body.appendChild(this.elt);
		
	};
	this.alert=function(txt){
		this.title='Alert';
		this._rBody.innerHTML=txt.replace(/\n/,'<br>');
		this.open();
	};
	this.show=function(){
		this.cont.innerHTML=this.content;
		frstDlg[0]._rBody.appendChild(this.cont.cloneNode(true));
		this.open();
	};
	try {frstDlg[frstDlg.length]=this;} catch (e) {frstDlg=Array(this);};
	this.id=frstDlg.length-1;
	if (this.id==0) {
		this.iconPath='images/icon/';
		this.init();
	} else this.iconPath=null;
};
showAlert=function(txt){
	try {frstDlg} catch(e) {new DIALOG()};
	frstDlg[0].alert(txt);
};
ajaxStat=function(t){
	var a=getEle('#ajxStat');
	if (a) a.style.display=(t?'block':'none');
};
ajaxReq=function(mtd,url,prm,cb){
	ajxCmd.push(new Array(mtd,url,prm,cb));
	if (ajxCpl) return;
	ajxAct();
};
ajxAct=function(){
	if (ajxCmd.length==0) {
		ajxCpl=false;
		return;
	}
	ajxCpl=true;
	var ajxPar=ajxCmd.shift();
	var mtd=ajxPar[0];
	var url=ajxPar[1];
	var prm=ajxPar[2];
	var cb=ajxPar[3];
	
	if (xmlHttp==null) return false;
	xmlHttp.abort();
	if (mtd.toUpperCase()=='GET') {
		var url=url+(prm?'?'+prm:'');
		prm=null;
	} 
	xmlHttp.open(mtd.toUpperCase(),url,true);
  	if (mtd.toUpperCase()=='POST') {
		xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	}
	xmlHttp.onreadystatechange=function(){
		if (this.readyState==1) { ajaxStat(true); }
		else if (this.readyState==4) {
			if (this.status==200) { if (cb) cb(this.responseText); }
			else { if (cb) cb(); else alert('Ajax failed'); }
			ajaxStat(false);
			if (ajxCmd.length>0) {setTimeout(ajxAct,0);} else {ajxCpl=false;}
		}
	}
	xmlHttp.send(prm);
};
setEleSty=function(elt,css) {
	if (!elt || !css) return;
	var sel;
	for (var i=0;i<css.length;i++) {
		sel=css[i].split(':');
		elt.style[sel[0]]=sel[1];
	}
};
setEleProp=function(elt,prop){
	if (!elt || !prop) return;
	var sel;
	for (var i=0;i<prop.length;i++) {
		sel=prop[i].split(':');
		elt[sel[0]]=sel[1];
	}
};
injectEle=function(tp,val,th){
	var tp;
	if (!th) tp=getEle(tp);
	else tp=getEle(tp,th);
	tp.innerHTML=val;
};
getEle=function(val,th) {
	if (!th) th=document;
	val=val.replace(/.*#/,'#');
	val=val.split(' ');
	for (var k=0;k<val.length;k++){
		var vnam=val[k].match(/[\-a-zA-Z0-9]+/);
		var vidx=val[k].match(/\[([0-9]+)\]$/);
		var pre=val[k].charAt(0);
		var h=new Array();
		if (pre=='#') {
			if (!th.tagName&&th!=document) {th=null; break;}
			h.push(th.getElementById(vnam));
		} else if (pre=='.') {
			if (th==document) {th=null;break;}
			if (th.tagName) th=new Array(th);
			for (var i=0;i<th.length;i++) {
				var cln=th[i].className.split(' ');
				while (cln.length>0) {
					if (cln.pop()==vnam) h.push(th[i]);
				}
			}
			if (vidx) h=new Array(h[vidx[1]]); 
		} else {
			if (th.tagName||th==document) th=new Array(th); 
			for (var i=0;i<th.length;i++) {
				var hx=th[i].getElementsByTagName(String(vnam).toUpperCase());
				if (vidx) {if (hx[vidx[1]]) h.push(hx[vidx[1]]);}
				else for (var j=0;j<hx.length;j++) h.push(hx[j]);
			}
		} 
		if (h.length<2) h=h[0];
		th=h;
		if (!th) break;
	}
	return th;
};
getSty=function(el,styleProp) {
	var x;
	if (el.currentStyle)
		var y = e.currentStyle[styleProp];
	else if (window.getComputedStyle)
		var y = document.defaultView.getComputedStyle(el,null).getPropertyValue(styleProp);
	return y;
}
opac=function(te,opc) {
	if (isIE) {
		te.filter="alpha(opacity="+opc+")";
	} else te.style.opacity=opc/100;
};
smother=function(te,xt,sto) {
	var tf=te.firstChild;
	var tl=te.lastChild;
	if (xt==null) xt=0;
	opac(tl,xt);
	if (xt==0&&tl.tagName!='MARQUEE') { tl.style.visibility='visible';}
	opac(tf,100-xt);
	if (xt>=100) { 
		tf.style.visibility='hidden';
		te.insertBefore(tl,tf);
		if (tl.tagName=='MARQUEE') {
			tf.stop();tl.start();
			tl.style.visibility='visible';
		}
		return; 
	}
	xt+=10;
	setTimeout(function() {smother(te,xt,sto);},sto);
};
rotator=function(tname,to) {
	var dvs=getEle('DIV .'+tname+' DIV .'+tname+'-item[0]');
	if (!dvs) dvs=getEle('DIV .'+tname+' IMG .'+tname+'-item[0]');
	if (!dvs) dvs=getEle('DIV .'+tname+' MARQUEE .'+tname+'-item[0]');
	if (!dvs) return;
	dvs.style.visibility='visible';
	dvs=dvs.parentNode;
	if (getSty(dvs,'background-image').match(/url/)=='url') dvs.style.backgroundImage='none';
	if (dvs.childNodes.length>1) rots[tname]= setInterval(function(){smother(dvs,0,100);},to);
};
pgpublish=function(bid){
	var subttlNode=getEle('#blk'+bid+'s');
	var ttlNode=getEle('#blk'+bid+'t');
	var contNode=getEle('#blk'+bid+'c');
	var prevContNode=this.parentNode.previousSibling;
	var prevSubttlNode=prevContNode.previousSibling;
	var prevTtlNode=prevSubttlNode.previousSibling;
	ttl=prevTtlNode.innerHTML;
	prevTtlNode.innerHTML=ttlNode.innerHTML;
	ttlNode.innerHTML=ttl;
	ttlNode.style.display=ttlNode.innerHTML?"block":"none";
	subttl=prevSubttlNode.innerHTML;
	prevSubttlNode.innerHTML=subttlNode.innerHTML;
	subttlNode.innerHTML=subttl;
	subttlNode.style.display=subttlNode.innerHTML?"block":"none";
	cont=prevContNode.innerHTML;
	prevContNode.innerHTML=contNode.innerHTML;
	contNode.innerHTML=cont;
	if (this.value=='Show Edited') this.value='Show Existed';
	else this.value='Show Edited';
};
swtdiv=function(from,to) {
	var rto=getEle(to);
	var rfrom=getEle(from);
	if (rto.tagName) rto.style.display='inline';
	else for (var i=0;i<rto.length;i++) rto[i].style.display='inline';
	if (rfrom.tagName) rfrom.style.display='none';
	else for (var i=0;i<rfrom.length;i++) rfrom[i].style.display='none';
};
confirmdel=function (a) {
	return confirm('Are you sure to delete\n\n'+a+'\n\npermanently?');
};
var prem;var ctime;
mopen=function(){
	if (ctime) { clearTimeout(ctime); }
	if (prem) prem.style.visibility='hidden';
	var tmenu=getEle('UL[0]',this);
	var tmli=getEle('LI',tmenu);
	for (var i=0;i<tmli.length;i++) tmli[i].style.width=tmenu.offsetWidth;
	tmenu.style.width=tmenu.offsetWidth;
	tmenu.style.visibility='visible';
	prem=tmenu;
};
mclose=function(){
	var cmenu=getEle('UL[0]',this);
	ctime=setTimeout(function() {cmenu.style.visibility='hidden';prem=null;},20);
	var a=getEle('#mmenu A');
	for (var i=0;i<a.length;i++) a[i].className=a[i].className.indexOf(' ')>-1?a[i].className.split(' ')[0]:null;
	var li=getEle('#mmenu LI');
	for (var i=0;i<li.length;i++) li[i].className=li[i].className.indexOf(' ')>-1?li[i].className.split(' ')[0]:null;
};
initmenu=function(){
	var smenu=getEle('#mmenu UL .smenu');
	for (var x=0;x<smenu.length;x++) {
		smenu[x].parentNode.onmouseover=mopen; 
		smenu[x].parentNode.onmouseout=mclose; 
	}
};
linesToggle=function(){
	var a=getEle('DIV .spokeComments',this.parentNode.parentNode.parentNode);
	for (var i=1;i<a.length;i++) a[i].style.display='block';
	a[0].style.display='none';
}
linesBack=function(txt){
	if (!txt) {
		alert('Connection Error!');
		return;
	}
	var a;
	if (txt.substr(0,3)=='sDD') {
		a=getEle('#'+txt.match(/^sDD([^\,]+)\,.+/)[1]+' DIV .spokeCommentsWrap[0]');
		a=a.lastChild;
		a.style.backgroundImage='none';
		a.innerHTML=txt.match(/^sDD[^\,]+\,(.+)/)[1];
		a.normalize();
		a=getEle('DIV .spokeComments',a.parenNode);
		if (a.length>3 && getEle('CENTER',a[0])) {
			for (var i=1;i<a.length;i++) a[i].style.display='block';
			a[0].style.display='none';
		}
		return;
	}
	a=getEle('#spokeWrap2');
	a.innerHTML=txt;
	a.normalize();
	if (getEle('DIV .spokeMain TEXTAREA',a)) initSpoke();
};
linesCount=function(event) {
	ajaxStop=true;
	if (!(event.ctrlKey||event.altKey||event.shiftKey) && event.keyCode==13) {
		if (this.value!="\n") {
			this.value=this.value.replace(/\n$/,'')
			ajaxReq('POST','spokeGet.html','id='+this.name+'&val='+this.value,linesBack); 
			var cn=document.createElement('DIV');
			cn.className="spokeComments";
			cn.style.backgroundImage="url('images/theme/wait.gif')";
			cn.style.backgroundRepeat="no-repeat";
			cn.style.backgroundPosition="98% 50%";
			cn.innerHTML="Sending your comment, wait ...";
			var ch=this.previousSibling;
			if (!ch) ch=this.parentNode;
			ch.appendChild(cn);
		}
		this.value='';
		this.blur();
		return;
	}
	var k=this.value.split("\n");
	var l=k.length;
	for (var i=0;i<k.length;i++) {
		l+=Math.floor(k[i].length/(this.name=='sD'?62:52));
	}
	this.style.height=l>1? l*16+'px':'16px';
	
};
linesOut=function(){
	if (!this.value) {
		this.value=this.name=='sD'?uspeak:urcomment; 
		this.style.color='#afafaf';
	}
}
linesIn=function(){
	if (this.readOnly) return false;
	if (this.value==uspeak || this.value==urcomment) {
		this.value='';
		this.style.color='black';
	}
}
initSpoke=function(){
	var spoke=getEle('DIV .spoke TEXTAREA');
	if (!spoke) return false;
	if (spoke.type) spoke=Array(spoke);
	for (var i=0;i<spoke.length;i++) {
		spoke[i].onfocus=linesIn;
		spoke[i].onblur=linesOut;
		spoke[i].onkeyup=linesCount;
		spoke[i].innerHTML=spoke[i].name=='sD'?uspeak:urcomment; 
		spoke[i].readOnly=false;
	}
	return true;
};
treetgl=function(th) {
	var d=getEle('UL[0]',th);
	if (d.style.display!='block') d.style.display='block' ;
	else d.style.display='none';
};
if (isIE) alert('Mohon maaf,\nSilakan mempergunakan Firefox, Opera atau Chrome\nuntuk mendapatkan tampilan yang sempurna');
if (!window.getComputedStyle) {
	window.getComputedStyle = function(el, pseudo) {
		this.el = el;
		this.getPropertyValue = function(prop) {
			var re = /(\-([a-z]){1})/g;
			if (prop == 'float') prop = 'styleFloat';
			if (re.test(prop)) {
				prop = prop.replace(re, function () {
					return arguments[2].toUpperCase();
				});
			}
			return el.currentStyle[prop] ? el.currentStyle[prop] : null;
		}
		return this;
	}
}
try {xmlHttp=new XMLHttpRequest();}
catch (e)  {
	try {xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");}
	catch (e) {
		try {xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}
		catch (e) {alert("Your browser does not support AJAX!");}
	}
}

