function addRemoveID(element, targetID){
	var currentValue = document.getElementById(targetID).value;
	var newValue = "";
	
	if (element.checked){
		//add an id
		if (currentValue == "") {
			newValue = element.value;
		}else{
			newValue = currentValue + ", " + element.value;
		}
	}else{
		//subtract an ID	
		currentValue = currentValue.split(", ");
		for (var i = 0; i < currentValue.length; i ++){
			if (currentValue[i] != element.value){
				newValue += currentValue[i] + ", "
			}
		}
		
		newValue = newValue.substring(0, newValue.length - 2);
	}
	
	document.getElementById(targetID).value = newValue;
}

function addSft(){
	if (document.getElementById("txtNewSoftware").value == ""){
		return;	
	}
	var curDiv = document.getElementById("dvSft");
	var elemCounter = document.getElementById("newCounter").value;
	document.getElementById("newCounter").value = (document.getElementById("newCounter").value -1 ) + 2;
	var newElem = document.createElement("div");
	newElem.setAttribute("id", "dvNewChk_" + elemCounter);
	newElem.innerHTML = "<input type='checkbox' name='chksft_new_" + elemCounter + "' id='chksft_new_" + elemCounter + "' value='New_" + elemCounter + "' onclick=\"javascript: addRemoveID(this, \'hdSftIDs\');\" checked='checked'>&nbsp;" + document.getElementById("txtNewSoftware").value;
	curDiv.appendChild(newElem);
	
	var newChkBox = document.getElementById("chksft_new_" + elemCounter);
	addRemoveID(newChkBox, 'hdSftIDs');

	document.getElementById("hdNewSft").value = document.getElementById("hdNewSft").value + "New_" + elemCounter + "|" + document.getElementById("txtNewSoftware").value + ",";
	document.getElementById("txtNewSoftware").value = "";	
}

//the following function returns the number of days in the month passed
//months are integers and based on 1 (January is 1, February is 2, and so on)
function getDaysInMonth(aMonth, aYear){
		var daysNum;
		
		//convert the passed values to integers
		aMonth = parseInt(aMonth);
		aYear = parseInt(aYear);
		
		//assign number of days according to the month
		switch(aMonth){
			case 1:
			case 3:
			case 5:
			case 7:
			case 8:
			case 10:
			case 12: daysNum = 31; break;
			case 4:
			case 6:
			case 9:
			case 11: daysNum = 30; break;
			case 2:
				if ((aYear % 4 == 0 && aYear % 100 != 0) || (aYear % 400 == 0)){
					daysNum = 29;
				}else{
					daysNum = 28;
				}
		}
		return daysNum;
}
function formValidate(){
	//check if all required fields are not empty
	if (document.getElementById('cboType').value.length == 0){
		alert("Please select an Event Category.");
		return false;
	}
	if (document.getElementById('txtSubject').value.length == 0){
		alert("Event Subject is required.");
		return false;
	}
/*	if (document.getElementById('txtLocation').value.length == 0){
		alert("Event Location is required.");
		return false;
	}*/
	
	//check if the date for the event is not in the past and display a prompt if it is
	var eDate = new Date();
	var curDate = new Date();
	var cont;
	eDate.setMonth(document.getElementById('cboDateMonth').value - 1);
	eDate.setDate(document.getElementById('cboDateDay').value);
	eDate.setFullYear(document.getElementById('cboDateYear').value);

	if (eDate < curDate){
		cont = confirm("The date entered for the event is in the past. Are you sure that you want to record this event with this date?");
		if (!cont){
			return false;
		}
	}
	
	//check if time is all day (in which case no time inputs are required)
	return true;
}

