
// Common Code Start

function fnCheckDateformat(fmt) {
	if(fmt.toLowerCase()=='MM-DD-YYYY'.toLowerCase())
		gfPop.giDatePos=eval(1);
	else if(fmt.toLowerCase()=='DD-MM-YYYY'.toLowerCase())
		gfPop.giDatePos=eval(0);	
	else if(fmt.toLowerCase()=='YYYY-MM-DD'.toLowerCase())
		gfPop.giDatePos=eval(2);
}

function fnGetSelectedRecord(formname,mainaction,formaction,id) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+id;
	formname.submit();
}

function fnCallServlet(formname,mainaction,formaction) {
	
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
	//alert("formname.action = "  + formname.action + "--> combo_status = " + formname.combo_status.value + " --> combo_product = " +formname.combo_product.value);
	formname.submit();
	
}
function fnCallServletForUpdateRequest(formname,mainaction,formaction,divname) {
	
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&divname="+divname;
	formname.submit();
	
}
function fnCallServletFromRequestToAdditional(formname,mainaction,formaction) {
		formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
	    formname.submit();
}
function fnCallServletID(formname,mainaction,formaction) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
	formname.submit();
}
function fnCannotDelete(message,field) {
	if (document.getElementById) { // DOM3 = IE5, NS6 
		document.getElementById("message").value="Cannot delete "+message;
		document.getElementById("hiddenname").value=field;
	}
	showdiv('messagedivid');
}
function trimdata(data) {
	/*return data.replace(/^\s+|\s+$/, '');*/
	return data.replace(/^\s+|\s+$/g, '');
}
function MM_preloadImages() { //v3.0
  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_swapImgRestore() { //v3.0
  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_findObj(n, d) { //v4.01
  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() { //v3.0
  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];}
}
// Common Code End
// Administration Start
function fnCallAdminServlet(formname,mainaction,formaction,id) {
	//fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+id;
	formname.submit();
}
function fnGetSelectedUserProfile(formname,mainaction,formaction,id,frame,prevdivid) {
	//fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+id + "&PAGENAME=" + prevdivid;
	formname.target=frame;
	formname.submit();
}

function fnSaveUserInfo(formname,mainaction,page,userid) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION=updateuser&PAGENAME="+page+"&id="+userid;
	formname.submit();
}
// Administration End
// Customer Code Start
function fnGetSelectedCustomerProfile(formname,mainaction,formaction,id,frame) {
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&customerid="+id;
	formname.target=frame;
	formname.submit();
}

function fnCustomerEditInfo(formname,mainaction,formaction,id) {
	//fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&customerid="+id;
	formname.submit();
}



// Customer Code End.

// Home Start
function fnCallFeedBack(formname,mainaction,formaction) {
	if(fnEmptyField(formname.subject)) {
	  if(fnIsEmail(formname.toemail)) 
	  {
	//	if(fnIsEmail(formname.toccemail))
	//	{
		 if(validateAllEmailIds(formname.toccemail))
		 {
		  if(fnEmptyField(formname.fromaddress))
		  {
		   if(checkValidPhone(formname.phone , 'Phone'))
		   {
				if(fnEmptyField(formname.feedback)) {
					fnShowProcess('processingdivid');
					formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
					formname.submit();
				}
				else {
					if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value="Please Enter Feedback Description";
						document.getElementById("hiddenname").value="feedback";
	   				}
					showdiv('messagedivid');
				}
			}
			else
			{
			    if (document.getElementById)
			   {
			   	document.getElementById("message").value="Please Enter Valid Phone Number with only digits (0-9), special characters (+,-,dot,()) and space";
				document.getElementById("hiddenname").value="phone";
   			   }
			showdiv('messagedivid');
			}
		 }
			else
			{
			   if (document.getElementById) { // DOM3 = IE5, NS6 
			      document.getElementById("message").value="Please Enter the Name";
			      document.getElementById("hiddenname").value="fromaddress";
   		}
					showdiv('messagedivid');
			}
		}		
		else
		{
		   if (document.getElementById)
		   {
			   document.getElementById("message").value="Please Enter Valid Email Address in CC";
			   document.getElementById("hiddenname").value="toccemail";
   		   }
			showdiv('messagedivid');
		}
	//  }
	//  else
	//  {
	//		if (document.getElementById) { // DOM3 = IE5, NS6 
	//			document.getElementById("message").value="Please Enter Valid CC Email Address";
	//			document.getElementById("hiddenname").value="toemail";
   	//		}
	//		showdiv('messagedivid');
	//  }
	 }
	 else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter Valid Email Address";
				document.getElementById("hiddenname").value="toemail";
   			}
			showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter the Subject";
			document.getElementById("hiddenname").value="subject";
   		}
		showdiv('messagedivid');
	}
}
// Home End
// Product Services Start
function fnGetSelectedProductRecord(formname,mainaction,formaction,id,frame) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&productid="+id;
	formname.target=frame;
	formname.submit();
}
function fnGetProductSupportRecord(formname,mainaction,formaction,id,frame) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&productid="+id;
	formname.target=frame;
	formname.submit();
}
// Product Services End
// Request Start
function fnGetSelectedRecordHistory(formname,mainaction,formaction,id,version,frame) {
	formname.target=frame;
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+id+"&version="+version;
	formname.submit();
}
function fnCancelRequest(formname,mainaction,formaction) {
	//document.getElementById("combo_severityid").style.visibility="hidden";
    document.getElementById("combo_priorityid").style.visibility="hidden";
    document.getElementById("combo_productid").style.visibility="hidden";
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
	formname.submit();
}
function fnCancelRequestUpdate(formname,mainaction,formaction) {
	//document.getElementById("combo_severityid").style.visibility="hidden";
 	document.getElementById("combo_status").style.visibility="hidden";
 	document.getElementById("combo_priorityid").style.visibility="hidden";
 	document.getElementById("combo_assignedto").style.visibility="hidden";
 	document.getElementById("txtproducts").style.visibility="hidden";
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
	formname.submit();
}
function fnCancelRequestUpdateAssigned(formname,mainaction,formaction) {
 	document.getElementById("combo_status").style.visibility="hidden";
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
	formname.submit();
}
function fnGetSelectedRecordFrameDWR(formname,mainaction,formaction,id,frame) {
	if(typeof id == 'undefined')
		id = this.getAttribute("id");
	if(typeof mainaction == 'undefined')
		mainaction = this.getAttribute("mainaction");
	if(typeof formaction == 'undefined')
		formaction = this.getAttribute("formaction");
	if(typeof formname == 'undefined')
		formname = this.getAttribute("formname");
	if(typeof frame == 'undefined')
		frame = this.getAttribute("frame");
	
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+id;
	//formname.target=frame;
	formname.submit();
}
function fnGetSelectedRecordFrame(formname,mainaction,formaction,id,frame) {
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+id;
	formname.target=frame;
	formname.submit();
}
function fnGetSelectedRecordFrameMyView(formname,mainaction,formaction,id,frame) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+id;
	formname.target=frame;
	formname.submit();
}
function fnCheckNameForLength(length,field,fieldname,name) {
	var fieldlength=fieldname.value.length;
	var valueoffield=fieldname.value;
	if(parseInt(fieldlength) > parseInt(length)) {
		fieldname.value=fieldname.value.substring(0,parseInt(length));
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("messagelength").value=name+" can be maximum "+length+" characters long";
			document.getElementById("hiddenlengthname").value=field;
   		}
   		showdiv('messagelengthdivid');
   		return false;
	}
	else {
		fieldname.value=valueoffield;
		return true;
	}
}
function fnPageServlet(formname,mainaction,formaction,page) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&PAGE="+page;
	formname.submit();
}

function fnAchieveHistory(formname,mainaction,formaction,ticketid) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&ticketid="+ticketid;
	formname.submit();
}

function fnGetSelectedRecord1(formname,mainaction,formaction,ticketid,txtversion) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&ticketid="+ticketid+"&txtversion="+txtversion;
	formname.submit();
}
function fnCallRequestServlet(formname,mainaction,formaction,page) {
	if(formname=='document.requestupdateform') {
		//document.getElementById("combo_severityid").style.visibility="hidden";
	    document.getElementById("combo_priorityid").style.visibility="hidden";
	    document.getElementById("combo_status").style.visibility="hidden";
	    document.getElementById("combo_assignedto").style.visibility="hidden";
    }
    fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&PAGENAME="+page;
	formname.submit();
}
function fnServletCloseTicket(formname,mainaction,formaction,page) {
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&PAGENAME="+page;
	formname.submit();
}
function fnNewVersion(formname,mainaction,page,fmt) {
var currentDate = new Date();
	var am_pm = "AM";
	var hour        = currentDate.getHours();
	var minute      = currentDate.getMinutes();
	var second      = currentDate.getSeconds();
	var monthnumber = currentDate.getMonth();
	var monthday    = currentDate.getDate();
	var year        = currentDate.getYear();
	if (hour   > 11) { am_pm = "PM";        }
	if (hour   > 12) { hour = hour - 12; }
	if (hour   == 0) { hour = 12;        }
	if( document.getElementById("duedate").value != "" ) {
		if( document.getElementById("duedate").value.length == 10 ) {
			//	alert("sdad");
			document.getElementById("duedate").value = document.getElementById("duedate").value + " " + hour + ":" + minute + " " + am_pm; 
		}
	}
	getdata();
	if(fnSpecialCharacterCheckSubject(formname.txtsubject)) {
	if(fnEmptyField(formname.txtsubject)) {
	  if(formname.txtrequesterid.value!=''){
	  if(fnIsEmail(formname.txtcustomeremail,'Email')){
		if(formname.combo_categoryname.selectedIndex != 0) {
			if(formname.combo_priority.selectedIndex != 0) {
				if(fnEmptyField(formname.duedate)) {
					if(fnValidateDate(fmt,formname.duedate)) {
						if(fnDateCompare(formname.txtrequestdate,formname.duedate,fmt)) {
						  if(fnEmptyField(formname.combo_status)) {
							if(fnEmptyField(formname.txtproblemdescription)) {
								if(isValidManHours(formname.manhour.value)){
									if(isValidNumber(formname.hoursworked.value)){
										if( formname.combo_status.value == 4 && formname.assignedtoid.value == "" ) {
											if (document.getElementById) { // DOM3 = IE5, NS6 
												document.getElementById("messageid").value="Cannot Fix Ticket,as yet to be Assigned";
												document.getElementById("hiddenname").value="assignedtoid";
									   		}
			   								document.getElementById("combo_priorityid").style.visibility="hidden";
			   								document.getElementById("combo_status").style.visibility="hidden";
			   								document.getElementById("combo_assignedto").style.visibility="hidden";
			   								document.getElementById("txtproducts").style.visibility="hidden";
			   								document.getElementById("combo_locationid").style.visibility="hidden";
								   			showdiv('messagediv');
										} else {
											if (document.getElementById) { // DOM3 = IE5, NS6 
												document.getElementById("messageques").value="Do You Want to Create a New Version?";
												document.getElementById("hiddenquesname").value="taproblemresolution";
												
			   								}
			   			                    document.getElementById("combo_priorityid").style.visibility="hidden";
			   			                    document.getElementById("combo_status").style.visibility="hidden";
			   			                    document.getElementById("combo_assignedto").style.visibility="hidden";
			   			                    document.getElementById("combo_locationid").style.visibility="hidden";
			   			                    document.getElementById("txtproducts").style.visibility="hidden";
			   								showdiv('messagequesdivid');
										}
										
	   								}else{
	   									if (document.getElementById) { // DOM3 = IE5, NS6 
											document.getElementById("messageid").value="Enter Valid Hours";
											document.getElementById("hiddenname").value="hoursworked";
								   		}
		   								document.getElementById("combo_priorityid").style.visibility="hidden";
		   								document.getElementById("combo_status").style.visibility="hidden";
		   								document.getElementById("combo_assignedto").style.visibility="hidden";
		   								document.getElementById("txtproducts").style.visibility="hidden";
		   								document.getElementById("combo_locationid").style.visibility="hidden";
							   			showdiv('messagediv');
	   								}
	   							}else{
	   								if (document.getElementById) { // DOM3 = IE5, NS6 
										document.getElementById("messageid").value="Enter Valid Estimated Man Hours";
										document.getElementById("hiddenname").value="manhour";
							   		}
	   								document.getElementById("combo_priorityid").style.visibility="hidden";
	   								document.getElementById("combo_status").style.visibility="hidden";
	   								document.getElementById("combo_assignedto").style.visibility="hidden";
	   								document.getElementById("txtproducts").style.visibility="hidden";
	   								document.getElementById("combo_locationid").style.visibility="hidden";
						   			showdiv('messagediv');
	   							}
							}
							else {
									if (document.getElementById) { // DOM3 = IE5, NS6 
										document.getElementById("messageid").value="Enter Problem Description";
										document.getElementById("hiddenname").value="txtproblemdescription";
							   		}
	   								document.getElementById("combo_priorityid").style.visibility="hidden";
	   								document.getElementById("combo_status").style.visibility="hidden";
	   								document.getElementById("combo_assignedto").style.visibility="hidden";
	   								document.getElementById("txtproducts").style.visibility="hidden";
	   								document.getElementById("combo_locationid").style.visibility="hidden";
						   			showdiv('messagediv');
								}
						  }
						  else {
								if (document.getElementById) { // DOM3 = IE5, NS6 
									document.getElementById("messageid").value="Please Select Status";
									document.getElementById("hiddenname").value="combo_status";
						   		}
	   								document.getElementById("combo_priorityid").style.visibility="hidden";
	   								document.getElementById("combo_status").style.visibility="hidden";
	   								document.getElementById("combo_assignedto").style.visibility="hidden";
	   								document.getElementById("txtproducts").style.visibility="hidden";
	   								document.getElementById("combo_locationid").style.visibility="hidden";
					   			showdiv('messagediv');
							}
						}
						else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Due Date should be Greater than Request Date";
					document.getElementById("hiddenname").value="duedate";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
					}
					else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Enter Valid Due Date";
					document.getElementById("hiddenname").value="duedate";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
				}
				else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Due Date";
					document.getElementById("hiddenname").value="duedate";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Priority";
					document.getElementById("hiddenname").value="combo_priority";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
		}
		else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Category";
					document.getElementById("hiddenname").value="combo_categoryname";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
			
			}else{
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Enter Valid Email Address.";
					document.getElementById("hiddenname").value="txtcustomeremail";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
		}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Existing Requester";
					document.getElementById("hiddenname").value="temp";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
	}
	else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("messageid").value="Please Enter Subject";
				document.getElementById("hiddenname").value="txtsubject";
	   		}
   			document.getElementById("combo_priorityid").style.visibility="hidden";
   			document.getElementById("combo_status").style.visibility="hidden";
   			document.getElementById("combo_assignedto").style.visibility="hidden";
   			document.getElementById("txtproducts").style.visibility="hidden";
   			document.getElementById("combo_locationid").style.visibility="hidden";
   			showdiv('messagediv');
		}
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("messageid").value="Please Enter Subject with  only Character, Number, Special Character (except :: \'and\" )and Space, start with Character";
				document.getElementById("hiddenname").value="txtsubject";
	   		}
   			document.getElementById("combo_priorityid").style.visibility="hidden";
   			document.getElementById("combo_status").style.visibility="hidden";
   			document.getElementById("combo_assignedto").style.visibility="hidden";
   			document.getElementById("txtproducts").style.visibility="hidden";
   			document.getElementById("combo_locationid").style.visibility="hidden";
   			showdiv('messagediv');
		}
}
function fnNewVersion1(formname,mainaction,page) {
	var chk=false;
	if(fnEmptyFieldWithoutMsg(formname.txtcallbackno)) {
		if(isValidPhone(formname.txtcallbackno)) {
			chk=true;
		}
		else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    	document.getElementById("message").value="Please Enter Valid Phone Number with only digits (0-9), special characters (+,-,dot,()) and space";
			        document.getElementById("hiddenname").value="txtcallbackno";
   		         }
   		         showdiv('messagedivid');
   		         chk=false;
		}
	}
	else {
		chk=true;
		
	}
	if(chk) {
		if (document.getElementById) { // DOM3 = IE5, NS6 
									document.getElementById("messageques").value="Do You Want to Create a New Version?";
									document.getElementById("hiddenquesname").value="txtos";
   								}
   								showdiv('messagequesdivid');
	}
}

