var savings_hrs = 0;
var savings_mins = 0;

var isIE = /*@cc_on!@*/false;
var isIE6 = false /*@cc_on || @_jscript_version < 5.7 @*/;

space = '&nbsp;';
newLine = '<br />';
strongOn = '<strong>'
strongOff = '</strong>'

isIE6 = true;

if (isIE6) {
  space = ' ';
  newLine = '\n';
  strongOn = ''
  strongOff = ''
}


addEvent(window, 'scroll', handleScrollEvent);


//----------------------------------------------------------------------
function addEvent(obj, evType, fn) { 
  if (obj.addEventListener) { 
    obj.addEventListener(evType, fn, false); 
    return true; 
  } else if (obj.attachEvent) { 
    var r = obj.attachEvent("on"+evType, fn); 
    return r; 
  } else { 
    return false; 
  } 
}

//var fireOnThis = document.getElementById('someID');
//if( document.createEvent ) {
//  var evObj = document.createEvent('MouseEvents');
//  evObj.initEvent( 'mousemove', true, false );
//  fireOnThis.dispatchEvent(evObj);
//} else if( document.createEventObject ) {
//  fireOnThis.fireEvent('onmousemove');
//}

//----------------------------------------------------------------------
function FireEvent(obj, eventName) {    
  // example of call: fireEvent(obj, 'change')
//  alert('IN fire event "'+eventName+'"');
  if (document.createEventObject) {        
    // dispatch for IE        
    var evt = document.createEventObject();        
    return obj.fireEvent('on'+eventName,evt)    
  }    
  else {  
    if (document.createEvent) {      
      // dispatch for firefox + others        
      var evt = document.createEvent("HTMLEvents");        
      evt.initEvent(eventName, true, true ); // event type,bubbling,cancelable        
      return !obj.dispatchEvent(evt);    
    }
  }
}

//----------------------------------------------------------------------
function MakeFieldInteger(fld)
{   
    var i;
    var output;
    output = "";
    for (i = 0; i < fld.value.length; i++)
    {   
        // Check that current character is number.
        var c = fld.value.charAt(i);
        if (((c >= "0") && (c <= "9"))) output = output + c;
    }
    // All characters are numbers.
    fld.value = output;
    return true;
}

//----------------------------------------------------------------------
function CheckConnectionDate(dateobject) {
  ok = checkdate(dateobject)

  if (!ok) {
    alert('Please enter a valid date in format dd/mm/yyyy');
  }
  else {
    condate=dateobject.value;
    if ((dayofweek(condate)==0) || (dayofweek(condate)==6)) {
      alert('The connection date must be a week day\nPlease enter a valid date.');
      dateobject.value='';
      dateobject.focus();
      return false;
    }

    firstdate=adddaystodate(1,'now');
    if (dayofweek(firstdate)==0) {
      firstdate=adddaystodate(1,firstdate); //Sunday
    }
    if (dayofweek(firstdate)==6) {
      firstdate=adddaystodate(2,firstdate); //Saturday
    }
    if (comparedate(condate,firstdate)<0) {
      alert('The connection date needs to be on or after '+firstdate+'\nPlease enter a valid date.');
      dateobject.value='';
      dateobject.focus();
      return false;
    }
    else {
      return true;
    }  
  }
}

//-----------------------------------------------------------------------------------
/***********************************************
* Show Hint script- © Dynamic Drive (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s more.
***********************************************/
		
var horizontal_offset="9px" //horizontal offset of hint box from anchor link

/////No further editting needed

var vertical_offset="0" //horizontal offset of hint box from anchor link. No need to change.
var ie=document.all
var ns6=document.getElementById&&!document.all

//-----------------------------------------------------------------------------------
function getposOffset(what, offsettype){
  var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
  var parentEl=what.offsetParent;

  while (parentEl!=null){
    totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
    parentEl=parentEl.offsetParent;
  }
  return totaloffset;
}

