var Actiontype;
var xmlhttp;

setSelectedStatuses();

String.prototype.replaceAll = function(
    strTarget, // The substring you want to replace
    strSubString // The string you want to replace in.
    ){
    var strText = this;
    var intIndexOfMatch = strText.indexOf( strTarget );
     
    // Keep looping while an instance of the target string
    // still exists in the string.
    while (intIndexOfMatch != -1){
    // Relace out the current instance.
    strText = strText.replace( strTarget, strSubString )
     
    // Get the index of any next matching substring.
    intIndexOfMatch = strText.indexOf( strTarget );
    }
     
    // Return the updated string with ALL the target strings
    // replaced out with the new substring.
    return( strText );
    }


function spanover(s,i){
	var stsFieldName;
	var selectName;
	
		selectName="vendorSelect*";
		stsFieldName="stsField"+i;
		var x=document.getElementById(selectName);
		s.style.backgroundColor='lightblue'

		setFocus(i);
		

	
	
		
}
function setFocus(i)
{
		stsFieldName="stsField"+i;
		var a=document.getElementById(stsFieldName).value;
		
		for (i=0;i<document.getElementById('vendorSelect*').length;i++)
			{
					if (a == document.getElementById('vendorSelect*').options(i).text)
					{
					document.getElementById('vendorSelect*').options(i).selected = true;
						return;
				}
			}

}
function spanout(s,i){
		s.style.backgroundColor='white'
		
}
function setSelectedStatuses(){
	var currentSelect;		
	if (document.getElementById('totalVendors')!=null)
	for (i=0;i<document.getElementById('totalVendors').value;i++)
			{
				 currentSelect=document.getElementById('vendorSelect*'+i);
				
				 if (document.getElementById('stsField'+i)!=null)
				 		currentStatusToSet=document.getElementById('stsField'+i).value;
				 if (currentSelect!=null)
				 {
				 	
					 	for (j=0;j<currentSelect.length;j++)
				 		{
				 			if (currentStatusToSet== currentSelect.options[j].text){			 					 			
				 				currentSelect.options[j].selected=true;
				 			}
				 			
				 		
				 			if (currentStatusToSet== currentSelect.options[j].value){
				 				currentSelect.options[j].selected="Selected";
				 			}
				 			
				 			currentSelect.style.color=getRelevantColor(currentStatusToSet);
						}
					}
				 
			}
			
			
}
function doSearch(){
	var sortBy;
	var searchVendor;
	var prefix;
	if (document.getElementById('ste_vend_prefix')!=null)
			prefix=document.getElementById('ste_vend_prefix').value;
		if (document.getElementById('searchTxt')!=null)
						searchVendor=prefix+document.getElementById('searchTxt').value;
		if (document.getElementById('sort')!=null)
						sortBy=document.getElementById('sort').checked.value;
						
			for( i = 0; i < document.myform.sort.length; i++ )
		{
		if( document.myform.sort[i].checked == true )
			sortBy = document.myform.sort[i].value;
		}
		if (document.getElementById('searchUrl')!=null)
				window.location=document.getElementById('searchUrl').value+"searchVendor="+searchVendor+"&sortby="+sortBy+"";
				
		//alert('searchVendor'+searchVendor+'SortBy'+sortBy)
}