function roundTime(element){
	
	var theTime = new Date('9/8/2008 ' + document.getElementById(element).value);
	//alert(theTime);
	var theRemainder = (theTime.getMinutes() % 15);
	if (theRemainder >= 7) {
		theTime.setMinutes(theTime.getMinutes() + 15 - theRemainder);
	}else{
		theTime.setMinutes(theTime.getMinutes() - theRemainder);
	}
	var ampm = "";
	if (theTime.getHours() >= 12){
		theTime.setHours(theTime.getHours() - 12); 
		ampm = " PM";
	}
	//alert(theTime.getMinutes());

  	if (theTime.getHours() == 0) theTime.setHours(12);
	if (document.getElementById(element).value != ""){
		return (theTime.getHours().toString() + ":" + theTime.getMinutes().toString() + ampm);
	}else{
		return "";
	}
}

function validateTimeFormat(element){
	var passed = true;

	//check if the correct length is passed as a string
	if (document.getElementById(element).value.length > 8){
		passed = false;
	}
	
	//separate the hour
	var separator, hour, minutes, hourSet;
	if (document.getElementById(element).value.indexOf(".") > -1 && document.getElementById(element).value.indexOf(":") > -1){
		passed = false;
	}
	else if (document.getElementById(element).value.indexOf(".") > -1){
		separator = document.getElementById(element).value.indexOf(".")
	}else if(document.getElementById(element).value.indexOf(":") > -1){
		separator = document.getElementById(element).value.indexOf(":")
	}else{
		passed = false;
	}
	hour = document.getElementById(element).value.substr(0, separator);

	//hour cannot be longer than 2 symbols and cannot be larger than 23
	if (hour.length > 2){
		passed = false;
	}
	if (hour > 23){
		passed = false;
	}
	
	//get the minutes
	minutes = document.getElementById(element).value.substr(separator + 1, 2);
	//eliminate space characters in the minutes
	if (minutes == "  " || minutes.length == 0) passed = false;
	if (minutes.indexOf(" ") > - 1){
		minutes = minutes.substr(0, minutes.indexOf(" ")) + minutes.substr(minutes.indexOf(" "), 1)
	}
	//minues cannot be longer than 2 symbols and cannot be larger than 59
	if (minutes.length > 2){
		passed = false;
	}
	if (!IsNumeric(minutes.substr(0, 1))){
		passed = false;
	}else if (!IsNumeric(minutes.substr(1, 1))){
		minutes = "0" + minutes.substr(0, 1);
	}
	if (minutes > 59){
		passed = false;
	}
	if (minutes.length == 1){
		minutes = "0" + minutes;
	}
	
	//get AM or PM
	if (document.getElementById(element).value.toUpperCase().indexOf("A") > -1){
		hourSet = "AM";
	}else if (document.getElementById(element).value.toUpperCase().indexOf("P") > -1){
		hourSet = "PM";
	}else{
		if (hour > 12){
			hour -= 12;
			hourSet = "PM";
		}else{
			hourSet = "AM";
		}
	}
	
	if (document.getElementById(element).value.toUpperCase() == "CLOSED"){
		passed = true;
		return "Closed";
	}
	if (!passed){
		if (document.getElementById(element).value != ""){
			alert ("The time you entered is not in a valid format.  Please enter a time in the format 'HH:MM AM/PM' or in military time format.");
			document.getElementById(element).value = "";
			document.getElementById(element).focus();
			document.getElementById(element).select;
			return false;
		}
	}else{
//		alert(hour.toString() + ":" + minutes.toString() + " " + hourSet);
		document.getElementById(element).value = hour.toString() + ":" + minutes.toString() + " " + hourSet;
		return true;
	}
}

