<?php
/*********************************************************************************
** The contents of this file are subject to the vtiger CRM Public License Version 1.0
 * ("License"); You may not use this file except in compliance with the License
 * The Original Code is:  vtiger CRM Open Source
 * The Initial Developer of the Original Code is vtiger.
 * Portions created by vtiger are Copyright (C) vtiger.
 * All Rights Reserved.
*
 ********************************************************************************/

function get_world_clock($image_path) {
$the_clock = <<<EOQ

<style type="text/css">
<!--
.citystyle{
position:absolute;top:0px;left:0px;
}
#theClockLayer{
position:relative;height:180px;left:20px;text-align:center;
}
.handsanddotsstyle{
margin-top:10px;position:absolute;top:0px;left:0px;width:2px;height:2px;font-size:2px;background-color:#000000;
}
.facestyle{
margin-top:10px;position:absolute;top:0px;left:0px;width:15px;height:15px;text-align:center;font-family:arial,sans-serif;font-size:10px;color:#000000;
}
.datestyle{
margin-top:20px;position:absolute;top:0px;left:0px;width:100px;text-align:center;font-family:arial,sans-serif;font-size:10px;color:#000000;
}
.ampmstyle{
margin-top:23px;position:absolute;top:0px;left:0px;width:20px;text-align:center;font-family:arial,sans-serif;font-size:10px;color:#000000;
}
-->
</style>
<div id="theClockLayer">
  <div id="theCities" class="citystyle">
    <form action="" name="frmtimezone">
      <select id="city" name="city" onchange="lcl(this.selectedIndex,this.options[0].selected)" class="select" style="width:140;position:relative;left:-13px">
        <option value="0" selected>Local time</option>
        <OPTION VALUE="4.30">Afghanistan</OPTION>
        <OPTION VALUE="1">Algeria</OPTION>
        <OPTION VALUE="-3">Argentina</OPTION>
        <OPTION VALUE="9.30">Australia - Adelaide</OPTION>
        <OPTION VALUE="8">Australia - Perth</OPTION>
        <OPTION VALUE="10">Australia - Sydney</OPTION>
        <OPTION VALUE="1">Austria</OPTION>
        <OPTION VALUE="3">Bahrain</OPTION>
        <OPTION VALUE="6">Bangladesh</OPTION>
        <OPTION VALUE="1">Belgium</OPTION>
        <OPTION VALUE="-4">Bolivia</OPTION>
        <OPTION VALUE="-5">Brazil - Andes</OPTION>
        <OPTION VALUE="-3">Brazil - East</OPTION>
        <OPTION VALUE="-4">Brazil - West</OPTION>
        <OPTION VALUE="2">Bulgaria</OPTION>
        <OPTION VALUE="6.30">Burma (Myanmar)</OPTION>
        <OPTION VALUE="-5">Chile</OPTION>
        <OPTION VALUE="-7">Canada - Calgary</OPTION>
        <OPTION VALUE="-3.30">Canada - Newfoundland</OPTION>
        <OPTION VALUE="-4">Canada - Nova Scotia</OPTION>
        <OPTION VALUE="-5">Canada - Toronto</OPTION>
        <OPTION VALUE="-8">Canada - Vancouver</OPTION>
        <OPTION VALUE="-6">Canada - Winnipeg</OPTION>
        <OPTION VALUE="8">China - Mainland</OPTION>
        <OPTION VALUE="8">China - Taiwan</OPTION>
        <OPTION VALUE="-5">Colombia</OPTION>
        <OPTION VALUE="-5">Cuba</OPTION>
        <OPTION VALUE="1">Denmark</OPTION>
        <OPTION VALUE="-5">Ecuador</OPTION>
        <OPTION VALUE="2">Egypt</OPTION>
        <OPTION VALUE="12">Fiji</OPTION>
        <OPTION VALUE="2">Finland</OPTION>
        <OPTION VALUE="1">France</OPTION>
        <OPTION VALUE="1">Germany</OPTION>
        <OPTION VALUE="0">Ghana</OPTION>
        <OPTION VALUE="2">Greece</OPTION>
        <OPTION VALUE="-3">Greenland</OPTION>
        <OPTION VALUE="1">Hungary</OPTION>
        <OPTION VALUE="5.30">India</OPTION>
        <OPTION VALUE="8">Indonesia - Bali, Borneo</OPTION>
        <OPTION VALUE="9">Indonesia - Irian Jaya</OPTION>
        <OPTION VALUE="7">Indonesia - Sumatra, Java</OPTION>
        <OPTION VALUE="3.30">Iran</OPTION>
        <OPTION VALUE="3">Iraq</OPTION>
        <OPTION VALUE="2">Israel</OPTION>
        <OPTION VALUE="1">Italy</OPTION>
        <OPTION VALUE="-5">Jamaica</OPTION>
        <OPTION VALUE="9">Japan</OPTION>
        <OPTION VALUE="3">Kenya</OPTION>
        <OPTION VALUE="9">Korea (North & South)</OPTION>
        <OPTION VALUE="3">Kuwait</OPTION>
        <OPTION VALUE="1">Libya</OPTION>
        <OPTION VALUE="8">Malaysia</OPTION>
        <OPTION VALUE="5">Maldives</OPTION>
        <OPTION VALUE="1">Mali</OPTION>
        <OPTION VALUE="4">Mauritius</OPTION>
        <OPTION VALUE="-6">Mexico</OPTION>
        <OPTION VALUE="0">Morocco</OPTION>
        <OPTION VALUE="5.45">Nepal</OPTION>
        <OPTION VALUE="1">Netherlands</OPTION>
        <OPTION VALUE="12">New Zealand</OPTION>
        <OPTION VALUE="1">Nigeria</OPTION>
        <OPTION VALUE="1">Norway</OPTION>
        <OPTION VALUE="4">Oman</OPTION>
        <OPTION VALUE="5">Pakistan</OPTION>
        <OPTION VALUE="-5">Peru</OPTION>
        <OPTION VALUE="8">Philippines</OPTION>
        <OPTION VALUE="1">Poland</OPTION>
        <OPTION VALUE="1">Portugal</OPTION>
        <OPTION VALUE="3">Qatar</OPTION>
        <OPTION VALUE="2">Romania</OPTION>
        <OPTION VALUE="11">Russia - Kamchatka</OPTION>
        <OPTION VALUE="3">Russia - Moscow</OPTION>
        <OPTION VALUE="9">Russia - Vladivostok</OPTION>
        <OPTION VALUE="4">Seychelles</OPTION>
        <OPTION VALUE="3">Saudi Arabia</OPTION>
        <OPTION VALUE="8">Singapore</OPTION>
        <OPTION VALUE="2">South Africa</OPTION>
        <OPTION VALUE="1">Spain</OPTION>
        <OPTION VALUE="3">Syria</OPTION>
        <OPTION VALUE="5.30">Sri Lanka</OPTION>
        <OPTION VALUE="1">Sweden</OPTION>
        <OPTION VALUE="1">Switzerland</OPTION>
        <OPTION VALUE="7">Thailand</OPTION>
        <OPTION VALUE="12">Tonga</OPTION>
        <OPTION VALUE="2">Turkey</OPTION>
        <OPTION VALUE="3">Ukraine</OPTION>
        <OPTION VALUE="5">Uzbekistan</OPTION>
        <OPTION VALUE="7">Vietnam</OPTION>
        <OPTION VALUE="4">UAE</OPTION>
        <OPTION VALUE="0">UK</OPTION>
        <OPTION VALUE="-9">USA - Alaska</OPTION>
        <OPTION VALUE="-9">USA - Arizona</OPTION>
        <OPTION VALUE="-6">USA - Central</OPTION>
        <OPTION VALUE="-5">USA - Eastern</OPTION>
        <OPTION VALUE="-10">USA - Hawaii</OPTION>
        <OPTION VALUE="-5">USA - Indiana East</OPTION>
        <OPTION VALUE="-7">USA - Mountain</OPTION>
        <OPTION VALUE="-8">USA - Pacific</OPTION>
        <OPTION VALUE="3">Yemen</OPTION>
        <OPTION VALUE="1">Yugoslavia</OPTION>
        <OPTION VALUE="2">Zambia</OPTION>
        <OPTION VALUE="2">Zimbabwe</OPTION>
        <!--
          <option value="0">GMT</option>
          <option value="1">Rome</option>
          <option value="2">Cairo</option>
          <option value="3">Moscow</option>
          <option value="3.30">Tehran</option>
          <option value="5">Karachi</option>
          <option value="5.30">Bombay</option>
          <option value="7">Bangkok</option>
          <option value="8">Hong Kong</option>
          <option value="9">Tokyo</option>
          <option value="9.30">Darwin</option>
          <option value="10">Sydney</option>
          <option value="12">Fiji</option>
          <option value="-10">Hawaii</option>
          <option value="-8">San Francisco</option>
          <option value="-7">Arizona</option>
          <option value="-5">New York</option>
          <option value="-3.30">Newfoundland</option>
          <option value="-3">Greenland</option>
		  -->
      </select>
    </form>
  </div>
  <script type="text/javascript">
