function pop(ID){
	window.open('userInfo.jsp?ID='+ID,'','resizable=no,scrollbars=yes,top=250,left=280,width=370,height=370');
}
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_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_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];}
}
function func_select()
{
	for(i=0;i<window.document.forms[1].elements.length;i++)
	{
		if(window.document.forms[1].elements[i].type=="checkbox")
		{
			window.document.forms[1].elements[i].checked=true;
		}
	}
}
function func_deselect()
{
	for(i=0;i<window.document.forms[1].elements.length;i++)
	{
		if(window.document.forms[1].elements[i].type=="checkbox")
		{
			window.document.forms[1].elements[i].checked=false;
		}
	}
}

function confirmation(){
	var answer;
	answer=window.confirm("Are you sure, you really want to delete selected record");
	if(answer){
		window.document.forms[1].submit();
	}
	else{
		return false;
	}
}
function trim(s) {
	while (s.substring(0,1) == ' ') {
	s = s.substring(1,s.length);
	}
	while (s.substring(s.length-1,s.length) == ' ') {
	s = s.substring(0,s.length-1);
	}
	return s;
}
function dateCheck(){
		var val =	document.Webadd.deliveryDate.value;
		var val1= val.split("-");	
		var date = new Date();
		if(trim(val).length>0){
			if(val1[0]<date.getYear()){
				alert("Due date can not be less than current date");
				return false;
			}else{
				if(val1[0]==date.getYear()){
						if(val1[1]<(date.getMonth()+1)){
							alert("Due date can not be less than current date");
										return false;
						}else{

							if(val1[1]==(date.getMonth()+1)){
								if(val1[2]<(date.getDate())){
									alert("Due date can not be less than current date");
												return false;
								}else{
									return true;
								}

							}

						}
					
				}
			
			}
		}
}


function func_select_request()
{
	for(i=0;i<window.document.forms[2].elements.length;i++)
	{
		if(window.document.forms[2].elements[i].type=="checkbox")
		{
			window.document.forms[2].elements[i].checked=true;
		}
	}
}
function func_deselect_request()
{
	for(i=0;i<window.document.forms[2].elements.length;i++)
	{
		if(window.document.forms[2].elements[i].type=="checkbox")
		{
			window.document.forms[2].elements[i].checked=false;
		}
	}
}



 
 //Date format validation function
 /**
 * DHTML date validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */
// Declaring valid date character, minimum year and maximum year
var dtCh= "/";
var minYear=1900;
var maxYear=2100;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n){
	for (var i = 1; i <= n; i++) {
		this[i] = 31;
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30;}
		if (i==2) {this[i] = 29;}
   } 
   return this;
 }

function isDate(dtStr){
	var daysInMonth = DaysArray(12);
	var pos1=dtStr.indexOf(dtCh);
	var pos2=dtStr.indexOf(dtCh,pos1+1);
	var strMonth=dtStr.substring(0,pos1);
	var strDay=dtStr.substring(pos1+1,pos2);
	var strYear=dtStr.substring(pos2+1);
	strYr=strYear;
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1);
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1);
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1);
	}
	month=parseInt(strMonth);
	day=parseInt(strDay);
	year=parseInt(strYr);
	if (pos1==-1 || pos2==-1){
		alert("The date format should be : mm/dd/yyyy.\n Please select date from date calender.");
		return false;
	}
	if (strMonth.length<1 || month<1 || month>12){
		alert("Please enter a valid month");
		return false;
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		alert("Please enter a valid day");
		return false;
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear);
		return false;
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		alert("Please enter a valid date");
		return false;
	}
return true;
}

function ValidateDateFormat(dt){
	/*if(dt ==""){
			alert("Date is required. Please pick a date from calendar.");
			return false;
	}*/
	if(dt !=""){
	if (isDate(dt)==false){
		return false;
	}
	}
    return true;
 }
 
 		var VALID_STRING = /^[\w]/;//[^;"'ou]

function checkVALID_STRINGOLD(id){
 if (!VALID_STRING.test(document.getElementById(id).value)) {
  	alert("This is not a valid string value.");
  	document.getElementById(id).focus();
 } 
}
		
//characters that are in valid are only allowed	by field id	
function checkVALID_STRINGById(id) {
	var string=document.getElementById(id).value;
    var re = /[^a-zA-Z0-9_\-\s]/g;
    if(re.test(string)){
    	alert("This is not a valid string value.\n Only a-z, 0-9,- and _ are allowed characters.");
     return false;
     }
    return true;
} 

