////////////////////////////////////////////
//System Base Function collection
////////////////////////////////////////////
function Trim(TRIM_VALUE)
{
	if(TRIM_VALUE.length < 1)
	{
		return"";
	}
	TRIM_VALUE = RTrim(TRIM_VALUE);
	TRIM_VALUE = LTrim(TRIM_VALUE);
	if(TRIM_VALUE=="")
	{
		return "";
	}
	else
	{
		return TRIM_VALUE;
	}
} //End Function

function RTrim(VALUE)
{
	var w_space = String.fromCharCode(32);
	var v_length = VALUE.length;
	var strTemp = "";
	if(v_length < 0)
	{
		return"";
	}
	var iTemp = v_length -1;
	while(iTemp > -1)
	{
		if(VALUE.charAt(iTemp) == w_space)
		{
		}
		else		{
			strTemp = VALUE.substring(0,iTemp +1);
			break;
		}
		iTemp = iTemp-1;
	}
	return strTemp;
}

function LTrim(VALUE)
{
	var w_space = String.fromCharCode(32);
	if(v_length < 1)
	{
		return"";
	}
	var v_length = VALUE.length;
	var strTemp = "";
	var iTemp = 0;
	while(iTemp < v_length)
	{
		if(VALUE.charAt(iTemp) == w_space)
		{
		}
		else
		{
			strTemp = VALUE.substring(iTemp,v_length);
			break;
		}
		iTemp = iTemp + 1;
	}
	return strTemp;
}

function  CreateHttpObject()
{
	var oHttpReq;
	//var oDoc;
	if (window.XMLHttpRequest) 
	{
		oHttpReq = new XMLHttpRequest();
		//oDoc = document.implementation.createDocument("text/xml", "", null);
	}
	else
	{
		oHttpReq = new ActiveXObject("MSXML2.XMLHTTP");
		//oDoc = new ActiveXObject("MSXML2.DOMDocument");	
	}
	return oHttpReq;
}

function OpenUrl(sUrl)
{
		var oHttp;
		oHttp = CreateHttpObject();
		oHttp.open("POST",sUrl,false);
		oHttp.send("");
		var sHttpResult;
		sHttpResult = oHttp.responseText;	
		delete oHttp;
		return sHttpResult;
}


function CommitForm(form)
{
	form.submit();
}

function CommitFormByValidation(form,strValidation)
{
	if(vdf(strValidation))
	{
		form.submit();
	}
}

function CommitFormById(frmID)
{
	document.getElementById(frmID).submit();
}

/////////////////////////////////////////////////////////////////////
//---------------------Data Validation Function---------------------
/////////////////////////////////////////////////////////////////////

function fob(n, d)
{
   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=fob(n,d.layers[i].document); 
   return x;
} 	   

function cb()
{
   var a=cb.arguments;
   var name=fob(a[0]);
   e=document.forms(0).elements;
   if (name.checked==true)
   {
      for (i=0;i<e.length;i++)
      {
         e[i].checked=true;
      }
   }
   else
   {
      for (i=0;i<e.length;i++)
      {
         e[i].checked=false;
      }
   }
}

