var IE=(document.all);
var pi = Math.PI;
var ypos2 = 50;
var xpos2 = 60;
var xpos3 = 200;
//var clockHand = new Array(0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44);
var clockHand = new Array(0,4,8,12,16,20,24,28,32,36,40,44);
var yHour = new Array;
var xHour = new Array;
var hourMinute = 0;
var hourMinuteX = 0;
var hourMinuteY = 0;
var homi;
var homiX;
var count;
var hSpan;
var dspS;
var cIS;
var spec;
function hand(val,what){
spec=1;
if (what=='minute'){
homi='2';
homiX=140;
count=clockHand.length;
if (showMin==0){
spec=0;
}
}
else{
homi='';
homiX=0;
count=clockHand.length-2;
}
hourMinute = - (pi / 180 * 90) + (pi / 6 * val) + (pi / 360);
for(i=0;i<count;i++){
yHour[i] = Math.round(clockHand[i] * Math.sin(hourMinute));
xHour[i] = Math.round(clockHand[i] * Math.cos(hourMinute));
hourMinuteY = yHour[i] + ypos2+4;
hourMinuteX = xHour[i] + xpos2+5+homiX;
if(spec==1){
//eval('document.getElementById("idhand'+homi+i+'").style.top='+hourMinuteY);
//eval('document.getElementById("idhand'+homi+i+'").style.left='+hourMinuteX);
}
}
}
var num=0;
var x;
var y;
var radius;
var angle;
function pickClockhand(what1,what2){
hSpan=document.getElementById('helpSpan');
dspS=document.getElementById("display").style;
cIS=document.getElementById("closeImg").style;
x = 0;
y = 0;
radius = 55;
angle = 150;
if(showMin>5){
hSpan.innerHTML=hSpan.innerHTML+'<br><br>Only the black numbers for the minutes are selectable (steps of '+showMin+' minutes)...<br><br>';
}
if(showMin==1){
//document.getElementById('mm').style.display="inline";
document.getElementById('mp').style.display="inline";
hSpan.innerHTML=hSpan.innerHTML+'<br><br>To select a value for the minutes other than in steps of 5, you can use the "min -" or the "min +" button to select the exact minute...<br><br>';
}
if(showMin>0){
dspS.top=ypos2+85;
dspS.left=0;
if(IE){
cIS.left=xpos2+197;
}
else{
cIS.left=xpos2+199;
}
}
if(showMin==0){
xpos2=83;
document.getElementById("pick").style.width=178;
dspS.top=ypos2+85;
dspS.left=-50;
if(IE){
cIS.left=xpos2+71;
}
else{
cIS.left=xpos2+73;
}
}
//for(i=1;i<=12;i++){
//x = radius * Math.sin(angle * pi / 180);
//x += xpos2 - 2;
//y = radius * Math.cos(angle * pi / 180);
//y += ypos2 + 10;
//angle -= 30;
//eval('document.getElementById("'+what1+i+'").style.top='+y);
//eval('document.getElementById("'+what1+i+'").style.left='+x);
//}

//hand(12,'hour');
if(showMin!=0){
x = 0;
y = 0;
radius = 55;
angle = 150;
for(i=1;i<=12;i++){
num=(i*5);
if ((i*5)==60){
num=0;
}
//x = radius * Math.sin(angle * pi / 180);
//x += xpos3 - 2; 
//y = radius * Math.cos(angle * pi / 180);
//y += ypos2 + 10;
//angle -= 30;
//eval('document.getElementById("'+what2+num+'").style.top='+y);
//eval('document.getElementById("'+what2+num+'").style.left='+x);
}
//hand(0,'minute');
}
}
var insertD;
function writeDivs(){
insertD='';

//insertD +='<form name="timePick">';
for (var i=0;i<howMany;i++){
}
insertD +='<input type="hidden" name="pickedH" value="12">';
insertD +='<input type="hidden" name="pickedM" value="00">';
insertD +='<input type="hidden" name="pickedHH" value="0">';
insertD +='<input type="hidden" name="pickedMM" value="0">';
insertD +='<input type="hidden" name="pickedAm" value=" am">';
insertD +='<input type="hidden" name="pickWhat" value=0>';
for (var i=0;i<howMany;i++){
//insertD +='<input type="text" name="picked'+i+'" type="text" >';
insertD +='<input type="text" name="picked'+i+'" type="text" value="hh:mm am" size="8" maxlength="8" >';
insertD +='&nbsp;<img src="images/time_picker/clock_icon4.gif" value="'+pickerName[i]+'" onClick="showPicker('+i+');document.timePick.pickWhat.value='+i+';">';
}
insertD +='<div id="pick">';
//insertD +='<img class="close" src="images/time_picker/close_clock.gif" id="closeImg" alt="&nbsp;Close time picker...&nbsp;" title="&nbsp;Close time picker...&nbsp;" border=0 onClick="showPicker(document.timePick.pickWhat.value)">';
//for (var j=0;j<clockHand.length-2;j++){
//insertD +='<div class="handClock" id="idhand'+j+'" style="color:'+hCol+'">.</div>';
//}
if (showMin!=0){
//for (var j=0;j<clockHand.length;j++){
//insertD +='<div class="handClock" id="idhand2'+j+'" style="color:'+mCol+'">.</div>';
//}
}
return insertD;
}