function saveAllDates(){
		
		var urlTarget;
		var urlLocation;
		Actiontype="saveAllDates";
		var urlLocation="process_request.php";
		var endDt;
		var gUserName;
		var startDt;
		var TotalReports;		
		
		xmlhttp=GetXmlHttpObject();			
		if (xmlhttp==null) {	
					  alert ("Your browser does not support XMLHTTP!");
					  return;
		}
		
		urlTarget="reqtype="+Actiontype+"";; 
		urlTarget=urlTarget+"&sid="+Math.random()+"$";
		
		if (document.getElementById("totalVendors")!=null)
				TotalReports=document.getElementById("totalVendors").value;
		for (i=0;i<TotalReports;i++){
				if (document.getElementById("start_dt_txt"+i)!=null)
							startDt=document.getElementById("start_dt_txt"+i).value;
				if (document.getElementById("end_dt_txt"+i)!=null)
							endDt=document.getElementById("end_dt_txt"+i).value;
				if (document.getElementById("gUserName"+i)!=null)
							gUserName=document.getElementById("gUserName"+i).value;
				urlTarget=urlTarget+"gUserName"+i+"="+gUserName+"&startDate"+i+"="+startDt+"&endDate"+i+"="+endDt+"$";		
		}
		
		
		
	
			
		
		
		
		xmlhttp.open("POST",urlLocation,true);
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", urlTarget.length);
		xmlhttp.setRequestHeader("Connection", "close");							
		xmlhttp.onreadystatechange=stateChanged;						
		xmlhttp.send(urlTarget);
		
}
function setClickThourghs(vid){
		
		var urlTarget;
		var urlLocation;
		Actiontype="updateClickThourghs";
		var urlLocation="process_request.php";
		var clicksValue;
		var vendor;
		var vendId;
		vendId=vid.split("_");
		 
		if (document.getElementById(vid)!=null)
				clicksValue=document.getElementById(vid).value;
		if (document.getElementById('clickThroughsVname_'+vendId[1])!=null)
				vendor=document.getElementById('clickThroughsVname_'+vendId[1]).value;
				
		xmlhttp=GetXmlHttpObject();
		if (!IsNumeric(clicksValue)){
					  alert ("Please insert numeric value only.");
					  return;
		}
		
		if (xmlhttp==null) {	
					  alert ("Your browser does not support XMLHTTP!");
					  return;
		}
		if (vendor==null || clicksValue==null){
			alert("Problem while  setting Click Thourghs values");
			return;
		}
	
			
		urlTarget="reqtype="+Actiontype+"";;
		urlTarget=urlTarget+"&sid="+Math.random()+"&vendor="+vendor+"&clicksValue="+clicksValue+"";
		
		xmlhttp.open("POST",urlLocation,true);
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", urlTarget.length);
		xmlhttp.setRequestHeader("Connection", "close");							
		xmlhttp.onreadystatechange=stateChanged;						
		xmlhttp.send(urlTarget);
		
}
function setStatus(itemId){
				
				var idSelect;
				var newStatus;
				var urlTarget;
				var urlLocation;
				var newColor;
				var indexArr;
				str=itemId.id;
				Actiontype="updateVendorStatus";
				indexArr=str.split("*");
				
				idSelect=indexArr[1];
			
				if (document.getElementById('stsField'+idSelect)!=null)
						newStatus=document.getElementById('stsField'+idSelect).value;
				if (document.getElementById('vendorName'+idSelect)!=null)
						vendorToUpdate=document.getElementById('vendorName'+idSelect).value;
				
				
				
				
			newStatus=itemId.value;
			newColor=getRelevantColor(newStatus);
			document.getElementById("vendorSelect*"+idSelect).style.color=newColor;
			
				var urlLocation="process_request.php";
				xmlhttp=GetXmlHttpObject();
		
		if (xmlhttp==null)
			 {
					  alert ("Your browser does not support XMLHTTP!");
					  return;
		}
		urlTarget="reqtype="+Actiontype+"";;
		urlTarget=urlTarget+"&sid="+Math.random()+"&vendor="+vendorToUpdate+"&newStatus="+newStatus+"";
		
		xmlhttp.open("POST",urlLocation,true);
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", urlTarget.length);
		xmlhttp.setRequestHeader("Connection", "close");							
		xmlhttp.onreadystatechange=stateChanged;						
		xmlhttp.send(urlTarget);
							
		
	}
	function doDelete(strId){				
				var urlTarget;
				var urlLocation;
				var vendorToDelete;
				var vendorToDeleteDisplayName;
				var Message;
				Actiontype="deleteVendorProfile";
				idSelect=strId;		
				
				if (document.getElementById('vendorName'+idSelect)!=null)
						vendorToDelete=document.getElementById('vendorName'+idSelect).value;
				if (document.getElementById('vend_display_name'+idSelect)!=null)
						vendorToDeleteDisplayName=document.getElementById('vend_display_name'+idSelect).value;
				
					
						
				Message="Are you sure,you want to delete "+vendorToDeleteDisplayName+ " ?";
				if (show_confirm(Message)){
							urlLocation="process_request.php";
							xmlhttp=GetXmlHttpObject();
						if (xmlhttp==null) {
					  										alert ("Your browser does not support XMLHTTP!");
					  										return;
															}
															urlTarget="reqtype="+Actiontype+"";;
															urlTarget=urlTarget+"&sid="+Math.random()+"&vendor="+vendorToDelete+"";
															
															xmlhttp.open("POST",urlLocation,true);
															xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
															xmlhttp.setRequestHeader("Content-length", urlTarget.length);
															xmlhttp.setRequestHeader("Connection", "close");							
															xmlhttp.onreadystatechange=stateChanged;
															xmlhttp.send(urlTarget);
														}
							
	
	}
	function doNotify(){				
				var urlTarget;
				var urlLocation;
				var vendorForNotification;
				var vendorNameForStatus;
				var currentSelect;
				var browser=navigator.appName;
				Actiontype="NotifyAnalyst";
			
				urlLocation="process_notification.php";
				xmlhttp=GetXmlHttpObject();
		
		if (xmlhttp==null)
			 {
					  alert ("Your browser does not support XMLHTTP!");
					  return;
		}
	
				 currentSelect=document.getElementById('vSelect');
				
				
				 if (currentSelect!=null)
				 {
			
					 	for (j=0;j<currentSelect.length;j++)
				 		{
			
	
							
									if (currentSelect.options[j].selected==true)													 			
											vendorForNotification=currentSelect.options[j].value;				 							 			
				 				
				 			

						}
					}
		
		vendorNameForStatus=vendorForNotification;	
    vendorForNotification=vendorForNotification.replaceAll("_", " ");
    
			
		
		urlTarget="action="+Actiontype+"";;
		urlTarget=urlTarget+"&sid="+Math.random()+"&vendor="+vendorForNotification+"&vendorNameForStatus="+vendorNameForStatus+"";
		
		xmlhttp.open("POST",urlLocation,true);
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", urlTarget.length);
		xmlhttp.setRequestHeader("Connection", "close");							
		xmlhttp.onreadystatechange=stateChanged;						
		xmlhttp.send(urlTarget);
							
			
	}
	function stateChanged()
	{
		if (xmlhttp.readyState==4 & Actiontype=="setVendorPaid"){
  		strResponse=xmlhttp.responseText;
  		arrStr=strResponse.split("/");  
  
	}
	if (xmlhttp.readyState==4 & Actiontype=="saveAllDates"){
  		alert("saved successfuly");
  
	}
	if (xmlhttp.readyState==4 & Actiontype=="updateClickThourghs"){
  		strResponse=xmlhttp.responseText;
  		arrStr=strResponse.split("/");  
  
	}
	
		
	if (xmlhttp.readyState==4 & Actiontype=="updateVendorStatus")
  {
  	strResponse=xmlhttp.responseText;
  	arrStr=strResponse.split("/");  
  
	}
	else
		if (xmlhttp.readyState==4 & Actiontype=="deleteVendorProfile")
  {
  	strResponse=xmlhttp.responseText;
  	arrStr=strResponse.split("/");  
  	alert("Deleted Succesfully.");
  	
  	if (document.getElementById('searchUrl')!=null)
				window.location=document.getElementById('searchUrl').value;
		
	}
	else
		if (xmlhttp.readyState==4 & Actiontype=="NotifyAnalyst")
  {
  	strResponse=xmlhttp.responseText;
  	alert("Notification Sent");

  	arrStr=strResponse.split("/");  
  	
	}
}
function show_confirm(Message){
	return confirm(Message);

}
function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  return new XMLHttpRequest();
  }