//characters that are in valid are only allowed	by field value	
function checkVALID_STRINGByVal(val) {
	//var string=val;
	//only a-z,A-Z,0-9,_,- and spaces are allowed.
	 var re = /[^a-zA-Z0-9_&,\-\s]/g;

    if(re.test(val)){
    	alert("This is not a valid string value.\n Only a-z, 0-9,- and _ are allowed characters.");
     return false;
     }
    return true;
} 
//used in request_details.jsp
 function addSelection(addid, fromid) {
 var add="true";
	for (var i = 0; i < document.getElementById(fromid).options.length; i++) {
	add="true";
		if (document.getElementById(fromid).options[i].selected == true && document.getElementById(fromid).options[i].value != "") {
                //before adding check already there or not
                for (var j = 0; j < document.getElementById(addid).options.length; j++) {
                	if(document.getElementById(fromid).options[i].value==document.getElementById(addid).options[j].value){
                		add="false";
                		break;
                	}
                	
                }
                //Add To Other List
                if(add == "true")
					document.getElementById(addid).options[document.getElementById(addid).options.length] = new Option(document.getElementById(fromid).options[i].text, document.getElementById(fromid).options[i].value);
		}
	}
	selectAll(addid);
}
//used in request_details.jsp
function removeSelection(id) {
	for (var i = 0; i < document.getElementById(id).options.length; i++) {
		if (document.getElementById(id).options[i].selected == true && document.getElementById(id).options[i].value != "") {
	                //Remove From This List
				document.getElementById(id).options[i] = null;
				i--;
		}
	}
	selectAll(id);
}
function selectAll(id) {
		var val = document.getElementById(id).options.length;
		document.getElementById(id).options[0].selected = false;
		for (i = 1; i < val; i++) {
		//alert(document.getElementById(id).options[i].value);
			document.getElementById(id).options[i].selected = true;
		}
} 

function requestDetailCheck(){
	var valid="";
	if(document.getElementById("requestID").value==""){
		alert("You are not an authorized user.");
		return false;
	}
	if(document.getElementById("projectName").value==""){
		alert("Please enter Project Name.");
		document.getElementById("projectName").focus();
		return false;
	}else {
		valid = checkVALID_STRINGByVal(document.getElementById("projectName").value);
	}
	if(valid == false){
		document.getElementById("projectName").focus();
		return false;
	}
	var objRadioButton = document.forms["request_details"].elements["researchRequest.projectGenerateSubFolder"];
	if(objRadioButton[0].checked==false && objRadioButton[1].checked==false){
		alert("Please select Project Generate SubFolder.");
		//document.getElementById("projectGenerateSubFolder").focus();
		return false;
	}
	 
	/*if(dojo.widget.getWidgetById('st_date').inputNode.value==""){
	{
		alert('Please select Start Date.');
 		return false;}
 	}
 	else if(dojo.widget.getWidgetById('end_date').inputNode.value=="")
 	{
		alert('Please select End Date.');
 		return false;
 	}*/
	if(document.getElementById('st_date').value==""){
		{
			alert('Please select Start Date.');
	 		return false;}
	 	}
	 	else if(document.getElementById('end_date').value=="")
	 	{
			alert('Please select End Date.');
	 		return false;
	 	}
	if(document.getElementById("chargecode").value==""){
		alert("Please enter Charge Code.");
		document.getElementById("chargecode").focus();
		return false;
	}
	
	objRadioButton = document.forms["request_details"].elements["researchRequest.billingRrelationship"];
	if(objRadioButton[0].checked==false && objRadioButton[1].checked==false){
		alert("Please select Billing Rrelationship.");
		//document.getElementById("billingRrelationship").focus();
		return false;
	}
	
	if(document.getElementById("estimatedTimeEffort").value==""){
		alert("Please enter Eestimated TimeEffort.");
		document.getElementById("estimatedTimeEffort").focus();
		return false;
	}
	if(document.getElementById("clientServicesDirector").value==""){
		alert("Please select Client Services Director.");
		document.getElementById("clientServicesDirector").focus();
		return false;
	}
	if(document.getElementById("projectDirector").value==""){
		alert("Please select Project Director.");
		document.getElementById("projectDirector").focus();
		return false;
	}
	if(document.getElementById("primaryProjectManager").value==""){
		alert("Please select Primary Project Manager.");
		document.getElementById("primaryProjectManager").focus();
		return false;
	}
	
	return true;

}
//this function is used for check box to select at least one for any operation 
function chkCheckBox(FormName, FieldName) {
//alert("aa");
	var count = 0;
	var retval = true;
	if (!document.forms[FormName]) {
		return;
	}
	var objCheckBoxes = document.forms[FormName].elements[FieldName];
	if (!objCheckBoxes) {
		return;
	}
	var countCheckBoxes;
	if (document.forms[FormName].elements[FieldName].length) {
		countCheckBoxes = objCheckBoxes.length;
	} else {
		countCheckBoxes = 1;
	}
	for (var i = 0; i < countCheckBoxes; i++) {
			//alert(i);
		if (countCheckBoxes == 1) {
			if (objCheckBoxes.checked == true) {
				count = ++count;
			}
		} else {
			if (objCheckBoxes[i].checked == true) {
				count = ++count;
				break;
			}
		}
	}
	if (count == 0) {
		alert("Please select at least one checkbox.");
		return false;
	} 
	return retval;
}

