function makeEditor(){
	try
	{
	$('#showIndividualProjectData span.mceEditor').each(function(){
		removeSingleEditor($(this).attr("id"));
	});
	//alert($('#showIndividualProjectData span.mceEditor').length);

	$('#showIndividualProjectData textarea').tinymce({
				theme:"advanced",
				plugins:"",
				theme_advanced_buttons1:"bold,italic,underline,|,justifyleft,justifycenter,justifyright,"+
							"|,bullist,numlist,|,outdent,indent,|,undo,redo,removeformat,|,link,unlink,anchor,",
				theme_advanced_buttons2:"",
				theme_advanced_toolbar_location:"top",
				theme_advanced_toolbar_align : "left"
			});
	 }
	 catch(e)
	 {
	 	return;
	 }
	 
	
	
}

function removeEditor(){
	$("textarea").each(function(){
		value = $(this).val();
		//$("#"+$(this).attr("id")+"_container").remove();
		$(this).next().remove();
		//$(this).show();
		document.getElementById($(this).attr("id")).value=value;				
			
	});
}

function removeSingleEditor(id){
	value = $('[id='+id+']').val();
				//$("#"+$(this).attr("id")+"_container").remove();
				$('[id='+id+']').next().remove();
				$('[id='+id+']').show();
				document.getElementById(id).value=value;
	
}

function AddProject()
{

	document.getElementById('viewprojectLink').className = "sidebarLink";
	document.getElementById('viewprojectrow1').className = "sidebarNormal";
	

	document.getElementById('addprojectLink').className = "sidebarLinkSelected";
	document.getElementById('addprojectrow1').className = "sidebarNormalSelected";
	

	document.getElementById('editprojectLink').className = "sidebarLink";
	document.getElementById('editprojectrow1').className = "sidebarNormal";
	

	document.getElementById('usermanagerLink').className = "sidebarLink";
	document.getElementById('usermanagerrow1').className = "sidebarNormal";
	

	document.getElementById('deleteprojectLink').className = "sidebarLink";
	document.getElementById('deleteprojectrow1').className = "sidebarNormal";	 
}
function EditProject()
{
	document.getElementById('viewprojectLink').className = "sidebarLink";
	document.getElementById('viewprojectrow1').className = "sidebarNormal";
	

	document.getElementById('addprojectLink').className = "sidebarLink";
	document.getElementById('addprojectrow1').className = "sidebarNormal";
	

	document.getElementById('editprojectLink').className = "sidebarLinkSelected";
	document.getElementById('editprojectrow1').className = "sidebarNormalSelected";
	

	document.getElementById('usermanagerLink').className = "sidebarLink";
	document.getElementById('usermanagerrow1').className = "sidebarNormal";
	

	document.getElementById('deleteprojectLink').className = "sidebarLink";
	document.getElementById('deleteprojectrow1').className = "sidebarNormal";	 
}
function showCalendar(id,format){
//var t = "#"+id; //Changed to implement id with special characters like () 
 $("[id="+id+"]").datepicker({
   changeMonth: true,
   changeYear: true,
   dateFormat: format,
    onSelect: function(dateText, inst) {
    	switch(inst.id){
    		case "RFEI_Issue_Date_Planned":
    		case "Financial_Close_Date_Planned":
    		case "RFEI_Issue_Date_Actual":
    		case "RFQ_Issue_Date_Actual":
    		case "RFP_Issue_Date_Actual":
    		case "Financial_Close_Date_Actual":
    		case "Commercial_Close_Date_Actual":
    		case "Preferred_Proponent_Selection_Date_Actual":
    			getFinancialCloseTime();
    			getProcurementTimeActual();
    			getProcurementTimeScheduleDelay();
    		break;
    		case "Construction_Start_Date_Planned":
    		case "Construction_Start_Date_Actual":
    		case "Construction_Complete_Date_Actual":
    		case "Construction_Complete_Date_Planned":
    			//alert("Hiiii");
    			getOnTimeConstructionTime();
    			getConstructionTime();
    		break;
    		}
    		
    			
    	}
   
  });
   document.getElementById(id).focus(); 
   
   
}


function show_mem(show,hide)
{	
	//alert(show + "hide" + hide);
	document.getElementById(show).style.display = 'none';	
	document.getElementById(hide).style.display = 'block';
	document.getElementById(show).style.zIndex = '0';
	document.getElementById(hide).style.zIndex = '1';
}
function hide_mem(show,hide)
{
	//alert(show + "hide" + hide);
	document.getElementById(show).style.display = 'block';	
	document.getElementById(hide).style.display = 'none';
	document.getElementById(show).style.zIndex = '1';
	document.getElementById(hide).style.zIndex = '0';
}
function mouse_event(obj, newClass) 
{
    obj.className = newClass;
}


var previous ; 
var current = "overview";
var count = 1;



function showIndividualData(namediv,scope)
{

if(scope == "edit" || scope =="insert"){


	var thisform;
    var slectindex=new Array();
    var m;
	previous = current;
	for (i=0; i < document.forms[0].length; i++){
	
		switch(document.forms[0].elements[i].type){
			case "textarea":
		    			removeSingleEditor(document.forms[0].elements[i].id);
		    			break;
		}
	}
	thisform = document.forms[0];
	var selectIndex=0;
	var text;
	if(true){
	for (i=0; i < thisform.length; i++)
	    {
	     var slectitem=new Array();
	    	switch(thisform.elements[i].type){
	    	
	    		case "text":
	    			thisform.elements[i].setAttribute("value",thisform.elements[i].value);
	    			if(thisform.elements[i].id.indexOf('Date') != -1)
					{
						var t = "#"+thisform.elements[i].id;
						$(t).datepicker('destroy');
					}
	    			break;
	    		case "textarea":
	    			if ( $.browser.msie ) {
	    			}else{
		    			text = thisform.elements[i].value;
		    			thisform.elements[i].innerHTML= text;//(thisform.elements[i].innerHTML);
	    			}
					break;
	    		case "checkbox":
	    			thisform.elements[i].setAttribute("checked", thisform.elements[i].checked);
	    			break;
	    		case "radio":
	    			if(thisform.elements[i].checked==true){
	                     thisform.elements[i].setAttribute("value",thisform.elements[i].value);
	                  }
	                 break;
	            case "select-one":
	            	if(thisform.elements[i].selectedIndex != -1)
	            	{
	            		selectIndex=thisform.elements[i].selectedIndex;
	            	
		            	var j;
		            	for(j = 0;j<thisform.elements[i].options.length;j++){
		            		thisform.elements[i].options[j].removeAttribute("selected") ;
		            	}
		            	
		           		thisform.elements[i].options[selectIndex].setAttribute("selected", "true") ;
		           		
	           		}
	           		break;
	           		
	           	case "select-multiple":	
	           			
	            		while(thisform.elements[i].selectedIndex != -1)
	            		{
	            			var index = thisform.elements[i].selectedIndex;
		            		slectitem.push(thisform.elements[i].options[index].text);
		            		slectindex.push(index);
	    					thisform.elements[i].options[index].selected=false;
	    					
	    					
	            		}
	            	
	            		for(j = 0;j<thisform.elements[i].options.length;j++){
		            		thisform.elements[i].options[j].removeAttribute("selected") ;
		            	}
	            		while(slectindex.length){
	            			thisform.elements[i].options[slectindex.pop()].setAttribute("selected", "true") ;
	            		}
		            	
	            	
	            
	            break;
	            
	    	}
	    }
	
		//alert($("#showIndividualProjectData textarea").html());
//	$("#showIndividualProjectData textarea").each(function(){
//		//this.innerHTML = "test";
//		//$()
//		alert(this.id);
//	});
//	
		document.getElementById(previous).innerHTML = unescape(document.getElementById("showIndividualProjectData").innerHTML);
		
		
		}
		count= count+ 1;
	}
	
	document.getElementById("showIndividualProjectData").innerHTML = document.getElementById(namediv).innerHTML;
	document.getElementById('hdnTabValue').value = namediv;
	current = namediv;
	makeEditor();
	createCookie('TabValue', namediv);
	if(namediv=="overview"){
		if(document.getElementById("Project Name")){
		document.getElementById("Project Name").onblur = function() {
		var projectId = document.getElementById("Project ID").value;
		if(projectId == "")
		{
		/*
		if(confirm("Please click \"OK\" to save the project \r\n\r\nProceed ?")){
				document.getElementById("btn_overview").click();
			}
		*/	
			var $dialog = $('<div></div>')
			.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Please click \"OK\" to save the project <br><br>Proceed ?</p>')
		    .dialog({
			resizable: false,
			draggable: false,
			height:140,
			modal: true,
			title: 'CCPPP - Confirmation',
			buttons: {
				'OK': function() {
					$(this).dialog('close');
					document.getElementById("btn_overview").click();
				},
				'Cancel': function() {
					$(this).dialog('close');
					return false;
				}
			}
		});		
		$dialog.dialog('open');
			
			
		}
		else
		{
			return
		}
		};
		}
	}
	
	
}