function fnNewVersion2(formname,mainaction,page) {
	var chk=false;
	if(fnEmptyFieldWithoutMsg(formname.txtdevice_name)) {
		if(fnCharValidnWithoutSpecChars(formname.txtdevice_name)) {
			chk=true;
		}
		else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter only Characters, Numbers, Underscore and Space, start with Character";
			document.getElementById("hiddenname").value="txtdevice_name";
   		}
   		showdiv('messagedivid');
	}
	}
	else {
		chk=true;
	}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.txtdeviceip)) {
			if(isValidIPAddress(formname.txtdeviceip.value)) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid Device IP Address";
			    document.getElementById("hiddenname").value="txtdeviceip";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.txturl)) {
			if(checkValidUrl(formname.txturl,'URL')) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid URL";
			    document.getElementById("hiddenname").value="txturl";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
		if(chk) {
			if(fnEmptyFieldWithoutMsg(formname.txtos)) {
				if(fnCharValidnWithoutSpecChars(formname.txtos)) {
					chk=true;
				}	
				else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please Enter only Characters, Numbers, Underscore and Space, start with Character";
			            document.getElementById("hiddenname").value="txtos";
   		                }
   		            showdiv('messagedivid');
					chk=false;
				}
			}
			else {
				chk=true;
			}
			if(chk==true) {
				if(fnEmptyFieldWithoutMsg(formname.txtosversion)) {
					if(fnEmptyFieldWithoutMsg(formname.txtos)) {
						chk=true;
					}
					else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please enter OS";
			            document.getElementById("hiddenname").value="txtos";
   		                }
   		               showdiv('messagedivid');
						//alert('Please enter OS');
						chk=false;
					}
				}
				else {
					chk=true;
				}
				if(chk) {
	              if (document.getElementById) { // DOM3 = IE5, NS6 
									document.getElementById("messageques").value="Do You Want to Create a New Version?";
									document.getElementById("hiddenquesname").value="txtos";
   								}
   								showdiv('messagequesdivid');
	            }
	           }
	         }
	      }
	      }
}


function fnOldVersion(formname,mainaction,page,fmt) {
	var currentDate = new Date();
	var am_pm = "AM";
	var hour        = currentDate.getHours();
	var minute      = currentDate.getMinutes();
	var second      = currentDate.getSeconds();
	var monthnumber = currentDate.getMonth();
	var monthday    = currentDate.getDate();
	var year        = currentDate.getYear();
	if (hour   > 11) { am_pm = "PM";        }
	if (hour   > 12) { hour = hour - 12; }
	if (hour   == 0) { hour = 12;        }
	if( document.getElementById("duedate").value != "" ) {
		if( document.getElementById("duedate").value.length == 10 ) {
			//	alert("sdad");
			document.getElementById("duedate").value = document.getElementById("duedate").value + " " + hour + ":" + minute + " " + am_pm; 
		}
	}
	getdata();
	if(fnSpecialCharacterCheckSubject(formname.txtsubject)) {
	if(fnEmptyField(formname.txtsubject)) {
	 if(formname.txtrequesterid.value!=''){
	 if(fnIsEmail(formname.txtcustomeremail,'Email')){
		if(formname.combo_categoryname.selectedIndex != 0) {
			if(formname.combo_priority.selectedIndex != 0) {
				if(fnEmptyField(formname.duedate)) {
					if(fnValidateDate(fmt,formname.duedate)) {
						if(fnDateCompare(formname.txtrequestdate,formname.duedate,fmt)) {
						  if(fnEmptyField(formname.combo_status)) {
							if(fnEmptyField(formname.txtproblemdescription)) {
								if(isValidManHours(formname.manhour.value)){
									if(isValidNumber(formname.hoursworked.value)){
										
										if( formname.combo_status.value == 4 && formname.assignedtoid.value == "") {
											if (document.getElementById) { // DOM3 = IE5, NS6 
												document.getElementById("messageid").value="Cannot Fix Ticket,as yet to be Assigned";
												document.getElementById("hiddenname").value="assignedtoid";
									   		}
			   								document.getElementById("combo_priorityid").style.visibility="hidden";
			   								document.getElementById("combo_status").style.visibility="hidden";
			   								document.getElementById("combo_assignedto").style.visibility="hidden";
			   								document.getElementById("txtproducts").style.visibility="hidden";
			   								document.getElementById("combo_locationid").style.visibility="hidden";
								   			showdiv('messagediv');
										} else {
			   								document.getElementById("combo_priorityid").style.visibility="hidden";
			   								document.getElementById("combo_status").style.visibility="hidden";
			   								document.getElementById("combo_assignedto").style.visibility="hidden";
			   								document.getElementById("txtproducts").style.visibility="hidden";
			   								document.getElementById("combo_locationid").style.visibility="hidden";
								   			fnShowProcess('processingdivid');
											formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION=updateticket&PAGENAME="+page;
											formname.submit();
										}
									}else{
										if (document.getElementById) { // DOM3 = IE5, NS6 
											document.getElementById("messageid").value="Enter Valid Hours";
											document.getElementById("hiddenname").value="hoursworked";
								   		}
		   								document.getElementById("combo_priorityid").style.visibility="hidden";
		   								document.getElementById("combo_status").style.visibility="hidden";
		   								document.getElementById("combo_assignedto").style.visibility="hidden";
		   								document.getElementById("txtproducts").style.visibility="hidden";
		   								document.getElementById("combo_locationid").style.visibility="hidden";
							   			showdiv('messagediv');
									}
								}else{
									if (document.getElementById) { // DOM3 = IE5, NS6 
										document.getElementById("messageid").value="Please Enter Valid Estimated Man Hours";
										document.getElementById("hiddenname").value="manhour";
							   		}
	   								document.getElementById("combo_priorityid").style.visibility="hidden";
	   								document.getElementById("combo_status").style.visibility="hidden";
	   								document.getElementById("combo_assignedto").style.visibility="hidden";
	   								document.getElementById("txtproducts").style.visibility="hidden";
	   								document.getElementById("combo_locationid").style.visibility="hidden";
						   			showdiv('messagediv');
								}
							}
						else {
								if (document.getElementById) { // DOM3 = IE5, NS6 
									document.getElementById("messageid").value="Enter Problem Description";
									document.getElementById("hiddenname").value="txtproblemdescription";
						   		}
   								document.getElementById("combo_priorityid").style.visibility="hidden";
   								document.getElementById("combo_status").style.visibility="hidden";
   								document.getElementById("combo_assignedto").style.visibility="hidden";
   								document.getElementById("txtproducts").style.visibility="hidden";
   								document.getElementById("combo_locationid").style.visibility="hidden";
					   			showdiv('messagediv');
						}								
						  }
						  else {
								if (document.getElementById) { // DOM3 = IE5, NS6 
									document.getElementById("messageid").value="Please Select Status";
									document.getElementById("hiddenname").value="combo_status";
						   		}
	   								document.getElementById("combo_priorityid").style.visibility="hidden";
	   								document.getElementById("combo_status").style.visibility="hidden";
	   								document.getElementById("combo_assignedto").style.visibility="hidden";
	   								document.getElementById("txtproducts").style.visibility="hidden";
	   								document.getElementById("combo_locationid").style.visibility="hidden";
					   			showdiv('messagediv');
							}
						}
						else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Due Date should be Greater than Request Date";
					document.getElementById("hiddenname").value="duedate";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
					}
					else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Enter Valid Due Date";
					document.getElementById("hiddenname").value="duedate";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
				}
				else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Due Date";
					document.getElementById("hiddenname").value="duedate";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Priority";
					document.getElementById("hiddenname").value="combo_priority";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
		}
		else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Category";
					document.getElementById("hiddenname").value="combo_categoryname";
		   		}
		   		//document.getElementById("combo_severityid").style.visibility="hidden";
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
			}else{
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Enter Valid Customer Email Address";
					document.getElementById("hiddenname").value="txtcustomeremail";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			
			}
	}
	else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Existing Requester";
					document.getElementById("hiddenname").value="temp";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
	}
	else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("messageid").value="Please Enter Subject";
				document.getElementById("hiddenname").value="txtsubject";
	   		}
   			document.getElementById("combo_priorityid").style.visibility="hidden";
   			document.getElementById("combo_status").style.visibility="hidden";
   			document.getElementById("combo_assignedto").style.visibility="hidden";
   			document.getElementById("txtproducts").style.visibility="hidden";
   			document.getElementById("combo_locationid").style.visibility="hidden";
   			showdiv('messagediv');
		}
	}
	else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("messageid").value="Please Enter Subject with only Character, Number, Special Character (except :: \'and\" ) and Space, start with Character";
				document.getElementById("hiddenname").value="txtsubject";
	   		}
   			document.getElementById("combo_priorityid").style.visibility="hidden";
   			document.getElementById("combo_status").style.visibility="hidden";
   			document.getElementById("combo_assignedto").style.visibility="hidden";
   			document.getElementById("txtproducts").style.visibility="hidden";
   			document.getElementById("combo_locationid").style.visibility="hidden";
   			showdiv('messagediv');
		}
}

function fnOldVersion1(formname,mainaction,page){
	var chk=false;
	if(formname.txtcallbackno.value != '') {
		if(isValidPhone(formname.txtcallbackno)) {
			chk=true;
		}
		else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Valid Phone Number with only digits (0-9), special characters (+,-,dot,()) and space";
			document.getElementById("hiddenname").value="txtcallbackno";
   		}
   		showdiv('messagedivid');
		}
	}
	else {
		chk=true;
	}
	if(chk) {
		if(formname.txtcellphone.value != '') {
			if(isValidPhone(formname.txtcellphone)) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid Phone Number with only digits (0-9), special characters (+,-,dot,()) and space";
			    document.getElementById("hiddenname").value="txtcellphone";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
		if(chk) {
			formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION=updateticket&PAGENAME="+page;
		    formname.submit();
		}
	}
}
function fnOldVersion2(formname,mainaction,page) {
		var chk=false;
	if(fnEmptyFieldWithoutMsg(formname.txtdevice_name)) {
		if(fnCharValidnWithoutSpecChars(formname.txtdevice_name)) {
			chk=true;
		}
		else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter only Characters, Numbers, Underscore and Space, start with Character";
			document.getElementById("hiddenname").value="txtdevice_name";
   		}
   		showdiv('messagedivid');
	}
	}
	else {
		chk=true;
	}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.txtdeviceip)) {
			if(isValidIPAddress(formname.txtdeviceip.value)) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid Device IP Address";
			    document.getElementById("hiddenname").value="txtdeviceip";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.txturl)) {
			if(checkValidUrl(formname.txturl,'URL')) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid URL";
			    document.getElementById("hiddenname").value="txturl";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
		if(chk) {
			if(fnEmptyFieldWithoutMsg(formname.txtos)) {
				if(fnCharValidnWithoutSpecChars(formname.txtos)) {
					chk=true;
				}	
				else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please Enter Subject with  only Character, Number, Special Character (except \'and\")and Space, start with Character";
			            document.getElementById("hiddenname").value="txtos";
   		                }
   		            showdiv('messagedivid');
					chk=false;
				}
			}
			else {
				chk=true;
			}
			if(chk==true) {
				if(fnEmptyFieldWithoutMsg(formname.txtosversion)) {
					if(fnEmptyFieldWithoutMsg(formname.txtos)) {
						chk=true;
					}
					else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please Enter OS";
			            document.getElementById("hiddenname").value="txtos";
   		                }
   		               showdiv('messagedivid');
						//alert('Please enter OS');
						chk=false;
					}
				}
				else {
					chk=true;
				}
				if(chk) {
	              formname.action="/ServiceDesk/MainController?MAINACTION=Requests&FORMACTION=updateticket&PAGENAME="+page;
	    			formname.submit();
	            }
	           }
	         }
	      }
	      }
}

function isValidManHours(hoursworked){
	if(hoursworked == '' || hoursworked == null ){
	
	}else{
      if(hoursworked==null){return false;}
      if (hoursworked.length==0){return false;}
      var DecimalFound = false
      for (var i = 0; i < hoursworked.length; i++) {
            var ch = hoursworked.charAt(i)
            if (i == 0 && ch == "-") {
                  continue
            }
            if (ch == "." && !DecimalFound) {
                  DecimalFound = true
                  continue
            }
            if (ch < "0" || ch > "9") {
                  return false
            }
      }
    }
      return true
}

function isValidNumber(hoursworked){
	if(hoursworked == '' || hoursworked == null ){
	
	}else{
      if(hoursworked==null){return false;}
      if (hoursworked.length==0){return false;}
      var DecimalFound = false
      for (var i = 0; i < hoursworked.length; i++) {
            var ch = hoursworked.charAt(i)
            if (i == 0 && ch == "-") {
                  continue
            }
            if (ch == "." && !DecimalFound) {
                  DecimalFound = true
                  continue
            }
            if (ch < "0" || ch > "9") {
                  return false
            }
      }
    }
      return true
}

function fnSelectPrevStatus() {
	var selectindex=0;
	//alert("Inside fnSelectPrevStatus");
	for(i=1;i<document.requestupdateform.combo_status.length;i++) {
		//alert(document.requestupdateform.combo_status[i].value);
		if(document.requestupdateform.combo_status[i].value=='3') {
			selectindex = i;
			break;
		}
	}
	document.requestupdateform.combo_status.selectedIndex=selectindex;
	return selectindex;
}
function fnCheckStatusChange() {
	if(document.requestupdateform.combo_status.value=='3') {
		getdata();
		var assignedto=document.requestupdateform.assignedtoid.value;
		//alert("assignedto = " + assignedto);
		var resolution=document.requestupdateform.taproblemresolution.value;
		//alert("resolution = " + resolution);
		var hoursworked=document.requestupdateform.hoursworked.value;
		var category=document.requestupdateform.combo_categoryname.value;
		
		   function isValidNumber(hoursworked){
		      if(hoursworked==null){return false;}
		      if (hoursworked.length==0){return false;}
		      var DecimalFound = false
		      for (var i = 0; i < hoursworked.length; i++) {
		            var ch = hoursworked.charAt(i)
		            if (i == 0 && ch == "-") {
		                  continue
		            }
		            if (ch == "." && !DecimalFound) {
		                  DecimalFound = true
		                  continue
		            }
		            if (ch < "0" || ch > "9") {
		                  return false
		            }
		      }
		      return true
		   }
		   //alert(" assignedto = " + assignedto);
		if(assignedto =="")
		{
			document.getElementById("messageid").value="Cannot Close Ticket,as yet to be Assigned";
			//document.getElementById("combo_severityid").style.visibility="hidden";
	 	    document.getElementById("combo_status").style.visibility="hidden";
	 		document.getElementById("combo_priorityid").style.visibility="hidden";
	 		document.getElementById("combo_assignedto").style.visibility="hidden";
	 		document.getElementById("txtproducts").style.visibility="hidden";
	 		document.getElementById("combo_category").style.visibility="hidden";
	 		document.getElementById("combo_locationid").style.visibility="hidden";
			document.getElementById("hiddenname").value="combo_status";
			fnSelectPrevStatus();
	    	showdiv('messagediv');
	    	return false;
		}
		else if(resolution=="" || resolution=="Not For Requester")
		{
			document.getElementById("messageid").value="Cannot Close Ticket without Resolution";
			//document.getElementById("combo_severityid").style.visibility="hidden";
	 	    document.getElementById("combo_status").style.visibility="hidden";
	 		document.getElementById("combo_priorityid").style.visibility="hidden";
	 		document.getElementById("combo_assignedto").style.visibility="hidden";
	 		document.getElementById("txtproducts").style.visibility="hidden";
	 		document.getElementById("combo_category").style.visibility="hidden";
	 		document.getElementById("combo_locationid").style.visibility="hidden";
			document.getElementById("hiddenname").value="combo_status";
			document.getElementById("combo_assignedto").style.disabled="disable";
			fnSelectPrevStatus();
	    	showdiv('messagediv');
	    	return false;
		}
		else if(category=="" )
		{
			document.getElementById("messageid").value="Cannot Close Ticket without Category";
			//document.getElementById("combo_severityid").style.visibility="hidden";
	 	    document.getElementById("combo_status").style.visibility="hidden";
	 		document.getElementById("combo_priorityid").style.visibility="hidden";
	 		document.getElementById("combo_assignedto").style.visibility="hidden";
	 		document.getElementById("txtproducts").style.visibility="hidden";
	 		document.getElementById("combo_category").style.visibility="hidden";
	 		document.getElementById("combo_locationid").style.visibility="hidden";
			document.getElementById("hiddenname").value="combo_categoryname";
			document.getElementById("combo_assignedto").style.disabled="disable";
			fnSelectPrevStatus();
	    	showdiv('messagediv');
	    	return false;
		}
		else if(hoursworked=="" || hoursworked=="0.0")
		{
			document.getElementById("messageid").value="Cannot Close Ticket without Hours Worked";
			//document.getElementById("combo_severityid").style.visibility="hidden";
	 	    document.getElementById("combo_status").style.visibility="hidden";
	 		document.getElementById("combo_priorityid").style.visibility="hidden";
	 		document.getElementById("combo_assignedto").style.visibility="hidden";
	 		document.getElementById("txtproducts").style.visibility="hidden";
	 		document.getElementById("combo_category").style.visibility="hidden";
	 		document.getElementById("combo_locationid").style.visibility="hidden";
			document.getElementById("hiddenname").value="hoursworked";
			document.getElementById("combo_assignedto").style.disabled="disable";
			fnSelectPrevStatus();
	    	showdiv('messagediv');
	    	return false;
		}
		else if(isValidNumber(hoursworked)==false){
				document.getElementById("messageid").value="Enter Valid Hours Worked ";
				//document.getElementById("combo_severityid").style.visibility="hidden";
		 	    document.getElementById("combo_status").style.visibility="hidden";
		 		document.getElementById("combo_priorityid").style.visibility="hidden";
		 		document.getElementById("combo_assignedto").style.visibility="hidden";
		 		document.getElementById("txtproducts").style.visibility="hidden";
		 		document.getElementById("combo_category").style.visibility="hidden";
		 		document.getElementById("combo_locationid").style.visibility="hidden";
				document.getElementById("hiddenname").value="hoursworked";
				document.getElementById("combo_assignedto").style.disabled="disable";
				fnSelectPrevStatus();
		    	showdiv('messagediv');
		    	return false;
			}else {
			//alert(" Inside else of fnstatuschange ");
			return true;
		}
	}
}
  
