/**************************************************************************
Show number clock function.
How to use :
<script src="/javascripts/clock.js" language="JavaScript" type="text/javascript"></script>

1. Time out
將於 <img border="0" name="th1_emx" align="middle" id="th1_emx"><img border="0" name="th2_emx" align="middle"><img border="0" name="tcolon1" width="9" align="middle" src="/images/numbers/colon.gif"><img border="0" name="tm1_emx" align="middle"><img border="0" name="tm2_emx" align="middle"><img border="0" name="tcolon2" width="9" align="middle" src="/images/numbers/colon.gif"><img border="0" name="ts1_emx" align="middle"><img border="0" name="ts2_emx" align="middle"> 結束
<script language="javascript">
<!--
var logoutClock = new clock(document.th1,document.th2,document.tm1,document.tm2,document.ts1,document.ts2, '');
logoutClock.setAction("/login/logout.jsp");
logoutClock.timeIsUp('logoutClock',0,<%=(session.getMaxInactiveInterval()-(5*60))/60%>,0);
-->
</script>

2. System clock
<img border="0" name="sh1" align="middle"><img border="0" name="sh2" align="middle"><img border="0" name="scolon1" width="9" align="middle" src="/images/numbers/colon.gif"><img border="0" name="sm1" align="middle"><img border="0" name="sm2" align="middle"><img border="0" name="scolon2" width="9" align="middle" src="/images/numbers/colon.gif"><img border="0" name="ss1" align="middle"><img border="0" name="ss2" align="middle"><img border="0" name="sapm" align="middle">
<script language="javascript">
<!--
var clockNumber = new clock(document.sh1,document.sh2,document.sm1,document.sm2,document.ss1,document.ss2,document.sapm);
clockNumber.clockNumber('clockNumber');
-->
</script>

Author by Allen Chen, 2006/04/26
***************************************************************************/
//var dn  
c1=new Image();
c2=new Image();
c3=new Image();
c4=new Image();
c5=new Image();
c6=new Image();
c7=new Image();
c8=new Image();
c9=new Image();
c0=new Image();
cb=new Image();
cam=new Image();
cpm=new Image();
capm=new Image();
var iVal = 1000	 ;	//時間間格: 1 秒  