function exportExcel(projectId,uri)
{
	//alert(uri);
	document.forms[0].action = uri + "/project/generateexcelreport?project_id="+projectId;
	document.forms[0].method="post";
	document.forms[0].submit();
}
function exportIndividualProjectExcel(projectId,uri,pageid){
	document.forms[0].action = uri + "/project/generateexcelreport?project_id="+projectId+"&pageid="+pageid;
	document.forms[0].method="post";
	document.forms[0].submit();
}
function publicContactExpand()
{
	document.getElementById('publicContactHidden').style.display = 'inline';
	document.getElementById('publicContactCollapseTd').style.display = 'inline';
	document.getElementById('publicContactExpandTd').style.display = 'none';
		
}
function privateContactExpand()
{
	document.getElementById('privateContactHidden').style.display = 'inline';
	document.getElementById('privateContactCollapseTd').style.display = 'inline';
	document.getElementById('privateContactExpandTd').style.display = 'none';
		
}

function privateContactCollapse()
{
	document.getElementById('privateContactHidden').style.display = 'none';
	document.getElementById('privateContactCollapseTd').style.display = 'none';
	document.getElementById('privateContactExpandTd').style.display = 'inline';	
}

function publicContactCollapse()
{
	document.getElementById('publicContactHidden').style.display = 'none';
	document.getElementById('publicContactCollapseTd').style.display = 'none';
	document.getElementById('publicContactExpandTd').style.display = 'inline';	
}

function consortia(uri,projectid,consortia,action,pageid)
{	
	var url = uri + '/project/consortia?project_id=' + projectid + '&shrtlstcnsrtia=' + escape(consortia) + "&action=" + action + "&pageid=" + pageid;
	window.open(url,'Consortia_Companies','width=450,height=550,dialog=yes,scrollbars=yes,top=((screen.height-200)/2)');
}

//BAFO
function bafoConsortia(uri,projectid,bafoconsortia,action,pageid)
{	
	var url = uri + '/project/bafoconsortia?project_id=' + projectid + '&bafoshrtlstcnsrtia=' + escape(bafoconsortia) + "&action=" + action + "&pageid=" + pageid;
	window.open(url,'BAFO_Consortia_Companies','width=450,height=550,dialog=yes,scrollbars=yes,top=((screen.height-200)/2)');
}

function prefprop(uri,projectid,prop,action,pageid)
{	
	var url = uri + '/project/prefprop?project_id=' + projectid + '&prefprop=' + escape(prop)+ "&action=" + action + "&pageid=" + pageid;
	window.open(url,'Preferred_Proponent_Companies','width=450,height=550,dialog=yes,scrollbars=yes,top=((screen.height-200)/2)');
}

function projectco(uri,projectid,prop,action,pageid)
{	
	var url = uri + '/project/projectco?project_id=' + projectid + '&projectco=' + escape(prop)+ "&action=" + action + "&pageid=" + pageid;
	window.open(url,'Project_Company_Members','width=450,height=550,dialog=yes,scrollbars=yes,top=((screen.height-200)/2)');
}
//projectco
function showOverViewDiv()
{
	document.getElementById("showIndividualProjectData").innerHTML = document.getElementById("overview").innerHTML;
	//ActivateTextEditor();
}

var divIndex = 0 ;
var edit = 0;
var editID = "";
var plusElement;

function editTest(obj){
	alert("editeditTest");
	//alert(obj.parentNode.id);
	var i ;
	var fullText;
	var element;
	var parentDiv =obj.parentNode;
	//obj.parentNode.style.display = "none";
	if(document.getElementById('textareaGPRS')!=null){
		return 0;
	}
	fullText = obj.parentNode.childNodes[1].innerHTML;
	element = document.createElement("div");
	element.setAttribute("id","textareaGPRS");	
	element.innerHTML = document.getElementById('uniqueGprsDivEditable').innerHTML;
	parentDiv.appendChild(element);		
	var oldDeg = fullText.substring(0,fullText.indexOf("\u00B0"));	
	//alert("oldDeg is-" + oldDeg);
	var oldMin = fullText.substring(fullText.indexOf("\u00B0")+1,fullText.indexOf("'"));
	var oldSec = fullText.substring(fullText.indexOf("'")+1,fullText.indexOf("\""));
	var oldDir = fullText.substring(fullText.indexOf("\"")+1);
	var deg = document.getElementById('degreeText');
	var min = document.getElementById('minuteText');
	var sec = document.getElementById('secondText');
	var dir = document.getElementById('directionSelect');	
	deg.value = oldDeg;
	min.value = oldMin;
	sec.value = oldSec;
	dir.value = oldDir;	 
	editID = obj.parentNode.id;
	edit = 1;
	//obj.parentNode.style.display = "none";
	obj.parentNode.parentNode.appendChild(plusElement);
	//obj.parentNode.style.display = "none";
	//obj.parentNode.parentNode.removeChild(obj.parentNode);
}


function populateAnotherTextBox()
{
	var divId = "div" + divIndex
	var parentDiv = document.getElementById("txt_gprs_cordinate");
	var element;	
	if(document.getElementById('textareaGPRS')!=null){
		return 0;
	}
	element = document.createElement("div");
	element.setAttribute("id","textareaGPRS");	
	element.innerHTML = document.getElementById('uniqueGprsDivEditable').innerHTML;
	parentDiv.appendChild(element);
	document.getElementById("degreeText").value = '';
	document.getElementById("minuteText").value = '';
	document.getElementById("secondText").value = '';	
}


