// +------------------------------------------------------------+
// |                   Popup Calendar(Window)                   |
// +------------------------------------------------------------+
// | Last Modified:                  15-Oct-2002                |
// | Web Site:                       http://www.yxscripts.com   |
// | EMail:                          m_yangxin@hotmail.com      |
// +------------------------------------------------------------+
// |       Copyright 2002  Xin Yang   All Rights Reserved.
// |       This version featured on Dynamic Drive (http://www.dynamicdrive.com)
// | Modified by Marc Rosewarne (http://www.spacejunk.co.nz) 08/01/03
// | for pop up air travel distance calculator (km)
// +------------------------------------------------------------+


// codes
var calWidth=400, calHeight=200, calOffsetX=300, calOffsetY=-100;
var calWin=null;
var winX=0, winY=0;
var cal="cal";
var cals=new Array();
var currentCal=null;


var isOpera=(navigator.userAgent.indexOf("Opera")!=-1)?true:false;
var isOpera5=(navigator.appVersion.indexOf("MSIE 5")!=-1 && navigator.userAgent.indexOf("Opera 5")!=-1)?true:false;
var isOpera6=(navigator.appVersion.indexOf("MSIE 5")!=-1 && navigator.userAgent.indexOf("Opera 6")!=-1)?true:false;
var isN6=(navigator.userAgent.indexOf("Gecko")!=-1);
var isN4=(document.layers)?true:false;
var isMac=(navigator.userAgent.indexOf("Mac")!=-1);
var isIE=(document.all && !isOpera && (!isMac || navigator.appVersion.indexOf("MSIE 4")==-1))?true:false;

function calOBJ(name, title, field, form) {
  this.name = name;
  this.title = title;
  this.field = field;
  this.formName = form;
  this.form = null
}

function setWidth(tWidth, tMode, dWidth, dDigits) {
  if (tWidth > 0) {
    titleWidth=tWidth;
  }
  if (tMode == 1 || tMode == 2) {
    titleMode=tMode;
  }
  if (dWidth > 0) {
    dayWidth=dWidth;
  }
  if (dDigits > 0) {
    dayDigits=dDigits;
  }
}

function addCalendar(name, title, field, form) {
  cals[cals.length] = new calOBJ(name, title, field, form);
}

function findCalendar(name) {
  for (var i = 0; i < cals.length; i++) {
    if (cals[i].name == name) {
      if (cals[i].form == null) {
        if (cals[i].formName == "") {
          if (document.forms[0]) {
            cals[i].form = document.forms[0];
          }
        }
        else if (document.forms[cals[i].formName]) {
          cals[i].form = document.forms[cals[i].formName];
        }
      }

      return cals[i];
    }
  }

  return null;
}

function hideCal() {
  calWin.close();
  calWin = null;
  window.status = "";
}

function getLeftIE(x,m) {
  var dx=0;
  if (x.tagName=="TD"){
    dx=x.offsetLeft;
  }
  else if (x.tagName=="TABLE") {
    dx=x.offsetLeft;
    if (m) { dx+=(x.cellPadding!=""?parseInt(x.cellPadding):2); m=false; }
  }
  return dx+(x.parentElement.tagName=="BODY"?0:getLeftIE(x.parentElement,m));
}
function getTopIE(x,m) {
  var dy=0;
  if (x.tagName=="TR"){
    dy=x.offsetTop;
  }
  else if (x.tagName=="TABLE") {
    dy=x.offsetTop;
    if (m) { dy+=(x.cellPadding!=""?parseInt(x.cellPadding):2); m=false; }
  }
  return dy+(x.parentElement.tagName=="BODY"?0:getTopIE(x.parentElement,m));
}

function getLeftN4(l) { return l.pageX; }
function getTopN4(l) { return l.pageY; }

function getLeftN6(l) { return l.offsetLeft; }
function getTopN6(l) { return l.offsetTop; }

function markClick(e) {
  if (isIE || isOpera6) {
    winX=event.screenX;
    winY=event.screenY;
  }
  else if (isN4 || isN6) {
    winX=e.screenX;
    winY=e.screenY;

    document.routeEvent(e);
  }

  return true;
}