//-----------------------------------------------------------------------------------
function iecompattest(){
  return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

//-----------------------------------------------------------------------------------
function clearbrowseredge(obj, whichedge){
  var edgeoffset=(whichedge=="rightedge")? parseInt(horizontal_offset)*-1 : parseInt(vertical_offset)*-1
  
  if (whichedge=="rightedge"){
    var windowedge=ie && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-30 : window.pageXOffset+window.innerWidth-40
    dropmenuobj.contentmeasure=dropmenuobj.offsetWidth

    if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
      edgeoffset=dropmenuobj.contentmeasure+obj.offsetWidth+parseInt(horizontal_offset)
  }
  else{
    var windowedge=ie && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
    dropmenuobj.contentmeasure=dropmenuobj.offsetHeight

    if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure)
      edgeoffset=dropmenuobj.contentmeasure-obj.offsetHeight
  }
  return edgeoffset
}

//-----------------------------------------------------------------------------------
function showhint(menucontents, obj, e, tipwidth){
  if ((ie||ns6) && document.getElementById("hintbox")){
    dropmenuobj=document.getElementById("hintbox")
    dropmenuobj.innerHTML=menucontents
    dropmenuobj.style.left=dropmenuobj.style.top=-500
 
    if (tipwidth!=""){
      dropmenuobj.widthobj=dropmenuobj.style
      dropmenuobj.widthobj.width=tipwidth
    }

    dropmenuobj.x=getposOffset(obj, "left")
    dropmenuobj.y=getposOffset(obj, "top")
    dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+obj.offsetWidth+"px"
    dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+"px"
    dropmenuobj.style.visibility="visible"
    obj.onmouseout=hidetip
  }
}

//-----------------------------------------------------------------------------------
function hidetip(e){
  dropmenuobj.style.visibility="hidden"
  dropmenuobj.style.left="-500px"
}

//-----------------------------------------------------------------------------------
function createhintbox(){
  var divblock=document.createElement("div")
  divblock.setAttribute("id", "hintbox")
  document.body.appendChild(divblock)
}

//-----------------------------------------------------------------------------------
if (window.addEventListener)
  window.addEventListener("load", createhintbox, false)
else if (window.attachEvent)
  window.attachEvent("onload", createhintbox)
  else if (document.getElementById)
    window.onload=createhintbox


//-----------------------------------------------------------------------------------
function GetPosition_Top(objname) {
  var el = document.getElementById(objname);
  var pos = 0;
  
  while (el && el.nodeType == 1 && el !== document.documentElement) {
      pos += el.offsetTop;    
      el = el.offsetParent;
  }
  
  return(pos);
}
  
//-----------------------------------------------------------------------------------
function GetPosition_Left(objname) {
  var el = document.getElementById(objname);
  var pos = 0;
  
  while (el && el.nodeType == 1 && el !== document.documentElement) {
      pos += el.offsetLeft;    
      el = el.offsetParent;
  }
  
  return(pos);
}

//-----------------------------------------------------------------------------------
function include(filename)
{
	var head = document.getElementsByTagName('head')[0];
	
	script = document.createElement('script');
	script.src = filename;
	script.type = 'text/javascript';
	
	head.appendChild(script)
}

//include('/javascript/mootools.js');
//include('/javascript/imask-config.js');


//-----------------------------------------------------------------
function SubmitAndCheck(formName) {
  if (CheckMandatory(formName)) {
    document.getElementById(formName).submit();
  }
}

//-----------------------------------------------------------------
function ShowCalendar(calobj, edtname, anchorname) {
  edtobj = document.getElementById(edtname);
  
  if (calobj && edtobj) {
    calobj.select(edtobj, anchorname, 'dd/MM/yyyy');
  }
}