function ActivateTextEditor()
{
return;
	var elem = document.forms[0].elements;
	var i=0;
	while(i<elem.length)
	{
		if(elem[i].type == "textarea")
		{
			htmlarea_init_delay( elem[i].id );
		}
		
		i++;	
	}
}
function GetValueFromTextEditor()
{
	var elem = document.forms[0].elements;
	var i=0;
	var value = "";
	while(i<elem.length)
	{
		if(elem[i].type == "textarea")
		{
			value += elem[i].id+"="+htmlarea_getHTML(elem[i].id,true)+"&";
			//alert("Value of " + elem[i].id + "---"+ value);			
		}
		i++;	
	}
	
	return value;
	
}

//Hide three tabs for public as per Jeff's requirement. Now, we need to pass the GLEVEL to this script
//to make this happen.
function SetTabonRefresh(path,pageid,glevel)
{
	var tabName = readCookie('TabValue');
	switch(tabName)
	{
	case 'overview':
	  showIndividualData('overview');
	  document.getElementById("overviewNormalImg").src=path+'/images/tab-images/overview_tab_red.gif';
	  document.getElementById("datesNormalImg").src=path+'/images/tab-images/datesEst_tab.gif';
	  document.getElementById("procurementNormalImg").src=path+'/images/tab-images/proc_tab.gif';
	  if(glevel != "Public")
	  {
	  	document.getElementById("agreementNormalImg").src=path+'/images/tab-images/agree_tab.gif';
	  	document.getElementById("costsNormalImg").src=path+'/images/tab-images/costBenefit_tab.gif';
	  	document.getElementById("financeNormalImg").src=path+'/images/tab-images/financial_tab.gif';
	  }
	  break;
	case 'datesAndEstimates':
	    showIndividualData('datesAndEstimates');
	    document.getElementById("overview").style.display='none';
		document.getElementById("overviewNormalImg").src=path+'/images/tab-images/overview_tab.gif';
		document.getElementById("datesNormalImg").src=path+'/images/tab-images/datesEst_tab_red.gif';
		document.getElementById("procurementNormalImg").src=path+'/images/tab-images/proc_tab.gif';
		if(glevel != "Public")
	  	{
		  	document.getElementById("agreementNormalImg").src=path+'/images/tab-images/agree_tab.gif';
		  	document.getElementById("costsNormalImg").src=path+'/images/tab-images/costBenefit_tab.gif';
		  	document.getElementById("financeNormalImg").src=path+'/images/tab-images/financial_tab.gif';
	  	}
	  break;
	case 'procurement':
	    showIndividualData('procurement');
	    document.getElementById("overview").style.display='none';
		document.getElementById("overviewNormalImg").src=path+'/images/tab-images/overview_tab.gif';
		document.getElementById("datesNormalImg").src=path+'/images/tab-images/datesEst_tab.gif';
		document.getElementById("procurementNormalImg").src=path+'/images/tab-images/proc_tab_red.gif';
		if(glevel != "Public")
	  	{
		  	document.getElementById("agreementNormalImg").src=path+'/images/tab-images/agree_tab.gif';
		  	document.getElementById("costsNormalImg").src=path+'/images/tab-images/costBenefit_tab.gif';
		  	document.getElementById("financeNormalImg").src=path+'/images/tab-images/financial_tab.gif';
	  	}
	  break;
	case 'agreement':
	    showIndividualData('agreement');
	    document.getElementById("overview").style.display='none';
		document.getElementById("overviewNormalImg").src=path+'/images/tab-images/overview_tab.gif';
		document.getElementById("datesNormalImg").src=path+'/images/tab-images/datesEst_tab.gif';
		document.getElementById("procurementNormalImg").src=path+'/images/tab-images/proc_tab.gif';
		document.getElementById("agreementNormalImg").src=path+'/images/tab-images/agree_tab_red.gif';
		document.getElementById("costsNormalImg").src=path+'/images/tab-images/costBenefit_tab.gif';
		document.getElementById("financeNormalImg").src=path+'/images/tab-images/financial_tab.gif';
	  break;
	case 'costs':
	    showIndividualData('costs');
	    document.getElementById("overview").style.display='none';
		document.getElementById("overviewNormalImg").src=path+'/images/tab-images/overview_tab.gif';
		document.getElementById("datesNormalImg").src=path+'/images/tab-images/datesEst_tab.gif';
		document.getElementById("procurementNormalImg").src=path+'/images/tab-images/proc_tab.gif';
		document.getElementById("agreementNormalImg").src=path+'/images/tab-images/agree_tab.gif';
		document.getElementById("costsNormalImg").src=path+'/images/tab-images/costBenefit_tab_red.gif';
		document.getElementById("financeNormalImg").src=path+'/images/tab-images/financial_tab.gif';
	  break;
	case 'financial':
	    showIndividualData('financial');
		document.getElementById("overview").style.display='none';
		document.getElementById("overviewNormalImg").src=path+'/images/tab-images/overview_tab.gif';
		document.getElementById("datesNormalImg").src=path+'/images/tab-images/datesEst_tab.gif';
		document.getElementById("procurementNormalImg").src=path+'/images/tab-images/proc_tab.gif';
		document.getElementById("agreementNormalImg").src=path+'/images/tab-images/agree_tab.gif';
		document.getElementById("costsNormalImg").src=path+'/images/tab-images/costBenefit_tab.gif';
		document.getElementById("financeNormalImg").src=path+'/images/tab-images/financial_tab_red.gif';
	  break;
	default:
	  showIndividualData('overview');
	  document.getElementById("overviewNormalImg").src=path+'/images/tab-images/overview_tab_red.gif';
	  document.getElementById("datesNormalImg").src=path+'/images/tab-images/datesEst_tab.gif';
	  document.getElementById("procurementNormalImg").src=path+'/images/tab-images/proc_tab.gif';
	  if(glevel != "Public")
	  {
	  	document.getElementById("agreementNormalImg").src=path+'/images/tab-images/agree_tab.gif';
	  	document.getElementById("costsNormalImg").src=path+'/images/tab-images/costBenefit_tab.gif';
	  	document.getElementById("financeNormalImg").src=path+'/images/tab-images/financial_tab.gif';
	  }
	}
	//ActivateTextEditor();
}
function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