function showCal(name) {
  var lastCal=currentCal;
  var d=new Date(), hasCal=false;

  currentCal = findCalendar(name);
  
  if (name == "jp_terms" || name == "jpp_terms"){
	var calWidth=500, calHeight=380, calOffsetX=-300, calOffsetY=-300; //SIZE 4 JOB PROVIDERS
  } else {
	var calWidth=500, calHeight=300, calOffsetX=-300, calOffsetY=-300; //SIZE 4 JOB SEEKERS
  }

  if (currentCal != null && currentCal.form != null && currentCal.form[currentCal.field]) {

    if (calWin != null && !calWin.closed) {
      hasCal=true;
      calWin.moveTo(winX+calOffsetX,winY+calOffsetY);
    }

    if (!hasCal) {
      if (isIE || isOpera6) {
        calWin=window.open("","cal","toolbar=0,width="+calWidth+",height="+calHeight+",left="+(winX+calOffsetX)+",top="+(winY+calOffsetY));
	  }
      else {
        calWin=window.open("","cal","toolbar=0,width="+calWidth+",height="+calHeight+",screenx="+(winX+calOffsetX)+",screeny="+(winY+calOffsetY));
      }
    }
	//HERE IS THE js_terms
	if (name == "js_terms"){
		var calendar = ""
		// START HTML
		calendar = "<html><head><title>Terms and Conditions</title><LINK REL='stylesheet' TYPE='text/css' HREF='inc/jobstyles.css'></head><body topmargin='0' bottommargin='0' leftmargin='0' rightmargin='0'>"
		//START FORM
		calendar = calendar + "<form name='domair'><table align='center' width='400' height='200' cellspacing='0' cellpadding='2' border='0' class='contents' bgcolor='#ffffff'>"
		calendar = calendar + "<tr><td>"
		// STUFF
		calendar = calendar + "Welcome to TESOLteacherfind.com<br>"
		calendar = calendar + "Please read the statements below and click <b>Accept</b> to complete your registration.<br><br>" 
		calendar = calendar + "I understand that to register with TESOLteacherfind.com I am providing personal information.<br>"
		calendar = calendar + "I understand that TESOLteacherfind.com and CLTi will make every effort to ensure the appropriate privacy of my information.<br>"
		calendar = calendar + "I agree to this information being provided to job providers as part of the TESOLteacherfind.com service.<br>"
		calendar = calendar + "I acknowledge that TESOLteacherfind.com and CLTi do not guarantee any jobs listed with the site but endeavour to work only with reputable institutions.<br>"
		calendar = calendar + "I undertake to not load infected files, files with malicious content or pornographic material onto TESOLteacherfind.com.<br>"
		calendar = calendar + "I agree to being contacted by CLTi and TESOLteacherfind.com in regard to this and other TESOL services."
		// SUBMIT BUTTON
		calendar = calendar + "<br><br><input type='submit' name='dogtail' value='Accept' onclick='javascript: if (window.opener && !window.opener.closed && window.opener.pickDate) window.opener.pickDate(domair.dogtail.value)'>"
		calendar = calendar + "&nbsp;&nbsp;&nbsp;<input type='submit' name='cattail' value='Decline' onclick='javascript: if (window.opener && !window.opener.closed && window.opener.pickDate) window.opener.pickDate(domair.cattail.value)'>"
		calendar = calendar + "</td></tr></table>"
		//CLOSE UP HTML
		calendar = calendar + "</form></body></html>"
	}
	//HERE IS THE jp_terms / jpp_terms
	if (name == "jp_terms" || name == "jpp_terms" ){
		var calendar = ""
		// START HTML
		calendar = "<html><head><title>Terms and Conditions</title><LINK REL='stylesheet' TYPE='text/css' HREF='inc/jobstyles.css'></head><body topmargin='0' bottommargin='0' leftmargin='0' rightmargin='0'>"
		//START FORM
		calendar = calendar + "<form name='domair'><table align='center' width='400' height='200' cellspacing='0' cellpadding='2' border='0' class='contents' bgcolor='#ffffff'>"
		calendar = calendar + "<tr><td>"
		// STUFF
		calendar = calendar + "Welcome to TESOLteacherfind.com<br>"
		calendar = calendar + "Please read the statements below and click <b>Accept</b> to complete your registration.<br><br>" 
		calendar = calendar + "I understand that to register with TESOLteacherfind.com I am providing personal information.<br>"
		calendar = calendar + "I understand that TESOLteacherfind.com and CLTi will make every effort to ensure the appropriate privacy of my information.<br>"
		calendar = calendar + "I undertake that I represent an authentic eductional instutution and will advertise actual job vacancies through TESOLteacherfind.com.<br>"
		calendar = calendar + "I agree to contact listed job seekers for the express purpose of finding suitable TESOL teachers in relation to vacancies in my representative institution.<br>"
		calendar = calendar + "I acknowledge TESOLteacherfind.com and CLTi do not guarantee the content or integrity of any files on TESOLteacherfind.com and that it is my responsibility to ensure I have sufficient security mechanisms in place to protect my hardware and software systems from attack.<br>"
		calendar = calendar + "I agree to being contacted by CLTi and TESOLteacherfind.com in regard to this and other TESOL services."
		// SUBMIT BUTTON
		calendar = calendar + "<br><br><input type='submit' name='dogtail' value='Accept' onclick='javascript: if (window.opener && !window.opener.closed && window.opener.pickDate) window.opener.pickDate(domair.dogtail.value)'>"
		calendar = calendar + "&nbsp;&nbsp;&nbsp;<input type='submit' name='cattail' value='Decline' onclick='javascript: if (window.opener && !window.opener.closed && window.opener.pickDate) window.opener.pickDate(domair.cattail.value)'>"
		calendar = calendar + "</td></tr></table>"
		//CLOSE UP HTML
		calendar = calendar + "</form></body></html>"
	}
	
    calWin.document.open();
    calWin.document.write(calendar);
    calWin.document.close();


    calWin.focus();
  }
  else {
    if (currentCal == null) {
      window.status = "Calendar ["+name+"] not found.";
    }
    else if (!currentCal.form) {
      window.status = "Form ["+currentCal.formName+"] not found.";
    }
    else if (!currentCal.form[currentCal.field]) {
      window.status = "Form Field ["+currentCal.formName+"."+currentCal.field+"] not found.";
    }

    if (lastCal != null) {
      currentCal = lastCal;
    }
  }
}

function clearDate() {
  currentCal.form[currentCal.field].value="";
  hideCal();
}

function pickDate(d) {
  hideCal();
  window.focus();

  var date
  date = d;

  currentCal.form[currentCal.field].value=date;
  // IE5/Mac needs focus to show the value, weird.
  currentCal.form[currentCal.field].focus();
}
// ------

if (isN4 || isN6) {
  document.captureEvents(Event.CLICK);
}
document.onclick=markClick;