//function that checks if a value is numeric
function IsNumeric(sText){
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;
 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;   
}
function deletePrompt(destURL){
	var cont = confirm("You are about to delete this event.  Are you sure that you want to continue?");
	if (cont){
		window.location = destURL;
	}
}
function refreshCal (dest, DateDay, varStr){
	var nMonth = document.getElementById("cboMonth").value;
	var nYear = document.getElementById("cboYear").value;
	var nlabID = document.getElementById("cboCompLab").value;
	var destURL;
	
	if (dest.indexOf("?") == -1){
		destURL = dest + "?";
	}else{
		destURL = dest + "&";
	}
	destURL = destURL + 'smallCalDate=' + nMonth + '/' + DateDay + '/' + nYear + '&labID=' + nlabID + varStr;

	window.location = destURL;
}
function toggleGeneralDivs(checkControl, targetDiv, checkToOpen){
	if (checkToOpen){
		if(document.getElementById(checkControl).checked){
			document.getElementById(targetDiv).style.display = "inline";
		}else{
			document.getElementById(targetDiv).style.display = "none";
		}
	}else{
		if(document.getElementById(checkControl).checked){
			document.getElementById(targetDiv).style.display = "none";
		}else{
			document.getElementById(targetDiv).style.display = "inline";
		}
	}
}
function toggleLayers(showLayer, hideLayer){
	if (showLayer != ''){
		document.getElementById(showLayer).style.display = "inline";
	}
	if (hideLayer != ''){
		document.getElementById(hideLayer).style.display = "none";
	}	
}
function checkRec(){
	var valid = false;

//determine the reccurance pattern and display it
	var recTxt = "Occures ";

	for (i = 0; i < document.LabRequest.rdRecPattern.length; i++){
		if (document.LabRequest.rdRecPattern[i].checked){
			var recPattern, n;
			n = document.LabRequest.rdRecPattern[i].value.indexOf("_");
			recPattern = document.LabRequest.rdRecPattern[i].value.substring(n+1);
			recTxt += recPattern;
			
			if (document.getElementById("txtRecStart").value != ""){
				recTxt += " starting on  " + document.getElementById("txtRecStart").value + " and ending ";
				if (document.LabRequest.rdEndRec[0].checked && document.getElementById("txtRecEnd").value != ""){
					valid = true; 
					recTxt += "on " + document.getElementById("txtRecEnd").value + ".";
				}
				if (document.LabRequest.rdEndRec[1].checked && document.getElementById("txtRecNum").value != ""){
					valid = true; 
					recTxt += "after " + document.getElementById("txtRecNum").value + " occurances.";
				}
			}
			if (! (document.LabRequest.rdEndRec[0].checked || document.LabRequest.rdEndRec[1].checked)){
				valid = false;
			}
			break;
		}
	}
	if (document.getElementById("txtRecStart").value == ""){
		valid = false;
	}
	if (valid){
		document.getElementById('hRec').value='true'; 
		toggleLayers(false, 'recLayer');
		
		//document.getElementById('dvRecDesc').firstChild.nodeValue = recTxt; 
		document.all.dvRecDesc.innerHTML = recTxt;
		document.getElementById('dvRecDesc').style.width = "auto";
		document.getElementById('dvRecDesc').style.visibility = "visible";
		document.getElementById('ReqDate').value = document.getElementById('txtRecStart').value;

		enableForm();
	}else{
		alert("Please define a valid reccurance pattern");	
		document.getElementById('dvRecDesc').style.visibility = "hidden";
	}
}
function VF_LabRequest(){
	var validated = true;
	
	if (document.getElementById("Name").value == ""){
		validated = false;	
	}
	if (document.getElementById("Email").value == ""){
		validated = false;	
	}
	if (document.getElementById("Lab").value == ""){
		validated = false;	
	}
	if (document.getElementById("CourseCode").value == ""){
		validated = false;	
	}
	if (document.getElementById("ReqDate").value == ""){
		validated = false;	
	}
	if (document.getElementById("StartTime").value == ""){
		validated = false;	
	}
	if (document.getElementById("EndTime").value == ""){
		validated = false;	
	}
	if (document.getElementById("SchoolDept").value == ""){
		validated = false;	
	}
	if (document.getElementById("StudentUse").value == ""){
		validated = false;	
	}

	if (! validated){
		alert("Please provide all of the required information.");		 
	}
	
	if(!document.getElementById("Guidelines").checked && validated){
		alert("Please verify that you have read the  guidelines and followed the proper procedures for reserving this technology-enhanced classroom.");
		validated = false;

	}
	return validated;
}
function disableForm(){
		document.LabRequest.Name.disabled = "disabled";
		document.LabRequest.Email.disabled = "disabled";
		document.LabRequest.Lab.disabled = "disabled";
		document.LabRequest.CourseCode.disabled = "disabled";
		document.LabRequest.ReqDate.disabled = "disabled";
		document.LabRequest.btnReoccurance.disabled = "disabled";
		document.LabRequest.StartTime.disabled = "disabled";
		document.LabRequest.EndTime.disabled = "disabled";
		document.LabRequest.SchoolDept.disabled = "disabled";
		document.LabRequest.SchoolDeptOther.disabled = "disabled";
		document.LabRequest.StudentUse.disabled = "disabled";
		document.LabRequest.Comments.disabled = "disabled";
		document.LabRequest.Guidelines.disabled = "disabled";
		document.LabRequest.Submit.disabled = "disabled";
		document.LabRequest.Reset.disabled = "disabled";
		document.LabRequest.Approved.disabled = "disabled";
}
function enableForm(){
		document.LabRequest.Name.disabled = "";
		document.LabRequest.Email.disabled = "";
		document.LabRequest.Lab.disabled = "";
		document.LabRequest.CourseCode.disabled = "";
		document.LabRequest.ReqDate.disabled = "";
		document.LabRequest.btnReoccurance.disabled = "";
		document.LabRequest.StartTime.disabled = "";
		document.LabRequest.EndTime.disabled = "";
		document.LabRequest.SchoolDept.disabled = "";
		document.LabRequest.SchoolDeptOther.disabled = "";
		document.LabRequest.StudentUse.disabled = "";
		document.LabRequest.Comments.disabled = "";
		document.LabRequest.Guidelines.disabled = "";
		document.LabRequest.Submit.disabled = "";
		document.LabRequest.Reset.disabled = "";
		document.LabRequest.Approved.disabled = "";
}
function setDates(elem){
	var valueStr, startDate, endDate, nBeg, nEnd
	
	valueStr = elem.value;
	nBeg = valueStr.indexOf("=");
	nEnd = valueStr.indexOf("_");
	startDate = valueStr.substring(nBeg + 1, nEnd);
	
	valueStr = valueStr.substring(nEnd);
	nBeg = valueStr.indexOf("=");
	endDate = valueStr.substring(nBeg + 1);

	document.getElementById("txtRecStart").value = startDate;
	document.getElementById("txtRecEnd").value = endDate;
	document.getElementById("rdEndRecDate").checked = "checked";	
}
function setLabSchedule(elem, count){
	var i;
	for (i = 0; i < count.length; i++){
		if (elem.value == count[i]){
			document.getElementById("dvSchedule_" + count[i]).style.display = "inline";	
		}else{
			document.getElementById("dvSchedule_" + count[i]).style.display = "none";	

		}
	}
}


