function MM_swapImgRestore(){var i,x,a=document.MM_sr;for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)x.src=x.oSrc;}
function MM_preloadImages(){var d=document;if(d.images){if(!d.MM_p)d.MM_p=new Array();var i,j=d.MM_p.length,a=MM_preloadImages.arguments;for(i=0;i<a.length;i++)
if(a[i].indexOf("#")!=0){d.MM_p[j]=new Image;d.MM_p[j++].src=a[i];}}}
function MM_findObj(n,d){var p,i,x;if(!d)d=document;if((p=n.indexOf("?"))>0&&parent.frames.length){d=parent.frames[n.substring(p+1)].document;n=n.substring(0,p);}
if(!(x=d[n])&&d.all)x=d.all[n];for(i=0;!x&&i<d.forms.length;i++)x=d.forms[i][n];for(i=0;!x&&d.layers&&i<d.layers.length;i++)x=MM_findObj(n,d.layers[i].document);if(!x&&d.getElementById)x=d.getElementById(n);return x;}
function MM_swapImage(){var i,j=0,x,a=MM_swapImage.arguments;document.MM_sr=new Array;for(i=0;i<(a.length-2);i+=3)
if((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x;if(!x.oSrc)x.oSrc=x.src;x.src=a[i+2];}}
function validate_form()
{var fname,lname,country,phone,email,city,graduation;fname=document.getElementById("fname");lname=document.getElementById("lname");country=document.getElementById("country");city=document.getElementById("city");phone=document.getElementById("phone");email=document.getElementById("email");graduation=document.getElementById("graduation");if(fname.value=="")
{alert("Enter your Name");fname.focus();return false;}
if(phone.value=="")
{alert("Enter your Phone number");phone.focus();return(false);}
if(phone.value!="")
{var checkOK="0123456789";var checkStr=phone.value;var allValid=true;var allNum="";for(i=0;i<checkStr.length;i++)
{ch=checkStr.charAt(i);for(j=0;j<checkOK.length;j++)
if(ch==checkOK.charAt(j))
break;if(j==checkOK.length)
{allValid=false;break;}
if(ch!=",")
allNum+=ch;}
if(!allValid)
{alert("Please enter only digit characters in the \"Phone number\" field.");phone.focus();return(false);}}
if(email.value=="")
{alert("Enter your email-ID");email.focus();return(false);}
var checkEmail="@.";var checkStr=email.value;var EmailValid=false;var EmailAt=false;var EmailPeriod=false;for(i=0;i<checkStr.length;i++)
{ch=checkStr.charAt(i);for(j=0;j<checkEmail.length;j++)
{if(ch==checkEmail.charAt(j)&&ch=="@")
EmailAt=true;if(ch==checkEmail.charAt(j)&&ch==".")
EmailPeriod=true;if(EmailAt&&EmailPeriod)
break;if(j==checkEmail.length)
break;}
if(EmailAt&&EmailPeriod)
{EmailValid=true
break;}}
if(!EmailValid)
{alert("The \"email\" field must contain an \"@\" and a \".\".");email.focus();return(false);}
return true;}
var datePickerDivID="datepicker";var iFrameDivID="datepickeriframe";var dayArrayShort=new Array('Su','Mo','Tu','We','Th','Fr','Sa');var dayArrayMed=new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');var dayArrayLong=new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');var monthArrayShort=new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');var monthArrayMed=new Array('Jan','Feb','Mar','Apr','May','June','July','Aug','Sept','Oct','Nov','Dec');var monthArrayLong=new Array('January','February','March','April','May','June','July','August','September','October','November','December');var defaultDateSeparator="/";var defaultDateFormat="mdy"
var dateSeparator=defaultDateSeparator;var dateFormat=defaultDateFormat;/**
This is the main function you'll call from the onClick event of a button.
Normally, you'll have something like this on your HTML page:

Start Date: <input name="StartDate">
<input type=button value="select" onclick="displayDatePicker('StartDate');">

That will cause the datepicker to be displayed beneath the StartDate field and
any date that is chosen will update the value of that field. If you'd rather have the
datepicker display beneath the button that was clicked, you can code the button
like this:

<input type=button value="select" onclick="displayDatePicker('StartDate', this);">

So, pretty much, the first argument (dateFieldName) is a string representing the
name of the field that will be modified if the user picks a date, and the second
argument (displayBelowThisObject) is optional and represents an actual node
on the HTML document that the datepicker should be displayed below.

In version 1.1 of this code, the dtFormat and dtSep variables were added, allowing
you to use a specific date format or date separator for a given call to this function.
Normally, you'll just want to set these defaults globally with the defaultDateSeparator
and defaultDateFormat variables, but it doesn't hurt anything to add them as optional
parameters here. An example of use is:

<input type=button value="select" onclick="displayDatePicker('StartDate', false, 'dmy', '.');">

This would display the datepicker beneath the StartDate field (because the
displayBelowThisObject parameter was false), and update the StartDate field with
the chosen value of the datepicker using a date format of dd.mm.yyyy
*/function displayDatePicker(dateFieldName,displayBelowThisObject,dtFormat,dtSep)
{var targetDateField=document.getElementsByName(dateFieldName).item(0);if(!displayBelowThisObject)
displayBelowThisObject=targetDateField;if(dtSep)
dateSeparator=dtSep;else
dateSeparator=defaultDateSeparator;if(dtFormat)
dateFormat=dtFormat;else
dateFormat=defaultDateFormat;var x=displayBelowThisObject.offsetLeft;var y=displayBelowThisObject.offsetTop+ displayBelowThisObject.offsetHeight;var parent=displayBelowThisObject;while(parent.offsetParent){parent=parent.offsetParent;x+=parent.offsetLeft;y+=parent.offsetTop;}
drawDatePicker(targetDateField,x,y);}
function drawDatePicker(targetDateField,x,y)
{var dt=getFieldDate(targetDateField.value);if(!document.getElementById(datePickerDivID)){var newNode=document.createElement("div");newNode.setAttribute("id",datePickerDivID);newNode.setAttribute("class","dpDiv");newNode.setAttribute("style","visibility: hidden;");document.body.appendChild(newNode);}
var pickerDiv=document.getElementById(datePickerDivID);pickerDiv.style.position="absolute";pickerDiv.style.left=x+"px";pickerDiv.style.top=y+"px";pickerDiv.style.visibility=(pickerDiv.style.visibility=="visible"?"hidden":"visible");pickerDiv.style.display=(pickerDiv.style.display=="block"?"none":"block");pickerDiv.style.zIndex=10000;refreshDatePicker(targetDateField.name,dt.getFullYear(),dt.getMonth(),dt.getDate());}
function refreshDatePicker(dateFieldName,year,month,day)
{var thisDay=new Date();if((month>=0)&&(year>0)){thisDay=new Date(year,month,1);}else{day=thisDay.getDate();thisDay.setDate(1);}
var crlf="\r\n";var TABLE="<table cols=7 class='dpTable'>"+ crlf;var xTABLE="</table>"+ crlf;var TR="<tr class='dpTR'>";var TR_title="<tr class='dpTitleTR'>";var TR_days="<tr class='dpDayTR'>";var TR_todaybutton="<tr class='dpTodayButtonTR'>";var xTR="</tr>"+ crlf;var TD="<td class='dpTD' onMouseOut='this.className=\"dpTD\";' onMouseOver=' this.className=\"dpTDHover\";' ";var TD_title="<td colspan=5 class='dpTitleTD'>";var TD_buttons="<td class='dpButtonTD'>";var TD_todaybutton="<td colspan=7 class='dpTodayButtonTD'>";var TD_days="<td class='dpDayTD'>";var TD_selected="<td class='dpDayHighlightTD' onMouseOut='this.className=\"dpDayHighlightTD\";' onMouseOver='this.className=\"dpTDHover\";' ";var xTD="</td>"+ crlf;var DIV_title="<div class='dpTitleText'>";var DIV_selected="<div class='dpDayHighlight'>";var xDIV="</div>";var html=TABLE;html+=TR_title;html+=TD_buttons+ getButtonCode(dateFieldName,thisDay,-1,"&lt;")+ xTD;html+=TD_title+ DIV_title+ monthArrayLong[thisDay.getMonth()]+" "+ thisDay.getFullYear()+ xDIV+ xTD;html+=TD_buttons+ getButtonCode(dateFieldName,thisDay,1,"&gt;")+ xTD;html+=xTR;html+=TR_days;for(i=0;i<dayArrayShort.length;i++)
html+=TD_days+ dayArrayShort[i]+ xTD;html+=xTR;html+=TR;for(i=0;i<thisDay.getDay();i++)
html+=TD+"&nbsp;"+ xTD;do{dayNum=thisDay.getDate();TD_onclick=" onclick=\"updateDateField('"+ dateFieldName+"', '"+ getDateString(thisDay)+"');\">";if(dayNum==day)
html+=TD_selected+ TD_onclick+ DIV_selected+ dayNum+ xDIV+ xTD;else
html+=TD+ TD_onclick+ dayNum+ xTD;if(thisDay.getDay()==6)
html+=xTR+ TR;thisDay.setDate(thisDay.getDate()+ 1);}while(thisDay.getDate()>1)
if(thisDay.getDay()>0){for(i=6;i>thisDay.getDay();i--)
html+=TD+"&nbsp;"+ xTD;}
html+=xTR;var today=new Date();var todayString="Today is "+ dayArrayMed[today.getDay()]+", "+ monthArrayMed[today.getMonth()]+" "+ today.getDate();html+=TR_todaybutton+ TD_todaybutton;html+="<button class='dpTodayButton' onClick='refreshDatePicker(\""+ dateFieldName+"\");'>this month</button> ";html+="<button class='dpTodayButton' onClick='updateDateField(\""+ dateFieldName+"\");'>close</button>";html+=xTD+ xTR;html+=xTABLE;document.getElementById(datePickerDivID).innerHTML=html;adjustiFrame();}
function getButtonCode(dateFieldName,dateVal,adjust,label)
{var newMonth=(dateVal.getMonth()+ adjust)%12;var newYear=dateVal.getFullYear()+ parseInt((dateVal.getMonth()+ adjust)/12);if(newMonth<0){newMonth+=12;newYear+=-1;}
return"<button class='dpButton' onClick='refreshDatePicker(\""+ dateFieldName+"\", "+ newYear+", "+ newMonth+");'>"+ label+"</button>";}
function getDateString(dateVal)
{var dayString="00"+ dateVal.getDate();var monthString="00"+(dateVal.getMonth()+1);dayString=dayString.substring(dayString.length- 2);monthString=monthString.substring(monthString.length- 2);switch(dateFormat){case"dmy":return dayString+ dateSeparator+ monthString+ dateSeparator+ dateVal.getFullYear();case"ymd":return dateVal.getFullYear()+ dateSeparator+ monthString+ dateSeparator+ dayString;case"mdy":default:return monthString+ dateSeparator+ dayString+ dateSeparator+ dateVal.getFullYear();}}
function getFieldDate(dateString)
{var dateVal;var dArray;var d,m,y;try{dArray=splitDateString(dateString);if(dArray){switch(dateFormat){case"dmy":d=parseInt(dArray[0],10);m=parseInt(dArray[1],10)- 1;y=parseInt(dArray[2],10);break;case"ymd":d=parseInt(dArray[2],10);m=parseInt(dArray[1],10)- 1;y=parseInt(dArray[0],10);break;case"mdy":default:d=parseInt(dArray[1],10);m=parseInt(dArray[0],10)- 1;y=parseInt(dArray[2],10);break;}
dateVal=new Date(y,m,d);}else if(dateString){dateVal=new Date(dateString);}else{dateVal=new Date();}}catch(e){dateVal=new Date();}
return dateVal;}
function splitDateString(dateString)
{var dArray;if(dateString.indexOf("/")>=0)
dArray=dateString.split("/");else if(dateString.indexOf(".")>=0)
dArray=dateString.split(".");else if(dateString.indexOf("-")>=0)
dArray=dateString.split("-");else if(dateString.indexOf("\\")>=0)
dArray=dateString.split("\\");else
dArray=false;return dArray;}
function updateDateField(dateFieldName,dateString)
{var targetDateField=document.getElementsByName(dateFieldName).item(0);if(dateString)
targetDateField.value=dateString;var pickerDiv=document.getElementById(datePickerDivID);pickerDiv.style.visibility="hidden";pickerDiv.style.display="none";adjustiFrame();targetDateField.focus();if((dateString)&&(typeof(datePickerClosed)=="function"))
datePickerClosed(targetDateField);}
function adjustiFrame(pickerDiv,iFrameDiv)
{var is_opera=(navigator.userAgent.toLowerCase().indexOf("opera")!=-1);if(is_opera)
return;try{if(!document.getElementById(iFrameDivID)){var newNode=document.createElement("iFrame");newNode.setAttribute("id",iFrameDivID);newNode.setAttribute("src","javascript:false;");newNode.setAttribute("scrolling","no");newNode.setAttribute("frameborder","0");document.body.appendChild(newNode);}
if(!pickerDiv)
pickerDiv=document.getElementById(datePickerDivID);if(!iFrameDiv)
iFrameDiv=document.getElementById(iFrameDivID);try{iFrameDiv.style.position="absolute";iFrameDiv.style.width=pickerDiv.offsetWidth;iFrameDiv.style.height=pickerDiv.offsetHeight;iFrameDiv.style.top=pickerDiv.style.top;iFrameDiv.style.left=pickerDiv.style.left;iFrameDiv.style.zIndex=pickerDiv.style.zIndex- 1;iFrameDiv.style.visibility=pickerDiv.style.visibility;iFrameDiv.style.display=pickerDiv.style.display;}catch(e){}}catch(ee){}}