var hPic;
var mPic;
var hhPic;
var mmPic;
var amPic;
var tPic;
var insert;
function writePicker(what){
hPic=document.timePick.pickedH;
mPic=document.timePick.pickedM;
hhPic=document.timePick.pickedHH;
mmPic=document.timePick.pickedMM;
amPic=document.timePick.pickedAm;
insert='';
for (var j=1;j<=1;j++){
if (what=='pickHour'){
//insert +='<div class="pickClock" id="'+what+j+'" onClick="pickAm(this.innerHTML,\'hour\',null);" onmouseover="dispAm('+j+',this,\'hour\');" onmouseout="hideAm(this);">'+j+'</div>';
//insert +='<div class="pickClock" id="'+what+j+'" onClick="pickAm(this.innerHTML,\'hour\',null);" onmouseover="dispAm('+j+',this,\'hour\');" onmouseout="hideAm(this);">'+j+'</div>';


insert +='<select name=\"hour\" id=\"pickHour1\" maxlength=2 size=1 style=\"WIDTH: 40px\" class=\"select\" onChange=\"pickAm(this.options[this.selectedIndex].value,\'hour\',null);pickAm(this.options[this.selectedIndex].value,\'minute\','+num+');\"><option value=\"01\">01</option><option value=\"02\">02</option><option value=\"03\">03</option><option value=\"04\">04</option><option value=\"05\">05</option><option value=\"06\">06</option><option value=\"07\">07</option><option value=\"08\">08</option><option value=\"09\">09</option><option value=\"10\">10</option><option value=\"11\">11</option><option value=\"12\">12</option></select>';


}
if (what=='pickMinute'&&showMin!=0){
//if (what=='pickMinute'){
num=(j*5);
if ((j*5)==60){
num=0;
}
if (num%showMin==0){
//insert +='<div class="pickClock" id="'+what+num+'" onClick="pickAm('+j+',\'minute\','+num+');" onmouseover="dispAm('+j+',this,\'minute\');" onmouseout="hideAm(this);">'+num+'</div>';

insert +='<select name=\"minute\" id="pickMinute1" maxlength=2 size=1 style=\"WIDTH: 40px\" onChange="pickAm(this.options[this.selectedIndex].value,\'minute\','+num+');" )\"><option value=\"00\">00</option><option value=\"05\">05</option><option value=\"10\">10</option><option value=\"15\">15</option><option value=\"20\">20</option><option value=\"25\">25</option><option value=\"30\">30</option><option value=\"35\">35</option><option value=\"40\">40</option><option value=\"45\">45</option><option value=\"50\">50</option><option value=\"55\">55</option></select>';

}
else{
insert +='<div class="pickClock" id="'+what+num+'"><font color="red">'+num+'</font></div>';
}
}
}
if (what=='pickMinute'){
//insert +='<div class="disp" id="display"><input type="radio" value=" am" name="ampm" checked onClick="amOrPm(this,0)">&nbsp;am&nbsp;-&nbsp;pm&nbsp;<input type="radio" value=" pm" name="ampm" onClick="amOrPm(this,0)">&nbsp;&nbsp;<input type="checkbox" name="clockType" onClick="amOrPm(null,1);">&nbsp;24 h clock&nbsp;&nbsp;<input id="mm" class="btn" type="button" value="min -" onClick="minusOne()" title="subtract one minute...">&nbsp;&nbsp;<input id="mp" class="btn" type="button" value="min +" onClick="plusOne()" title="add one minute..."></div>';
//insert +='<div class="disp" id="display"><input type="radio" value=" am" name="ampm" checked onClick="amOrPm(this,0)">&nbsp;am&nbsp;-&nbsp;pm&nbsp;<input type="radio" value=" pm" name="ampm" onClick="amOrPm(this,0)">';
insert +='<select id="display" name=\"ampm\" size=1 style=\"WIDTH: 48px\" onChange=\"amOrPm(this.options[this.selectedIndex].value,0);\"><option value=" am">AM</option><option value=" pm">PM</option></select>';
insert +='&nbsp;<img class="close" src="images/time_picker/Close.gif" id="closeImg" alt="&nbsp;Close time picker...&nbsp;" title="&nbsp;Close time picker...&nbsp;" border=0 onClick="showPicker(document.timePick.pickWhat.value)">';
insert +='<input type="hidden" name="clockType" onClick="amOrPm(null,1);"></div>';
insert +='</div><div id="helpSpan" class="help" onClick="this.style.display=\'none\';"></div>';
//insert +='</form>';
}

return insert;
}