//Calendare Funcrions
function KW_cal_class(m,d,y,d1,d2,mn,c) { // v1.3.0
	this.o="";this.dsp="";this.m=m;this.d=d;this.y=y;this.d1=d1;this.d2=d2;
	this.mn=mn,this.sy=((y%100)<10)?"0"+(y%100):(y%100);this.mm=(m<10)?"0"+m:m;this.c=c
	this.dd=(d<10)?"0"+d:d;	iD=new Date(y,(m-1),d);eD=new Date();eD.setMilliseconds(0)
	eD.setHours(0);eD.setMinutes(0);eD.setSeconds(0);this.ofs=parseInt((eD-iD)/86400000)
	this.gC=function(){iD=new Date(this.y,(this.m-1),this.d);sD=this.dsp.toString()
	retVal="on";if (sD.indexOf("<a")!=0)retVal="off";if (iD.getDay()==0||iD.getDay()==6)
	if (sD.indexOf("<a")!=0)retVal="wkendoff";else retVal="wkendon";if (this.c==0)
	if (sD.indexOf("<a")!=0)retVal="ntmoff";else retVal="ntmon";if (this.ofs==0) 
	retVal="today";	if (this.spc()==true)retVal="special";return "kw_cal_"+retVal;}
	this.spc=function(){var retVal=false;dc=document;if (dc.kw_sp){ for (var i=0;i<dc.kw_sp.length;i++){
	if (this.m==dc.kw_sp[i].m&&(this.y==dc.kw_sp[i].y||dc.kw_sp[i].y=="*")&&this.d==dc.kw_sp[i].d)
	retVal=true;}} return retVal;}
}

