/*=======================================================================
1.
2.
3.
4.
5.
=========================================================================*/

//=====================================================================================
// verify valid characters will check for  "*|,\":<>[]{}`\';()@&$#%";
//=====================================================================================
function isProper(string) {
    if (string.search(/^\w+( \w+)?$/) != -1)
        return true;
    else
        return false;
}

//=====================================================================================
//=====================================================================================
function HighlightButton(overColor)
{
	 overColor.style.color='Red';
} 
	
//=====================================================================================
//
//=====================================================================================
function UnHighlightButton(offColor)
{
		offColor.style.color='Blue';
}

//====================================================================================================================
// example ProcessingMsgBox(parent.document.all("MsgBox"), true, "Processing...  This may take a few minutes." );
//=====================================================================================================================
function ProcessingMsgBox(MsgBox, aBool, sString)
{
	if (MsgBox != null)
	{
		if (aBool)
		{
			MsgBox.style.visibility = 'visible';
			parent.MsgBox.SetStatusMsg(sString);
			gbControlEnabled = false;
		}
		else
		{
			MsgBox.style.visibility = 'hidden';		
			gbControlEnabled = true;
		}
	}
}


//=====================================================================================
//--- Trim trailing and frong spaces
//=====================================================================================
function trim(str) {
  while (str.charAt(str.length - 1)==" ")
    str = str.substring(0, str.length - 1);
  while (str.charAt(0)==" ")
    str = str.substring(1, str.length);
  return str;
}

//=====================================================================================
//---This function shows help for the screen.  Called by body.onHelp()
//---If bHasHelp is false then we show the default help screen.
//=====================================================================================	
function TSDROnHelp( bHasHelp)
{	
	var sHelpFileName;
	var objHelpWindow;

	if( bHasHelp == true )
	{
		sHelpFileName = GetHelpFileName( window.location.pathname );
		sHelpFileName = "../Help/mainhelp.aspx?helpfile=" + sHelpFileName;
			
	}
	else
	{
		sHelpFileName = "help/MainHelp.aspx?helpfile=TSDRMainHelp.htm"
	}

	objHelpWindow = window.open( 
		sHelpFileName,null,
		"toolbar=no,location=no,directories=no,menubar=no,scrollbars=yes,resizable=yes,width=850,height=500,top=0,left=0"
		);
			
	//must use try/catch(some users may have Popup blockers that would prevent help pages
	// from displaying		
	try{objHelpWindow.focus();}
	catch(ex){}
	
	return;
}

//=====================================================================================
// Pass the window.location.pathname and return file name
//=====================================================================================
function GetFileName( sWindowPathName )
{
	var nCharPos;
	var nNameLen;
	var sMyFileName;
	
	nNameLen = sWindowPathName.length;
	nCharPos = sWindowPathName.lastIndexOf( "/", nNameLen );
	sMyFileName = sWindowPathName.substring( nCharPos + 1, nNameLen );

	nCharPos = sMyFileName.indexOf( ".", 0 );
	return( sMyFileName.substring( 0, nCharPos ) );
}


//=====================================================================================
//*** Pass the window.location.pathname and return help file name
//*** which is, by our convention, <filename>Help.htm
//=====================================================================================
function GetHelpFileName( sWindowPathName )
{
	var objForm=document.forms[0];
	var sMyFileName;
	
	sMyFileName = GetFileName( sWindowPathName );

	switch(sMyFileName.toUpperCase())
	{
		//--- Based On Dealer or Support Type, Lanuch different help pages
		case "REQUESTLIST":
			switch(msUserType.toUpperCase())
			{
				case "DEALER":
					sMyFileName="TSDRDLRListHelp.htm"
					break;
				case "ADMIN":
					sMyFileName="TSDRTIEMListHelp.htm"
					break;
				case "NAADMIN":
					sMyFileName="TSDRNAFMListHelp.htm"
					break;
				case "NA":
					sMyFileName="TSDRNAFMListHelp.htm"
					break;
				case "INQUIRY":
					sMyFileName="TSDRINQUIRYListHelp.htm"
					break;			
			}				
			break;
		case "REQUESTDETAIL":
			switch(msUserRole.toUpperCase())
			{
				case "DEALER":
					sMyFileName="TSDRDlrDetailHelp.htm"
					break;
				case "ADMIN":
					sMyFileName="TSDRTIEMDetailHelp.htm"
					break;
				case "NAADMIN":
					sMyFileName="TSDRNAFMDetailHelp.htm"
					break;
				case "NA":
					sMyFileName="TSDRNAFMDetailHelp.htm"
					break;
				case "INQUIRY":
					sMyFileName="TSDRINQUIRYDetailHelp.htm"
					break;			
			}				
			break;
		case "SURVEY":
			sMyFileName="TSDRSurveyHelp.htm";
			break;
		default:
			sMyFileName="TSDRMainHelp.htm";
			break;
	}
	
	return( sMyFileName );
}

//===============================================================================================
//===============================================================================================
function SetStyleClassName(obj, className)
{
	if(typeof obj == "string")
	{
		obj= document.getElementById(obj);
	    obj.className=className
	} 
			
}

function GetComboText(oSelect)
{
    var sVal=oSelect.options.item(oSelect.selectedIndex).text
    return sVal
}

//======================================================================================
//======================================================================================
function DateDiff(d1,d2)
{
				date1 = new Date(d1);
				date2 = new Date(d2);
				diff  = new Date();

				/*
				if (isValidDate(dateform.firstdate.value) && isValidTime(dateform.firsttime.value)) { // Validates first date 
				date1temp = new Date(dateform.firstdate.value + " " + dateform.firsttime.value);
				date1.setTime(date1temp.getTime());
				}
				else return false; // otherwise exits

				if (isValidDate(dateform.seconddate.value) && isValidTime(dateform.secondtime.value)) { // Validates second date 
				date2temp = new Date(dateform.seconddate.value + " " + dateform.secondtime.value);
				date2.setTime(date2temp.getTime());
				}
				else return false; // otherwise exits
				*/
				// sets difference date to difference of first date and second date

				diff.setTime(Math.abs(date1.getTime() - date2.getTime()));

				timediff = diff.getTime();
								
				var weeks=0;
				weeks = Math.floor(timediff / (1000 * 60 * 60 * 24 * 7));
				timediff -= weeks * (1000 * 60 * 60 * 24 * 7);
												
				var days=0;
				days = Math.floor(timediff / (1000 * 60 * 60 * 24)); 
				timediff -= days * (1000 * 60 * 60 * 24);

                //alert("days="+days)
                days+=(weeks * 7);
                //alert("days2=" + days);
               				
				/*
				hours = Math.floor(timediff / (1000 * 60 * 60)); 
				timediff -= hours * (1000 * 60 * 60);

				mins = Math.floor(timediff / (1000 * 60)); 
				timediff -= mins * (1000 * 60);

				secs = Math.floor(timediff / 1000); 
				timediff -= secs * 1000;
				*/
				//alert(weeks + " weeks, " + days + " days, " + hours + " hours, " + mins + " minutes, and " + secs + " seconds");
               
				return days;
}

function  ReadOnlyDelete(obj,pageEvent)
{
     keyCode = pageEvent.keyCode
     if (keyCode == 32 || keyCode == 46)			//*** Space Bar or Delete key pressed.
     {
        //obj.innerText
        obj.value="";
     }
}	