function rewritePicker(what,val){
for (var j=1;j<=12;j++){
var newHour=j+val;
if(show24!=1&&j==12&&val==12){
newHour=0;
}
//document.getElementById(what+j).innerHTML=newHour;
document.getElementById('pickHour1').value=newHour;
}
}
function minusOne(){
mns=mPic.value;
mns--;
if (mns==-1){
mns=59;
}
pickAm(mns/5,'minute',mns)
}
function plusOne(){
mns=mPic.value;
mns++;
if (mns==60){
mns=0;
}
pickAm(mns/5,'minute',mns)
}




var hrs;
var mns;
function pickAm(val,what,what2){
tPic=document.timePick['picked'+document.timePick.pickWhat.value];

hrs=Number(hPic.value);
mns=mPic.value;
hand(val,what);
if (what=='minute'){
val2=val;
if (val2==12){
val2=0;
}
hand(Number(hrs)+Number(val2)*5/60,'hour');
}
if (what=='hour'){
hand(parseFloat(Number(val)+Number(Number(mns)/60)),'hour');
}
if (what2!=null){
if (what2<10){
what2='0'+what2;
}
//mPic.value=what2;
mPic.value=document.getElementById('pickMinute1').value;
mmPic.value="1";
if (what2!='00'&&hrs==24){
hPic.value=0;
}
if (what2=='00'&&hrs==0&&show24==1){
hPic.value=24;
}
}
if (what2==null){
hPic.value=val;
if (val==24&&mns!='00'){
hPic.value=0;
}
hhPic.value="1";
}
if (hPic.value!=""&&mPic.value!=""){
if(hPic.value.length<2){
hPic.value='0'+hPic.value;
}
tPic.value=hPic.value+':'+mPic.value;
if (document.timePick.clockType.checked==false){
tPic.value=tPic.value+amPic.value;
}
}
}