//---------------------------------------------------------------
function CheckMandatory(formname) {
  mandatory_OK = true;
  missingFields = '';

  frm = document.getElementById(formname);

  if (!frm) {
    alert('Form does not exist!');
    return true;
  }    

  
  for (cnt=0; cnt < frm.elements.length; cnt++) {
    atype = '' + frm.elements[cnt].type;

    if (!frm.elements[cnt].getAttribute('title')) {
      atitle = '';
    }
    else {
      atitle = frm.elements[cnt].getAttribute('title');
    }
    
    if (atitle == frm.elements[cnt].value) {
      frm.elements[cnt].value = '';
    }

    if (!frm.elements[cnt].getAttribute('defaultval')) {
      adefaultval = '';
    }
    else {
      adefaultval = frm.elements[cnt].getAttribute('defaultval');
    }
    if ((frm.elements[cnt].value == '') && (adefaultval != '')) {
      frm.elements[cnt].value = adefaultval;
    }

    if (!frm.elements[cnt].getAttribute('minlength')) {
      minlength = 0;
    }
    else {
      minlength = frm.elements[cnt].getAttribute('minlength');
    }
    
    if (!frm.elements[cnt].getAttribute('mandatory')) {
      amandatory = '';
    }
      else {
      amandatory = frm.elements[cnt].getAttribute('mandatory');
    }
 
    frm.elements[cnt].style.backgroundColor = '';
    if (((amandatory == 'yes') && (frm.elements[cnt].value == '')) ||
       ((amandatory == 'yes') && (frm.elements[cnt].type == 'checkbox') && (frm.elements[cnt].checked == false)))
    {
      mandatory_OK = false;
      frm.elements[cnt].style.backgroundColor = '#ffff99';

      nam = frm.elements[cnt].getAttribute('prompt');
      if (!nam) {
        nam = frm.elements[cnt].getAttribute('name');
      }
      missingFields = missingFields + space+space+'- ' + nam + newLine;
    }
    
    if (minlength > 0) {
      if (amandatory != 'yes' && frm.elements[cnt].value.length == 0) {
        x = 3;
      }
      else {
        if (frm.elements[cnt].value.length < minlength) {
          mandatory_OK = false;
          frm.elements[cnt].style.backgroundColor = '#ffff99';
      
          nam = frm.elements[cnt].getAttribute('prompt');
          if (!nam) {
            nam = frm.elements[cnt].name;
          }
          missingFields = missingFields + space+space+'- ' + nam + ' (minimum length: ' + minlength + ')'+newLine;
        }
      }
    }
  }
    
  if (mandatory_OK == false) {
    alert(strongOn+'Enter the following details so that we can get you moving:'+strongOff+newLine+newLine+missingFields);
    return false;
  }

  return true;
}

//---------------------------------------------------------------
function getScrollPosY() {
	if (window.pageYOffset) {
		return window.pageYOffset + 50;
	}
	else if (document.body.scrollTop) {
		return document.body.scrollTop + 50;
	}
	else if (document.documentElement.scrollTop) {
		return document.documentElement.scrollTop + 50;
	}
	else {	
  		return 50;
  	}
}
 
//---------------------------------------------------------------
function handleScrollEvent() {
	obj = document.getElementById('iframediv');
	if (obj && (obj.style.visibility != 'hidden')) {
  	  obj.style.top = getScrollPosY() + "px";
	}

	obj = document.getElementById('details_container');
	if (obj && (obj.style.visibility != 'hidden')) {
  	  obj.style.top = getScrollPosY() + "px";
	}

	obj = document.getElementById('details_container_2');
	if (obj && (obj.style.visibility != 'hidden')) {
  	  obj.style.top = getScrollPosY() + "px";
	}

//	obj = document.getElementById('details_container');
//	if (obj && (obj.style.visibility != 'hidden')) {
//  	  obj.style.top = getScrollPosY() + "px";
//	}

	obj = document.getElementById('popupbig');
	if (obj && (obj.style.visibility != 'hidden')) {
  	  obj.style.top = getScrollPosY() + "px";
	}
}

//------------------------------------------------------------------------------
function ClosePopup() {
  //HideObj('popupbig');
  //HideObj('popupsmall');
  if (window.parent.document.getElementById('popupbig'))
  {
    $("#popupbig").hide();
    $("#modalOverlay").remove();

    //PI - had to re-add it for inline close buttons
    $("#popupbig", window.parent.document).hide();
    $("#modalOverlay", window.parent.document).remove();
  }
  if (window.parent.document.getElementById('popupsmall'))
  {
    $("#popupsmall").hide();
  }
}

//------------------------------------------------------------------------------
function PrivacyPolicy() {
  ShowPopupBig('/privacy_policy.asp', 800, 600);
}

//------------------------------------------------------------------------------
function ShowPopupBig(url, newwidth, newheight) {
  //ShowObj('popupbig');
  var leftMargin = -newwidth / 2;
  var windowWidth = $(window).width();
  var windowHeight = $(window).height();
  var modal = "<div id='modalOverlay'></div>";
  
  $('body').append(modal);
  $('#modalOverlay').width(windowWidth).height(windowHeight);
  $('#popupbig').fadeIn('slow').css({'margin-left' : leftMargin, 'width' : newwidth, 'height' : newheight});
  $('#ifrm_popup').width(newwidth - 20).height(newheight - 20).attr('src', url);
  
  
//  document.getElementById('ifrm_popup').style.marginleft = ((800 - width) / 2);
  
  
  //obj = document.getElementById('ifrm_popup');
  //if (obj) {
    //obj.src = url;
  //}
}