function fnCloseTicket(formname,mainaction,page,fmt) {
	//	alert("Inside fnCloseTicket " + fmt);
	var currentDate = new Date();
	var am_pm = "AM";
	var hour        = currentDate.getHours();
	var minute      = currentDate.getMinutes();
	var second      = currentDate.getSeconds();
	var monthnumber = currentDate.getMonth();
	var monthday    = currentDate.getDate();
	var year        = currentDate.getYear();
	if (hour   > 11) { am_pm = "PM";        }
	if (hour   > 12) { hour = hour - 12; }
	if (hour   == 0) { hour = 12;        }
	if( document.getElementById("duedate").value != "" ) {
		if( document.getElementById("duedate").value.length == 10 ) {
			//	document.getElementById("duedate").value = document.getElementById("duedate").value + " " + hour + ":" + minute + " " + am_pm;
			document.getElementById("duedate").value = document.getElementById("duedate").value + " " + dueDateTime.substring((dueDateTime.indexOf(" ") + 1), dueDateTime.length); 
		}
	}
  if(formname.txtrequesterid.value!=''){
	//if(fnEmptyField(formname.combo_severity)) {
		if(fnEmptyField(formname.combo_priority)) {
			if(fnEmptyField(formname.duedate)) {
				if(fnValidateDate(fmt,formname.duedate)) {
					if(fnDateCompare(formname.txtrequestdate,formname.duedate,fmt)) {
					if(isValidManHours(formname.manhour.value)){
					  if(fnEmptyField(formname.combo_status)) {
						if(fnEmptyField(formname.txtproblemdescription)) {
							if(isValidNumber(formname.hoursworked.value)){
								//alert(" fnStatusChange = " + fnStatusChange());
								if(fnCheckStatusChange()){
									if (document.getElementById) { // DOM3 = IE5, NS6 
									document.getElementById("messagequesclose").value="Are You Sure to Close the Ticket?";
									document.getElementById("hiddenquesclosename").value="taproblemresolution";
	   								}
	   			                    document.getElementById("combo_priorityid").style.visibility="hidden";
	   								document.getElementById("combo_status").style.visibility="hidden";
	   								document.getElementById("combo_assignedto").style.visibility="hidden";
	 								document.getElementById("txtproducts").style.visibility="hidden";
	 								document.getElementById("combo_locationid").style.visibility="hidden";
	   								showdiv('messageclosedivid');
	   							}
							}else{
								if (document.getElementById) { // DOM3 = IE5, NS6 
								document.getElementById("messageid").value="Enter Valid Hours";
								document.getElementById("hiddenname").value="hoursworked";
					   			}
	 			                document.getElementById("combo_priorityid").style.visibility="hidden";
	 			                document.getElementById("combo_status").style.visibility="hidden";
	 			                document.getElementById("combo_assignedto").style.visibility="hidden";
								document.getElementById("txtproducts").style.visibility="hidden";
					   			showdiv('messagediv');
							}
						}else {
								if (document.getElementById) { // DOM3 = IE5, NS6 
									document.getElementById("messageid").value="Enter Problem Description";
									document.getElementById("hiddenname").value="txtproblemdescription";
						   		}
   			                    document.getElementById("combo_priorityid").style.visibility="hidden";
   			                    document.getElementById("combo_status").style.visibility="hidden";
   			                    document.getElementById("combo_assignedto").style.visibility="hidden";
 								document.getElementById("txtproducts").style.visibility="hidden";
					   			showdiv('messagediv');
							}
				  }
					  else {
							if (document.getElementById) { // DOM3 = IE5, NS6 
								document.getElementById("message").value="Please Select Status";
								document.getElementById("hiddenname").value="combo_status";
					   		}
   			                document.getElementById("combo_priorityid").style.visibility="hidden";
   			                document.getElementById("combo_status").style.visibility="hidden";
   			                document.getElementById("combo_assignedto").style.visibility="hidden";
 							document.getElementById("txtproducts").style.visibility="hidden";
				   			showdiv('messagediv');
						}
					}else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("messageid").value="Please Enter Valid Estimated Man Hours";
							document.getElementById("hiddenname").value="manhour";
				   		}
  			                document.getElementById("combo_priorityid").style.visibility="hidden";
  			                document.getElementById("combo_status").style.visibility="hidden";
  			                document.getElementById("combo_assignedto").style.visibility="hidden";
							document.getElementById("txtproducts").style.visibility="hidden";
			   			showdiv('messagediv');
					}
					}
					else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("messageid").value="Due Date should be Greater than Request Date";
							document.getElementById("hiddenname").value="duedate";
				   		}
			   			document.getElementById("combo_priorityid").style.visibility="hidden";
			   			document.getElementById("combo_status").style.visibility="hidden";
			   			document.getElementById("combo_assignedto").style.visibility="hidden";
			 			document.getElementById("txtproducts").style.visibility="hidden";
			   			showdiv('messagediv');
					}
			}else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Enter Valid Due Date";
					document.getElementById("hiddenname").value="duedate";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	 			document.getElementById("txtproducts").style.visibility="hidden";
	   			showdiv('messagediv');
			}
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Due Date";
					document.getElementById("hiddenname").value="duedate";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	 			document.getElementById("txtproducts").style.visibility="hidden";
	   			showdiv('messagediv');
			}
		}else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("messageid").value="Please Select Priority";
				document.getElementById("hiddenname").value="combo_priority";
	   		}
   			document.getElementById("combo_priorityid").style.visibility="hidden";
   			document.getElementById("combo_status").style.visibility="hidden";
   			document.getElementById("combo_assignedto").style.visibility="hidden";
 			document.getElementById("txtproducts").style.visibility="hidden";
   			showdiv('messagediv');
		}
		}else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Existing Requester";
					document.getElementById("hiddenname").value="temp";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			showdiv('messagediv');
			}
}

function fnAttachments(formname,mainaction,formaction,ticketid,fmt) {

getdata();
	if(fnEmptyField(formname.txtsubject)) {
	 if(formname.txtrequesterid.value!=''){
			if(fnEmptyField(formname.combo_priority)) {
				if(fnEmptyField(formname.duedate)) {
				 if(fnValidateDate(fmt,formname.duedate)){	
				  if(fnDateCompare(formname.txtrequestdate,formname.duedate,fmt)){ 
				   if(fnEmptyField(formname.combo_status)) {
					if(fnEmptyField(formname.txtproblemdescription)) {
						formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&ticketid="+ticketid;
						formname.submit();
					}
					else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Enter Problem Description";
							document.getElementById("hiddenname").value="txtproblemdescription";
				   		}
				   		//document.getElementById("combo_severityid").style.visibility="hidden";
			   			document.getElementById("combo_priorityid").style.visibility="hidden";
			   			document.getElementById("combo_status").style.visibility="hidden";
			   			document.getElementById("combo_assignedto").style.visibility="hidden";
			   			document.getElementById("txtproducts").style.visibility="hidden";
			   			document.getElementById("combo_locationid").style.visibility="hidden";
				   		showdiv('messagedivid');
					}
				   }
				   else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Please Select Status";
							document.getElementById("hiddenname").value="combo_status";
				   		}
				   		//document.getElementById("combo_severityid").style.visibility="hidden";
			   			document.getElementById("combo_priorityid").style.visibility="hidden";
			   			document.getElementById("combo_status").style.visibility="hidden";
			   			document.getElementById("combo_assignedto").style.visibility="hidden";
			   			document.getElementById("txtproducts").style.visibility="hidden";
			   			document.getElementById("combo_locationid").style.visibility="hidden";
				   		showdiv('messagedivid');
					  }
				    }
				    else {
							if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Due Date should be Greater than Request Date";
							document.getElementById("hiddenname").value="duedate";
	   		                }
				   			document.getElementById("combo_priorityid").style.visibility="hidden";
				   			document.getElementById("combo_status").style.visibility="hidden";
				   			document.getElementById("combo_assignedto").style.visibility="hidden";
				   			document.getElementById("txtproducts").style.visibility="hidden";
				   			document.getElementById("combo_locationid").style.visibility="hidden";
	   		                showdiv('messagedivid');
		                 }
				  }
				  else {
			               if (document.getElementById) { // DOM3 = IE5, NS6 
						   document.getElementById("message").value="Please Enter Valid Due Date";
						   document.getElementById("hiddenname").value="duedate";
	   		               }
			   			   document.getElementById("combo_priorityid").style.visibility="hidden";
			   			   document.getElementById("combo_status").style.visibility="hidden";
			   			   document.getElementById("combo_assignedto").style.visibility="hidden";
			   			   document.getElementById("txtproducts").style.visibility="hidden";
			   			   document.getElementById("combo_locationid").style.visibility="hidden";
	   		               showdiv('messagedivid');
		              }	
				}
				else {
			         if (document.getElementById) { // DOM3 = IE5, NS6 
				     document.getElementById("message").value="Please Select Due Date";
				     document.getElementById("hiddenname").value="duedate";
	   		        }
		   			document.getElementById("combo_priorityid").style.visibility="hidden";
		   			document.getElementById("combo_status").style.visibility="hidden";
		   			document.getElementById("combo_assignedto").style.visibility="hidden";
		   			document.getElementById("txtproducts").style.visibility="hidden";
		   			document.getElementById("combo_locationid").style.visibility="hidden";
	   		        showdiv('messagedivid');
		      }
			}
			else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Select Priority";
				document.getElementById("hiddenname").value="combo_priority";
	   		}
			document.getElementById("combo_priorityid").style.visibility="hidden";
			document.getElementById("combo_status").style.visibility="hidden";
			document.getElementById("combo_assignedto").style.visibility="hidden";
			document.getElementById("txtproducts").style.visibility="hidden";
			document.getElementById("combo_locationid").style.visibility="hidden";
			showdiv('messagedivid');
		}
	}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please Select Existing Requester";
					//document.getElementById("hiddenname").value="txtrequestername";
					document.getElementById("hiddenname").value="temp";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagedivid');
			}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Subject";
			document.getElementById("hiddenname").value="txtsubject";
   		}
		document.getElementById("combo_priorityid").style.visibility="hidden";
		document.getElementById("combo_status").style.visibility="hidden";
		document.getElementById("combo_assignedto").style.visibility="hidden";
		document.getElementById("txtproducts").style.visibility="hidden";
		document.getElementById("combo_locationid").style.visibility="hidden";
   		showdiv('messagedivid');
	}
}

function fnAttachedList(formname,mainaction,ticketid) {
		formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION=attachedlist&ticketid="+ticketid;
	    formname.submit();
}
function fnAttachedListHistory(formname,mainaction,ticketid) {
		formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION=attachedlisthistory&ticketid="+ticketid;
	    formname.submit();
}
function fnSaveAttachments(formname,mainaction) {
	if(confirm('Do you want attach files to this ticket?')) {
		formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION=attachments";
	    formname.submit();
	}
	else {
		formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION=saverequest";
		formname.submit();
	}
}

function fnGetSearchedRecord(formname,mainaction,formaction,ticketid,txtversion) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&ticketid="+ticketid+"&txtversion="+txtversion;
	formname.submit();
}

function fnCallFromServiceRequest(formname,mainaction,formaction,fmt) {
	if(fnSpecialCharacterCheckSubject(formname.txtsubject)) {
	 if(fnCharValidnWithoutSpecChars(formname.txtsubject)){
		if(fnEmptyField(formname.txtsubject)) {
		 if(formname.txtrequesterid.value!=''){
		 if(fnIsEmail(formname.txtcustomeremail,'Email')){
		   if(document.getElementById("combo_product").selectedIndex != 0) {
			  if(document.getElementById("combo_category").selectedIndex != 0) {
				  if(document.getElementById("combo_priority").selectedIndex != 0) {
				  	if(isValidManHours(formname.manhour.value)){
						if(fnEmptyField(formname.duedate)) {
					  		if(fnValidateDate(fmt,formname.duedate)) {	
						  		if(fnDateCompare(formname.requestdate,formname.duedate,fmt)) {
						  		  //if(fnEmptyField(formname.combo_location)) {
									if(fnEmptyField(formname.text_problemdesc)) {
										
										return true
										//	document.getElementById("combo_severityid").style.visibility="hidden";
								   		//	document.getElementById("combo_product").style.visibility="hidden";
										//	document.getElementById("combo_priority").style.visibility="hidden";
								   		//	document.getElementById("combo_assignedto").style.visibility="hidden";
								   		//	document.getElementById("combo_locationid").style.visibility="hidden";
										//	fnShowProcess('processingdivid');
										//	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
										//	formname.submit();
									}
									else {
									    if (document.getElementById) { // DOM3 = IE5, NS6 
										document.getElementById("messageid").value="Enter Problem Description";
										document.getElementById("hiddenname").value="text_problemdesc";
	   									}
	   									//document.getElementById("combo_severityid").style.visibility="hidden";
								   		document.getElementById("combo_product").style.visibility="hidden";
										document.getElementById("combo_priority").style.visibility="hidden";
								   		document.getElementById("combo_assignedto").style.visibility="hidden";
								   		document.getElementById("combo_locationid").style.visibility="hidden";
	   									showdiv('messagediv');
									}
								}
								else {
									    if (document.getElementById) { // DOM3 = IE5, NS6 
										document.getElementById("messageid").value="Due Date should be Greater than Request Date";
										document.getElementById("hiddenname").value="duedate";
	   									}
								   		document.getElementById("combo_product").style.visibility="hidden";
										document.getElementById("combo_priority").style.visibility="hidden";
								   		document.getElementById("combo_assignedto").style.visibility="hidden";
								   		document.getElementById("combo_locationid").style.visibility="hidden";
	   									showdiv('messagediv');
								}
							}
							else {
			                      	if (document.getElementById) { // DOM3 = IE5, NS6 
								  	document.getElementById("messageid").value=" Please Enter Valid Due Date";
								  	document.getElementById("hiddenname").value="duedate";
	   								}
							   		document.getElementById("combo_product").style.visibility="hidden";
									document.getElementById("combo_priority").style.visibility="hidden";
							   		document.getElementById("combo_assignedto").style.visibility="hidden";
							   		document.getElementById("combo_locationid").style.visibility="hidden";
	   								showdiv('messagediv');
								}
						}
						else {
							    if (document.getElementById) { // DOM3 = IE5, NS6 
								document.getElementById("messageid").value="Please Select Category and Enter Due date";
								document.getElementById("hiddenname").value="duedate";
					   		}
					   		document.getElementById("combo_product").style.visibility="hidden";
							document.getElementById("combo_priority").style.visibility="hidden";
					   		document.getElementById("combo_assignedto").style.visibility="hidden";
					   		document.getElementById("combo_locationid").style.visibility="hidden";
					   		showdiv('messagediv');
						}
						}else {
							    if (document.getElementById) { // DOM3 = IE5, NS6 
								document.getElementById("messageid").value="Please Enter Valid Estimated Man Hours";
								document.getElementById("hiddenname").value="manhour";
					   		}
					   		document.getElementById("combo_product").style.visibility="hidden";
							document.getElementById("combo_priority").style.visibility="hidden";
					   		document.getElementById("combo_assignedto").style.visibility="hidden";
					   		document.getElementById("combo_locationid").style.visibility="hidden";
					   		showdiv('messagediv');
						}
					}
					else {
			    		if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("messageid").value="Please Select Priority";
						document.getElementById("hiddenname").value="combo_priority";
	   					}
				   		document.getElementById("combo_product").style.visibility="hidden";
						document.getElementById("combo_priority").style.visibility="hidden";
				   		document.getElementById("combo_assignedto").style.visibility="hidden";
				   		document.getElementById("combo_locationid").style.visibility="hidden";
	   					showdiv('messagediv');
					}
				}
				else {
		    	if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("messageid").value="Please Select Category";
				document.getElementById("hiddenname").value="combo_category";
   				}
   				//document.getElementById("combo_severityid").style.visibility="hidden";
		   		document.getElementById("combo_product").style.visibility="hidden";
				document.getElementById("combo_priority").style.visibility="hidden";
		   		document.getElementById("combo_assignedto").style.visibility="hidden";
		   		document.getElementById("combo_locationid").style.visibility="hidden";
   				showdiv('messagediv');
   				
			}
		}
			else {
				    if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Product";
					document.getElementById("hiddenname").value="combo_product";
								}
			   		document.getElementById("combo_product").style.visibility="hidden";
					document.getElementById("combo_priority").style.visibility="hidden";
			   		document.getElementById("combo_assignedto").style.visibility="hidden";
			   		document.getElementById("combo_locationid").style.visibility="hidden";
								showdiv('messagediv');
				}
				
			}else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Enter Valid Customer Email Address";
					document.getElementById("hiddenname").value="txtcustomeremail";
		   		}
	   			document.getElementById("combo_product").style.visibility="hidden";
				document.getElementById("combo_priority").style.visibility="hidden";
	   			document.getElementById("combo_productid").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			
			}
		}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageid").value="Please Select Existing Requester";
					document.getElementById("hiddenname").value="temp";
		   		}
	   			document.getElementById("combo_product").style.visibility="hidden";
				document.getElementById("combo_priority").style.visibility="hidden";
	   			document.getElementById("combo_productid").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagediv');
			}
	}
		else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("messageid").value="Please Enter Subject";
			document.getElementById("hiddenname").value="txtsubject";
   		}
   		document.getElementById("combo_product").style.visibility="hidden";
		document.getElementById("combo_priority").style.visibility="hidden";
   		document.getElementById("combo_assignedto").style.visibility="hidden";
   		document.getElementById("combo_locationid").style.visibility="hidden";
   		showdiv('messagediv');
	}
 	}
 	else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("messageid").value="Please Enter Subject with  only Character, Number, Special Character (except :: \'and\" )and Space, start with Character";
				document.getElementById("hiddenname").value="txtsubject";
	   		}
	   		document.getElementById("combo_product").style.visibility="hidden";
			document.getElementById("combo_priority").style.visibility="hidden";
	   		document.getElementById("combo_assignedto").style.visibility="hidden";
	   		document.getElementById("combo_locationid").style.visibility="hidden";
	   		showdiv('messagediv');
		}
 	
  }
	else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("messageid").value="Please Enter Subject with  only Character, Number, Special Character (except :: \'and\" )and Space, start with Character";
				document.getElementById("hiddenname").value="txtsubject";
	   		}
	   		document.getElementById("combo_product").style.visibility="hidden";
			document.getElementById("combo_priority").style.visibility="hidden";
	   		document.getElementById("combo_assignedto").style.visibility="hidden";
	   		document.getElementById("combo_locationid").style.visibility="hidden";
	   		showdiv('messagediv');
		}
 	
}