var temp;
function amOrPm(what,who){
tPic=document.timePick['picked'+document.timePick.pickWhat.value];
hrs=Number(hPic.value);
mns=mPic.value;
var chBox=document.timePick.clockType.checked;

for (var i = 0; i<2;i++){
//if (document.timePick.ampm[i].checked==true){
//temp=document.timePick.ampm[i].value;

if (document.timePick.ampm[i].checked==true){

//alert (document.timePick.ampm.options[document.timePick.ampm.selectedIndex].value);

temp=document.timePick.ampm.options[document.timePick.ampm.selectedIndex].value;
}
}
if (chBox==true){
amPic.value="";
}
if (chBox==false){
amPic.value=temp;
}
if (temp==" pm"&&chBox==true){
rewritePicker('pickHour',12);
}
if (temp==" am"||chBox==false){
//rewritePicker('pickHour',0);
}
if (who==1||who==0){
if (temp==" pm"){
if(hrs<=12&&hrs!=0){
hrs=hrs+12;
if(hrs==24&&show24!=1){
hrs=0;
}
}
if(hrs==12&&Number(mns)==0&&chBox==true&&show24==1){
hrs=24;
}
if(hrs==24&&Number(mns)>0&&chBox==true){
hrs=0;
}
if((hrs==24||hrs==0)&&chBox==false){
hrs=12;
}
if(hrs>12&&chBox==false){
hrs=hrs-12;
}
}
if (temp==" am"){
if(hrs==24||hrs==0){
hrs=12;
}
if(hrs>12){
hrs=hrs-12;
}
}
document.timePick.clockType.blur();
}
if (who==0&&chBox==false){
amPic.value=temp;
//what.blur();
}
hPic.value=hrs;
if(hPic.value.length<2){
hPic.value='0'+hPic.value;
}

mPic.value=mns;
tPic.value=hPic.value+':'+mPic.value;
if (chBox==false){
tPic.value=tPic.value+amPic.value;
}
}


function dispAm(val,highlight,what){
highlight.className="high";
if (what=="minute"&&mmPic.value!="1"||(what=="hour"&&hhPic.value!="1")){
hand(val,what);
}
}
function hideAm(lowlight){
lowlight.className="pickClock";
}
function resetValues(){
document.timePick.pickedH.value="12";
document.timePick.pickedM.value="00";
document.timePick.pickedHH.value="0";
document.timePick.pickedMM.value="0";
document.timePick.pickedAm.value=" am";
document.timePick.clockType.checked=false;
document.timePick.ampm[0].checked=true;
hand(12,'hour');
hand(0,'minute');
}
var oldH;
var oldM;
var oldHN;
var oldMN;
var oldAmPm;
function restoreValues(val){
oldH=val.substring(0,2);
oldM=val.substring(3,5);
oldHN=Number(oldH);
oldMN=Number(oldM/5);
if (val.length>5){
oldAmPm=val.substring(6,8)
document.timePick.clockType.checked=false;
}
if (val.length<=5){
oldAmPm='';
document.timePick.clockType.checked=true;
}
if(oldAmPm=='am'||(oldHN>0&&oldHN<13)){
document.timePick.ampm[0].checked=true;
}
if(oldAmPm=='pm'||oldHN==0||oldHN>12){
document.timePick.ampm[1].checked=true;
}
oldAmPm=' '+oldAmPm;
document.timePick.pickedH.value=oldH;
document.timePick.pickedM.value=oldM;
document.timePick.pickedHH.value="1";
document.timePick.pickedMM.value="1";
document.timePick.pickedAm.value=oldAmPm;
hand(parseFloat(Number(oldHN)+Number(Number(oldM)/60)),'hour');
hand(oldMN,'minute');
if (document.timePick.clockType.checked==true&&(oldHN==0||oldHN>12)){
rewritePicker('pickHour',12);
}
else{
rewritePicker('pickHour',0);
}
}


function showPicker(val){
tPic=document.timePick['picked'+val];
var pDiv=document.getElementById('pick').style
pDiv.background=bgCol;
if(pDiv.display=="block"&&val==document.timePick.pickWhat.value){
resetValues();
document.getElementById('helpSpan').style.display="none";
pDiv.display="none"; 
}
else{
if (tPic.value!=""){
restoreValues(tPic.value);
pDiv.display="block";
}
if (tPic.value==""){
resetValues();
rewritePicker('pickHour',0);
pDiv.background=bgCol;
pDiv.display="block";
}
}
}
var hSp2;
function showHelp(){
hSp2=document.getElementById('helpSpan').style;
if(IE){
hSp2.display='block';
hSp2.width=281;
hSp2.height=167;
}
else{
document.getElementById('helpSpan').style.top=-169;
document.getElementById('helpSpan').style.display='block';
}
}
function writeAll(){
document.write(writeDivs());
document.write(writePicker('pickHour'));
document.write(writePicker('pickMinute'));
pickClockhand('pickHour','pickMinute');
return '';
}
