




function issm(ele) {
	if(isempty(ele)) return false;
	else if(!isdefined(ele.eletype)) return false;
	else if(ele.eletype==51) return true;
	return false;
}

function newsm(id) {
	id='m'+id;
	var ele=newvele(id+'c'); if(!ele) return false; 
	if(ele.eletype==51) return ele;
	ele.eletype=51;

	ele.smid=id;
	ele.fadesm=0;
	ele.mdelaysm=0;
	ele.smsdsm=0;

	ele.smx=new Object();
	ele.smy=new Object();
	ele.movedirsm=new Object();
	ele.iidsm=new Object();
	ele.holdsmflag=new Object();
	ele.smmc=new Object();
	ele.smmt=new Object();
	ele.smm=new Object();
	var divs=ele.getelebytag('div');
	for(var c1=0;c1<divs.length;c1++) { var divid=divs[c1].id;
		if(divid.substr(0,2)==ele.smid&&divid.substr(divid.length-1,1)=='t') ele.smmt[divid.replace('t','')]=newvele(divs[c1]);
		else if(divid.substr(0,2)==ele.smid&&divid.substr(divid.length-2,2)=='tb') ele.smm[divid.replace('tb','')]=newvele(divs[c1]);
		else if(divid.substr(0,2)==ele.smid) {
			ele.smmc[divid]=newvele(divs[c1]);
			ele.smx[divid]='at';
			ele.smy[divid]=0;
			ele.movedirsm[divid]='r';
			ele.iidsm[divid]=-1;
			ele.holdsmflag[divid]=0;
		}
	}
	ele.smi=new Object();
	ele.smibg=new Object();
	ele.smiclass=new Object();
	ele.smihtml=new Object();
	var tds=ele.getelebytag('td');
	for(var c1=0;c1<tds.length;c1++) { var tdid=tds[c1].id;
		if(tdid.substr(0,2)==ele.smid) {
			ele.smi[tdid]=newvele(tds[c1]);
			ele.smibg[tdid]=ele.smi[tdid].getatt('background');
			ele.smiclass[tdid]=ele.smi[tdid].getclass();
			ele.smihtml[tdid]=ele.smi[tdid].gethtml();
		}
	}
	
	ele.eleon=newvele(id+'con'); if(!ele.eleon) return false;
	ele.eleon.smmc=new Object();
	ele.eleon.smmt=new Object();
	ele.eleon.smm=new Object();
	divs=ele.eleon.getelebytag('div');
	for(var c1=0;c1<divs.length;c1++) { var divid=divs[c1].id;
		if(divid.substr(0,2)==ele.smid+'on'&&divid.substr(divid.length-3,1)=='t') ele.eleon.smmt[divid.replace('t','')]=newvele(divs[c1]);
		else if(divid.substr(0,2)==ele.smid+'on'&&divid.substr(divid.length-4,2)=='tb') ele.eleon.smm[divid.replace('tb','')]=newvele(divs[c1]);
		else if(divid.substr(0,2)==ele.smid+'on') ele.eleon.smmc[divid]=newvele(divs[c1]);
	}
	ele.eleon.smi=new Object();
	ele.eleon.smibg=new Object();
	ele.eleon.smiclass=new Object();
	ele.eleon.smihtml=new Object();
	tds=ele.eleon.getelebytag('td');
	for(var c1=0;c1<tds.length;c1++) { var tdid=tds[c1].id;
		if(tdid.substr(0,2)==ele.smid) {
			ele.eleon.smi[tdid]=newvele(tds[c1]);
			ele.eleon.smibg[tdid]=ele.eleon.smi[tdid].getatt('background');
			ele.eleon.smiclass[tdid]=ele.eleon.smi[tdid].getclass();
			ele.eleon.smihtml[tdid]=ele.eleon.smi[tdid].gethtml();
		}
	}
	
	for(var k in ele.smi) {
		eval("ele.smi['"+k+"'].addevent('mouseover',function(){ele.smimover('"+k+"');});");
		if(k.substr(k.length-1,1)=='p') eval("ele.smi['"+k+"'].addevent('mouseover',function(){ele.smshow('"+k+"');});");
		eval("ele.smi['"+k+"'].addevent('mouseout',function(){ele.smimout('"+k+"');});");
		eval("ele.smi['"+k+"'].addevent('mouseout',function(){ele.smfree('"+k+"');});");
		eval("ele.smi['"+k+"'].addevent('mousemove',function(){ele.smhold('"+k+"');});");
	}
	
	ele.smsettrigger=smsettrigger;
	ele.smshow=smshow;
	ele.smhide=smhide;
	ele.smhold=smhold;
	ele.smfree=smfree;
	ele.smimover=smimover;
	ele.smimout=smimout;
	ele.smgetparentid=smgetparentid;
	ele.smgetparentiid=smgetparentiid;
	
	return ele;
}