if (window.ActiveXObject)
  {
  // code for IE6, IE5
  return new ActiveXObject("Microsoft.XMLHTTP");
  }
return null;
}
function getRelevantColor(sts){
	var colorRet="";
	switch(trim(sts)){
		case ("draft"):colorRet="#999";
		case ("Draft"):colorRet="#999";
		break;		
		case ("Profile"):colorRet="#33FFFF";
		case ("Profile Edited"):colorRet="#33FFFF";
		case ("profile"):colorRet="#33FFFF";
		case ("profile edited"):colorRet="#33FFFF";
		break;
		case ("rejected"):colorRet="#F30";
		case ("Rejected"):colorRet="#F30";
		break;
		case ("evaluated"):colorRet="#603";
		case ("Evaluated"):
		colorRet="#603";
		break;
		case ("evaluationrequested"):	colorRet="#096DAC";		
		break;
		case ("submitted"):	colorRet="#FC0";	
		case ("Submitted"):colorRet="#FC0";
		break;
		case ("Ref Requested"):	colorRet="#538";	
		case ("ref requested"):colorRet="#538";
		break;
		case ("Ref Submitted"):	colorRet="#372";	
		case ("Ref Submitted"):colorRet="#372";
		break;
		case ("evaluation"):	colorRet="#000";	
		case ("Evaluation"):colorRet="#000";	
		case ("Evaluation Edited"):colorRet="#000";
		case ("evaluation edited"):
		colorRet="#000";
		break;
		case ("ready"):	colorRet="#0F6";	
		case ("Ready"):
		colorRet="#0F6";
		break;
	}
	return colorRet;
}
function trim(str, chars) {
	return ltrim(rtrim(str, chars), chars);
}
function ltrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}
 
function rtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

function openUrl(urlToOpen,targetTitle){
	
	var myRef;
	myRef = window.open(urlToOpen,'targetTitle','width=1024,height=768,scrollbars=YES');

}
function setVendorPaid(paymentAction,vendorName){
		Actiontype="setVendorPaid";				
		var urlLocation="process_request.php";
		var groupName="STEVendor";
		xmlhttp=GetXmlHttpObject();		
		if (xmlhttp==null)
			 {
					  alert ("Your browser does not support XMLHTTP!");
					  return;
		}
		urlTarget="reqtype="+Actiontype+"";;
		urlTarget=urlTarget+"&sid="+Math.random()+"&vendor="+vendorName+"&groupName="+groupName+"&paymentAction="+paymentAction+"";		
		xmlhttp.open("POST",urlLocation,true);		
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", urlTarget.length);
		xmlhttp.setRequestHeader("Connection", "close");							
		xmlhttp.onreadystatechange=stateChanged;						
		xmlhttp.send(urlTarget);
	//alert(paymentAction);
	//alert(vendorName);
}
function IsNumeric(sText){
   var ValidChars = "0123456789.$,";
   var IsNumber=true;
   var Char;
	if (sText!=null){
 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
  }
   return IsNumber;
   
   
}