function vdf() 
{
   var i,j,name,value,message,length,type,a=vdf.arguments,cb_name;
   for (i=0; i<(a.length-2); i+=3) 
   {
       if (a[i].indexOf('#')!=-1)
       {
           name=fob(a[i].substr(0,a[i].indexOf('#')));
           cb_name=fob(a[i].substr((a[i].indexOf('#')+1),a[i].length));
       }
       else
       {
          name=fob(a[i]); // controls name
       }
       message=a[i+1]; // message to be prompt
       type=a[i+2]; // type
       if (type!="r_time")
       {
          value=name.value.replace(/ +/g, ""); // controls value
       }
       else
       {
          value=name.value;
       }
       if (name) 
       {
       // ===============check if multi selection list is selected================ //
          if (type=="r_cb")
          {      
             e=document.forms(0).elements;
             var flag=false;
             for (i=0;i<e.length;i++)
             { 
                if (e[i]!=cb_name)
                {
                   if (e[i].checked==true)
                   {
                       flag=true;
                       break;
                   }
                }
                if (i==e.length-1)
                {
                    break;
                }
             }
             if (flag==false)
             {
                alert(message+"\n"); //prompt when it is empty
                return false;
             }
          }
          // ===============check if dropdownlist is selected================ //
          if (type=="r_sl")
          {
            if (name.selected==false)
            {
                 alert(message+"\n"); 
                 return false;
            }
          }
          // ===============can't be empty================ //
          if (type=="r") 
          {
             if (value=="") 
             {
                 alert(message+"\n"); 
                 name.focus();
                 name.select();
                 return false;
             }
          }
         // ===============can't be empty ,must be digital number================ //
         if (type=="r_num_char")
         {
             if (value=="")
             {
                  alert(message+"\n"); 
                 name.focus();
                 name.select();
                 return false;
             }
             if (value.search(/^[0-9a-zA-Z]+$/)==-1) 
             {
                  alert(message+"\n"); 
                 name.focus();
                 name.select();
                 return false;
             }
          }
          
          // ===============can be empty ,but must be digital number when it is not empty================ //
         if (type=="num")
         {
             if (value.search(/^[0-9]+$/)==-1 && value!="") 
             {
                  alert(message+"\n");
                  name.focus();
                  name.select();
                  return false;
             }
         }
         
         // ===============can be empty ,and must be digital number================ //
         if (type=="r_num")
         {
             if (value=="")
             {
                  alert(message+"\n");
                  name.focus();
                 name.select();
                  return false;
             }
             if (value.search(/^[0-9]+$/)==-1) 
             {
                  alert(message+"\n");
                  name.focus();
                 name.select();
                  return false;
             }
          }
          
          // ===============must be digital number less or equal n================ //
          if (type.indexOf("r_num<")!=-1)
          {
              length=type.substring((type.indexOf('<')+1),type.length); // get what was behine r_num 
   
              if (value=="")
              {
                  alert(message+"\n");
                  name.focus();
                  name.select();
                  return false;
              }
              if (value.search(/^[0-9]+$/)==-1)  // prompt message when it is not digital number
              {
                  alert(message+"\n");
                  name.focus();
                  name.select();
                  return false;
              }
              if (value.length>length) //set the limitaion on digital number length
              {
                 alert(message+"\n");
                 name.focus();
                 name.select();
                 return false;
              }
          }
          
          // ===============must be gitial number over n ================ //
          if (type.indexOf("r_num>")!=-1)
          {
	         length=type.substring((type.indexOf('>')+1),type.length); //get what was behine r_num
             if (value=="")
             {
                alert(message+"\n");
                name.focus();
                name.select();
                return false;
             }
             if (value.search(/^[0-9]+$/)==-1)  // prompt when it is not a digital number
             {
                alert(message+"\n");
                name.focus();
                name.select();
                return false;
             }
             if (value.length<length)  // limitaion on digital number length
             {
                alert(message+"\n");
                name.focus();
                name.select();
                return false;
             }
          }
          
          // ===============length of number must between a-b================ //		  
	      if (type.indexOf("r_num#<>")!=-1)
	      {
              length=type.substr((type.indexOf('>')+1),type.length);
              length=length.substr(0,length.lastIndexOf("-"));
	          length1=type.substring((type.indexOf('-')+1),type.length) // get the number  behine rn<
              if (value=="")
	          {
		         alert(message+"\n");
		         name.focus();
				 name.select();
				 return false;
			  }
			  if (value.search(/^[0-9]+$/)==-1) // prompt when it is not a digital number
			  {
				 alert(message+"\n");
				 name.focus();
				 name.select();
				 return false;
			  }
			  if (value.length<length || value.length>length1)  // propmt when it is not in the length as required
			  {
				 alert(message+"\n");
				 name.focus();
				 name.select();
				 return false;
			  }
		  }
		  // ===============can't be empty,and must be float type=============== //
         if (type=="r_float")
         {
             if (value=="")
             {
                  alert(message+"\n");
                  name.focus();
                  name.select();
                  return false;
             }
             if (value.search(/^[0-9]+$/)!=-1 || value.search(/^([0-9]+)|([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+)$/)!=-1) 
             {
                return true;
             }
             else
             {
                alert(message+"\n");
                  name.focus();
                  name.select();
                  return false;
             }
          }
		  
		  // ===============email validation,can be empty================ //	
	      if (type.indexOf("email")!=-1)
	      {
	         if (name.value!="")
	         {
	             //if (value.search(/^[_\.a-z0-9]+@[a-z0-9]+[\.][a-z0-9]{2,}$/i)==-1)
	             if (echeck(value)==false)
		         {
		             alert(message+"\n");
     	    	     name.focus();
		             name.select();
		             return false;
		         }
	          }
	       }

	       // ===============email validation ,can't be empty================ //
			if (type.indexOf("r_email")!=-1)
			{
				if (name.value=="")
				{
				alert(message+"\n");
				name.focus();
				name.select();
				return false;
				}
				//if (value.search(/^[_\.a-z0-9]+@[a-z0-9]+[\.][a-z0-9]{2,}$/i)==-1)
				if (echeck(value)==false)
				{
				alert(message+"\n");
     	    	name.focus();
				name.select();
				return false;
				}
			}
	  
	   // ===============date validation,by format MM/DD/YYYY================ //
          if (type=="r_date")
          {
              flag=true; 
              if (isDate(value)==false)
              {
				flag = false;
			  }
 
			if (flag==false)
			{
              alert(message+"\n"); 
              name.focus();
              name.select();
              return false;
			}
        }
        
       // ===============phone NO Check,can't be empty ================
	  if (type.indexOf("r_tel")!=-1)
	  {
	     if (name.value=="")
	     {
		    alert(message+"\n");
		    name.focus();
		    name.select();
		    return false;
	     }
	    // if (value.search(/^(\([0-9]{3}\)|[0-9]{3}-)[0-9]{8}$/)==-1 && value.search(/^(\([0-9]{4}\)|[0-9]{4}-)[0-9]{7}$/)==-1)
	    if(checkInternationalPhone(value) == false)
	     {
	        alert(message+"\n");
     	    name.focus();
		    name.select();
		    return false;
	     }
	  }
	//=============================
       }
   }
   return true;
}

//------------------email validation---------------------------
function echeck(str) 
{
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail ID")
		   return false
		}
		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail ID")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail ID")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }
 		 return true					
}