function fnHideQuesMessge(field, div) {
   	hidediv(div);
}

function fnCallFromServiceRequestUpdate(formname,mainaction,formaction,fmt) {
getdata();
if(fnSpecialCharacterCheckSubject(formname.txtsubject)) {
	if(fnEmptyField(formname.txtsubject)) {
	 if(formname.txtrequesterid.value!=''){
			if(formname.combo_priority.selectedIndex != 0) {
			 if(formname.combo_category.selectedIndex != 0) {
				if(fnEmptyField(formname.duedate)) {
				 if(fnValidateDate(fmt,formname.duedate)){	
				  if(fnDateCompare(formname.txtrequestdate,formname.duedate,fmt)){ 
				   if(fnEmptyField(formname.combo_status)) {
					if(fnEmptyField(formname.txtproblemdescription)) {
							formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
							formname.submit();
						
					}
					else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Enter Problem Description";
							document.getElementById("hiddenname").value="txtproblemdescription";
				   		}
	   					document.getElementById("combo_priorityid").style.visibility="hidden";
	   					document.getElementById("combo_status").style.visibility="hidden";
	   					document.getElementById("combo_assignedto").style.visibility="hidden";
 						document.getElementById("txtproducts").style.visibility="hidden";
 						document.getElementById("combo_locationid").style.visibility="hidden";
				   		showdiv('messagedivid');
					}
				   }
				   else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Please Select Status";
							document.getElementById("hiddenname").value="combo_status";
				   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
				   		showdiv('messagedivid');
					  }
				    }
				    else {
							if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Due Date should be Greater than Request Date";
							document.getElementById("hiddenname").value="duedate";
	   		                }
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   		                showdiv('messagedivid');
		                 }
				  }
				  else {
			               if (document.getElementById) { // DOM3 = IE5, NS6 
						   document.getElementById("message").value="Enter date";
						   document.getElementById("hiddenname").value="duedate";
	   		               }
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   		               showdiv('messagedivid');
		              }	
				}
				else {
			         if (document.getElementById) { // DOM3 = IE5, NS6 
				     document.getElementById("message").value="Please Select Category and Enter Due Date";
				     document.getElementById("hiddenname").value="duedate";
	   		        }
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   		        showdiv('messagedivid');
		      }
			}
			else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Select Category";
				document.getElementById("hiddenname").value="combo_priority";
	   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   		showdiv('messagedivid');
		}
	}
			else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Select Priority";
				document.getElementById("hiddenname").value="combo_priority";
	   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   		showdiv('messagedivid');
		}
	}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please Select Existing Requester";
					document.getElementById("hiddenname").value="temp";
		   		}
	   			document.getElementById("combo_priorityid").style.visibility="hidden";
	   			document.getElementById("combo_status").style.visibility="hidden";
	   			document.getElementById("combo_assignedto").style.visibility="hidden";
	   			document.getElementById("txtproducts").style.visibility="hidden";
	   			document.getElementById("combo_locationid").style.visibility="hidden";
	   			showdiv('messagedivid');
			}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Subject";
			document.getElementById("hiddenname").value="txtsubject";
   		}
   			document.getElementById("combo_priorityid").style.visibility="hidden";
   			document.getElementById("combo_status").style.visibility="hidden";
   			document.getElementById("combo_assignedto").style.visibility="hidden";
   			document.getElementById("txtproducts").style.visibility="hidden";
   			document.getElementById("combo_locationid").style.visibility="hidden";
   		showdiv('messagedivid');
	}
	}
else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter Subject with  only Character, Number, Special Character (except :: \'and\" )and Space, start with Character";
				document.getElementById("hiddenname").value="txtsubject";
	   		}
	   		document.getElementById("combo_priorityid").style.visibility="hidden";
   			document.getElementById("combo_status").style.visibility="hidden";
   			document.getElementById("combo_assignedto").style.visibility="hidden";
   			document.getElementById("txtproducts").style.visibility="hidden";
   			document.getElementById("combo_locationid").style.visibility="hidden";
   		showdiv('messagedivid');
		}
}

function fnCallFromRequestAddInfo(formname,mainaction,formaction) {
	var chk=false;
	if(fnEmptyFieldWithoutMsg(formname.device_name)) {
		if(fnCharValidnWithoutSpecChars(formname.device_name)) {
			chk=true;
		}
		else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
			document.getElementById("hiddenname").value="device_name";
   		}
   		showdiv('messagedivid');
	}
	}
	else {
		chk=true;
	}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.deviceip)) {
			if(isValidIPAddress(formname.deviceip.value)) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid Device IP Address";
			    document.getElementById("hiddenname").value="deviceip";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.url)) {
			if(checkValidUrl(formname.url,'URL')) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid URL";
			    document.getElementById("hiddenname").value="url";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
		if(chk) {
			if(fnEmptyFieldWithoutMsg(formname.os)) {
				if(fnCharValidnWithoutSpecChars(formname.os)) {
					chk=true;
				}	
				else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
			            document.getElementById("hiddenname").value="os";
   		                }
   		            showdiv('messagedivid');
					chk=false;
				}
			}
			else {
				chk=true;
			}
			if(chk==true) {
				if(fnEmptyFieldWithoutMsg(formname.osversion)) {
					if(fnEmptyFieldWithoutMsg(formname.os)) {
						chk=true;
					}
					else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please enter OS";
			            document.getElementById("hiddenname").value="os";
   		                }
   		               showdiv('messagedivid');
						//alert('Please enter OS');
						chk=false;
					}
				}
				else {
					chk=true;
				}
				if(chk) {
					fnShowProcess('processingdivid');
					formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
					formname.submit();
				}
			}
		}
	}
	}
	return chk;
}

function fnCallFromRequestAdditionalInfoFromNew(formname,mainaction,formaction) {
	var chk=false;
	if(fnEmptyFieldWithoutMsg(formname.device_name)) {
		if(fnCharValidnWithoutSpecChars(formname.device_name)) {
			chk=true;
		}
		else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
			document.getElementById("hiddenname").value="device_name";
   		}
   		showdiv('messagedivid');
	}
	}
	else {
		chk=true;
	}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.deviceip)) {
			if(isValidIPAddress(formname.deviceip.value)) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid Device IP Address";
			    document.getElementById("hiddenname").value="deviceip";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.url)) {
			if(checkValidUrl(formname.url,'URL')) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid URL";
			    document.getElementById("hiddenname").value="url";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
		if(chk) {
			if(fnEmptyFieldWithoutMsg(formname.os)) {
				if(fnCharValidnWithoutSpecChars(formname.os)) {
					chk=true;
				}	
				else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
			            document.getElementById("hiddenname").value="os";
   		                }
   		            showdiv('messagedivid');
					chk=false;
				}
			}
			else {
				chk=true;
			}
			if(chk==true) {
				if(fnEmptyFieldWithoutMsg(formname.osversion)) {
					if(fnEmptyFieldWithoutMsg(formname.os)) {
						chk=true;
					}
					else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please enter OS";
			            document.getElementById("hiddenname").value="os";
   		                }
   		               showdiv('messagedivid');
						//alert('Please enter OS');
						chk=false;
					}
				}
				else {
					chk=true;
				}
				/*if(chk) {
					fnShowProcess('processingdivid');
					formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
					formname.submit();
				}*/
			}
		}
	}
	}
	return chk;
}

function fnCallFromRequestAddInfoUpdate(formname,mainaction,formaction,ticketid) {
	var chk=false;
	if(fnEmptyFieldWithoutMsg(formname.txtdevice_name)) {
		if(fnCharValidnWithoutSpecChars(formname.txtdevice_name)) {
			chk=true;
		}
		else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
			document.getElementById("hiddenname").value="txtdevice_name";
   		}
   		showdiv('messagedivid');
		}
	}
	else {
		chk=true;
	}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.txtdeviceip)) {
			if(isValidIPAddress(formname.txtdeviceip.value)) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid Device IP Address";
			    document.getElementById("hiddenname").value="txtdeviceip";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
	if(chk) {
		if(fnEmptyFieldWithoutMsg(formname.txturl)) {
			if(checkValidUrl(formname.txturl,'URL')) {
				chk=true;
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    document.getElementById("message").value="Please Enter Valid URL";
			    document.getElementById("hiddenname").value="txturl";
   		        }
   		        showdiv('messagedivid');
				chk=false;
			}
		}
		else {
			chk=true;
		}
		if(chk) {
			if(fnEmptyFieldWithoutMsg(formname.txtos)) {
				if(fnCharValidnWithoutSpecChars(formname.txtos)) {
					chk=true;
				}	
				else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
			            document.getElementById("hiddenname").value="txtos";
   		                }
   		            showdiv('messagedivid');
					chk=false;
				}
			}
			else {
				chk=true;
			}
			if(chk==true) {
				if(fnEmptyFieldWithoutMsg(formname.txtosversion)) {
					if(fnEmptyFieldWithoutMsg(formname.txtos)) {
						chk=true;
					}
					else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
			            document.getElementById("message").value="Please enter OS";
			            document.getElementById("hiddenname").value="txtos";
   		                }
   		               showdiv('messagedivid');
						//alert('Please enter OS');
						chk=false;
					}
				}
				else {
					chk=true;
				}
				if(chk) {
					if(ticketid=='') {
						formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
					}
					else {
						formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+ticketid;
					}
					formname.submit();
					return chk;
				}
			}
		}
	}
	}
}

function fnCallFromRequestDetailAdd(formname,mainaction,formaction) {
	var chk=false;
	if(fnEmptyFieldWithoutMsg(formname.callbackno)) {
		if(isValidPhone(formname.callbackno)) {
			chk=true;
		}
		else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    	document.getElementById("message").value="Please Enter Valid Phone Number with only digits (0-9), special characters (+,-,dot,()) and space";
			        document.getElementById("hiddenname").value="callbackno";
   		         }
   		         showdiv('messagedivid');
   		         chk=false;
						
		}
	}
	else {
		chk=true;
		
	}
	if(chk) {
		fnShowProcess('processingdivid');
		formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
		formname.submit();
	}
	return chk;
}

function fnCallFromRequestDetailAddNew(formname,mainaction,formaction) {
	var chk=false;
	if(fnEmptyFieldWithoutMsg(formname.callbackno)) {
		if(isValidPhone(formname.callbackno)) {
			chk=true;
		}
		else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    	document.getElementById("message").value="Please Enter Valid Phone Number with only digits (0-9), special characters (+,-,dot,()) and space";
			        document.getElementById("hiddenname").value="callbackno";
   		         }
   		         showdiv('messagedivid');
   		         chk=false;
						
		}
	}
	else {
		chk=true;
		
	}
	/*if(chk) {
		fnShowProcess('processingdivid');
		formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
		formname.submit();
	}*/
	return chk;
}

function fnCallFromRequestDetailUpdate(formname,mainaction,formaction,ticketid) {
	var chk=false;
	//alert("callbackno = " + formname.txtcallbackno.value);
	if(fnEmptyFieldWithoutMsg(formname.txtcallbackno)) {
		if(isValidPhone(formname.txtcallbackno)) {
			chk=true;
		}
		else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    	document.getElementById("message").value="Please Enter Valid Phone Number with only digits (0-9), special characters (+,-,dot,()) and space";
			        document.getElementById("hiddenname").value="txtcallbackno";
   		         }
   		         showdiv('messagedivid');
   		         chk=false;
						
		}
	}
	else {
		chk=true;
		
	}
	if(chk) {
		formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&ticketid="+ticketid;;
		formname.submit();
	}
}

function fnCallFromRequestDetailUpdateTab(formname,mainaction,formaction) {
	var chk=false;
	if(formname.txtcallbackno.value != '') {
		if(isValidPhone(formname.txtcallbackno)) {
			chk=true;
		}
		else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
			    	document.getElementById("message").value="Please Enter Valid Phone Number with only digits (0-9), special characters (+,-,dot,()) and space";
			        document.getElementById("hiddenname").value="txtcallbackno";
   		         }
   		         showdiv('messagedivid');
   		         chk=false;
						
		}
	}
	else {
		chk=true;
		
	}
	if(chk) {
		formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
		formname.submit();
	}
}