function checkForm(formname)
{
	var i=0;
	var errormsg = "";
	var elementsLength = formname.elements.length;
	if(formname.id != "frmoverview" && document.getElementById('Project ID').value=="")
	{
		//alert("Please save OVERVIEW tab first !");
		var $dialog = $('<div></div>')
		.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Please save the OVERVIEW TAB first.</p>')
		.dialog({
			resizable: false,
			draggable: false,
			height:140,
			modal: true,
			show: 'blind',
			title: 'CCPPP - Information',
			buttons: {
				'OK': function() {
					$(this).dialog('close');
				}
			}
		});		
		$dialog.dialog('open');
		return false;
	}
	else
	{
		while( i < elementsLength)
		{
			var element = formname.elements[i];
			//Overview Tab
			if(element.id == "Project Name")
			{
				if(ltrim(rtrim(element.value))=="")
				{
					errormsg = element.id + " can not be empty";
				}
			}
			//Dates and Estimates Tab + all other dates
			if(element.id.indexOf('Date') != -1)
			{
				if(ltrim(rtrim(element.value)) != "")
				{
					if((element.id.indexOf("_Planned") == -1) && element.id != "Next Stage Estimated Date" )
					{
						if(isValidDate(element.value) == false)
						{
							errormsg = element.name + " is not a valid date (Please click on the calendar icon to view the calendar and select a date)";
						}
						else
						{
							if((element.id != "Contract_Expiry_Date" && element.id != "Contract_Renew_Date-1" && element.id != "Contract_Renew_Date-2" && (element.id.indexOf("_Planned") == -1)) && isBetweenSafeYears(element.value) == false)
							{
								errormsg = "Please select a year between 1971 and 2032 for " + element.name;
							}
						}
					}
				}
			}
			//Procurement Tab
			if(element.id == "Process Advisor" || element.id == "Fairness Advisor")
			{
				if(ltrim(rtrim(element.value))!="")
				{
					if(!(isNaN(ltrim(rtrim(element.value)))))
					{
						errormsg = element.id + " can not be numeric";
					}
				}
			}
			//Agreement & Docs Tab
			if(element.id == "Contract Term")
			{
				if(ltrim(rtrim(element.value)) != "")
				{
					if(isNaN(ltrim(rtrim(element.value))))
					{
						errormsg = element.id + " must be numeric";
					}
				}
			}
			//Cost & Benefits Tab
//			if(element.id.indexOf('Cost') != -1)
//			{
//				if(ltrim(rtrim(element.value)) != "")
//				{
//					var val = element.value;
//					var len = val.length;
//					var dotindex = val.indexOf('.');
//					if(dotindex != -1)
//					{
//						var val1 = val.substring(0, dotindex);
//						val1 = ReplaceAll(val1,",","");
//						
//						var val2 = val.substring(dotindex, len);
//						val2 = ReplaceAll(val2,",","");
//						
//					}
//					if(isNaN(val1) || isNaN(val2))
//					{
//						errormsg = element.name + "  must be numeric";
//					}
//				}
//			}
			if(element.id == "Public Sector Comparator" && element.type=="text")
			{
				if(ltrim(rtrim(element.value)) != "")
				{
					if(isNaN(ltrim(rtrim(element.value))))
					{
						errormsg = element.id + " must be numeric";
					}
				}
			}
			if(element.id == "# Of Customers" || element.id=="On-Time Construction")
			{
				if(ltrim(rtrim(element.value)) != "")
				{
					if(isNaN(ltrim(rtrim(element.value))))
					{
						errormsg = element.id + " must be numeric";
					}
				}
			}
			if(element.id.indexOf('Job') != -1 && element.id.indexOf('Title') == -1)
			{
				if(ltrim(rtrim(element.value)) != "")
				{
					if(isNaN(element.value))
					{
						errormsg = element.name + "  must be numeric";
					}
				}
			}
			if(element.id.indexOf('Quantity') != -1)
			{
				if(ltrim(rtrim(element.value)) != "")
				{
					if(isNaN(element.value))
					{
						errormsg = "Capacity Quantity  must be numeric";
					}
				}
			}
			//Financial Tab
			if(element.id == "Total Debt" || element.id == "Total Equity" ||element.id == "Debt-Equity Ratio" ||element.id == "Federal Government Funding" ||element.id == "Municipal Government Funding" ||element.id == "Other Funding")
			{
				if(ltrim(rtrim(element.value)) != "")
				{
					var val = element.value;
					var dotindex = val.indexOf('.');
					if(dotindex != -1)
					{
						val = val.substring(0, dotindex);
						val = ReplaceAll(val,",","");
					}
					if(isNaN(val))
					{
						errormsg = element.name + "  must be numeric";
					}
				}
			}
		/*	if(element.id == "Private Sector Contact - Tel" || element.id == "Public Sector Contact - Tel")
			{
				var objphone = document.getElementById(element.id).value;
				if(objphone != "")
				{
					if(!validateUSPhone(element.id))
					{	
						document.getElementById(element.id).select();
	       		 		alert(document.getElementById(element.id).id+"ephone number is not in proper format.");
						return false;
					}
				}
			}
			if(element.id == "Private Sector Contact - Code" || element.id == "Public Sector Contact - Code")
			{
				var objcode = document.getElementById(element.id).value;
				if(objcode != "")
				{
					if(!isPostCode(element.id))
					{
						document.getElementById(element.id).select();
	       		 		alert(document.getElementById(element.id).id+" is invalid.");
						return false;
					}
				}
			}*/
			if(element.id == "Private Sector Contact - Email" || element.id == "Public Sector Contact - Email")
			{	
				var objemail = document.getElementById(element.id).value;
				if(objemail != "")
				{
					if(!validateEmail((element.id),1,0))
					{
						document.getElementById(element.id).select();
	       		 		//alert(document.getElementById(element.id).id+" is invalid.");
	       		 		var $dialog = $('<div></div>')
						.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>'+document.getElementById(element.id).id+' is invalid.</p>')
						.dialog({
							resizable: false,
							draggable: false,
							height:140,
							modal: true,
							show: 'blind',
							title: 'CCPPP - Information',
							buttons: {
								'OK': function() {
									$(this).dialog('close');
								}
							}
						});		
						$dialog.dialog('open');	       		 		
	       		 		
						return false;
					}
				}
			}
			
			if($(element).is("input[type='text']")){				
				if($(element).val().indexOf(",")==0){					
					//alert("Textbox values can not start with a comma");
					var $dialog = $('<div></div>')
						.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>'+"Textbox values can not start with a comma."+'</p>')
						.dialog({
							resizable: false,
							draggable: false,
							height:140,
							modal: true,
							show: 'blind',
							title: 'CCPPP - Information',
							buttons: {
								'OK': function() {
									$(this).dialog('close');
									$(element).val("");
									$(element).focus();
									$(element).css({"border": "solid red 1px"});
								}
							}
						});		
						$dialog.dialog('open');					
					return false;					
				}else{
					$(element).css({"border": "solid #7F9DB9 1px"});
				}
			}
			
			
			if(errormsg != "")
			{
				break;
			}
			i++;
		}
	}
	if(errormsg != "")
	{
		//alert(errormsg);
		var $dialog = $('<div></div>')
		.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>'+errormsg+'</p>')
		.dialog({
			resizable: false,
			draggable: false,
			height:140,
			modal: true,
			//position: 'top',
			show: 'blind',
			title: 'CCPPP - Information',
			buttons: {
				'OK': function() {
					$(this).dialog('close');
					element.focus();
				}
			}
		});		
		$dialog.dialog('open');
		
		return false;
	}
	return true;
}

function ReplaceAll(Source,stringToFind,stringToReplace){

  var temp = Source;

    var index = temp.indexOf(stringToFind);

        while(index != -1){

            temp = temp.replace(stringToFind,stringToReplace);

            index = temp.indexOf(stringToFind);

        }

        return temp;

}