function KW_setThisDisplay(f,n,d,o,a1,a2,a3,a4,w,l,sd){ // v1.4.0
	var rV="<a href=\"javascript:window.opener.KW_setCalendar('"+f+"',"+n+",'"+l+"'); window.close();\">"+d+"</a>";
	if ((a1==1&&o>0)||(a1==-1&&o<1)||(a1==2&&o>=0)) rV=d;if (a2>0) {if (o<=-a2) rV=d;} 
	else if (a2<0) {if (o>=-a2) rV=d;}if (a3!=-1) {ss=a3.split("|");if (ss[w]==1) rV=d} 
	if (a4>0) {if (o>=-a4 && o<0) rV=d;} if (a4<0) {if (o<=-a4 && o>0) rV=d; } if (sd) {
	rV=d} return rV;
}

function KW_date_class(m,d,y) {this.m=m;this.d=d;this.y=y;}

function KW_setCalendar(obj,n,l) { // v1.3.1
	dc=document;dO=dc.tMh[n];if (obj.indexOf("|")==-1)MM_findObj(obj).value=dO.o;
	else {oS=obj.split("|");tV= new Array(dO.m,dO.d,dO.y);for(var i=0;i<3;i++) {
	tO=MM_findObj(oS[i]);for (var j=0;j<tO.options.length;j++)if (tO.options[j].value==tV[i]) 
	tO.selectedIndex=j;}}dc.KW_calMonth=dO.m-1;dc.KW_calYear=dO.y;
	if (l!=''){o=MM_findObj(l);v="hide";if (o.style){o=o.style; v='hidden'} o.visibility=v}
}

function KW_setDel(val) { // v1.3.1
	return (val.match(/\.gif$|\.png$|\.jpg$|\.jpeg$/i))?"<img src=\""+val+"\" class=\"kw_img\">":val
}