function fnAlertDeleteFile(filename) {
		if (document.getElementById) { // DOM3 = IE5, NS6 
		document.getElementById("messageques").value="Do You Want to Delete the File?";
		document.getElementById("hiddenquesname").value="taproblemresolution";
   		document.getElementById("filename").value=filename;						
   		}
   		showdiv('messagequesdivid');
}
function fnDeleteFile(formname,ticketid) {
		var filename=document.getElementById("filename").value;
	 	formname.action="/ServiceDesk/MainController?MAINACTION=Requests&FORMACTION=deletefile&filename="+filename+"&ticketid="+ticketid;
	 	formname.target="mainFrame";
	    formname.submit();
}
function fnDeleteUploadFile(formname,formaction) {
		var filename=document.getElementById("filename").value;
	 	formname.action="/ServiceDesk/MainController?MAINACTION=Upload&FORMACTION="+formaction+"&filename="+filename;
	 	formname.target="mainFrame";
	    formname.submit();
}
	function fnSendMail(formname,mainaction,formaction,ticketid) {
		var check,mangcheck;
		var reqcheck;
		var assgncheck;
		var checkmail= false;
		var checkchkbox=false;
		if(formname.mailcheck.checked){
			check = 'Yes';
		}
		if(formname.reqcheck.checked){
			reqcheck = 'Yes';
		}
		if(formname.assgncheck.checked){
			assgncheck = 'Yes';
		}
		if(formname.mangcheck.checked){
			mangcheck = 'yes';
		}
		if(fnEmptyField(formname.toemail) || fnEmptyField(formname.toccemail) || fnEmptyField(formname.tobccemail)) {
			if(fnIsEmailOutlook(formname.toemail, '') && fnIsEmailOutlook(formname.toccemail, '') && fnIsEmailOutlook(formname.tobccemail, '') ){
				checkmail = true;
				checkchkbox = true;
			}else{
				if (document.getElementById){
					document.getElementById("messageemail").value="Please Enter Valid Email Address.";
					document.getElementById("hiddennameemail").value="toemail";
				}
				showdiv('messagedividemails');
		 	}
		 }else {
		 	 checkmail = true;
		 	 // assignedtoid
		 	 if(formname.mailcheck.checked || formname.reqcheck.checked || formname.mangcheck.checked || formname.assgncheck.checked){
			 	checkchkbox = true;
			 	if(formname.assgncheck.checked){
			 		var assignid = document.getElementById("assignedtoid").value;
			 		if(assignid != null && assignid != 0 && assignid != ''){
			 			checkchkbox = true;
			 		}else{
			 			if (document.getElementById) {
						   document.getElementById("messageemail").value="Ticket is not Assigned..";
						   document.getElementById("hiddennameemail").value="toemail";
				   		}
						showdiv('messagedividemails');
			 			checkchkbox = false;
			 		}
			 	}
			 	
			 }else{
			 	if (document.getElementById) {
				   document.getElementById("messageemail").value="Please Enter Email Address(s) or Select Checkbox(s)..";
				   document.getElementById("hiddennameemail").value="toemail";
		   		}
				showdiv('messagedividemails');
			 }
		 }
		 //alert("checkmail && checkchkbox = " + checkmail + " <--> " + checkchkbox);
 		 if(checkmail && checkchkbox){
 		 		document.getElementById("messagedivemailid").style.display="none";
				fnShowProcess('processingdivid');
				formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+ticketid+"&check="+check+"&reqcheck="+reqcheck+"&assgncheck="+assgncheck+"&mangcheck="+mangcheck;
				formname.target="mainFrame";
				formname.submit();
 		 }
	}
function fnGetSelectedRecordFrameglobalview(formname,mainaction,formaction,id,frame) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+id;
	formname.target=frame;
	formname.submit();
}
function fnAttachmentsFrDisplay(formname,mainaction,formaction,ticketid,fmt, divname) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&ticketid="+ticketid + "&divname=" + divname;
	formname.submit();
}
function fnNavigateServlet(formname,mainaction,formaction,ticketid,version,page) {
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&id="+ticketid+"&version="+version+"&PAGE="+page;
	formname.submit();
}
// Request End


// Configuration Start

function fnCallSaveEscalationPeriod(formname,mainaction,formaction) {
	if(fnEmptyField(formname.escalationperiod)) {
		if(fnNumberValidation(formname.escalationperiod)) {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("messageques").value="Save new Escalation Period ?";
				document.getElementById("hiddenquesname").value="escalationperiod";
 			}
 			showdiv('messagequesdivid');
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter only Numbers";
				document.getElementById("hiddenname").value="escalationperiod";
	   		}
   			showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Escalation Period";
			document.getElementById("hiddenname").value="escalationperiod";
   		}
   		showdiv('messagedivid');
	}
}

function fnCallSavePriority(formname,mainaction,formaction,prnames) {
	var prnamesarray = prnames.split("::");
	var chksave=true;
	if(fnEmptyField(formname.priorityname)) {
		if(fnCharValidnWithoutSpecChars(formname.priorityname)) {
			for(i=0;i<prnamesarray.length;i++) {
				if(formname.priorityname.value.toLowerCase()==prnamesarray[i].toLowerCase()) {
					if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value="Priority Already Exists";
						document.getElementById('hiddenname').value="priorityname";
				   		
   					}
   					showdiv('messagedivid');
					chksave=false;
					break;
				}
			}
			if(chksave==true) {
				fnShowProcess('processingdivid');
				formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
				formname.submit();
			}
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
				document.getElementById('hiddenname').value="priorityname";
		   		
   			}
   			showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Priority";
			document.getElementById("hiddenname").value="priorityname";

   		}
   		showdiv('messagedivid');
	}
}

function fnCallUpdatePriority(formname,mainaction,formaction,prnames) {
	var prnamesarray = prnames.split("::");
	var chksave=true;
	if(fnEmptyField(formname.priorityname)) {
		if(fnCharValidnWithoutSpecChars(formname.priorityname)) {
			for(i=0;i<prnamesarray.length;i++) {
				if(formname.priorityname.value.toLowerCase()==prnamesarray[i].toLowerCase()) {
					if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value="Priority Already Exists";
						document.getElementById("hiddenname").value="priorityname";
	   				}
	   				showdiv('messagedivid');
					chksave=false;
					break;
				}
			}
			if(chksave==true) {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageques").value="Would You like to Update the Priority?";
					document.getElementById("hiddenquesname").value="priorityname";
   				}
   				showdiv('messagequesdivid');
			}
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
				document.getElementById("hiddenname").value="priorityname";
	   		}
	   		showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Priority";
			document.getElementById("hiddenname").value="priorityname";
   		}
   		showdiv('messagedivid');
	}
}

function fnCallPriorityDelete(formname,mainaction,formaction,priorityid) {
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&priorityid="+document.getElementById(priorityid).value;
	formname.submit();
}

function fnCallSaveSeverity(formname,mainaction,formaction,sevnames,colnames) {
	var sevamesarray = sevnames.split("::");
	var colorarray = colnames.split("::");
	var chksave=true;
	if(fnEmptyField(formname.severityname)) {
		if(fnCharValidnWithoutSpecChars(formname.severityname)) {
			if(fnEmptyField(formname.severitycolor)) {
				for(i=0;i<sevamesarray.length;i++) {
					if(formname.severityname.value.toLowerCase()==sevamesarray[i].toLowerCase()) {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Severity Already Exists";
							document.getElementById('hiddenname').value="severityname";
   						}
   						showdiv('messagedivid');
						chksave=false;
						break;
					}
				}
				if(chksave==true) {
					for(i=0;i<colorarray.length;i++) {
						if(formname.severitycolor.value.toLowerCase()==colorarray[i].toLowerCase()) {
							if (document.getElementById) { // DOM3 = IE5, NS6 
								document.getElementById("message").value="Color Already Selected for other Severity";
								document.getElementById('hiddenname').value="severitycolor";
   							}
   							showdiv('messagedivid');
							chksave=false;
							break;
						}
					}
					if(chksave==true) {
						fnShowProcess('processingdivid');
						formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
						formname.submit();
					}
				}
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please Select Severity Color";
					document.getElementById("hiddenname").value="severitycolor";
		   		}
		   		showdiv('messagedivid');
			}
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
				document.getElementById('hiddenname').value="severityname";
   			}
   			showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Severity";
			document.getElementById("hiddenname").value="severityname";
   		}
   		showdiv('messagedivid');
	}
}

function fnCallUpdateSeverity(formname,mainaction,formaction,sevnames,colnames) {
	var sevamesarray = sevnames.split("::");
	var colorarray = colnames.split("::");
	var chksave=true;
	if(fnEmptyField(formname.severityname)) {
		if(fnCharValidnWithoutSpecChars(formname.severityname)) {
			if(fnEmptyField(formname.severitycolor)) {
				for(i=0;i<sevamesarray.length;i++) {
					if(formname.severityname.value.toLowerCase()==sevamesarray[i].toLowerCase()) {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Severity Already Exists";
							document.getElementById('hiddenname').value="severityname";
	   					}
   						showdiv('messagedivid');
						chksave=false;
						break;
					}
				}
				if(chksave==true) {
					for(i=0;i<colorarray.length;i++) {
						if(formname.severitycolor.value.toLowerCase()==colorarray[i].toLowerCase()) {
							if (document.getElementById) { // DOM3 = IE5, NS6 
								document.getElementById("message").value="Color Already Selected for other Severity";
								document.getElementById('hiddenname').value="severitycolor";
	   						}
   							showdiv('messagedivid');
							chksave=false;
							break;
						}
					}
					if(chksave==true) {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("messageques").value="Would You like to Update the Severity?";
							document.getElementById("hiddenquesname").value="severityname";
   						}
   						showdiv('messagequesdivid');
					}
				}
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please Select Severity Color";
					document.getElementById('hiddenname').value="severitycolor";
	   			}
   				showdiv('messagedivid');
			}
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
				document.getElementById('hiddenname').value="severityname";
   			}
   			showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Severity";
			document.getElementById("hiddenname").value="severityname";
   		}
   		showdiv('messagedivid');
	}
}

function fnCallSeverDelete(formname,mainaction,formaction,severityid) {
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&severityid="+document.getElementById(severityid).value;
	formname.submit();
}

function fnCallSaveProduct(formname,mainaction,formaction) {
	if(fnEmptyField(formname.combo_productname)) {
		if(fnEmptyField(formname.combo_producttype)) {
			if(fnEmptyField(formname.escalationperiodsave)) {
				if(fnNumberValidation(formname.escalationperiodsave)) {
		 			fnShowProcess('processingdivid');
		 			formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
					formname.submit();
				}
				else {
					if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value="Please Enter only Numbers";
						document.getElementById("hiddenname").value="escalationperiodsave";
					}
			   		showdiv('messagedivid');
				}
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please Enter Escalation Period";
					document.getElementById("hiddenname").value="escalationperiodsave";
				}
				showdiv('messagedivid');
			}
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Select Escalation Type";
				document.getElementById("hiddenname").value="combo_producttype";
	   		}
	   		for(j=0;j<document.forms.length;j++) {
				if(document.forms[j].name!=formname) {
					var limit = document.forms[j].elements.length;
					for (i=0;i<limit;i++) {
						document.forms[j].elements[i].disabled = true;
					}	
				}
			}
   			showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Select Product";
			document.getElementById("hiddenname").value="combo_productname";
   		}
   		document.getElementById("disableWindowinput").style.display="block";
	   	document.getElementById("messagedivid").style.display="block";
	   	for(j=0;j<document.forms.length;j++) {
			if(document.forms[j].name!=formname) {
				var limit = document.forms[j].elements.length;
				for (i=0;i<limit;i++) {
					document.forms[j].elements[i].disabled = true;
				}	
			}
		}
   		showdiv('messagedivid');
	}
}

function fnCallProductDelete(formname,mainaction,formaction,productid) {
	fnShowProcess('processingdivid');
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&productid="+document.getElementById(productid).value;
	formname.submit();
}
function fnCallUpdateProduct(formname,mainaction,formaction) {
	if(fnEmptyField(formname.combo_producttype)) {
		if(fnEmptyField(formname.escalationperiodupdate)) {
			if(fnNumberValidation(formname.escalationperiodupdate)) {
	 			if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("messageques").value="Would You like to Update the Product?";
					document.getElementById("hiddenquesname").value="combo_producttype";
		  		}
		  		for(j=0;j<document.forms.length;j++) {
					if(document.forms[j].name!=formname) {
						var limit = document.forms[j].elements.length;
						for (i=0;i<limit;i++) {
							document.forms[j].elements[i].disabled = true;
						}	
					}
				}
		  		showdiv('messagequesdivid');
			}
			else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please Enter only Numbers";
					document.getElementById("hiddenname").value="escalationperiodupdate";
				}
		   		showdiv('messagedivid');
			}
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter Escalation Period";
				document.getElementById("hiddenname").value="escalationperiodupdate";
			}
			showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Select Escalation Type";
			document.getElementById("hiddenname").value="combo_producttype";
   		}
   		for(j=0;j<document.forms.length;j++) {
			if(document.forms[j].name!=formname) {
				var limit = document.forms[j].elements.length;
				for (i=0;i<limit;i++) {
					document.forms[j].elements[i].disabled = true;
				}	
			}
		}
   		showdiv('messagedivid');
	}
}
function fnCallSaveLocation(formname,mainaction,formaction,lcnames,lccode) {
	var locationnamearray = lcnames.split("::");
	var locationcodearray = lccode.split("::");
	var chksave=true;
	if(fnEmptyField(formname.locationname)) {
		if(fnCharValidnWithoutSpecChars(formname.locationname)) {
			for(i=0;i<locationnamearray.length;i++) {
				if((trimdata(formname.locationname.value)).toLowerCase()==(trimdata(locationnamearray[i])).toLowerCase()) {
					if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value="Location Already Exists";
						document.getElementById('hiddenname').value="locationname";
   					}
   					showdiv('messagedivid');
					chksave=false;
					break;
				}
			}
			if(chksave==true) {
				if(fnEmptyField(formname.locationcode)) {
					if(fnCharValidnWithoutSpecChars(formname.locationcode)) {
						for(i=0;i<locationcodearray.length;i++) {
							if(formname.locationcode.value.toLowerCase()==(trimdata(locationcodearray[i])).toLowerCase()) {
								if (document.getElementById) { // DOM3 = IE5, NS6 
									document.getElementById("message").value="Location Code Already Exists";
									document.getElementById('hiddenname').value="locationcode";
			   					}
			   					showdiv('messagedivid');
								chksave=false;
								break;
							}
						}
						if(chksave==true) {
							fnShowProcess('processingdivid');
							formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction;
							formname.submit();
						}
					}
					else {
						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
							document.getElementById('hiddenname').value="locationcode";
			   			}
			   			showdiv('messagedivid');
					}
				}
				else {
					if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value="Please Enter Location Code";
						document.getElementById("hiddenname").value="locationcode";
			   		}
			   		showdiv('messagedivid');
				}
			}
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
				document.getElementById('hiddenname').value="locationname";
   			}
   			showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Location Name";
			document.getElementById("hiddenname").value="locationname";
   		}
   		showdiv('messagedivid');
	}
}
function fnCallUpdateLocation(formname,mainaction,formaction,lcnames,lccode) {
	var locationnamearray = lcnames.split("::");
	var locationcodearray = lccode.split("::");
	var chksave=true;
	if(fnEmptyField(formname.locationname)) {
		if(fnCharValidnWithoutSpecChars(formname.locationname)) {
			if(chksave==true) {
				if(fnEmptyField(formname.locationcodeupdate)) {
					if(fnCharValidnWithoutSpecChars(formname.locationcodeupdate)) {
						for(i=0;i<locationcodearray.length;i++) {
							if(formname.locationcodeupdate.value.toLowerCase()==locationcodearray[i].toLowerCase()) {
								if (document.getElementById) { // DOM3 = IE5, NS6 
									document.getElementById("message").value="Location Code Already Exists";
									document.getElementById("hiddenname").value="locationcodeupdate";
				   				}
				   				showdiv('messagedivid');
								chksave=false;
								break;
							}
						}
						if(chksave==true) {
							if (document.getElementById) { // DOM3 = IE5, NS6 
								document.getElementById("messageques").value="Would You like to Update the Location Information?";
								document.getElementById("hiddenquesname").value="locationcodeupdate";
			   				}
			   				showdiv('messagequesdivid');
		   				}
   					}
   					else {
   						if (document.getElementById) { // DOM3 = IE5, NS6 
							document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
							document.getElementById("hiddenname").value="locationcodeupdate";
				   		}
				   		showdiv('messagedivid');
   					}
   				}
   				else {
   				}
			}
		}
		else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter only Character, Number, Special Character and Space, start with Character";
				document.getElementById("hiddenname").value="locationname";
	   		}
	   		showdiv('messagedivid');
		}
	}
	else {
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Location";
			document.getElementById("hiddenname").value="locationname";
   		}
   		showdiv('messagedivid');
	}
}
// Configuration End


//Report Part Start