function ltrim(text)
{
	return text.replace(/^\s+/,"");
}
function rtrim(text)
{
	return text.replace(/\s+$/,"");
}
function isValidDate(str)
{
	var monthArray = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
	var tokenArray = new Array();
	var datetochk = String(str);
	var separator = "-";
	var x;
	tokenArray = datetochk.split(separator);
	if(tokenArray.length==3)
	{
		var d = tokenArray[0];
		var m = tokenArray[1];
		var y = tokenArray[2];
		
		if(isNaN(d))
		{
			return false;
		}
		else if(inArray(monthArray,m)==false)
		{
			return false;
		}
		else if(y.length > 4)
		{
			return false;
		}
		else if((m=="Sep" || m=="Apr" || m=="Jun" || m=="Nov") && (d > 30 || d < 1))
		{
			return false;
		}
		else if((m=="Jan" || m=="Mar" || m=="May" || m=="Jul" || m=="Aug" || m=="Oct" || m=="Dec") && (d > 31 || d < 1))
		{
			return false;
		}
		else if(m=="Feb")
		{
			if((y%4 != 0) && (d > 28 || d<1))
			{
				return false;
			}
			else if((y%4 == 0) && (d > 29 || d<1))
			{
				return false;
			}
			
		} 
		
	}
	else
	{
		return false;
	}
	
}
function isBetweenSafeYears(str)
{
	var datetochk = String(str);
	var separator = "-";
	tokenArray = datetochk.split(separator);
	if(tokenArray.length==3)
	{
		var d = tokenArray[0];
		var m = tokenArray[1];
		var y = tokenArray[2];
		
		if(y >1970 && y < 2031)
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	else
	{
		return false;
	}
	
}
function inArray(haystack,needle)
{
	var x;
	for (x in haystack)
	{
		if(haystack[x] == needle)
		{
			return true;
		}
	}
	return false;
}

function validateUSPhone( phoneId ) 
 {
	var phoneNo = document.getElementById(phoneId).value;
	var objRegExp  = /^\([1-9]\d{2}\)\s?\d{3}\-\d{4}$/;
	return objRegExp.test(phoneNo);
}

/*function isZip(codeId) 
{
	 var code = document.getElementById(codeId).value;
     //reZip = new RegExp(/(^\d{5}$)|(^\d{5}-\d{4}$)/);
     reZip = new RegExp((\\A[ABCEGHJKLMNPRSTVXY]\\d[A-Z] ?\\d[A-Z]\\d\\z));
     return reZip.test(code);
}
*/
function isPostCode(codeId)
{ // checks cdn codes only
	var entry = document.getElementById(codeId).value;
	//var entry = (entry1).replace(/^\s*|\s*$/g,'');
	var strlen = entry.length;
	if(strlen!==6)
	{	
		//alert(strlen);
		//alert("len");
		return false;
	}
	entry=entry.toUpperCase(); //in case of lowercase
	//Check for legal characters,index starts at zero
	s1='ABCEGHJKLMNPRSTVXY';
	s2=s1+'WZ';
	d3='0123456789';
	if(s1.indexOf(entry.charAt(0))<0)
	{	
		//alert("s1 0")
		return false;
	}
	if(d3.indexOf(entry.charAt(1))<0)
	{
		//alert("d3 1");
		return false;
	}
	if(s2.indexOf(entry.charAt(2))<0)
	{
		//alert("s2 2");
		return false;
	}
	if(d3.indexOf(entry.charAt(3))<0)
	{
		//alert("d3 3");
		return false;
	}
	if(s2.indexOf(entry.charAt(4))<0)
	{
		//alert("s2 4");
		return false;
	}
	if(d3.indexOf(entry.charAt(5))<0)
	{
		//alert("d3 5");
		return false;
	}
	return true;
}
function validateEmail(emailID, man, db) 
{
	 var addr = document.getElementById(emailID).value;
	
	 var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ ;
	 return addr.match(re);

	/*
	var invalidChars = '\/\'\\ ";:?!()[]\{\}^|';
	for (i = 0; i < invalidChars.length; i++) 
	{
		if (addr.indexOf(invalidChars.charAt(i), 0) > -1) 
		{
				return false;
		}
	}
	for (i = 0; i < addr.length; i++) 
	{
		if (addr.charCodeAt(i) > 127) 
		{
				return false;
		}
	}

	var atPos = addr.indexOf('@', 0);
	if (atPos == -1) 
	{
		return false;
	}
	if (atPos == 0) 
	{
		return false;
	}
	if (addr.indexOf('@', atPos + 1) > -1) 
	{
		return false;
	}
	if (addr.indexOf('.', atPos) == -1) 
	{
		return false;
	}
	if (addr.indexOf('@.', 0) != -1) 
	{
		return false;
	}
	if (addr.indexOf('.@', 0) != -1) 
	{
		return false;
	}
	if (addr.indexOf('..', 0) != -1) 
	{
		return false;
	}
	var suffix = addr.substring(addr.lastIndexOf('.') + 1);
	if (suffix.length != 2 && suffix != 'com' && suffix != 'net'
			&& suffix != 'org' && suffix != 'edu' && suffix != 'int'
			&& suffix != 'mil' && suffix != 'gov' & suffix != 'arpa'
			&& suffix != 'biz' && suffix != 'aero' && suffix != 'name'
			&& suffix != 'coop' && suffix != 'info' && suffix != 'pro'
			&& suffix != 'museum') 
		{
			return false;
		}
	return true;
	*/
}
 
function submitForm(formButton,pageid){
if(checkForm(formButton.parentNode)==true)
{
window.scrollTo(0,0);	
document.getElementById('light').style.display='block';
document.getElementById('fade').style.display='block';
formButton.value="Saving. Please wait...";
formButton.disabled = true;
var thisform = formButton.parentNode;
var projectid = document.getElementById("Project ID").value;
var formdata = "tabname="+thisform.id+"&prjid="+projectid+"&";
var tabNameElement = document.createElement("input");
tabNameElement.setAttribute("type","hidden");//abisanka
tabNameElement.setAttribute("name","tabname");
tabNameElement.setAttribute("id","tabname");
tabNameElement.setAttribute("value",thisform.id);
var prjid = document.createElement("input");
prjid.setAttribute("type","hidden");//abisanka
prjid.setAttribute("name","prjid");
prjid.setAttribute("id","prjid");
prjid.setAttribute("value",projectid);
$(thisform).append(tabNameElement);
$(thisform).append(prjid);

var tempElement = null;

	for (i=0; i < thisform.length; i++)
    {
    	switch(thisform.elements[i].type){
    	
    	
    		case "text":
    			formdata = formdata + thisform.elements[i].name + "=" + escape(thisform.elements[i].value) + "&";

    			break;
    		case "textarea":
    			//alert(escape(thisform.elements[i].innerHTML));
    			
    			//formdata = formdata + thisform.elements[i].name + "=" + escape(htmlarea_getHTML(thisform.elements[i].id,true)) + "&";
    			thisform.elements[i].style.display='none';
    			//alert($(thisform.elements[i]).val()+"---->>"+thisform.elements[i].value);
    			thisform.elements[i].value = $('[id='+thisform.elements[i].id+']').val();
    			
    			//$(thisfrom).val()
    			break;
    		case "checkbox":
    			formdata = formdata + thisform.elements[i].name + "=" + thisform.elements[i].checked + "&";
    			break;
    		case "radio":
    			if(thisform.elements[i].checked==true){
                     formdata = formdata + thisform.elements[i].name + "=" + thisform.elements[i].value + "&";
                  }
                 break;
            case "select-one":
	            var slectitem=new Array();
	            var slectindex=new Array();
	            var m;
	           if( thisform.elements[i].name =="Location (Province)"){
	            	while(thisform.elements[i].selectedIndex != -1){
	            		slectitem.push(thisform.elements[i].options[thisform.elements[i].selectedIndex].text);
	            		slectindex.push(thisform.elements[i].selectedIndex);
    					thisform.elements[i].options[thisform.elements[i].selectedIndex].selected = false;
	            	}
	            	for(m in slectindex)
	            	{
	            		thisform.elements[i].options[m].selected = true;
	            	}
	            	formdata = formdata + thisform.elements[i].name + "=" + escape(slectitem.toString()) + "&";
	            }else{
	            		if(thisform.elements[i].selectedIndex != -1){
           					formdata = formdata + thisform.elements[i].name + "=" + escape(thisform.elements[i].options[thisform.elements[i].selectedIndex].text) + "&";
           				}else{
           					formdata = formdata + thisform.elements[i].name + "=" + "" + "&";
           				}
           		}
            	break;
            	case "select-multiple":
            	var slectitem=new Array();
	            var slectindex=new Array();
	            var m;
	            //alert(thisform.elements[i].name);
	            if((thisform.elements[i].name =="Location (Province)")||(thisform.elements[i].name =="Location"))
	            {
		            	while(thisform.elements[i].selectedIndex != -1){
		            		//alert(thisform.elements[i].options[thisform.elements[i].selectedIndex].text);
		            		slectitem.push(thisform.elements[i].options[thisform.elements[i].selectedIndex].text);
		            		slectindex.push(thisform.elements[i].selectedIndex);
	    					thisform.elements[i].options[thisform.elements[i].selectedIndex].selected = false;
		            	}
		            	for(m in slectindex)
		            	{
		            		//alert(slectindex[m]);
		            		thisform.elements[i].options[slectindex[m]].selected = true;
		            	}
		            	formdata = formdata + thisform.elements[i].name + "=" + escape(slectitem.toString()) + "&";
	            }else{
	            		if(thisform.elements[i].id=="Public Legal Advisor"){
	            			converString(thisform.elements[i].id,",","00111100");
	            		
	            			
	            		}
	            		while(thisform.elements[i].selectedIndex != -1){
		            		slectitem.push(thisform.elements[i].options[thisform.elements[i].selectedIndex].text);
		            		slectindex.push(thisform.elements[i].selectedIndex);
	    					thisform.elements[i].options[thisform.elements[i].selectedIndex].selected = false;
		            	}
		            	for(m in slectindex)
		            	{
		            		thisform.elements[i].options[slectindex[m]].selected = true;
		            	}
		            	formdata = formdata + thisform.elements[i].name + "=" + slectitem.toString() + "&";
            	}
	            
	            tempElement = document.createElement("input");
	            tempElement.setAttribute("type","hidden");//abisanka
	            tempElement.setAttribute("name",thisform.elements[i].name);
	            tempElement.setAttribute("id",thisform.elements[i].name);
	            tempElement.setAttribute("value",slectitem.toString());
	            $(thisform).append(tempElement);
	           // alert(slectitem.toString());
	          //  $(thisform.elements[i]).val(slectitem.toString());
            	break;
            	
            default:
            	//alert(thisform.elements[i].type + thisform.elements[i].name);
            	var slectitem=new Array();
	            var slectindex=new Array();
	            var m;
	            // I dont know what exactly I'm doing, but this solves the problem
	            if(thisform.elements[i].type != "hidden")//abisanka
	            {
		            if( 
		            	(thisform.elements[i].name =="Location (Province)")||(thisform.elements[i].name =="Location")
		            ){
		            	while(thisform.elements[i].selectedIndex != -1){
		            		slectitem.push(thisform.elements[i].options[thisform.elements[i].selectedIndex].text);
		            		slectindex.push(thisform.elements[i].selectedIndex);
	    					thisform.elements[i].options[thisform.elements[i].selectedIndex].selected = false;
		            	}
		            	for(m in slectindex)
		            	{
		            		thisform.elements[i].options[m].selected = true;
		            	}
		            	
		            	
		            	//$(thisform.elements[i]).val(slectitem.toString());
		            	formdata = formdata + thisform.elements[i].name + "=" + escape(slectitem.toString()) + "&";
		            	tempElement = document.createElement("input");
		            	tempElement.setAttribute("type","hidden");//abisanka
		            	tempElement.setAttribute("name",thisform.elements[i].name);
		 	            tempElement.setAttribute("id",thisform.elements[i].name);
		 	            tempElement.setAttribute("value",slectitem.toString());
		 	            $(thisform).append(tempElement);
		            }
		         }
    		
    	}
    	

        
     
    }
    getFinancialCloseTime();
	getProcurementTimeActual();
	getProcurementTimeScheduleDelay();
//	alert($(thisform).serialize());
//	return;
    $.post("project/save-project?pageid="+pageid, $(thisform).serialize(),
  	function(data,status){
 	if(data.substring(0,6) == "<html>"){
		location.reload(true);
		return;	
	}
	revertString();
  	document.getElementById('light').style.display='none';
  	document.getElementById('fade').style.display='none';
  	data = eval('(' + data + ')');  
  
  	switch(status){
  		case "success":
  			
  			if(data.status.indexOf("FAILURE")!= -1){
  				//alert(data["msg"]);
  				var $dialog = $('<div></div>')
				.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>'+data["msg"]+'</p>')
				.dialog({
					resizable: false,
					draggable: false,
					height:140,
					modal: true,
					show: 'blind',
					title: 'CCPPP - Information',
					buttons: {
						'OK': function() {
							$(this).dialog('close');
						}
					}
				});		
				$dialog.dialog('open');
  				
  				//document.getElementById("Project ID").setAttribute("value","");
  				document.getElementById("Project Name").select();
  				
  			}else{
  				//alert("Data successfully saved.");
  				var $dialog = $('<div></div>')
				.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Data successfully saved.</p>')
				.dialog({
					resizable: false,
					draggable: false,
					height:140,
					modal: true,
					show: 'blind',
					title: 'CCPPP - Information',
					buttons: {
						'OK': function() {
							$(this).dialog('close');
						}
					}
				});		
				$dialog.dialog('open');
  				document.getElementById("Project ID").setAttribute("value",data.projectid);  				
  			}

  			formButton.value="Save";
			formButton.disabled = false;
  			break;
  		case "timeout":
  		case "error":
  			var $dialog = $('<div></div>')
			.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Server Error. Please try again later.</p>')
			.dialog({
				resizable: false,
				draggable: false,
				height:140,
				modal: true,
				show: 'blind',
				title: 'CCPPP - Information',
				buttons: {
					'OK': function() {
						$(this).dialog('close');
					}
				}
			});		
			$dialog.dialog('open');
  			formButton.value="Save";
			formButton.disabled = false;
  			break;
  		case "parsererror":
  			//alert("Parsererror ");
  			var $dialog = $('<div></div>')
			.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Parse error. Please try again later.</p>')
			.dialog({
				resizable: false,
				draggable: false,
				height:140,
				modal: true,
				show: 'blind',
				title: 'CCPPP - Information',
				buttons: {
					'OK': function() {
						$(this).dialog('close');
					}
				}
			});		
			$dialog.dialog('open');
  			formButton.value="Save";
			formButton.disabled = false;
  	}
   	 
  	}, "text");   
  	
  	
  	} 
    
}
var converStringId;
var search_word;
var replace_word;
function converString(Id,search_w,replace_w){
	converStringId=Id;
	search_word = search_w;
	replace_word = replace_w;
	$('[id='+Id+'] option').each(function(){
		$(this).text(ReplaceAll($(this).text(),search_w,replace_w));
	});
}

function revertString(){
	var Id=converStringId;
	var  search_w  = replace_word;
	var replace_w = search_word ;
	$('[id='+Id+'] option').each(function(){
		$(this).text(ReplaceAll($(this).text(),search_w,replace_w));
	});
}
/**
 * Showing the google map
 * on a modal window with the GPRS Co-ordinate values
 * @param unknown_type $action
 * @return unknown
 */

function getGoogleMap(finalString){
	var str = finalString.replace("aaaa", ",");
	var strArray = finalString.split("aaaa");
	var marker;
	var point;
	
	var url = "http://maps.google.com/maps/api/staticmap?center="+str+"&zoom=9&size=400x400&sensor=false";
	

	/*var url = "http://maps.google.com/maps/api/staticmap?center="+str
			+"&zoom=15&size=400x400&maptype=roadmap&markers=color:red|label:D|"+str
			+"&markers=color:blue|label:H|"+str
			+"&sensor=false&key=LOCAL_KEY ";*/
	//alert(url+"---"+strArray[1]+"----------"+strArray[0]);
	$('#map').show();
	var $dialog = $('#map').dialog({
		resizable: false,
		draggable: true,
		height:580,
		width:720,
		modal: true,
		show: 'blind',
		title: 'Google Map'
	});	
		
	point = new google.maps.LatLng(strArray[0], strArray[1]);
	var myOptions = {
		      zoom: 10,
		      center: new google.maps.LatLng(strArray[0], strArray[1]),
		      mapTypeId: google.maps.MapTypeId.ROADMAP,
		      mapTypeControl: true,
		      mapTypeControlOptions: {
		          style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR,
		          position: google.maps.ControlPosition.BOTTOM_CENTER
		      },
		      panControl: true,
		      panControlOptions: {
		          position: google.maps.ControlPosition.TOP_RIGHT
		      },
		      zoomControl: true,
		      zoomControlOptions: {
		          style: google.maps.ZoomControlStyle.LARGE,
		          position: google.maps.ControlPosition.LEFT_CENTER
		      },
		      scaleControl: true,
		      scaleControlOptions: {
		          position: google.maps.ControlPosition.TOP_LEFT
		      },
		      streetViewControl: true,
		      streetViewControlOptions: {
		          position: google.maps.ControlPosition.LEFT_TOP
		      }
		    }
		    
		    var map = new google.maps.Map(document.getElementById("map_canvas"),myOptions);   
	 		marker = new google.maps.Marker({
			    map:map,
			    draggable:true,
			    animation: google.maps.Animation.DROP,
			    position: point
			 });

	 google.maps.event.addListener(marker, 'click', toggleBounce);
	 
	

	$dialog.dialog('open');
}

function toggleBounce() {

	  if (marker.getAnimation() != null) {
	    marker.setAnimation(null);
	  } else {
	    marker.setAnimation(google.maps.Animation.BOUNCE);
	  }
	}
function sortoptions(sort)
{

	var $this = $(this);
	$this.sortOptions(sort.dir == "asc" ? true : false);
}

function getDifference(date1,date2){
	var diff =  Math.floor((date1 - date2 ) / 86400000);
	return diff;
	
}

function getDaysDiff(datestring1,datestring2){
	if(datestring1==""||datestring2=="")return false;
	var day1;
	var month1;
	var year1;
	var day2;
	var month2;
	var year2;
	
	var temp = datestring1.split("-");
	var tempdate1;
	var tempdate2;
	var date1;
	var date2;
	day1=temp[0];
	month1=temp[1];
	year1 = temp[2];
	temp = datestring2.split("-");
	day2=temp[0];
	month2=temp[1];
	year2 = temp[2];//"Mar 20, 2008";
	tempdate1 = month1+" "+day1+", "+year1;
	tempdate2 = month2+" "+day2+", "+year2;
	date1= new Date(tempdate1);
	date2= new Date(tempdate2);
	return getDifference(date1,date2);
	
}







function getProcurementTimeActual()
{		
	//alert("Hi");
	
	var rfeiIssueActual = 0;
	
	if(document.getElementById("RFEI_Issue_Date_Actual") && document.getElementById("RFEI_Issue_Date_Actual").value != ""){
		rfeiIssueActual= document.getElementById("RFEI_Issue_Date_Actual").value;
	}else if(document.getElementById("RFQ_Issue_Date_Actual") && document.getElementById("RFQ_Issue_Date_Actual").value != ""){
		rfeiIssueActual= document.getElementById("RFQ_Issue_Date_Actual").value;
	}else{
		if(document.getElementById("RFP_Issue_Date_Actual")){
			rfeiIssueActual= document.getElementById("RFP_Issue_Date_Actual").value;
		}
	}
	if((rfeiIssueActual==0)||(document.getElementById("Financial_Close_Date_Actual") && document.getElementById("Financial_Close_Date_Actual").value=="")){
		if(document.getElementById("Procurement Time Actual")){
			document.getElementById("Procurement Time Actual").value = "";
		}
	}
	//var rfeiIssueActual = document.getElementById("RFEI_Issue_Date_Actual").value;
	if(document.getElementById("Financial_Close_Date_Actual")){
		var financialCloseActual = document.getElementById("Financial_Close_Date_Actual").value;
		var numberOfDays = getDaysDiff(financialCloseActual,rfeiIssueActual);
		if(document.getElementById("Procurement Time")){
			document.getElementById("Procurement Time").value = getYearMonth(numberOfDays);
		}
	}
	return true;	
}
function getProcurementTimeScheduleDelay()
{
	return true;
	if((!document.getElementById("RFEI_Issue_Date_Actual"))||(document.getElementById("RFEI_Issue_Date_Actual").value==""))return ;
	if((!document.getElementById("Financial_Close_Date_Actual"))||(document.getElementById("Financial_Close_Date_Actual").value==""))return ;
	if((!document.getElementById("RFEI_Issue_Date_Planned"))||(document.getElementById("RFEI_Issue_Date_Planned").value==""))return ;
	if((!document.getElementById("Financial_Close_Date_Planned"))||(document.getElementById("Financial_Close_Date_Planned").value==""))return ;
	
	var rfeiIssueActual = document.getElementById("RFEI_Issue_Date_Actual").value;
	var financialCloseActual = document.getElementById("Financial_Close_Date_Actual").value;
	var numberOfDaysActual = getDaysDiff(financialCloseActual,rfeiIssueActual);
	var rfeiIssuePlaned = document.getElementById("RFEI_Issue_Date_Planned").value;
	var financialClosePlaned = document.getElementById("Financial_Close_Date_Planned").value;
	var numberOfDaysPlaned = getDaysDiff(financialClosePlaned,rfeiIssuePlaned);
	document.getElementById("Procurement Time Schedule Delay").value = numberOfDaysActual - numberOfDaysPlaned;
	return true;
}


function getFinancialCloseTime()
{
	if((!document.getElementById("Preferred_Proponent_Selection_Date_Actual"))||(document.getElementById("Preferred_Proponent_Selection_Date_Actual").value=="")){
		if(document.getElementById("Financial Close Time")){
			document.getElementById("Financial Close Time").value = "";
		}else if(document.getElementById("Preferred Proponent to Financial Close")){
			document.getElementById("Preferred Proponent to Financial Close").value = "";
		}
		return;
	} 
	if((!document.getElementById("Financial_Close_Date_Actual"))||(document.getElementById("Financial_Close_Date_Actual").value=="")){
		if(document.getElementById("Financial Close Time")){
			document.getElementById("Financial Close Time").value = "";
		}else if(document.getElementById("Preferred Proponent to Financial Close")){
			document.getElementById("Preferred Proponent to Financial Close").value = "";
		}
		return;
	} 
	var comCloseActual = document.getElementById("Preferred_Proponent_Selection_Date_Actual").value;
	var financialCloseActual = document.getElementById("Financial_Close_Date_Actual").value;
	var numberOfDays = getDaysDiff(financialCloseActual,comCloseActual);
	if(document.getElementById("Financial Close Time")){
		document.getElementById("Financial Close Time").value = getYearMonth(numberOfDays);
	}else if(document.getElementById("Preferred Proponent to Financial Close")){
		document.getElementById("Preferred Proponent to Financial Close").value = getYearMonth(numberOfDays);
	}
	return true;
}


function getConstructionTime()
{
	if(!document.getElementById("Construction_Start_Date_Actual")|| (document.getElementById("Construction_Start_Date_Actual").value=="")){
		document.getElementById("Construction Time").value="";
		return;
	}
	if(!document.getElementById("Construction_Complete_Date_Actual") || (document.getElementById("Construction_Complete_Date_Actual").value=="")){
		document.getElementById("Construction Time").value="";
		return;
	}
	var startActual = document.getElementById("Construction_Start_Date_Actual").value;
	var closeActual = document.getElementById("Construction_Complete_Date_Actual").value;
	var numberOfDays = getDaysDiff(closeActual,startActual);
	if(numberOfDays<0){
		//alert("Construction time cannot be negative. Please check construction start and end dates");
		var $dialog = $('<div></div>')
		.html('<p style="font: Tahoma;"><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Construction time cannot be negative. Please check construction start and end dates.</p>')
		.dialog({
			resizable: false,
			draggable: false,
			height:140,
			modal: true,
			show: 'blind',
			title: 'CCPPP - Information',
			buttons: {
				'OK': function() {
					$(this).dialog('close');
				}
			}
		});		
		$dialog.dialog('open');
		return 0;
	}
	var years = "";
	var months="";
	var days="";
	
	days = numberOfDays;
	years = Math.floor(days/365);
	days = days%365;
	months = Math.floor(days/30);
	days = days%30;
	var datestr = years+" Years "+ months+ " Months "+ days+ " Days";
	$("[id=Construction Time]").attr("value", numberOfDays);
	//document.getElementById("On-Time Construction").value = getYearMonth(numberOfDays);
	return getYearMonth(numberOfDays);

}



function getOnTimeConstructionTime (){

	//alert("Ki");
	if(!document.getElementById("Construction_Complete_Date_(Contract)")||(document.getElementById("Construction_Complete_Date_(Contract)").value=="")){
		document.getElementById("On-Time Construction").value="";
		return;
	}
	if(!document.getElementById("Construction_Complete_Date_Actual")|| (document.getElementById("Construction_Complete_Date_Actual").value=="")){
		document.getElementById("On-Time Construction").value="";
		return;
	}
	var consCompleteActual = document.getElementById("Construction_Complete_Date_Actual").value;
	var consCompletePlanned = document.getElementById("Construction_Complete_Date_(Contract)").value;
	var numberOfDays = getDaysDiff(consCompleteActual,consCompletePlanned);
	var years = "";
	var months="";
	var days="";
	
	days = numberOfDays;
	years = days/365;
	days = days%365;
	months = days/30;
	days = days%30;
	var datestr = years+" Years "+ months+ " Months "+ days+ " Days";
	//alert("Days-->"+numberOfDays);
	
	$("[id=On-Time Construction]").attr("value", numberOfDays);
	//document.getElementById("On-Time Construction").setAttribute("value",numberOfDays);
	return numberOfDays;

}
function PrinterFriendly(baseuri,param)
{
	//alert(document.getElementById('showIndividualProjectData').innerHTML);
	var url = baseuri + "/index/printerfriendlytemplate?param=" + escape(param);
	var heiwid = "height=" + screen.height +",width=" + screen.width;
	var opt = "menubar=yes,titlebar=no,scrollbars=yes,resizable=yes,location=no," + heiwid;
	var child = window.open(url ,'child',opt);
	if (window.focus) {child.focus()}
	//child.document.open();
	//child.document.write(document.getElementById('showIndividualProjectData').innerHTML);
	//child.document.getElementById('printercontent').innerHTML = document.getElementById('showIndividualProjectData').innerHTML;
	
}

function ShowAllDivs()
{
	var divs = document.forms[0].getElementsByTagName('div');
	var show="";
	var hide="";
	var hideArray = new Array();
	var hideArrayValue = new Array();
	for(var i=0; i < divs.length; i++)
	{
		if(divs[i].id.indexOf("div") != -1 && divs[i].id.indexOf("id") == -1)
		{
			show =  divs[i].id;
		}
		if(divs[i].id.indexOf("div") != -1 && divs[i].id.indexOf("id") != -1)
		{
			hide = divs[i].id;
		}
		if(show != "" && hide != "")
		{
			show_mem(show,hide);
			hideArray.push(hide);
			hideArrayValue.push(document.getElementById(hide).innerHTML);
			//document.getElementById(hide).parentNode.innerHTML = value;
			//document.getElementById(hide).style.display = "none";
			//alert(hide + "---" + document.getElementById(hide).parentNode.innerHTML);
			//alert(document.getElementById(hide).innerHTML);
			//document.getElementById(hide).style.height = "500px;"
		}
	}
	var x = 0;
	for(x in hideArray)
	{
		document.getElementById(hideArray[x]).parentNode.innerHTML = hideArrayValue[x];
		//document.getElementById(hideArray[x]).parentNode.className = "project_Data";
	}
}

function getYears(days){
	return Math.floor(days/365);
}

function getMonths(days){
	return Math.floor(days/30);
}

function getYearMonth(daysin){
	
	var years;
	var months;
	var days = daysin
	var result = "";
	years = getYears(days);
	days = days%365;
	months = getMonths(days);
	days = days%30;
	result += (years!=0)?((years>1)?years + " Years ":years + " Year " ): "";
	result += (months !=0)?((months>1)?months + " Months ":months + " Month " ): "";
	result += (days!=0)?((days>1)?days + " Days ":days + " Day " ): "";
	
	return result;
	
	
	
}
 function checkPressedKeyasInt(e)
{
	var keynum;
	var returntype=true;
	if(window.event) // IE
	  {
	  keynum = e.keyCode;
	  }
	else if(e.which) // Netscape/Firefox/Opera
	  {
	  keynum = e.which;
	  }
	if(keynum < '48' || keynum > '57')
	{
		if(keynum == '8' || keynum == '46')
		{
			returntype=true;
		}
		else
		{
			returntype=false;
		}
	}
	return returntype;
}