//------------------------------------------------------------------------------
function DisplayLoading(id, msg)
{
	DisplayLoadingStyle(id, msg, "");						 
}

//------------------------------------------------------------------------------
function DisplayLoadingStyle(id, msg, additionalClass)
{
	$("#"+id).html("<div class='loadprogress " + additionalClass+"'>" +
						 msg+" <br /><br />" +
                         "<img src='/commonimages/circle_thickbox.gif'><br />" +
                         "please wait..." +"</div>");
}

//------------------------------------------------------------------------------
function TermsAndCond(from) {
  ShowPopupBig('/terms_and_conditions.asp?from=' + from, 800, 600);
}

// should start using this version as it consistent with using jquery
// Also the old version has a problem of scroll down the screen if
// ur screen is too small
function TermsAndCond_New(dialogdivid, textdivid,  title, from) {
    DisplayLoadingStyle(dialogdivid, "Retrieving " + title, "showproductloading");
//    var w = $(window).width() * 0.8;
//    var h = $(window).height() * 0.5;
    OpenFloatDialog(dialogdivid, title, 800, 550);
//    $("#" + dialogdivid).dialog("option", "position", 'top');
    $.get(
    '/terms_and_conditions.asp?from=' + from,
    function (data) {
        var currentTag = $('#' + dialogdivid);
        currentTag.html(data);
    });   
}

//------------------------------------------------------------------------------
function SwapImg(obj, img) {
  obj.src = img;
}

//------------------------------------------------------------------------------
function Go(url) {
  document.location.href = url;
}

//------------------------------------------------------------------------------
function ShowObj(objname) {
  obj = document.getElementById(objname);

  if (obj) {
    if (obj.style) {
      obj.style.visibility = 'visible';
      obj.style.display = '';
    }
  }
}

//------------------------------------------------------------------------------
function HideObj(objname) {
  obj = document.getElementById(objname);

  if (obj) {
    if (obj.style) {
      obj.style.visibility = 'hidden';
      obj.style.display = 'none';
    }
  }
}

//------------------------------------------------------------------------------
function HideObj_obj(obj) {
  if (obj) {
    if (obj.style) {
      obj.style.visibility = 'hidden';
      obj.style.display = 'none';
    }
  }
}

//------------------------------------------------------------------------------
function ToggleObj(objname) {
  obj = document.getElementById(objname);
  
  if (obj)
  {
    if (obj.style.visibility == 'hidden')
    {
      ShowObj(objname);
    }
    else
    {
      HideObj(objname);
    }
  }
}

//------------------------------------------------------------------------------
function DomCheck(){
  return(document.createElement && document.getElementById)
}

//------------------------------------------------------------------------------
function DomCorners(id,bk,h,tries){
  var el=document.getElementById(id);
  
  if (el==null) {
    if (tries==null) tries=200;
    if (tries>0) {
        setTimeout("DomCorners('"+id+"','"+bk+"',"+h+","+(--tries)+")",50);
    }
    return;
  }
  
  var c=new Array(4);
  
  for (var i=0; i<4; i++) {
    c[i]=document.createElement("b");
    c[i].style.display="block";
    c[i].style.height=h+"px";
    c[i].style.fontSize="1px";

    if (i%2==0) {
//        c[i].style.background="url("+bk+") no-repeat 0 -"+ i*h + "px";
        c[i].style.background="url("+bk+") no-repeat 0 -"+ i*h + "px";
    }
    else {
        c[i].style.background="url("+bk+") no-repeat 100% -"+ i*h + "px";
    }
  }
  
  c[0].appendChild(c[1]);
  c[2].appendChild(c[3]);
  el.style.padding="0";
  el.insertBefore(c[0],el.firstChild);
  el.appendChild(c[2]);
}

function CheckNum(obj)
{
  //This function returns true if the input is only numbers, and false otherwise
  var test_result = /^\d+$/.test(obj.value);
  return test_result
}

function SetSelectIdx(sel, value) {
  for (cnt=0; cnt<sel.options.length; cnt++) {
    
    if ( (sel.options[cnt].value == value) && 
         (sel.selectedIndex != cnt) ) {
      sel.selectedIndex = cnt;
      break;
    }
  }
}