function fnCheckAdministrationRequest(formname,mainaction,formaction,fmt) {
	var reptype="";
	var rddate="";
   if(document.administrationreport.reqduedate[0].checked) {
		rddate="rdate";
	}
	else if(document.administrationreport.reqduedate[1].checked) {
		rddate="ddate";
	}
	var callservlet=true;
	if(formname.reporttype[0].checked) {
		reptype="monthly";
		callservlet=fnCheckMonthly(formname);
	}
	else if(formname.reporttype[1].checked) {
		reptype="weekly";
		callservlet=fnCheckWeekly(formname);
	}
	else if(formname.reporttype[2].checked) {
		reptype="daily";
		callservlet=fnCheckDaily(formname,fmt);
	}
	else {
		if(formname.combo_productname.value!='All') {
			//alert('Please select either Monthly,Weekly Or Daily');
			document.getElementById("message").value="Please Select either Monthly, Weekly or Daily";
		    document.getElementById("hiddenname").value="reporttype";
		    showdiv('messagedivid');
			callservlet=false;
		}
		else {
			callservlet=true;
		}
	}
    if(callservlet) {
    	fnCallServlet(formname,mainaction,formaction+"&prodid="+formname.combo_productname.value+"&mon="+formname.combo_month.value+"&week="+formname.combo_week.value+"&date="+formname.daily.value+"&status="+formname.combo_status.value+"&reptype="+reptype+"&rddate="+rddate);
	}
}

function fnCheckDaily(formname,fmt) {
	if(formname.reqduedate[0].checked==true || formname.reqduedate[1].checked==true) {
		if(fnEmptyFieldWithoutMsg(formname.daily)) {
			if(fnValidateDate(fmt,formname.daily)) {
				return true;
			}
			else {
				return false;
			}
		}
		else {
	       //	alert("Please select date");
	        document.getElementById("message").value="Please Select Date";
		    document.getElementById("hiddenname").value="daily";
		    showdiv('messagedivid');
	        return false;
        }
	}
    else {
    	//alert('Please Check either request date or due date');
    	    document.getElementById("message").value="Please Check either Request Date or Due Date";
		    document.getElementById("hiddenname").value="date";
		    showdiv('messagedivid');
		return false;
	}
}

function fnCheckWeekly(formname) {
   	if(fnEmptyFieldWithoutMsg(formname.combo_yearweek) && fnEmptyFieldWithoutMsg(formname.combo_monthweek) && fnEmptyFieldWithoutMsg(formname.combo_week)) {
		return true;
   	}
   	else {
    	//alert('Please select year, month and week');
    	document.getElementById("message").value="Please Select Year, Month and Week";
		document.getElementById("hiddenname").value="combo_yearweek";
		showdiv('messagedivid');
    	
   	}
   	return false;
}

function fnCheckMonthly(formname) {
	if(fnEmptyFieldWithoutMsg(formname.combo_year) && fnEmptyFieldWithoutMsg(formname.combo_month)) {
	   	return true;
    }
   	else {
    	//alert('Please select both month and year');
    	document.getElementById("message").value="Please Select both Month and Year";
		document.getElementById("hiddenname").value="combo_year";
		showdiv('messagedivid');
   	} 
    return false;
}


function fnExcel() {
}

//Report Part End


// Get No OF WEEKS Start

// Returns No Of Weeks InThe Specified Month Of The Specified Year
// Call fnGetWeeks passing year as first parameter and month as second parameter

function fnGetWeeks(year,month) {
	var date = new Date(year,month-1,1);
	var noofdays=fnGetDays(year,month-1);
	var dayofweek = fnGetDayOfWeek(date);
	var noofweeks = fnGetNoOfWeeks(noofdays,dayofweek);
	return noofweeks;
}

function fnGetDays(year,month) {
	var days;
	switch(month) {
		case 0 : days=31;
				 break;
		case 2 : days=31;
				 break;
		case 4 : days=31;
				 break;
		case 6 : days=31;
				 break;
		case 7 : days=31;
				 break;
		case 9 : days=31;
				 break;
		case 11: days=31;
				 break;
		case 1 : if(checkleapyear(year)==true) {
					days=29;
				 }
				 else {
				 	days=28;
				 }
				 break;
		case 3 : days=30;
				 break;
		case 5 : days=30;
				 break;
		case 8 : days=30;
				 break;
		case 10: days=30;
				 break;
		default : 	days=0;
					break;
	}
	return days;
}

function checkleapyear(datea) {
	datea = parseInt(datea);
	if(datea%4 == 0) {
		if(datea%100 != 0) {
			return true;
		}
		else {
			if(datea%400 == 0) {
				return true;
			}
			else {
				return false;
			}
		}
	}
	return false;
}

function fnGetDayOfWeek(date) {
	var day = date.getDay();
	var weekday;
	switch(day) {
		case 0 : weekday='Sunday';
				 break;
		case 1 : weekday='Monday';
				 break;
		case 2 : weekday='Tuesday';
				 break;
		case 3 : weekday='Wenesday';
				 break;
		case 4 : weekday='Thursday';
				 break;
		case 5 : weekday='Friday';
				 break;
		case 6 : weekday='Saturday';
				 break;
		default : break;
	}
	return weekday;
}

function fnGetNoOfWeeks(noofdays,dayofweek) {
	var noofweeks;
	if(noofdays==28) {
		if(dayofweek.toLowerCase()=='Sunday'.toLowerCase()) {
			noofweeks=4;
		}
		else {
			noofweeks=5;
		}
	}
	else if(noofdays==29) {
		noofweeks=5;
	}
	else if(noofdays==30) {
		if(dayofweek.toLowerCase()=='Saturday'.toLowerCase()) {
			noofweeks=6;
		}
		else {
			noofweeks=5;
		}
	}
	else if(noofdays==31) {
		if(dayofweek.toLowerCase()=='Friday'.toLowerCase() || dayofweek.toLowerCase()=='Saturday'.toLowerCase()) {
			noofweeks=6;
		}
		else {
			noofweeks=5;
		}
	}
	return noofweeks;
}

// Get No Of WEEKS End


// Validation Part

// Validation Part

function fnEmptyField(field,message) {// Returns True If Field Is Not Empty
	var val;
	if(field.value){
		val = field.value;
		
	}else{
		try{
			val = tinyMCE.get(field).getContent();
		}catch(e){
			return false;
		}
	}
	val.replace(/\s*((\S+\s*)*)/,'');
	val.replace(/((\s*\S+)*)\s*/,'');
	var allalphanumeric=/[a-zA-Z0-9]/;
	if(val.search(allalphanumeric)==-1) {
		return false;
	}else {
		return true;
	}
}
//checks empty password fields on UsereditInfo.jsp
function fnEmptyFieldForPassword(field,message) {// Returns True If Field Is Not Empty
	var val;
	if(field.value){
		val = field.value;
		
	}else{
		try{
			val = tinyMCE.get(field).getContent();
		}catch(e){
			return false;
		}
	}
	val.replace(/\s*((\S+\s*)*)/,'');
	val.replace(/((\s*\S+)*)\s*/,'');
	if(val.length==0) {
		return false;
	}else {
		return true;
	}
}

function fnEmptyFieldWithoutMsg(field) {// Returns True If Field Is Not Empty
	field.value.replace(/\s*((\S+\s*)*)/,'');
	field.value.replace(/((\s*\S+)*)\s*/,'');
	var allalphanumeric=/[0-9a-zA-Z]/
	if(field.value.search(allalphanumeric)==-1) {
		return false;
	}
	else {
		return true;
	}
}
function isemptyPhonenumber(field){
	if(field.value == ''){
		return true;
	}

}

function fnCharValidnWithoutSpecChars(field) {

	var charcompare = /^([A-Za-z]|[A-Za-z0-9_-])[\w\W]{1,}$/
	if(field.value.search(charcompare)==-1) {

		return false;
	}
	else {

		return true;
	}
}
function fnSpecialCharacterChecking(field) {
	var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
  	for (var i = 0; i < field.value.length; i++) {
	  	if (iChars.indexOf(field.value.charAt(i)) != -1) {
	  		return false;
	  	}
  	}
  	return true;
}
/** For Special character in State field **/
function fnSpecialCharacterCheckState(field) {
	var iChars = "!@#$%^&*+=[]\\\';,/{}|\":<>?";
	var charcompare = /^[^0-9]{1,}$/
	
  	for (var i = 0; i < field.value.length; i++) {
	  	if (iChars.indexOf(field.value.charAt(i)) != -1) {
	  	if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value="Special Chracters are not allowed in State field";
						document.getElementById("hiddenname").value=field.name;
			 		}
					showdiv('messagedivid');
	  		return false;
	  	}
	  	if(field.value.search(charcompare)==-1) {
	  	if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value="Numbers are not allowed in State field " ;
						document.getElementById("hiddenname").value=field.name;
			 		}
					showdiv('messagedivid');
		return false;
	}
  	}
  	return true;
}
/** For Special character in subject field **/
function fnSpecialCharacterCheckSubject(field) {
	var iChars = "'\"";
  	for (var i = 0; i < field.value.length; i++) {
	  	if (iChars.indexOf(field.value.charAt(i)) != -1) {
	  		return false;
	  	}
	  	if (field.value.indexOf("::") != -1) {
	  		return false;
	  	}
  	}
  	return true;
}
function fnNumbersNoSpecs(field) {
	var charcompare = /^([0-9][a-zA-Z0-9_-]|[0-9]|[A-Za-z]|[A-Za-z][a-zA-Z0-9_-])[\w\W]{1,}$/
	if(field.value.search(charcompare)==-1) {
		return false;
	}
	else {
		return true;
	}
}

function fnCharValidnWithoutSpecialChars(field) {
	var charcompare = /^[A-Za-z][a-zA-Z0-9_]{1,}$/
	if(field.value.search(charcompare)==-1) {
		return false;
	}
	else {
		return true;
	}
}

function fnCharValidnWithSpecialChars(field) {
	var charcompare = /^[^0-9]{1,}$/
	if(field.value.search(charcompare)==-1) {
		return false;
	}
	else {
		return true;
	}
}

function fnNumberValidation(field) {
	var numcompare = /^\d{1,}$/
	if(field.value.search(numcompare)==-1) {
		return false;
	}
	else {
		return true;
	}
}

function fnPhoneValidation(field) {
    var numcompare = /^[0-9\(\)-.+]*$/
	if(field.value.search(numcompare)==-1) {
		return false;
	}
	else {
		return true;
	}
}

// Function is used to validate Phone
/*
function isValidPhone(field)
{
 	//alert("from isValidPhone = " + field.value);
   var numcompare = /^(([0-9]{3}[\-| |.])|(\([0-9]{3}\)[ ]))[0-9]{3}[\-| |.]{1}[0-9]{4}$/;
       if(numcompare.test(field.value))
       {
               return true;
       }
       return false;
}
*/
function isValidPhone(field) {
    // 	standard format is ###-###-#### Or (###) ###-####    
    //	var numcompare = /^(([0-9]{3}[\-| |.])|(\([0-9]{3}\)[ ]))[0-9]{3}[\-| |.]{1}[0-9]{4}$/;
    // 	standard format is ###-###-####
    
	//	var numcompare =   /^((\+\d{1,3}(-| |.)?\(?\d\)?(-| |.)?\d{1,5})|(\(?\d{2,6}\)?))(-| |.)?(\d{3,4})(-| |.)?(\d{4}){0,1}$/;
 	//	Now we have to validate only these chars not any format validation.
 		
	/*if(numcompare.test(field.value)) {
		return true;
	}*/
	var inValidChars = "~`!@#$%^&*_=|\/?><,{}[]";
	for( var j = 0; j < field.value.length; j++ ) {
		if( inValidChars.indexOf(field.value.charAt(j)) != -1 ) {
			return false;
		}
	}
	var alpha = /^[A-Za-z]/;
	if( field.value.search(alpha)!=-1 ){
		return false;	
		}
	return true;
}


function fnURLValidation(field) {
	var urlcompare= /^(((http:\/\/www.|https:\/\/www.|ftp:\/\/www.|ftp:\/\/|www.){1}([\w]+)(.[\w]+){1,2})|((.[\w]+){1,2}))$/;
	if(field.value.search(urlcompare)==-1) {
		return false;
	}
	else {
		return true;
	}
}