function smsettrigger(x,y,fade,movedir,mdelay,sd,baseele) {
	var ele=this;
	ele.smx[ele.smid]=x;
	ele.smy[ele.smid]=y;
	ele.movedirsm[ele.smid]=movedir;
	ele.fadesm=fade;
	ele.smsdsm=sd;
	if(mdelay=='at') { ele.mdelaysm=400; if(isie())ele.mdelaysm=200; }
	else ele.mdelaysm=mdelay;
	eleaddevent("mouseover",function(){this.style.cursor='pointer';},baseele);
	eleaddevent("mouseover",function(){ele.smshow(baseele);},baseele);
eleaddevent("mousemove",function(){ele.smshow(baseele);},baseele);
	eleaddevent("mousemove",function(){ele.smhold(ele.smid+'i0');},baseele);
	eleaddevent("mouseout",function(){ele.smfree(ele.smid+'i0');},baseele);
}

function smshow(iid) {
	var ele=this; var mcid=0;
	if(isobject(iid)) mcid=ele.smid; else if(iid.substr(0,2)!=ele.smid) mcid=ele.smid;
	else mcid=iid.replace('p','').replace('i','m');
	var sm=ele.smmc[mcid]; var smt=ele.smmt[mcid]; var smi=0;
	if(isobject(iid)) smi=newvele(iid); else if(iid.substr(0,2)!=ele.smid) smi=newvele(iid); 
	else smi=ele.smi[iid];
if(sm.style.display=='block'&&sm.style.visibility=='visible') return;
	if(sm.style.display=='block'&&sm.style.visibility=='visible'&&
		(!ele.fadesm||(ele.fadesm&&sm.geta()==100))&&
		(!ele.movedirsm||(ele.movedirsm==1&&smt.gety()==0)||(ele.movedirsm==2&&smt.getx()==0))
	) return;
	sm.style.position='absolute';
	sm.style.zIndex='100';
	sm.style.display='block';
	smi.style.cursor='pointer';
	var x=ele.smx[mcid]; var y=ele.smy[mcid];
	if(x=='at') x=smi.getabsx()+smi.getw();
	else if(x=='-at') x=smi.getabsx()-sm.getw();
	else x+=smi.getabsx();
	if(y=='at') y=smi.getabsy()+smi.geth();
	else if(y=='-at') y=smi.getabsy()-sm.geth();
	else y+=smi.getabsy();
	if(ele.smsdsm) {
		x-=4; y-=4;
		if(isie()) if(isie()==6||fade) fixiepng(false,mcid);
	}
	//sm.style.left=x;
	sm.setx(x);
	//sm.style.top=y;
	sm.sety(y);
	sm.style.visibility='visible';
	smt.style.position='relative';
	smt.style.left=0;
	smt.style.top=0;
	ele.holdsmflag[mcid]=1;
	if(ele.iidsm[mcid]!=-1) {
		window.clearInterval(ele.iidsm[mcid]);
		ele.iidsm[mcid]=-1;
	}
	eval("ele.iidsm['"+mcid+"']=window.setInterval(function(){ele.smhide('"+mcid+"');},ele.mdelaysm);");
	if(ele.fadesm) sm.fade(1,3,'at','at',0,100,0);
	//fadeele(smid,'at',3,'at','at',0,100);
	//fade('tablesm'+smid.toString(),15,1,0,5,0,100);
	//fade('tablesm'+smid.toString(),15,2,8,0.05,0,100);
	/*if (movedir=='u') moveele(smid+'t',1,3,   0,0,0,0,   'at','at',geteleh(smt),0,   0);
	else if (movedir=='d') moveele(smid+'t',1,3,   0,0,0,0,   'at','at',geteleh(smt)*-1,0,   0);
	else if (movedir=='l') moveele(smid+'t',1,3,   'at','at',getelew(smt),0,   0,0,0,0,   0);
	else if (movedir=='r') moveele(smid+'t',1,3,   'at','at',getelew(smt)*-1,0,   0,0,0,0,   0);*/
	if(ele.movedirsm[mcid]=='u') smt.move(1,3,   0,0,0,0,   smt.geth()*30/100,0.23,smt.geth(),0,   0);
	else if(ele.movedirsm[mcid]=='d') smt.move(1,3,   0,0,0,0,   smt.geth()*30/100,0.23,smt.geth()*-1,0,   0);
	else if(ele.movedirsm[mcid]=='l') smt.move(1,3,   smt.getw()*30/100,0.23,smt.getw(),0,   0,0,0,0,   0);
	else if(ele.movedirsm[mcid]=='r') smt.move(1,3,   smt.getw()*30/100,0.23,smt.getw()*-1,0,   0,0,0,0,   0);
}
function smhide(mcid) {
	var ele=this; var sm=ele.smmc[mcid]; var smt=ele.smmt[mcid];
	if(ele.holdsmflag[mcid]) return;
	if(ele.fadesm) sm.fade(1,2,'at','at',100,0,0);
	/*if (movedirsm[lsmslot]=='u') moveele(eleidsm[lsmslot]+'t',1,2,   0,0,0,0,   'at','at',0,geteleh(smt),   function(){sm.style.display="none";sm.style.visibility="hidden";});
	else if (movedirsm[lsmslot]=='d') moveele(eleidsm[lsmslot]+'t',1,2,   0,0,0,0,   'at','at',0,geteleh(smt)*-1,   function(){sm.style.display="none";sm.style.visibility="hidden";});
	else if (movedirsm[lsmslot]=='l') moveele(eleidsm[lsmslot]+'t',1,2,   'at','at',0,getelew(smt),   0,0,0,0,   function(){sm.style.display="none";sm.style.visibility="hidden";});
	else if (movedirsm[lsmslot]=='r') moveele(eleidsm[lsmslot]+'t',1,2,   'at','at',0,getelew(smt)*-1,   0,0,0,0,   function(){sm.style.display="none";sm.style.visibility="hidden";});*/
	if(ele.movedirsm[mcid]=='u') smt.move(1,3,   0,0,0,0,   smt.geth()*30/100,0.23,0,smt.geth(),   function(){sm.style.display="none";sm.style.visibility="hidden";});
	else if(ele.movedirsm[mcid]=='d') smt.move(1,3,   0,0,0,0,   smt.geth()*30/100,0.23,0,smt.geth()*-1,   function(){sm.style.display="none";sm.style.visibility="hidden";});
	else if(ele.movedirsm[mcid]=='l') smt.move(1,3,   smt.getw()*30/100,0.23,0,smt.getw(),   0,0,0,0,   function(){sm.style.display="none";sm.style.visibility="hidden";});
	else if(ele.movedirsm[mcid]=='r') smt.move(1,3,   smt.getw()*30/100,0.23,0,smt.getw()*-1,   0,0,0,0,   function(){sm.style.display="none";sm.style.visibility="hidden";});
	if(!ele.fadesm&&!ele.movedirsm[mcid]) {sm.style.display="none";sm.style.visibility="hidden";}
	window.clearInterval(ele.iidsm[mcid]);
	ele.iidsm[mcid]=-1;
}