// Adds additional onLoad event to the window when called - doesn't override old onload
function addOnloadEvent(fnc) {
  if ( typeof window.addEventListener != "undefined" )
    window.addEventListener( "load", fnc, false );
  else if ( typeof window.attachEvent != "undefined" ) {
    window.attachEvent( "onload", fnc );
  }
  else {
    if ( window.onload != null ) {
      var oldOnload = window.onload;
      window.onload = function ( e ) {
        oldOnload( e );
        window[fnc]();
      };
    }
    else
      window.onload = fnc;
  }
}

//----------------------------------------------------------------------------------------
// Script Source: CodeLifter.com
// Copyright 2003
// Do not remove this header

isIE=document.all;
isNN=!document.all&&document.getElementById;
isN4=document.layers;
isHot=false;

function ddInit(e){
  topDog=isIE ? "BODY" : "HTML";
//  whichDog=isIE ? document.all.theLayer : document.getElementById("theLayer");  
  hotDog=isIE ? event.srcElement : e.target;  
  
  while ((hotDog.className != "theTitleBar") && (hotDog.tagName != topDog)) {
    hotDog=isIE ? hotDog.parentElement : hotDog.parentNode;
  }  

  obj = hotDog;
  i = 0;
  while (isIE ? obj.parentElement : obj.parentNode) {
    i++;
    obj = isIE ? obj.parentElement : obj.parentNode;
    if (obj.className == 'thePopupLayer') {
      whichDog = obj;
      break;
    }
  }

  if (whichDog) {
    if (hotDog.className == "theTitleBar"){
      offsetx=isIE ? event.clientX : e.clientX;
      offsety=isIE ? event.clientY : e.clientY;
      nowX = parseInt(whichDog.style.left);
      nowY = parseInt(whichDog.style.top);
      ddEnabled = true;
      document.onmousemove = dd;
    }
  }
}

function dd(e){
  if (!ddEnabled) return;

  if (isIE) {
    whichDog.style.left = nowX+event.clientX-offsetx;
    whichDog.style.top = nowY+event.clientY-offsety;
  } else {
    whichDog.style.left = nowX+e.clientX-offsetx;
    whichDog.style.top = nowY+e.clientY-offsety;
  }
  
  return false;  
}

function ddN4(whatDog){
  if (!isN4) return;
  N4=eval(whatDog);
  N4.captureEvents(Event.MOUSEDOWN|Event.MOUSEUP);
  N4.onmousedown=function(e){
    N4.captureEvents(Event.MOUSEMOVE);
    N4x=e.x;
    N4y=e.y;
  }
  N4.onmousemove=function(e){
    if (isHot){
      N4.moveBy(e.x-N4x,e.y-N4y);
      return false;
    }
  }
  N4.onmouseup=function(){
    N4.releaseEvents(Event.MOUSEMOVE);
  }
}

function hidePopup(){
  if (isIE||isNN) whichDog.style.visibility="hidden";
//  else if (isN4) document.theLayer.visibility="hide";
  else if (isN4) whichDog.style.visibility="hide";
}

function showPopup(){
  if (isIE||isNN) whichDog.style.visibility="visible";
//  else if (isN4) document.theLayer.visibility="show";
  else if (isN4) whichDog.style.visibility="show";
}



function blendimage(divid, imageid, imagefile, millisec) {
    var speed = Math.round(millisec / 100);
    var timer = 0;
    
    //set the current image as background
    document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")";
    
    //make image transparent
    changeOpac(0, imageid);
    
    //make new image
    document.getElementById(imageid).src = imagefile;

    //fade in image
    for(i = 0; i <= 100; i++) {
        setTimeout("changeOpac(" + i + ",'" + imageid + "')",(timer * speed));
        timer++;
    }
}

function blendtext(divid, txt, millisec) {
    var speed = Math.round(millisec / 100);
    var timer = 0;
    
    //make image transparent
    changeOpac(0, divid);
    
    //replace div contents
    document.getElementById(divid).innerHTML = txt;

    //fade in text
    for(i = 0; i <= 100; i++) {
        setTimeout("changeOpac(" + i + ",'" + divid + "')",(timer * speed));
        timer++;
    }
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}

function getRadioValue(radioObj)
{
	if(!radioObj)
		return "";

	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}