//not in use now (used in knowledge tab now directly)
//<!-- this function is used in ask pipal jquery_1_3_2.js is used for AJAX  -->
function getAllIndustryAndFunction(divid){
	$.post("allIndustryAndFunction.action",function(data){document.getElementById(divid).innerHTML='';document.getElementById(divid).innerHTML=data;});
}

//<!-- this function is used in ask pipal jquery_1_3_2.js is used for AJAX  -->
function getDataForCategories(divid){
//alert(document.getElementById("industryid").value);
//alert(document.getElementById("functionid").value);
var indus="";
var fun="";
	for (var i = 0; i < document.getElementById("industryid").options.length; i++) {
		if (document.getElementById("industryid").options[i].selected == true && document.getElementById("industryid").options[i].value != "") {
                indus +=","+document.getElementById("industryid").options[i].value;
		}
	}
	for (i = 0; i < document.getElementById("functionid").options.length; i++) {
		if (document.getElementById("functionid").options[i].selected == true && document.getElementById("functionid").options[i].value != "") {
                fun +=","+document.getElementById("functionid").options[i].value;
		}
	}
	//alert(indus+"---"+fun);
	indus=indus.substring(1);
	fun=fun.substring(1);
	//alert(indus+"---"+fun);
	$.post("getDataForCategories.action",{industryid:indus,functionid:fun},function(data){document.getElementById(divid).innerHTML='';document.getElementById(divid).innerHTML=data;});
}

function calendar1(id){
		g_globalObject =new JsDatePick({
			useMode:2,
			target:id,
			dateFormat:"%Y-%m-%d",
			limitToToday:true //set true to block future date selection
			/*selectedDate:{				This is an example of what the full configuration offers.
				day:5,						For full documentation about these settings please see the full version of the code.
				month:9,
				year:2006
			},
			yearsRange:[1978,2020],
			limitToToday:false,
			cellColorScheme:"beige",
			dateFormat:"%m-%d-%Y",
			imgPath:"img/",
			weekStartDay:1*/
		});
	}
	
function calendar2(id){
		g_globalObject =new JsDatePick({
			useMode:2,
			target:id,
			dateFormat:"%m/%d/%Y"
		});
	}	

// used in request_detail page for end date
function calendar3(id){
	g_globalObject =new JsDatePick({
		useMode:2,
		target:id,
		dateFormat:"%Y-%m-%d"
	});
}




/*Function to be added for Request Details page*/
function openConfermationBox(divId)
{
	var req_id=document.getElementById("id").value;
	//alert("reqid---"+req_id);
	
	$.post("../services/getPermissonToEdit.action?request_id="+req_id,function(data){document.getElementById(divId).innerHTML=data;document.getElementById(divId).style.display='block';try {if(document.getElementById('end_date2')){calendar3('end_date2');;}}catch (e) {	}});
}
/*Function to be added for Request Details page*/


/*Function to close the div*/
function closeDiv(divId)
{
	document.getElementById(divId).style.display="none";
}
/*Function to close the div*/

function modifyEndDate(reqid,dateid,divId)
{
	var req_id=document.getElementById(reqid).value;
	var date=document.getElementById(dateid).value;
	//$.post("../services/modifyEndDate.action",{id:req_id,endDateNew:date,comment:comm},function(data){html(data)});
	if(date !=""){
		window.location.href="../services/modifyEndDate.action?id="+req_id+"&endDateNew="+date;
		//document.getElementById(divId).style.display="none";
	}else{
		alert("Please select the end date.");
	}
	//window.forward();
	//$.post("../services/editRR.action");
	//window.location.href="../services/editRR.action?id="+req_id;
}



/*Function to send an email to get the approval to change the end date*/
function sendEmailToModifyEndDate(reqid,commid,divId)
{
	var req_id=document.getElementById(reqid).value;
	var comm=document.getElementById(commid).value;
	if(comm !=""){
		$.post("../services/sendEmailToApproval.action",{id:req_id,comment:comm},function(data){document.getElementById(divId).innerHTML=data});
	}else{
		alert("Please enter the comments.");
	}
	return false;
}
/*Function to modify the End Date---*/

function selectAllCheckbox(frmName,masterFieldName,fieldName)
{
	
	/*Hint- document.forms[formName][FieldName].value to check the value of particular field in to specific form */
	if(document.forms[frmName][masterFieldName].checked == true)
	{
		for(var i=0; i < document.forms[frmName][fieldName].length; i++)
		{
			document.forms[frmName][fieldName][i].checked=true;
		}
	}
	else
	{
		for(var i=0; i < document.forms[frmName][fieldName].length; i++)
		{
			document.forms[frmName][fieldName][i].checked=false;
		}
	}
}