function smhold(iid) {
	var mcid=iid.replace('p','').replace('i','m');
	var ele=this;
	while(mcid.lastIndexOf('m')!=-1) {
		ele.holdsmflag[mcid]=1;
		mcid=mcid.substr(0,mcid.lastIndexOf('m'));
	}
}
function smfree(iid) {
	var mcid=iid.replace('p','').replace('i','m');
	var ele=this;
	while(mcid.lastIndexOf('m')!=-1) {
		ele.holdsmflag[mcid]=0;
		mcid=mcid.substr(0,mcid.lastIndexOf('m'));
	}
}

function smimover(iid) {
	var ele=this;
	ele.smi[iid].style.cursor='pointer';
	ele.smi[iid].setclass(ele.eleon.smiclass[iid+'on']);
	ele.smi[iid].setatt('background',ele.eleon.smibg[iid+'on']);
	ele.smi[iid].sethtml(ele.eleon.smihtml[iid+'on']);
}
function smimout(iid) {
	var ele=this;
	ele.smi[iid].setclass(ele.smiclass[iid]);
	ele.smi[iid].setatt('background',ele.smibg[iid]);
	ele.smi[iid].sethtml(ele.smihtml[iid]);
}

function smgetparentid(thisid) {
	return thisid.substr(0,thisid.lastIndexOf('m'));
}
function smgetparentiid(thisid) {
	var ele=this;
	var psmid=ele.getparentid(thisid);
	var lastno=thisid.lastIndexOf('m')+1;
	return psmid+'i'+thisid.substr(lastno,thisid.length-lastno);
}