// ------------------date validation--------------------
// 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")
		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
}

//=================phone number validation script ===========================
// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;
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++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone)
{
	s=stripCharsInBag(strPhone,validWorldPhoneChars);
	return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function checkforblanks() 
{ 
	var bRet;
	var sErros;
	bRet = true;
	sErrors = "";
	for (var i = 0; i < arguments.length; i += 2) 
	{ 
		if (!arguments[i].value) 
		{
			sErrors = sErrors + "- Please enter : " + arguments[i+1] + ".\n";
			if(bRet)
			{
				arguments[i].focus();
				bRet = false;
			}
		} 
	} 
	if(bRet == false)
	{
		alert(sErrors);
	}
	else
	{
		return true; 
	}
} 
//**********************************
//System Base Function collection
//**********************************


//**********************************
//get session 
//**********************************
function getSession(sessionName)
{
	try
	{
		if(sessionName == null || Trim(sessionName) == "")
		{
			return "";
		}
		else
		{
			var sessionValue;
			sessionValue = OpenUrl("../include/getsession.aspx?name=" + sessionName);
			return sessionValue;
		}
	}
	catch(e)
	{
		alert(e);
	}
}

//***********************************************************
// Message Bar Function collection
//***********************************************************
 //Set loading action
function loadBar(fl)
//fl=1 show
//fl=0 hide
{
  var x,y;
  if (self.innerHeight)
  {// all except Explorer
    x = self.innerWidth;
    y = self.innerHeight;
  }
  else 
  if (document.documentElement && document.documentElement.clientHeight)
  {// Explorer 6 Strict Mode
   x = document.documentElement.clientWidth;
   y = document.documentElement.clientHeight;
  }
  else
  if (document.body)
  {// other Explorers
   x = document.body.clientWidth;
   y = document.body.clientHeight;
  }

    var el=document.getElementById('loader');
	if(null!=el)
	{
		var top = (y/2) - 50;
		var left = (x/2) - 150;
		if( left<=0 ) left = 10;
		top = top + scrollY;
		left = left + scrollX;
		el.style.visibility = (fl==1)?'visible':'hidden';
		el.style.display = (fl==1)?'block':'none';
		el.style.left = left + "px"
		el.style.top = top + "px";
		el.style.zIndex = 2;
	}
}

////////////////////////////////////////////////////////////////////////////////////////
// -------------------BRCC Application function collection---------------------------
////////////////////////////////////////////////////////////////////////////////////////

function DelRQItem(id)
{
	var LoginStatus;
	LoginStatus = getSession("LoginStatus");
	if(LoginStatus == "0" || Trim(LoginStatus) == "")
	{
		parent.location = "../asp/login.aspx";
		return;
	}
	try
	{
		if(confirm("Do you want to remove this item?") == false)
		{
			return;
		}
		var result;
		result = "";
		if(Trim(id)!="")
		{
			loadBar(1);		
			result = OpenUrl("delrequestitem.aspx?id=" + id);
			if(result!="")
			{
				throw "Errors occured while cancel this request item from your request list.\n" + result;
			}
		}
		setTimeout("loadBar(0)",1000);
		var tblRQList;
		tblRQList = document.getElementById("tblRQList");
		var i;
		if(tblRQList)
		{
			if(tblRQList.rows.length > 0)
			{
				for(i=tblRQList.rows.length-1;i>=0;i--)
				{
					//if(tblMedia.rows[i].cells[0].firstChild.value == MediaToDelete)
					if(document.all)
					{
						if(id.indexOf(tblRQList.rows[i].cells[3].firstChild.getAttribute("RQID")) >= 0)
						{
							tblRQList.deleteRow(i);
						}
					}
					else
					{
						if(id.indexOf(tblRQList.rows[i].cells[3].childNodes[0].getAttribute("RQID")) >= 0)
						{
							tblRQList.deleteRow(i);
						}
						
					}
				}
			}
		}
		
	}
	catch(e)
	{
		setTimeout("loadBar(0)",1000);
		alert(e);
	}
}

function AddToLicenseBox(id)
{
	var LoginStatus;
	LoginStatus = getSession("LoginStatus");
	if(LoginStatus == "0" || Trim(LoginStatus) == "")
	{
		parent.location = "../asp/login.aspx";
		return;
	}
	try
	{
		var result;
		result = "";
		if(Trim(id)!="")
		{
			loadBar(1);		
			result = OpenUrl("addtolicensebox.aspx?id=" + id);
			if(result!="")
			{
				throw "Errors occured while cancel this request item from your request list.\n" + result;
			}
		}
		setTimeout("loadBar(0)",1000);	
	}
	catch(e)
	{
		setTimeout("loadBar(0)",1000);
		alert(e);
	}
}

function ShowSearchOption()
{
	document.getElementById("SearchOption").className = "";
}

function ShowWithinSearchOption()
{
	document.getElementById("WithinSearchOption").className = "";
}

function HideSearchOption()
{
	
}
function clickIt()
{
	
}

function doTopSearch(form)
{
	if(vdf('topkeystring','Please enter a searching keyword.','r') == true)
	{
		CommitForm(form);
	}
}

function ResetServCommunities()
{
	var ServAllCommunity;
	ServAllCommunity = document.getElementById("optServAllCommunity");
	if(ServAllCommunity.checked)
	{
		document.getElementById("refServCommunities").className= "hidden";
	}
	else
	{
		document.getElementById("refServCommunities").className= "";
	}
	
}

function ResetOperMonths()
{
	if(document.getElementById("optOperPeriod_1").checked)
	{
		//document.getElementById("operseasonally").className = "";
		//enable it
		try {
			if(document.getElementById("operseasonally")) {
				setDisabled("operseasonally", false);
				$("#operseasonally").unblock();
				//toggleDivStatus(document.getElementById("operseasonally"), 'enable');
			}
		}
		catch(e) {
			setDisabled("operseasonally", false);
		}
	}
	else
	{
		//document.getElementById("operseasonally").className = "div_disabled";
		//disable it
		if(document.getElementById("operseasonally")) {
			try {
				setDisabled("operseasonally", true);		
				$("#operseasonally").unblock();
				$("#operseasonally").block({
						message: '<p>Your business does not operate seasonally</p>',  
						css: { border: '3px solid #cccccc' }
				});
			}
			catch(e) {
				setDisabled("operseasonally", true);
			}
		}
		//toggleDivStatus(document.getElementById("operseasonally"), 'disbale');		
	}
}

function setDisabled(id, disabled)
{
	if ( !document.getElementById
	|| !document.getElementsByTagName) return;
	
	var nodesToDisable = {button :'', input :'', optgroup :'',
	option :'', select :'', textarea :''};
	
		var node, nodes;
		var div = document.getElementById(id);
		if (!div) return;
		
		nodes = div.getElementsByTagName('*');
		if (!nodes) return;
		
		var i = nodes.length;
		while (i--){
			node = nodes[i];
			if ( node.nodeName
			&& node.nodeName.toLowerCase() in nodesToDisable ){
				node.disabled = disabled;
			}
	 }
}

function toggleDivStatus(el, status) {
		try {
				if(status == 'enable') {
					el.disabled = false;
				}
				if(status == 'disable') {
					el.disabled = true;
				}
		}
		catch(E){}
		
		if (el.childNodes) {
				if(el.childNodes.length > 0) {
					for (var x = 0; x < el.childNodes.length; x++) {
							if(el.childNodes[x].type == 'input') {
								toggleDivStatus(el.childNodes[x], status);
							}
					}
				}
		}
} 

function ResetHasTrainPG()
{
	if(document.getElementById("optTrainingPG_0").checked)
	{
		//document.getElementById("hasTrainPG").className = "";
		//document.getElementById("hasTrainPG").className = "";
		//enable it
		if(document.getElementById("hasTrainPG")) {
			try {
				$("#hasTrainPG").unblock();
				setDisabled("hasTrainPG", false);		
			}
			catch(e) {
				setDisabled("hasTrainPG", false);		
			}
		}
		
		//toggleDivStatus(document.getElementById("operseasonally"), 'enable');
	}
	else
	{
		//document.getElementById("hasTrainPG").className = "hidden";
		if(document.getElementById("hasTrainPG")) {
			try {
				$("#hasTrainPG").unblock();
				$("#hasTrainPG").block({
						message: '<p>Your business does not have a training program for employees.</p>',  
						css: { border: '3px solid #cccccc' }
				});
				setDisabled("hasTrainPG", true);				
			}
			catch(e) {
				setDisabled("hasTrainPG", true);									
			}
		}
	}
	
}

function ResetHasFinancialSupport()
{
	if(document.getElementById("optFinancialSupport_0").checked)
	{
		document.getElementById("hasFinancialSupport").className = "";
	}
	else
	{
		document.getElementById("hasFinancialSupport").className = "hidden";
					
	}
}

function GetIdValue(IdName)
{
	var Ret;
	try
	{
		Ret = document.getElementById(IdName);
		if(Ret)
		{
			if(Trim(Ret.value) == "")
			{
				return 0;
			}
			else
			{
				return parseInt(Ret.value);
			}
		}
		else
		{
			return 0;
		}
	}
	catch(e)
	{
		return 0;
	}
}

function ResetEmployeeTotal()
{
	//document.getElementById("txtPermanentTotalFT").value = GetIdValue("txtPermanentFTIn") + GetIdValue("txtPermanentFTOut");
//	document.getElementById("txtPermanentTotalPT").value = GetIdValue("txtPermanentPTIn") + GetIdValue("txtPermanentPTOut");
//	document.getElementById("txtSeasonalTotalFT").value = GetIdValue("txtSeasonalFTIn") + GetIdValue("txtSeasonalFTOut");	
//	document.getElementById("txtSeasonalTotalPT").value = GetIdValue("txtSeasonalPTIn") + GetIdValue("txtSeasonalPTOut");		
//
//	document.getElementById("txtInuitPermanentTotalFT").value = GetIdValue("txtInuitPermanentFTIn") + GetIdValue("txtInuitPermanentFTOut");
//	document.getElementById("txtInuitPermanentTotalPT").value = GetIdValue("txtInuitPermanentPTIn") + GetIdValue("txtInuitPermanentPTOut");
//	document.getElementById("txtInuitSeasonalTotalFT").value = GetIdValue("txtInuitSeasonalFTIn") + GetIdValue("txtInuitSeasonalFTOut");	
//	document.getElementById("txtInuitSeasonalTotalPT").value = GetIdValue("txtInuitSeasonalPTIn") + GetIdValue("txtInuitSeasonalPTOut");			
	
}

function ResetRequestStatus()
{
	var StatusApproved;
	var StatusDeclined;
	StatusApproved = document.getElementById("StatusApproved");
	if(StatusApproved)
	{
		if(StatusApproved.checked)
		{
			document.getElementById("CommitDate").className = "";
			document.getElementById("CommitDate").focus();
			document.getElementById("DeclinedReason").className = "hidden";
			document.getElementById("txtRequestStatus").value = "2";
		}
	}
	StatusDeclined =  document.getElementById("StatusDeclined");
	if(StatusDeclined)
	{
		if(StatusDeclined.checked)
		{
			document.getElementById("DeclinedReason").className = "";
			document.getElementById("CommitDate").className = "hidden";
			document.getElementById("txtRequestStatus").value = "3";
		}
	}
}

function ResetReasonBox()
{
	var HasReason;
	HasReason = document.getElementById("chkHasReason");
	if(HasReason)
	{
		if(HasReason.checked)
		{
			document.getElementById("txtReason").className = "";
			document.getElementById("txtReason").focus();
		}
		else
		{
			document.getElementById("txtReason").className = "hidden";
			document.getElementById("txtReason").value = "";
		}
	}
}

////////////////////////////////////////////////////////////////////////////////////////
// -------------------Photo Library Application function collection---------------------------
////////////////////////////////////////////////////////////////////////////////////////
function SetOptThumbnail(obj)
{
	var OptThumbnail;
	
	OptThumbnail = document.getElementById("OptThumbnail");
	if (OptThumbnail)
	{
		OptThumbnail.value = obj.value;
	}
}

function RefreshLightBox(obj)
{
	var LBList;
	LBList = document.getElementById("txtLBList");
	if(obj.checked)
	{
		LBList.value = LBList.value + "{" + obj.value + "}";
	}
	else
	{
		LBList.value = LBList.value.replace("{" + obj.value + "}","");
	}
}

function RefreshRequest(obj)
{
	var RQList;
	RQList = document.getElementById("txtRQList");
	if(obj.checked)
	{
		RQList.value = RQList.value + "{" + obj.value + "}";
	}
	else
	{
		RQList.value = RQList.value.replace("{" + obj.value + "}","");
	}
}

///////////////////////////////////////////////////////////////////////////
//   Add selected files to LightBox & Request List
///////////////////////////////////////////////////////////////////////////
function AddToRQ(addList)
{
	var LoginStatus;
	LoginStatus = getSession("LoginStatus");
	if(LoginStatus == "0" || Trim(LoginStatus) == "")
	{
		parent.location = "../asp/login.aspx";
		return;
	}	
	try
	{
		var result;
		result = "";
		if(Trim(addList)!="")
		{
			loadBar(1);		
			result = OpenUrl("addrequestfiles.aspx?rqlist=" + addList);
			if(result!="")
			{
				throw "Errors occured while adding request files to your basket.\n" + result;
			}
		}
		setTimeout("loadBar(0)",1000);
	}
	catch(e)
	{
		setTimeout("loadBar(0)",1000);
		alert(e);
	}
}


function AddSelectedToRQ()
{
	AddToRQ(document.getElementById("txtRQList").value);
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//  Add all files to LightBox & Request List
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function AddAllToRQ()
{
	AddToRQ(document.getElementById("txtALLRQList").value);
}

function SwitchPasswordBox()
{
	var  PasswordBox ,SwitchPaswodButton ;
	 PasswordBox = document.getElementById("PasswordBox");
	 SwitchPasswordButton = document.getElementById("btnSwitchPasswordBox");
	 if(PasswordBox.className == "hidden")
	 {
		 //SwitchPasswordButton.value = "Don't Change";
		 PasswordBox.className = "";
		 document.getElementById("txtChangePassword").value = "1";	
		 if(document.getElementById("txtOldPassword"))
		 {
			 document.getElementById("txtOldPassword").focus();
		 }
		 else
		 {
			 document.getElementById("txtPassword").focus();
		 }
	 }
	 else
	 {
		 //SwitchPasswordButton.value = "Change";
		 PasswordBox.className = "hidden";
 		 document.getElementById("txtChangePassword").value = "0";
		 if(document.getElementById("txtOldPassword"))
		 {
			 document.getElementById("txtOldPassword").value = "";
		 }
		 document.getElementById("txtPassword").value = "";
		 document.getElementById("txtPasswordVerify").value = "";
	 }
}

function toggle_listing_card( toggle_ctrl ) {
	if( toggle_ctrl ) {
		var toggle_bid = toggle_ctrl.getAttribute( "toggle_bid" );
		var toggle_status = toggle_ctrl.getAttribute( "toggle_status" );
		if( toggle_bid ) {
			var card_moreinfo = document.getElementById( "listing_card_moreinfo_" + toggle_bid );
			toggle_status = toggle_status == "hidden" ? "show" : "hidden";
			
			switch( toggle_status ) {
				case "hidden":
					$( card_moreinfo ).hide();	
					//toggle_ctrl.innerHTML = "+ more information";
					$(toggle_ctrl).removeClass("list_expand");
					$(toggle_ctrl).addClass("list_abb");
					break;
				case "show":
					$( card_moreinfo ).show();	
					//toggle_ctrl.innerHTML = "- less information";
					$(toggle_ctrl).removeClass("list_abb");
					$(toggle_ctrl).addClass("list_expand");
					break;
			}
			toggle_ctrl.setAttribute( "toggle_status", toggle_status );
			
		}
	}
}


/* side b ar menu highlight */
$(document).ready(
	function highlight_nav_bar() {
		var nav_bars =  $(".side_nav_bar").get();
		for( var nav_idx in nav_bars) {
			var nav_bar = nav_bars[nav_idx];
			$(nav_bar).removeClass("nav_bar_highlight");
			if(nav_bar.getAttribute("highlight_pattern")) {
				var highlight_patterns = nav_bar.getAttribute("highlight_pattern");
				var exclude_patterns = nav_bar.getAttribute("exclude_pattern");
				var currentUrl = window.location.toString().toLowerCase();
				if(highlight_patterns) {
					highlight_patterns = highlight_patterns.toLowerCase().split(",");
				}
				else {
					highlight_patterns = [];
				}
				
				if(exclude_patterns) {
					exclude_patterns = exclude_patterns.toLowerCase().split(",");
				}
				else {
					exclude_patterns = [];
				}
				
				
				if( check_url_pattern(highlight_patterns, currentUrl) == true && check_url_pattern(exclude_patterns, currentUrl) == false) {
					$(nav_bar).addClass("nav_bar_highlight");
				}
				
//				for(var pattern_idx in highlight_patterns) {
//					var highlight_pattern = highlight_patterns[pattern_idx];
//					if(currentUrl.indexOf(highlight_pattern) >= 0) {
//						$(nav_bar).addClass("nav_bar_highlight");
//					}
//				}

			}
		}
	}
);

function check_url_pattern(patterns, url) {
	if(patterns) {
		for(var pattern_idx in patterns) {
			var check_pattern = patterns[pattern_idx];
			if( url.indexOf( check_pattern ) >= 0 ) {
				return true;
			}
		}
	}
	return false;
	
}