function clock_delete_cookie ( cookie_name ) {
	document.cookie = cookie_name+"=; expires=01/01/1968 00:00:00; path=/";
  	//alert(" clock_delete_cookie:"+document.cookie);
}
function clock_clear_cookie ( cookie_name ) {
	document.cookie=cookie_name+"=1\\0\\0\\0; path=/";
  	//alert(" clock_delete_cookie:"+document.cookie);
}
function clock(pH1,pH2,pM1,pM2,pS1,pS2,pAPM) {
	this.h1 = pH1;
	this.h2 = pH2;
	this.m1 = pM1;
	this.m2 = pM2;
	this.s1 = pS1;
	this.s2 = pS2;
	this.apm = pAPM;
	this.filesURL = null;
	this.action = null;
	this.actionName = null;
	this.keep_timeIsUp_inital = 0;
	this.timeIsUp_inital = 0;
	this.hours		= 0;
	this.minutes	= 0;
	this.seconds	= 0;
	this.setFilesURL = clock_setFilesURL;
	this.setAction = clock_setAction;
	this.setActionName = clock_setActionName;
	this.setTimeIsUp_inital = clock_setTimeIsUp_inital;
	this.extract = clock_extract;
	this.getCookie = clock_getCookie;
	this.timeIsUp = clock_timeIsUp;
	this.clockNumber = clock_clockNumber;
}
function clock_setFilesURL(pFilesURL) {
  	this.filesURL = pFilesURL;
	c1.src=this.filesURL+"/images/numbers/c1.gif"
	c2.src=this.filesURL+"/images/numbers/c2.gif"
	c3.src=this.filesURL+"/images/numbers/c3.gif"
	c4.src=this.filesURL+"/images/numbers/c4.gif"
	c5.src=this.filesURL+"/images/numbers/c5.gif"
	c6.src=this.filesURL+"/images/numbers/c6.gif"
	c7.src=this.filesURL+"/images/numbers/c7.gif"
	c8.src=this.filesURL+"/images/numbers/c8.gif"
	c9.src=this.filesURL+"/images/numbers/c9.gif"
	c0.src=this.filesURL+"/images/numbers/c0.gif"
	cb.src=this.filesURL+"/images/numbers/cb.gif"                                   
	cam.src=this.filesURL+"/images/numbers/cam.gif"
	cpm.src=this.filesURL+"/images/numbers/cpm.gif"
	capm.src=this.filesURL+"/images/numbers/capm.gif"
}
function clock_setAction(pAction) {
  	this.action = pAction;
}
function clock_setActionName(pActionName) {
  	this.actionName = pActionName;
}
function clock_setTimeIsUp_inital(pSetTimeIsUp_inital) {
  	this.timeIsUp_inital = pSetTimeIsUp_inital;
}
function clock_extract(h,m,s,dn){
	if (!document.images)
		return
	if (h<=9){
		this.h1.src=cb.src
		this.h2.src=eval("c"+h+".src")
	}else{
		this.h1.src=eval("c"+Math.floor(h/10)+".src")
		this.h2.src=eval("c"+(h%10)+".src")
	}
	if (m<=9){
		this.m1.src=c0.src
		this.m2.src=eval("c"+m+".src")
	}else{
		this.m1.src=eval("c"+Math.floor(m/10)+".src")
		this.m2.src=eval("c"+(m%10)+".src")
	}
	if (s<=9){
		this.s1.src=c0.src
		this.s2.src=eval("c"+s+".src")
	}else{
		this.s1.src=eval("c"+Math.floor(s/10)+".src")
		this.s2.src=eval("c"+(s%10)+".src")
	}
	if (dn==null) {} 
	else if (dn=="") this.apm.src=capm.src 
	else if (dn=="AM") this.apm.src=cam.src 
	else this.apm.src=cpm.src
}
function clock_getCookie(pName) {
	var arrays=new Array();
	var array2=new Array();
	var array3=new Array();
	var i,j,k;
	var type, opt;
	if(!document.cookie.length) {
		return true; 
	}
	arrays=document.cookie.split("; ");
	for(h=0;h<arrays.length;h++){
		array3=arrays[h].split("=");
		if(array3[0]==pName){
			if (array3.length>1) {
				array2=array3[1].split("\\");
				if (array2.length>0) {
					this.keep_timeIsUp_inital = array2[0];
					if (array2.length>1) {
						this.hours = array2[1];
						this.minutes = array2[2];
						this.seconds = array2[3];
					}
				}
			}
		}
	}
	return true;
}
//function clock_timeIsUp(pName,pHours,pMinutes,pSeconds){
function clock_timeIsUp(pName, pSeconds){
	if (!document.images)
		return;          
	if ((this.action==null||this.action=='') && (this.actionName==null||this.actionName=='')) {
		alert("action or actionName isnt set, please set one of with setAction or setActionName method");
		return;
	}
	var dn=null;
	var pMinutes = 0;

	this.getCookie(pName);
	//alert(pName+":keep_timeIsUp_inital:"+this.keep_timeIsUp_inital);
	//alert(pName+":"+this.minutes+":"+this.seconds);
	if (this.keep_timeIsUp_inital==0) {
		this.keep_timeIsUp_inital = this.timeIsUp_inital;
		this.seconds	= pSeconds % 60;
		pMinutes = Math.floor(pSeconds / 60);
		this.minutes	= pMinutes % 60;
		this.hours 		= Math.floor(pMinutes / 60);
		//alert(this.hours + ':' + this.minutes + ':' + this.seconds);
	}
	this.seconds = this.seconds - 1 ;
	if (this.seconds < 0){
		this.minutes = this.minutes - 1 ;
		this.seconds = 59  ;
	}
	document.cookie=pName+"="+this.keep_timeIsUp_inital+"\\"+this.hours+"\\"+this.minutes+"\\"+this.seconds+"; path=/";
	if (this.minutes < 0) {
        //window.alert("時間到! ");
		hostname=parent.location.hostname;
		if (this.action!=null) {
			location=this.action;
		}
		if (this.actionName!=null) {
			submit_Click_final(this.actionName, true);
		}
	}else{
		this.extract(this.hours,this.minutes,this.seconds,dn,''); 
		//setTimeout(pName+".timeIsUp('"+pName+"',"+this.hours+","+this.minutes+","+this.seconds+");",iVal);
		var allOfSeconds = (this.hours*60*60) + (this.minutes*60) + this.seconds;
		setTimeout(pName+".timeIsUp('"+pName+"',"+allOfSeconds+");",iVal);
	}
}

function clock_clockNumber(pName){ 
	if (!document.images)
		return;
	var Digital=new Date();
	var hours=Digital.getHours();
	var minutes=Digital.getMinutes();
	var seconds=Digital.getSeconds();
	var dn="AM";
	if ((hours>=12)&&(minutes>=1)||(hours>=13)){
		dn="PM";
		hours=hours-12  ;                                  
	}
	if (hours==0)
		hours=12;
	this.extract(hours,minutes,seconds,dn);
	setTimeout(pName+".clockNumber('"+pName+"');",iVal);
}