function fnIsEmptyField(field,message){
	//alert("field.value from fnIsEmptyField = " + field.value + "  " + field.name);
	if(field.value == '' || field.value.length == 0 || field.value == null){
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter "+message;
			document.getElementById("hiddenname").value=field.name;
		}
		showdiv('messagedivid');
		return false;
	}else{
		return true;
	}

}
/*
function fnIsEmail(field,message) {
		var isempty = fnCheckEmptyField(field);
		if(!isempty){
			var at="@";
			var dot=".";
			var str = field.value;
			var check = false;
			var lat=str.indexOf(at);
			var lstr=str.length;
			var ldot=str.indexOf(dot);
			if (str.indexOf(at)==-1){
			   alertMessage(field,message);
			}
			if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
			   return alertMessage(field,message);
			}
			if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
			    return alertMessage(field,message);
			}
			 if (str.indexOf(at,(lat+1))!=-1){
			    return alertMessage(field,message);
			 }
			 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
			    return alertMessage(field,message);
			 }
			 if (str.indexOf(dot,(lat+2))==-1){
			    return alertMessage(field,message);
			 }
			 if (str.indexOf(" ")!=-1){
			    return alertMessage(field,message);
			 }
		 }
 		 return true;					
	}
*/	
	/*
	function fnIsEmail(field,message) {
		var regExpZip = /^[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?:[A-Z]{2}|com|org|net|gov|biz|info|name|aero|biz|info|jobs|museum|([a-zA-Z]{2}\.[a-zA-Z]{2}))\b$/;		
		var isempty = fnCheckEmptyField(field);
		if(!isempty){
			if(regExpZip.test(field.value)){
				return true;
			} else {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please enter valid " + message + " Address";
					document.getElementById("hiddenname").value=field.name;
				}
				showdiv('messagedivid');
			 	return false;
			}
		}
		return true;
	}*/	
	
	function fnIsEmail(field, message) {
	  var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	   var address = field.value;
	   var isempty = fnCheckEmptyField(field);
	   if(!isempty){
	   
		   if(reg.test(address)) {
		      	return true;
		   } else
				return false;	   
	   }
	   return true;
	}
	function fnIsEmailOutlook(field, message) {
		var isempty = false;
		var bReturn = false;
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		var address = field.value;
		var len;
		var isempty = fnCheckEmptyField(field);
		if(!isempty){	   
			
			var singleAdd = address.split(';');
            if(singleAdd.length > 1){
				len = singleAdd.length - 1;
			}else{
				len = singleAdd.length;	
			}
			for(var i=0; i<len; i++){
				if(reg.test(singleAdd[i])) {
					bReturn = true;
				} else{
					bReturn = false;
					break;
				}
			}
		}else{
			bReturn = true;
		}   
		return bReturn;
	}
	
	function fnvalidateCompanyInfo(formname){           
		return fnIsEmptyField(formname.txtNAME,'Customer Name') 
		&& fnSpecialCharacterCheck(formname.txtNAME,'Customer Name') 
		&& fnIsEmptyField(formname.txtCUSTOMERCODE,'Customer Code')
		&& fnSpecialCharacterCheck(formname.txtCUSTOMERCODE,'Customer Code') 
		&& checkValidPhone(formname.txtPHONE,'Phone')
		&& checkValidPhone(formname.txtFAX,'Fax') 
		&& fnCheckAddress(formname.txtAddress, 'Address') 
		&& fnSpecialCharacterCheck(formname.txtCITY,'City')
		&& fnSpecialCharacterCheckState(formname.txtSTATE,'State') 
		&& validateZIP(formname.txtZIP) 
		&& fnSpecialCharacterCheck(formname.txtCOUNTRY,'Country')
		&& checkValidUrl(formname.txtWEBSITE,'Website') 
		&& fnCheckMainEmail(formname.txtEMAILID, 'Email') 
		&& fnSpecialCharacterCheck(formname.txtPRINAME,'Primary Name')
		&& fnCheckMainEmail(formname.txtPRIEMAIL,'Primary Email') 
		&& checkValidPhone(formname.txtPRIPHONE,'Primary Phone') 
		&& isNumeric(formname.txtPRIEXT)
		&& checkValidPhone(formname.txtPRICELL,'Primary Cell') 
		&& checkValidPhone(formname.txtPRIFAX,'Primary Fax')
		&& fnSpecialCharacterCheck(formname.txtSECNAME,'Secondary Name') 
		&& fnCheckMainEmail(formname.txtSECEMAIL,'Secondary Email') 
		&& checkValidPhone(formname.txtSECPHONE,'Secondary Phone') 
		&& isNumeric(formname.txtSECEXT) 
		&& checkValidPhone(formname.txtSECCELL,'Secondary Cell') 
		&& checkValidPhone(formname.txtSECFAX,'Secondary Fax');
	}
	
	function fnCheckAddress(addressField, fieldName) {
		var allowdChars = /^[A-Za-z0-9_/&#.@,\'\"\-\\n\r\n ]*$/;
		var len = addressField.value.length;
		if( len > 80 ) {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value = "Address Field Length cannot be more than 80 Characters";
				document.getElementById("hiddenname").value = addressField.name;
	 		}
			showdiv('messagedivid');
			return false; 
		}
		if( !allowdChars.test(addressField.value) ) {
			if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value = "Please Enter Valid Address.";
						document.getElementById("hiddenname").value = addressField.name;
			 		}
			 		showdiv('messagedivid');
					return false;
		}
		return true;
	}
	
	function fnCheckMainEmail(field, message) {
		
		if( fnIsEmail(field, message) ) {
			return true;
		} else {
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value = "Please Enter Valid " + message + " Address";
				document.getElementById("hiddenname").value = field.name;
	 		}
	 		showdiv('messagedivid');
			return false;
		}
		
	}
	function fnvalidateCustomerInfo(formname){ 
		document.getElementById("complist").style.visibility="hidden"          
		return fnIsEmptyField(formname.txtCNAME, 'Customer Contact Name') 
		&& fnSpecialCharacterCheck(formname.txtCNAME, 'Customer Contact Name') 
		&& validateCustomerName(formname.complist, 'Customer Name')
		&& checkValidPhone(formname.txtCPHONE, 'Phone') 
		&& checkValidPhone(formname.txtCFAX, 'Fax') 
		&& fnCheckAddress(formname.txtCADDRESS, 'Address')
		&& fnSpecialCharacterCheck(formname.txtCCITY, 'City')
		&& fnSpecialCharacterCheckState(formname.txtCSTATE, 'State') 
		&& fnSpecialCharacterCheck(formname.txtCCOUNTRY, 'Country')
		&& validateZIP(formname.txtCZIP)
		&& fnCheckMainEmail(formname.txtCEMAIL, 'Email');
	}
	
	function isNumeric(field) {
		var value = field.value;
		//alert(" value from isNumeric = " + value);
		if (value != null && value.length != 0 &&  !value.toString().match(/^[-]?\d*\.?\d*$/)){
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter Valid Phone Ext.";
				document.getElementById("hiddenname").value=field.name;
	 		}
			showdiv('messagedivid');
			return false;
		}
		return true;
}

	
	function validateCustomerName(field,message){
		var custName = field.value;
		if(custName != 'all'){
			return true;
		}
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Select " + message;
			document.getElementById("hiddenname").value=field.name;
		}
		showdiv('messagedivid');
	 	return false;
	
	}
	function fnValidatePhoneExt(field) {
		if(field != '' || field.length != 0 || field != null){
			//var numcompare = [^0-9.]
			var numcompare="[^0-9]";

			var num_test = new RegExp(numcompare);
			//if(field.value.search(numcompare)==-1) {
			if(num_test.test(field)){
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please Enter Valid Phone Ext.";
					document.getElementById("hiddenname").value=field.name;
		 		}
				showdiv('messagedivid');
				return false;
			}
		}
		return true;
	}

	function validateZIP(field)  {
		//alert("ZIP VALUE = " + field.value + " == " +field.value.length);
		if(field.value != '' || field.value.length > 0){
			var iChars = /^\d{5,6}$/
			//alert("ZIP = " + iChars.test(field.value));
			if(iChars.test(field.value)){
				return true;
			}else{
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please Enter Minimum 5 Digit Zip Code.";
					document.getElementById("hiddenname").value=field.name;
		 		}
				showdiv('messagedivid');
				return false;
			}
		}
		return true;
	}
	
		
	function alertMessage(field,message){
		if (document.getElementById) { // DOM3 = IE5, NS6 
			document.getElementById("message").value="Please Enter Valid " + message + " Address";
			document.getElementById("hiddenname").value=field.name;
		}
		showdiv('messagedivid');
	 	return false;
	}
	
	function fnCheckEmptyField(field) {// Returns False If Field Is Not Empty
		//alert(" From fnCheckEmptyField = " + field.name + " <--> " + field.value );
		if(field.value == '' || field.value.length == 0 || field.value == null){
			return true;
		}else{
			return false;
		}
	}
	
	function fnSpecialCharacterCheck(field,message) {
		var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
		var isempty = fnCheckEmptyField(field);
		//alert("isempty from fnSpecialCharacterCheck ==== " + isempty);
		if(!isempty){
		  	for (var i = 0; i < field.value.length; i++) {
			  	if (iChars.indexOf(field.value.charAt(i)) != -1) {
					if (document.getElementById) { // DOM3 = IE5, NS6 
						document.getElementById("message").value="Please Enter Valid "+message ;
						document.getElementById("hiddenname").value=field.name;
			 		}
					showdiv('messagedivid');
			  		return false;
			  	}
		  	}
	  	}
	  	return true;
	}
	function checkValidPhone(field,message) {
	    // standard format is ###-###-#### Or (###) ###-####    
	   // var numcompare = /^(([0-9]{3}[\-| |.])|(\([0-9]{3}\)[ ]))[0-9]{3}[\-| |.]{1}[0-9]{4}$/;
	    // standard format is ###-###-####
	    /* var numcompare =   /^(((\+|)\d{1,3}(-| |.)?\(?\d\)?(-| |.)?\d{1,5})|(\(?\d{2,6}\)?))(-| |.)?(\d{3,4})(-| |.)?(\d{4}){0,1}$/;
	    var isempty = fnCheckEmptyField(field);
		if(!isempty){
			if(numcompare.test(field.value)) {
			      return true;
			}
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter Valid " + message + " Number with only digits (0-9), special characters (+,-,dot,()) and space";
				document.getElementById("hiddenname").value=field.name;
			}
	  		showdiv('messagedivid');
	  		return false;
		}
		*/
		var inValidChars = "~`!@#$%^&*_=|\/?><,{}[]";
		for( var j = 0; j < field.value.length; j++ ) {
			if( inValidChars.indexOf(field.value.charAt(j)) != -1 ) {
				if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please Enter Valid " + message + " Number with only digits (0-9), special characters (+,-,dot,()) and space";
					document.getElementById("hiddenname").value=field.name;
				}
		  		showdiv('messagedivid');
				return false;
			}
		}
		var alpha = /^[A-Za-z]/;
		if( field.value.search(alpha)!=-1 ){
			if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter Valid " + message + " Number with only digits (0-9), special characters (+,-,dot,()) and space";
				document.getElementById("hiddenname").value=field.name;
			}
	  		showdiv('messagedivid');
			return false;	
		}
	    return true;
	}
/*	
	function checkValidUrl(field,message) {
	     var isempty = fnCheckEmptyField(field);
		//alert("isempty from fnSpecialCharacterCheck ==== " + isempty);
		if(!isempty){
		     var theurl=field.value;
		     //var tomatch= /http:\/\/[A-Za-z0-9\.-]{3,}\.[A-Za-z]{3}/
		     var tomatch =  new RegExp("^(http:\/\/www.|https:\/\/www.|ftp:\/\/www.|www.){1}([0-9A-Za-z]+\.)");
		     if (tomatch.test(theurl)){
		         return true;
		     }else{
		         if (document.getElementById) { // DOM3 = IE5, NS6 
					document.getElementById("message").value="Please enter valid " + message;
					document.getElementById("hiddenname").value=field.name;
		 		}
				showdiv('messagedivid');
		  		return false;
		     }
	     }
	     return true;
	}
*/
// Function is used to validate URL
function checkValidUrl(field,message){ 
    var isempty = fnCheckEmptyField(field);
    if(!isempty){
	    var RegExp = /^(http:\/\/www.|https:\/\/www.|ftp:\/\/www.|www.){1}([\w])+([.]{1}[A-Za-z]{1,3}){1,2}$/;
	    if(RegExp.test(field.value)){ 
	        return true; 
	    }else { 
	        if (document.getElementById) { // DOM3 = IE5, NS6 
				document.getElementById("message").value="Please Enter Valid " + message;
				document.getElementById("hiddenname").value=field.name;
	 		}
			showdiv('messagedivid');
	  		return false;
	    }
    }
    return true; 
}

function validateAllEmailIds(field) {
	//alert("field.value =  " + field.value);
	var success = false;
	var emails = field.value.replace(',',';');
	//alert("emails = " + emails);
	var ids = emails.split(";");
	//alert(" ids = " + ids);
	var regExpZip = /^[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?:[A-Z]{2}|com|org|net|gov|biz|info|name|aero|biz|info|jobs|museum|([a-zA-Z]{2}\.[a-zA-Z]{2}))\b$/;		
	var isempty = fnCheckEmptyField(field);
	//alert("isempty = " + isempty);
	if(!isempty){
		for(var i=0;i<ids.length;i++){
			//alert("mail ids [ " + i + " ]= " + ids[i]);
			if(ids[i] != ''){
				if(regExpZip.test(ids[i])){
					success = true;
				}else {
				 	return false;
				}
			}
		}
		//alert("success = " + success);
		return success;
	}
	return true;
/*	for(i=0;i<ids.length;i++) {
		var at="@"
	var dot="."
	var lat=ids[i].indexOf(at)
	var lstr=ids[i].length
	var ldot=ids[i].indexOf(dot)
	if (ids[i].indexOf(at)==-1) {
		return false;
	}
	if (ids[i].indexOf(at)==-1 || ids[i].indexOf(at)==0 || ids[i].indexOf(at)==lstr) {
	   return false;
	}
	if (ids[i].indexOf(dot)==-1 || ids[i].indexOf(dot)==0 || ids[i].indexOf(dot)==lstr) {
	    return false;
	}
	if (ids[i].indexOf(at,(lat+1))!=-1) {
	    return false;
	}
	if (ids[i].substring(lat-1,lat)==dot || ids[i].substring(lat+1,lat+2)==dot) {
	    return false;
	}
	if (ids[i].indexOf(dot,(lat+2))==-1) {
	    return false;
	}
	if (ids[i].indexOf(" ")!=-1) {
	    return false;
	}
	return true;
	}
*/	
}

function fnEmailValidation(field) {
	var at="@"
	var dot="."
	var lat=field.value.indexOf(at)
	var lstr=field.value.length
	var ldot=field.value.indexOf(dot)
	if (field.value.indexOf(at)==-1) {
		return false;
	}
	if (field.value.indexOf(at)==-1 || field.value.indexOf(at)==0 || field.value.indexOf(at)==lstr) {
	   return false;
	}
	if (field.value.indexOf(dot)==-1 || field.value.indexOf(dot)==0 || field.value.indexOf(dot)==lstr) {
	    return false;
	}
	if (field.value.indexOf(at,(lat+1))!=-1) {
	    return false;
	}
	if (field.value.substring(lat-1,lat)==dot || field.value.substring(lat+1,lat+2)==dot) {
	    return false;
	}
	if (field.value.indexOf(dot,(lat+2))==-1) {
	    return false;
	}
	if (field.value.indexOf(" ")!=-1) {
	    return false;
	}
	return true;
}

// Code for Date Validation Starts


function fnMaxNoOfCharacters(field,fmt) {
	if(field.value.length>19 && field.value.length<8) {
		return false;
	}
	else {
		return true;
	}
}

function fnCheckHyphen(field,fmt){
	var hyphenarray = field.value.split('-');
	if(hyphenarray.length!=3) {
		return false;
	}
	else {
		return true;
	}
}

function fnCheckDigits(field,fmt) {
	var numcompare = /^\d{1,}$/
	var numarray = field.value.split('-');
	var chk=true;
	for(i=0;i<numarray.length;i++) {
		if(i == 2){
			var array = numarray[2].split(" ")
			//alert("array[0] = " + array[0]);
			if(array[0].search(numcompare)==-1) {
				chk=false;
			}
		}else{
			if(numarray[i].search(numcompare)==-1) {
				chk=false;
			}
		}
	}
	if(chk) {
		return true;
	}
	else {
		return false;
	}
}

function fnMeaningfullYear(field,year,fmt) {
	if(parseInt(year)>1950) {
		return true;
	}
	else {
		return false;
	}
}

function fnCheckMonth(field,month,fmt) {
	//alert("month = " + month);
	if(parseInt(month)<=12) {
		return true;
	}
	else {
		return false;
	}
}

function fnCheckDays(field,days,year,month,fmt) {
	var noofdays=fnGetDays(year,month-1);
	if(parseInt(days)<0 || parseInt(days)>noofdays) {
		return false;
	}
	else {
		return true;
	}
}


function checkleapyear(datea) {
	datea = parseInt(datea);
	if(datea%4 == 0) {
		if(datea%100 != 0) {
			return true;
		}
		else {
			if(datea%400 == 0) {
				return true;
			}
			else {
				return false;
			}
		}
	}
	return false;
}

function fnValidateDate(fmt,field) {
	//	alert("fmt = " + fmt);
	//	alert("field = " + field.value);
	var year,month,days,yeararray,datearray;
	if(fnEmptyField(field,'enter Date')) {
		if(fnMaxNoOfCharacters(field,fmt)) {
			if(fnCheckHyphen(field,fmt)) {
				if(fnCheckDigits(field,fmt)) {
					var datearray1 = field.value.split(' ');
					if(datearray1.length == 1){
						datearray = datearray1[0].split('-')
						days=datearray[1];
						month=datearray[0];
						year=datearray[2];
					}else{
						 datearray = datearray1[0].split('-');
						
						if(fmt.toLowerCase()=='MM-dd-yyyy'.toLowerCase()) {
							days=datearray[1];
							month=datearray[0];
							yeararray=datearray[2].split(" ");
							year = yeararray[0];
							
						}
						else if(fmt.toLowerCase()=='dd-MM-yyyy'.toLowerCase()) {
							days=datearray[0];
							month=datearray[1];
							year=datearray[2];
						}
						else if(fmt.toLowerCase()=='yyyy-MM-dd'.toLowerCase()) {
							days=datearray[2];
							month=datearray[1];
							year=datearray[0];
						}else if(fmt.toLowerCase()=='MM-dd-yyyy HH:mm aa'.toLowerCase()){
							days=datearray[1];
							month=datearray[0];
							year = datearray[2];
						}else if(fmt.toLowerCase()=='dd-MM-yyyy HH:mm aa'.toLowerCase()){
							days=datearray[0];
							month=datearray[1];
							year = datearray[2];
						}else if(fmt.toLowerCase()=='yyyy-MM-dd HH:mm aa'.toLowerCase()){
							days=datearray[2];
							month=datearray[1];
							year = datearray[0];
						}
					}
					if(fnMeaningfullYear(field,year,fmt)) {
						if(fnCheckMonth(field,month,fmt)) {
							if(fnCheckDays(field,days,year,month,fmt)) {
								return true;
							}
						}
					}
				}
			}
		}
	}
	return false;
}

function fnValidateDateByFormat(fmt,field) {
//alert("fmt = " + fmt)
	var year,month,days,yeararray;
	if(fnEmptyField(field,'enter Date')) {
		if(fnMaxNoOfCharacters(field,fmt)) {
			if(fnCheckHyphen(field,fmt)) {
				if(fnCheckDigits(field,fmt)) {
					var datearray1 = field.value.split(' ');
					var datearray = datearray1[0].split('-');
					if(fmt.toLowerCase()=='MM-dd-yyyy'.toLowerCase()) {
						days=datearray[1];
						month=datearray[0];
						yeararray=datearray[2].split(" ");
						year = yeararray[0];
					}
					else if(fmt.toLowerCase()=='dd-MM-yyyy'.toLowerCase()) {
						days=datearray[0];
						month=datearray[1];
						year=datearray[2];
					}
					else if(fmt.toLowerCase()=='yyyy-MM-dd'.toLowerCase()) {
						days=datearray[2];
						month=datearray[1];
						year=datearray[0];
					}else if(fmt.toLowerCase()=='MM-dd-yyyy HH:mm aa'.toLowerCase()){
						days=datearray[1];
						month=datearray[0];
						year = datearray[2];
					}else if(fmt.toLowerCase()=='dd-MM-yyyy HH:mm aa'.toLowerCase()){
						days=datearray[0];
						month=datearray[1];
						year = datearray[2];
					}else if(fmt.toLowerCase()=='yyyy-MM-dd HH:mm aa'.toLowerCase()){
						days=datearray[2];
						month=datearray[1];
						year = datearray[0];
					}
					if(fnMeaningfullYear(field,year,fmt)) {
						if(fnCheckMonth(field,month,fmt)) {
							if(fnCheckDays(field,days,year,month,fmt)) {
								return true;
							}
						}
					}
				}
			}
		}
	}
	return false;
}