<!-- World Clock (No DST, standard time only!)  http://www.btinternet.com/~kurt.grigg/javascript

if (document.getElementById){

fCol='#000000'; //face/number colour.
dCol='#cccccc'; //dot colour.
hCol='#000000'; //hours colour.
mCol='#000000'; //minutes colour.
sCol='#ff0000'; //seconds colour.
cCol='#000000'; //date colour.
aCol='#999999'; //am-pm colour.
bCol='#ffffff'; //select/form background colour.
tCol='#000000'; //select/form text colour.

//Alter nothing below! Alignments will be lost!
y=87;
xpos=60;
h=4;
m=5;
s=6;
cf=new Array();
cd=new Array();
ch=new Array();
cm=new Array();
cs=new Array();
face="3 4 5 6 7 8 9 10 11 12 1 2";
face=face.split(" ");
n=face.length;
e=360/n;
hDims=7;
zone=0;
isItLocal=true;
ampm="";
daysInMonth=31;
todaysDate="";
var addHours;
var oddMinutes;
var getOddMinutes;
var addOddMinutes;
plusMinus=false;

var mon=new Array("January","February","March","April","May","June","July","August","September","October","November","December");

document.write('<div id="theDate" class="datestyle" style="color:'+cCol+'">\!<\/div>');
document.write('<div id="amOrPm" class="ampmstyle" style="color:'+aCol+'">\!<\/div>');
for (i=0; i < n; i++){
 document.write('<div id="theFace'+i+'" class="facestyle" style="color:'+fCol+'">'+face[i]+'<\/div>');
// if (i==0 || i==3 || i==6 || i==9)
//	document.write('<div id="theFace'+i+'" class="facestyle" style="color:'+fCol+'"><img align="absmiddle" src="/crm/images/clock_face'+face[i]+'.gif"/><\/div>');
// else
//	document.write('<div id="theFace'+i+'" class="facestyle" style="color:'+fCol+'"><\/div>');
 cf[i]=document.getElementById("theFace"+i).style;
 cf[i].top=y-6+30*1.4*Math.sin(i*e*Math.PI/180)+"px";
 cf[i].left=xpos-6+30*1.4*Math.cos(i*e*Math.PI/180)+"px";
}
for (i=0; i < n; i++){
/*
 document.write('<div id="theDots'+i+'" class="handsanddotsstyle" style="background-color:'+dCol+'"><\/div>');
 cd[i]=document.getElementById("theDots"+i).style;
 cd[i].top=y+30*Math.sin(i*e*Math.PI/180)+"px";
 cd[i].left=xpos+30*Math.cos(i*e*Math.PI/180)+"px";
*/
}
for (i=0; i < h; i++){
 document.write('<div id="H'+i+'" class="handsanddotsstyle" style="background-color:'+hCol+'"><\/div>');
 ch[i]=document.getElementById("H"+i).style;
}
for (i=0; i < m; i++){
 document.write('<div id="M'+i+'" class="handsanddotsstyle" style="background-color:'+mCol+'"><\/div>');
 cm[i]=document.getElementById("M"+i).style;
}
for (i=0; i < s; i++){
 document.write('<div id="S'+i+'" class="handsanddotsstyle" style="background-color:'+sCol+'"><\/div>');
 cs[i]=document.getElementById("S"+i).style;
}

var dsp1=document.getElementById("amOrPm").style;
var dsp2=document.getElementById("theCities").style;
var dsp3=document.getElementById("theDate").style;
//var dsp4=document.getElementById("city").style;
var dsp5=document.getElementById("theClockLayer").style;
dsp1.top=y+"px";
dsp1.left=xpos-8+"px";
dsp2.top=y-80+"px";
dsp2.left=xpos-55+"px";
dsp3.top=y+55+"px";
dsp3.left=xpos-60+"px";
//dsp4.backgroundColor=bCol;
//dsp4.color=tCol;
//var currSkin="<%=skintype%>"

//var currSkin="aqua"

//dsp5.backgroundImage="url(/crm/images/"+currSkin+"/clock_bg.gif)"
dsp5.backgroundImage="url($image_path/clock_bg.gif)"
dsp5.backgroundRepeat="no-repeat"
dsp5.backgroundPosition="4px 38px"

function lcl(currIndex,localState){
	//zone=z.options[z.selectedIndex].value;
	//isItLocal=(z.options[0].selected)?true:false;
	zone=document.frmtimezone.city.options[currIndex].value;
	isItLocal=localState;
	plusMinus=(zone.charAt(0) == "-")?true:false;
	oddMinutes=(zone.indexOf(".") != -1)?true:false;
	if (oddMinutes){
	 getOddMinutes=zone.substring(zone.indexOf(".")+1,zone.length)
	}
	
	addHours=(oddMinutes)?parseInt(zone.substring(0,zone.indexOf("."))):parseInt(zone)
	if (plusMinus){
	 addOddMinutes=(oddMinutes)?parseInt(-getOddMinutes):0;
	} else{
	 addOddMinutes=(oddMinutes)?parseInt(getOddMinutes):0;
	}
	
	set_cookie("timezone",currIndex)
}

function ClockAndAssign(){
	hourAdjust=0;
	dayAdjust=0;
	monthAdjust=0;
	now=new Date();
	//ofst=now.getTimezoneOffset()/60;
	
	secs=now.getSeconds();
	sec=Math.PI*(secs-15)/30;
	
	mins=(isItLocal)?now.getMinutes():now.getUTCMinutes();
	if (oddMinutes){ 
	 mins=eval(mins+addOddMinutes);
	}
	min=Math.PI*(mins-15)/30;
	if (mins<0){
	 mins+=60;hourAdjust=-1;
	}
	if (mins>59){
	 mins-=60;hourAdjust=1;
	}
	
	//hr=(isItLocal)?now.getHours()+hourAdjust:(now.getHours()+parseInt(ofst))+parseInt(zone)+hourAdjust;
	hr=(isItLocal)?now.getHours()+hourAdjust:now.getUTCHours()+addHours+hourAdjust
	hrs=Math.PI*(hr-3)/6+Math.PI*parseInt(now.getMinutes())/360;
	
	/*
	if (hr<0){
	 hr+=24;
	 dayAdjust=-1;
	}
	if (hr>23){
	 hr-=24;
	 dayAdjust=1;
	}
	*/
	
	if (!isItLocal){
	  if (addHours<0){
		if(now.getUTCHours()+parseInt(addHours)<0)
		  dayAdjust-=1
	  } else{
		if(now.getUTCHours()+parseInt(addHours)>23)
		  dayAdjust+=1
	  }
	}
	
	day=now.getDate()+dayAdjust;
	
	if (day<1){
	 day+=daysInMonth; 
	 monthAdjust=-1;
	}
	if (day>daysInMonth){
	 day-=daysInMonth; 
	 monthAdjust=1;
	}
	
	month=parseInt(now.getMonth()+1+monthAdjust);
	
	if (month==2){
	 daysInMonth=28;
	}
	year=now.getYear();
	if (year<2000){
	 year=year+1900;
	}
	leap_year=(eval(year%4)==0)?true:false;
	if (leap_year&&month==2){
	 daysInMonth=29;
	}
	if (month<1){
	 month+=12;
	 year--;
	}
	if (month>12){
	 month-=12;
	 year++;
	}
	//todaysDate=day+"/"+month+"/"+year;
	todaysDate=mon[month-1]+" "+day+", "+year;
	
	if (hr<0) hr+=24;
	if (hr>23) hr-=24;
	
	ampm=(hr>11)?"PM":"AM";
	
	for (i=0;i<s;i++){
	 cs[i].top=y+(i*hDims)*Math.sin(sec)+"px";
	 cs[i].left=xpos+(i*hDims)*Math.cos(sec)+"px";
	}
	for (i=0;i<m;i++){
	 cm[i].top=y+(i*hDims)*Math.sin(min)+"px";
	 cm[i].left=xpos+(i*hDims)*Math.cos(min)+"px";
	}
	for (i=0;i<h;i++){
	 ch[i].top=y+(i*hDims)*Math.sin(hrs)+"px";
	 ch[i].left=xpos+(i*hDims)*Math.cos(hrs)+"px";
	}
	
	document.getElementById("amOrPm").firstChild.data=ampm;
	
//	if (hr.toString().length==1) hr="0"+hr
	if (hr==0)
	{
		 hr=12
	}
	else if (hr>12)
	{
		 hr-=12;
	}

	
	if (mins.toString().length==1) mins="0"+mins;
	
	document.getElementById("theDate").firstChild.data=todaysDate+" "+hr+":"+mins+" "+ampm;
	setTimeout('ClockAndAssign()',100);
	}
	ClockAndAssign();
}