function KW_expertCalendar(){ // v1.4.1 
	var dc=document,a=KW_expertCalendar.arguments,d=new Date();d.setDate(1); if (a[29]!=-1) 
	d.setMonth(a[29]);else if (dc.KW_calMonth) d.setMonth(dc.KW_calMonth);cMn= d.getMonth(); 
	pMt=((cMn-1)<0)?11:cMn-1;nMh=((cMn+1)>11)?0:cMn+1;if (a[30]!=-1) d.setFullYear(a[30]);
	else if (dc.KW_calYear) d.setYear(dc.KW_calYear);cYr=d.getFullYear();pYr=(pMt==11)?cYr-1:cYr;
	nYr=(nMh==0)?cYr+1:cYr;wdy=d.getDay();dc.tMh=new Array();if (a[25]==1) wdy=((--wdy)<0)?6:wdy;
	tpM=new Date(d.getFullYear(),d.getMonth(),d.getDate()-wdy);for (var i=0;i<wdy;i++) {
	n=dc.tMh.length;dc.tMh[n]= new KW_cal_class((tpM.getMonth()+1),tpM.getDate(),tpM.getFullYear(),
	a[21],a[23],a[tpM.getMonth()],0);dc.tMh[n].o=eval("dc.tMh["+n+"]."+a[20])+dc.tMh[n].d1+
	eval("dc.tMh["+n+"]."+a[22])+dc.tMh[n].d2+eval("dc.tMh["+n+"]."+a[24]);	dc.tMh[n].dsp=
	(a[31]==1)?"&nbsp;":KW_setThisDisplay(a[19],n,tpM.getDate(),dc.tMh[n].ofs,a[26],a[27],
	a[28],a[42],tpM.getDay(),a[41],(dc.tMh[n].spc() && a[45]==1));tpM.setDate(tpM.getDate()+1)}EOM=false;for (var i=1;!EOM;i++) {
	n=dc.tMh.length;dc.tMh[n]=new KW_cal_class((d.getMonth()+1),d.getDate(),d.getFullYear(),
	a[21],a[23],a[d.getMonth()],1);;dc.tMh[n].o=eval("dc.tMh["+n+"]."+a[20])+dc.tMh[n].d1+
	eval("dc.tMh["+n+"]."+a[22])+dc.tMh[n].d2+eval("dc.tMh["+n+"]."+a[24]);
	dc.tMh[n].dsp=KW_setThisDisplay(a[19],n,d.getDate(),dc.tMh[n].ofs,a[26],a[27],a[28],a[42],
	d.getDay(),a[41],(dc.tMh[n].spc() && a[45]==1));d.setDate(d.getDate()+1);if (d.getDate()==1) EOM=true;} wdy=d.getDay();
	if (a[25]==1) wdy=((--wdy)<0)?6:wdy;for (var i=wdy;i<7;i++) {n=dc.tMh.length;
	dc.tMh[n]= new KW_cal_class((d.getMonth()+1),d.getDate(),d.getFullYear(),a[21],a[23],
	a[d.getMonth()],0);dc.tMh[n].o=eval("dc.tMh["+n+"]."+a[20])+dc.tMh[n].d1+
	eval("dc.tMh["+n+"]."+a[22])+dc.tMh[n].d2+eval("dc.tMh["+n+"]."+a[24]);
	dc.tMh[n].dsp=(a[31]==1)?"&nbsp;":KW_setThisDisplay(a[19],n,d.getDate(),dc.tMh[n].ofs,
	a[26],a[27],a[28],a[42],d.getDay(),a[41],(dc.tMh[n].spc() && a[45]==1));d.setDate(d.getDate()+1);} 
	ns4 =(dc.layers)?true:false;px=(ns4||window.opera)?'':'px';s=a[32];if (a[33]==-1) 
	{ww=window;d="document.getElementById('"+a[32].name+"')";k=1;x=0;y=0;xpos=0;ypos=0;
	iM=(navigator.appVersion.indexOf("Mac")==-1);p=".offsetParent";if (dc.getElementById) {
	if (!eval(d)) {d=d.replace(/.getElementById/,".getElementsByName")}
	while (eval(d+p)) {	x+=parseInt(eval(d+p+".offsetLeft"));
	y+=parseInt(eval(d+p+".offsetTop"));p+=".offsetParent";}ox=parseInt(s.offsetLeft);
	oy=parseInt(s.offsetTop);} else {x=parseInt(screen.height/2-75);ox=0;oy=0;
	y=parseInt(screen.width/2-75);}xp=parseInt(x+ox),yp=parseInt(y+oy+20);
	winW=(ns4)?window.innerWidth-16:dc.body.offsetWidth-20;
	winH=(ns4)?window.innerHeight:dc.body.offsetHeight;if (dc.all && iM) winH+=dc.body.scrollTop
	if ((xp+a[35])>winW) xp=winW-a[35]; if ((yp+a[36])>winH) yp=winH-a[36];	
	if (a[41]=='') {if (isNaN(ww.screenX)) {xp=xp-dc.body.scrollLeft+ww.screenLeft;
	yp=yp-dc.body.scrollTop+ww.screenTop;}else {xp=xp+ww.screenX+
	(ww.outerWidth-ww.innerWidth)-ww.pageXOffset;yp=yp+ww.screenY+
	(ww.outerHeight-24-ww.innerHeight)-ww.pageYOffset;	}if (!iM && dc.all)
	{ xp=xp-dc.body.scrollLeft;yp=yp-dc.body.scrollTop}}a[33]=xp;a[34]=yp}
	str="<html><head><title>"+a[cMn]+" "+cYr; accs="<a class=\"kw_cal_a\" ";
	str+="</title></head><link href=\""+a[43]+"\" rel=\"stylesheet\" type=\"text/css\" />"
	str+="<body style=\"margin:0; background-color:"+a[44]+";\">";if (a[41]!='' && !ns4) str="";
	str+="<table class=\"kw_cal_tbl2\"><tr><td colspan=\"7\">"
	str+="<table width=\""+(a[35]-10)+"\" border=0 cellspacing=0 cellpadding=0 class=\"kw_cal_tbl2\">";
	endStr="','"+a[31]+"',0";for(ix=33;ix<37;ix++)endStr+=","+a[ix];for(ix=37;ix<46;ix++)
	endStr+=",'"+a[ix]+"'";bStr="";for (var j=0;j<29;j++) bStr+="'"+a[j]+"',";
	aStr1=bStr+"'"+pMt+"','"+pYr+endStr;aStr2=bStr+"'"+nMh+"','"+nYr+endStr;str+="<tr><td "
	str+="class=\"kw_cal_mnth\">"+accs+"href=\"javascript:window.opener.KW_expertCalendar("+aStr1;
	str+=")\">"+KW_setDel(a[37])+"</a>"+a[cMn]+accs+"href=\"javascript:window.opener.KW_expertCalendar("
	str+=aStr2+")\">"+KW_setDel(a[38])+"</a></td>";aStr1=bStr+"'"+cMn+"','"+(cYr-1)+endStr;
	aStr2=bStr+"'"+cMn+"','"+(cYr+1)+endStr;str+="<td class=\"kw_cal_yr\">"+accs
	str+="href=\"javascript:window.opener.KW_expertCalendar("+aStr1+")\">"+KW_setDel(a[39])+"</a>"
	str+=cYr+accs+"href=\"javascript:window.opener.KW_expertCalendar("+aStr2+")\">"
	str+=KW_setDel(a[40])+"</a></td></tr></table></td></tr><tr>"
	for (var i=(a[25]==1)?13:12;i<19;i++) str+="<td class=\"kw_cal_wktitle\">"+a[i]+"</td>";
	if (a[25]==1) str+="<td class=\"kw_cal_wktitle\">"+a[12]+"</td>";str+="</tr>";
	for (var i=0;i<dc.tMh.length;i++) {if ((i)/7==parseInt((i)/7)) str+="<tr>"; 
	tdClass=dc.tMh[i].gC();temp=dc.tMh[i].dsp.toString();tdActive=(temp.indexOf("<a")!=-1)?"id='kwon'":"";
	str+="<td class=\""+tdClass+"\" "+tdActive+">"+dc.tMh[i].dsp+"</td>"
	if ((i+1)/7==parseInt((i+1)/7))str+="</tr>";}str+=(a[41]==''&&!ns4)?"</table></body></html>":"</table>";
	if (a[41]!='' && !ns4) {t=MM_findObj(a[41]);v="show";if (t.style) { t=t.style; v='visible'}
	t.visibility=v;	t.left=xp+px;t.top=yp+px;while (str.indexOf('window.opener.')!=-1)
	str=str.replace('window.opener.','');p1=str.indexOf(" window.close();"); while (p1!=-1) {
	str=str.substring(0,p1)+str.substring(p1+16);p1=str.indexOf(" window.close();")}
	MM_findObj(a[41]).innerHTML=str;} else {var nnx=(ns4)?1.25:1;var look='width='+(a[35]*nnx)
	look+=',height='+(a[36]*nnx)+',left='+a[33]+',top='+a[34];
	popwin=window.open('','calendar',look);	with(popwin.document){open();write(str);close();}}
}