function isValidIPAddress(ipaddr) {
   var re = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/;
   if (re.test(ipaddr)) {
      var parts = ipaddr.split(".");
      if (parseInt(parseFloat(parts[0])) == 0) { return false; }
      for (var i=0; i<parts.length; i++) {
         if (parseInt(parseFloat(parts[i])) > 255) { return false; }
      }
      return true;
   } else {
      return false;
   }
}

function fnDateCompare(startdate,enddate,fmt) {
	var stdatearray = startdate.value.split('-');
	var syear,smonth,sdays;
	var year,month,days;
	if(fmt.toLowerCase()=='MM-dd-yyyy'.toLowerCase()) {
		sdays=stdatearray[1];
		smonth=stdatearray[0];
		syear=stdatearray[2];
	}
	else if(fmt.toLowerCase()=='dd-MM-yyyy'.toLowerCase()) {
		sdays=stdatearray[0];
		smonth=stdatearray[1];
		syear=stdatearray[2];
	}
	else if(fmt.toLowerCase()=='yyyy-MM-dd'.toLowerCase()) {
		sdays=stdatearray[2];
		smonth=stdatearray[1];
		syear=stdatearray[0];
	}else if(fmt.toLowerCase()=='MM-dd-yyyy HH:mm aa'.toLowerCase()){
		sdays=stdatearray[1];
		smonth=stdatearray[0];
		var yeararray=stdatearray[2].split(" ");
		syear = yeararray[0];
	}else if(fmt.toLowerCase()=='dd-MM-yyyy HH:mm aa'.toLowerCase()){
		sdays=stdatearray[0];
		smonth=stdatearray[1];
		var yeararray=stdatearray[2].split(" ");
		syear = yeararray[0];
	}else if(fmt.toLowerCase()=='yyyy-MM-dd HH:mm aa'.toLowerCase()){
		var daysarray = stdatearray[2].split(" ");
		sdays = daysarray[0];
		smonth=stdatearray[1];
		syear=stdatearray[0];
	}
	var stdateobj = new Date(syear,smonth-1,sdays);
	var enddatearray = enddate.value.split(' ');
	if(enddatearray.length == 1){
		var datearray = enddatearray[0].split('-')
		days=datearray[1];
		month=datearray[0];
		year=datearray[2];
	}else{
		var eddatearray = enddatearray[0].split('-');
		if(fmt.toLowerCase()=='MM-dd-yyyy'.toLowerCase()) {
			days=eddatearray[1];
			month=eddatearray[0];
			year=eddatearray[2];
		}
		else if(fmt.toLowerCase()=='dd-MM-yyyy'.toLowerCase()) {
			days=eddatearray[0];
			month=eddatearray[1];
			year=eddatearray[2];
		}
		else if(fmt.toLowerCase()=='yyyy-MM-dd'.toLowerCase()) {
			days=eddatearray[2];
			month=eddatearray[1];
			year=eddatearray[0];
		}else if(fmt.toLowerCase()=='MM-dd-yyyy HH:mm aa'.toLowerCase()){
			days=eddatearray[1];
			month=eddatearray[0];
			year = eddatearray[2];
		}else if(fmt.toLowerCase()=='dd-MM-yyyy HH:mm aa'.toLowerCase()){
			days=eddatearray[0];
			month=eddatearray[1];
			year = eddatearray[2];
		}else if(fmt.toLowerCase()=='yyyy-MM-dd HH:mm aa'.toLowerCase()){
			days = eddatearray[2];
			month=eddatearray[1];
			year=eddatearray[0];
		}
	}
	
	var eddateobj = new Date(year,month-1,days);
	if(stdateobj > eddateobj) {
		return false;
	}
	else {
		return true;
	}
}

function fnDateCompareByFormat(startdate,enddate,fmt) {
	var stdatearray = startdate.value.split('-');
	var eddatearray = enddate.value.split('-');
	var syear,smonth,sdays;
	var year,month,days;
	if(fmt.toLowerCase()=='MM-dd-yyyy'.toLowerCase()) {
		sdays=stdatearray[1];
		smonth=stdatearray[0];
		syear=stdatearray[2];
	}
	else if(fmt.toLowerCase()=='dd-MM-yyyy'.toLowerCase()) {
		sdays=stdatearray[0];
		smonth=stdatearray[1];
		syear=stdatearray[2];
	}
	else if(fmt.toLowerCase()=='yyyy-MM-dd'.toLowerCase()) {
		sdays=stdatearray[2];
		smonth=stdatearray[1];
		syear=stdatearray[0];
	}else if(fmt.toLowerCase()=='MM-dd-yyyy HH:mm aa'.toLowerCase()){
		sdays=stdatearray[1];
		smonth=stdatearray[0];
		var yeararray=stdatearray[2].split(" ");
		syear = yeararray[0];
	}else if(fmt.toLowerCase()=='dd-MM-yyyy HH:mm aa'.toLowerCase()){
		sdays=stdatearray[0];
		smonth=stdatearray[1];
		var yeararray=stdatearray[2].split(" ");
		syear = yeararray[0];
	}else if(fmt.toLowerCase()=='yyyy-MM-dd HH:mm aa'.toLowerCase()){
		sdays=stdatearray[2];
		smonth=stdatearray[1];
		var yeararray=stdatearray[0].split(" ");
		syear = yeararray[0];
	}
	var stdateobj = new Date(syear,smonth-1,sdays);
	if(fmt.toLowerCase()=='MM-dd-yyyy'.toLowerCase()) {
		days=eddatearray[1];
		month=eddatearray[0];
		year=eddatearray[2];
	}
	else if(fmt.toLowerCase()=='dd-MM-yyyy'.toLowerCase()) {
		days=eddatearray[0];
		month=eddatearray[1];
		year=eddatearray[2];
	}
	else if(fmt.toLowerCase()=='yyyy-MM-dd'.toLowerCase()) {
		days=eddatearray[2];
		month=eddatearray[1];
		year=eddatearray[0];
	}else if(fmt.toLowerCase()=='MM-dd-yyyy HH:mm aa'.toLowerCase()){
		days=eddatearray[1];
		month=eddatearray[0];
		var yeararray=eddatearray[2].split(" ");
		year = yeararray[0];
	}else if(fmt.toLowerCase()=='dd-MM-yyyy HH:mm aa'.toLowerCase()){
		days=eddatearray[0];
		month=eddatearray[1];
		var yeararray=eddatearray[2].split(" ");
		year = yeararray[0];
	}else if(fmt.toLowerCase()=='yyyy-MM-dd HH:mm aa'.toLowerCase()){
		days=eddatearray[2];
		month=eddatearray[1];
		var yeararray=eddatearray[0].split(" ");
		year = yeararray[0];
	}
	var eddateobj = new Date(year,month-1,days);
	if(stdateobj > eddateobj) {
		return false;
	}
	else {
		return true;
	}
}

// Function for All reports  convert date Format in Standard JS date format
function fnDateCompareByFormatForReports(startdate,enddate,fmt) {
	var stdatearray = startdate.value.split('-');
	var eddatearray = enddate.value.split('-');
	var syear,smonth,sdays;
	var year,month,days;
	if(fmt.toLowerCase()=='MM-dd-yyyy'.toLowerCase()) {
		sdays=stdatearray[1];
		smonth=stdatearray[0];
		syear=stdatearray[2];
	}
	else if(fmt.toLowerCase()=='dd-MM-yyyy'.toLowerCase()) {
		sdays=stdatearray[0];
		smonth=stdatearray[1];
		syear=stdatearray[2];
	}
	else if(fmt.toLowerCase()=='yyyy-MM-dd'.toLowerCase()) {
		sdays=stdatearray[2];
		smonth=stdatearray[1];
		syear=stdatearray[0];
	}else if(fmt.toLowerCase()=='MM-dd-yyyy HH:mm aa'.toLowerCase()){
		sdays=stdatearray[1];
		smonth=stdatearray[0];
		var yeararray=stdatearray[2].split(" ");
		syear = yeararray[0];
	}else if(fmt.toLowerCase()=='dd-MM-yyyy HH:mm aa'.toLowerCase()){
		sdays=stdatearray[0];
		smonth=stdatearray[1];
		var yeararray=stdatearray[2].split(" ");
		syear = yeararray[0];
	}else if(fmt.toLowerCase()=='yyyy-MM-dd HH:mm aa'.toLowerCase()){
		sdays=stdatearray[2];
		smonth=stdatearray[1];
		var yeararray=stdatearray[0].split(" ");
		syear = yeararray[0];
	}
	var stdateobj = new Date(syear,smonth-1,sdays);
	if(fmt.toLowerCase()=='MM-dd-yyyy'.toLowerCase()) {
		days=eddatearray[1];
		month=eddatearray[0];
		year=eddatearray[2];
	}
	else if(fmt.toLowerCase()=='dd-MM-yyyy'.toLowerCase()) {
		days=eddatearray[0];
		month=eddatearray[1];
		year=eddatearray[2];
	}
	else if(fmt.toLowerCase()=='yyyy-MM-dd'.toLowerCase()) {
		days=eddatearray[2];
		month=eddatearray[1];
		year=eddatearray[0];
	}else if(fmt.toLowerCase()=='MM-dd-yyyy HH:mm aa'.toLowerCase()){
		days=eddatearray[1];
		month=eddatearray[0];
		var yeararray=eddatearray[2].split(" ");
		year = yeararray[0];
	}else if(fmt.toLowerCase()=='dd-MM-yyyy HH:mm aa'.toLowerCase()){
		days=eddatearray[0];
		month=eddatearray[1];
		var yeararray=eddatearray[2].split(" ");
		year = yeararray[0];
	}else if(fmt.toLowerCase()=='yyyy-MM-dd HH:mm aa'.toLowerCase()){
		days=eddatearray[2];
		month=eddatearray[1];
		var yeararray=eddatearray[0].split(" ");
		year = yeararray[0];
	}
	var eddateobj = new Date(year,month-1,days);
	if(dayselapsed(eddateobj,stdateobj)>31) {
		return false;
	}
	else {
		return true;
	}
	
}
// Function for to get difference between two dates.
 function dayselapsed(eddateobj,stdateobj)
 {
 var difference=Date.UTC(eddateobj.getYear(),eddateobj.getMonth(),eddateobj.getDate(),0,0,0)-
 Date.UTC(stdateobj.getYear(),stdateobj.getMonth(),stdateobj.getDate(),0,0,0);
 return  difference/1000/60/60/24;
 }
// Code for Date Validation Ends

// For MessageWindow Start

function hidediv(div){ 
	if (document.getElementById) { // DOM3 = IE5, NS6 
		document.getElementById(div).style.display = 'none'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.hideshow.display = 'none'; 
		} 
		else { // IE 4 
			document.all.hideshow.style.display = 'none'; 
		} 
	} 
	var limit = document.forms[0].elements.length;
	for (i=0;i<limit;i++) {
		document.forms[0].elements[i].disabled = false;
	}
	enableWnd('disableWindow');
} 


function hideDivModified(div, disableWindowDiv){ 
	if (document.getElementById) { // DOM3 = IE5, NS6 
		document.getElementById(div).style.display = 'none'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.hideshow.display = 'none'; 
		} 
		else { // IE 4 
			document.all.hideshow.style.display = 'none'; 
		} 
	} 
	var limit = document.forms[0].elements.length;
	for (i=0;i<limit;i++) {
		document.forms[0].elements[i].disabled = false;
	}
	enableWnd(disableWindowDiv);
} 
	
function showdiv(div) { 
	if (document.getElementById) { // DOM3 = IE5, NS6 
		document.getElementById(div).style.display = 'block'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.div.display = 'block'; 
		} 
		else { // IE 4 
			document.all.div.style.display = 'block'; 
		} 
	} 
	var limit = document.forms[0].elements.length;
	for (i=0;i<limit;i++) {
		document.forms[0].elements[i].disabled = true;
	}
	disableWnd('disableWindow');		
}

function showDivModified(div, disableWindowDiv) { 
	if (document.getElementById) { // DOM3 = IE5, NS6 
		document.getElementById(div).style.display = 'block'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.div.display = 'block'; 
		} 
		else { // IE 4 
			document.all.div.style.display = 'block'; 
		} 
	} 
	var limit = document.forms[0].elements.length;
	for (i=0;i<limit;i++) {
		document.forms[0].elements[i].disabled = true;
	}
	disableWnd(disableWindowDiv);		
}
	
function disableWnd(screen) { 
	//alert("Screen = " + screen);
	if (document.getElementById) { // DOM3 = IE5, NS6 			
		document.getElementById(screen).style.display = 'block'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.screen.display = 'block'; 
		} 
		else { // IE 4 
			document.screen.display = 'block'; 
		} 
     } 
}
		
function enableWnd(screen) { 
	if (document.getElementById) { // DOM3 = IE5, NS6 			
		document.getElementById(screen).style.display = 'none'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.screen.display = 'none'; 
		} 
		else { // IE 4 
			document.screen.display = 'none'; 
		} 
	} 		
}
function fnHideMessge(field,div) {
	var fieldname=document.getElementById(field).value;
   	hidediv(div);
   	document.getElementsByName(fieldname)[0].focus();
}
function fnHideMessgeNotEmpty(field,div) {
   	hidediv(div);
   	var fieldname=document.getElementById(field).value;
   	document.getElementsByName(fieldname)[0].focus();
}

// For MessageWindow End
// For InputBoxes Start
function hidedivinput(div){ 
	if (document.getElementById) { // DOM3 = IE5, NS6 
		document.getElementById(div).style.display = 'none'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.hideshow.display = 'none'; 
		} 
		else { // IE 4 
			document.all.hideshow.style.display = 'none'; 
		} 
	} 
	var limit = document.forms[0].elements.length;
	for (i=0;i<limit;i++) {
		document.forms[0].elements[i].disabled = false;
	}
	enableWndinput('disableWindowinput');
} 
	
function showdivinput(div,formname) { 
	if (document.getElementById) { // DOM3 = IE5, NS6 
		document.getElementById(div).style.display = 'block'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.div.display = 'block'; 
		} 
		else { // IE 4 
			document.all.div.style.display = 'block'; 
		} 
	} 
	for(j=0;j<document.forms.length;j++) {
		if(document.forms[j].name!=formname) {
			var limit = document.forms[j].elements.length;
			for (i=0;i<limit;i++) {
				document.forms[j].elements[i].disabled = true;
			}	
		}
		else if(document.forms[j].name==formname) {
			var limit = document.forms[j].elements.length;
			for (i=0;i<limit;i++) {
				document.forms[j].elements[i].disabled = false;
			}
		}
	}
	disableWndinput('disableWindowinput');		
}
	
function disableWndinput(screen) { 
	if (document.getElementById) { // DOM3 = IE5, NS6 			
		document.getElementById(screen).style.display = 'block'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.screen.display = 'block'; 
		} 
		else { // IE 4 
			document.screen.display = 'block'; 
		} 
	} 		
}
		
function enableWndinput(screen) { 
	if (document.getElementById) { // DOM3 = IE5, NS6 			
		document.getElementById(screen).style.display = 'none'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.screen.display = 'none'; 
		} 
		else { // IE 4 
			document.screen.display = 'none'; 
		} 
	} 		
}
function fnHideInput(div) {
	hidedivinput(div);
}

function fnShowProcess(div) {
	//alert("Inside fnShowProcess");
	if (document.getElementById) { // DOM3 = IE5, NS6 
		document.getElementById(div).style.display = 'block'; 
	} 
	else { 
		if (document.layers) { // Netscape 4 
			document.div.display = 'block'; 
		} 
		else { // IE 4 
			document.all.div.style.display = 'block'; 
		} 
	} 
	disableWnd('disableWindow');
}
// For InputBoxes End
// For Status Bar Start
function fnChangeStatus(message) {
	window.status=message;
	return true;
}
function mouseOver(elem) {
  elem.className = 'rOver'
}
function mouseOut(elem,row) {
   if(row==1) {
     	elem.className = 'r0';
   }
   else if(row==2) {
		elem.className = 'r1';
   }
}
// For Status Bar End

function imposeMaxLength(controlName, maxLen)
	{
 	  var controlValue = document.getElementById(controlName).value;
      if(controlValue.length > maxLen)
      {
        controlValue = controlValue.substring(0,maxLen);
        document.getElementById(controlName).value = controlValue;
      }

	}
	
//Groups Start
function fnGetSelectedGroupRecord(formname,mainaction,formaction,id,frame) {
	formname.action="/ServiceDesk/MainController?MAINACTION="+mainaction+"&FORMACTION="+formaction+"&groupId="+id;
	formname.target=frame;
	formname.submit();
}
//Groups End