// Setting cookies
function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure )
{
  var cookie_string = name + "=" + escape ( value );

  if (exp_y) //delete_cookie(name)
  {
    var expires = new Date ( exp_y, exp_m, exp_d );
    cookie_string += "; expires=" + expires.toGMTString();
  }

  if (path) cookie_string += "; path=" + escape ( path );
  if (domain) cookie_string += "; domain=" + escape ( domain );
  if (secure) cookie_string += "; secure";

  document.cookie = cookie_string;
}

// Retrieving cookies
function get_cookie(cookie_name)
{
  var results = document.cookie.match(cookie_name + '=(.*?)(;|$)');
  if (results) return (unescape(results[1]));
  else return null;
}

// Delete cookies 
function delete_cookie( cookie_name )
{
  var cookie_date = new Date ( );  // current date & time
  cookie_date.setTime ( cookie_date.getTime() - 1 );
  document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}

if (get_cookie("timezone")==null || get_cookie("timezone")==false || get_cookie("timezone")<0 || get_cookie("timezone")=="1") {
	lcl(0,true)
} else {
	lcl(get_cookie("timezone"),false)
	document.frmtimezone.city.options[get_cookie("timezone")].selected=true
}


//-->
</script>
</div>
EOQ;

return $the_clock;
}
?>
