﻿document.write('<scr'+'ipt type="text/javascript" src="'+JSLibraryLocation+'/Common.js"></scr'+'ipt>');

function CheckCookies()
{
 var cookieEnabled=(navigator.cookieEnabled)? true : false;

    //if navigator,cookieEnabled is not supported
    if (typeof navigator.cookieEnabled=="undefined" && !cookieEnabled){ 
        document.cookie="testcookie";
        cookieEnabled=(document.cookie.indexOf("testcookie")!=-1)? true : false;
    }

    if (!cookieEnabled)
    {
      alert('Cookies are disabled for this browser. \nTo activate \'Remember Me\' functionality, please enable cookies.');
      return false;   
    }
    return true;
 }
         
         
function KeyDownHandler(e, btn)
{  
    var eventInstance = window.event ? event : e;
    
    if(window.event) // IE
	{
        if (eventInstance.keyCode == 13)  
        {    
            eventInstance.returnValue = false;    
            eventInstance.cancel = true;    
            var obj = document.getElementById(btn);    
            obj.click();  
            return false;
        }
	}
    else if(eventInstance.which) // Netscape/Firefox/Opera
	{
        if (eventInstance.which == 13)  
        {    
            eventInstance.returnValue = false;    
            eventInstance.preventDefault();
            eventInstance.cancelBubble = true;
            var obj = document.getElementById(btn);
            obj.click();
            return false;
        }
	}
}

function hideMessageDiv()
{
    var messageDivToHide = document.getElementById("messageDiv");
    if(messageDivToHide != null && typeof(messageDivToHide) != "undefined")
        messageDivToHide.innerHTML = "";
}

function hideProgressBarDiv()
{
    var ProgressBarDiv = document.getElementById("progressBar");
    if(ProgressBarDiv != null && typeof(ProgressBarDiv) != "undefined")
        ProgressBarDiv.innerHTML = "";
}

function showProgressBarDiv()
{
    var ProgressBarDiv = document.getElementById("progressBar");
    if(ProgressBarDiv)
    {
        var mainTable = document.getElementById('tblMain');
        if(!mainTable)
            throw "tblMain not found";
            
	    var divPB = CreateAndShowProgressBarDiv();
	    
	    ProgressBarDiv.innerHTML = divPB;
    }
    else
    {
        ProgressBarDiv.innerHTML = "";
    }
}

function CreateAndShowProgressBarDiv()
{
    var width = getClientWidth();
    var height = getClientHeight();
    var imgTop = height/2 - 50/2;
    var imgLeft = width/2 - 150/2;
    
    var Div = "<img id=\"newWAIT\" height=\"50\" width=\"150\" src=\"../../Images/new_wait.gif\" alt='Processing . . .' style=\"position:relative; z-index:10001; top:" + imgTop + "px; left:" + imgLeft + "px;\" ></img>";
    Div += "<div style=\"border: Solid 0px; background-color: white; -moz-opacity: 0.5; filter: alpha(opacity: 50); opacity: 0.5;  height:"+height+"px; width:"+width+"px; z-index:10000; top: 0; left: 0; position:absolute\" id=\"divProgressBar\">";
    Div += "</div>";
    return Div;
}

function showErrorMsg(msg)
{
    hideMessageDiv();
    var messageDiv = document.getElementById("messageDiv");
    var msgArea = document.getElementById('msgArea');
    
    if(!messageDiv || !msgArea)
    {
        var mainTable = document.getElementById('tblMain');
        if(!mainTable)
            throw "tblMain not found";
            
	    var errstr = CreateErrorMessageDiv(msg);
	    
        messageDiv.innerHTML = errstr;
    }
    else
    {
        msgArea.innerHTML = msg;
    }
}

function showInfoMsg(msg)
{
    hideMessageDiv();
    var messageDiv = document.getElementById("messageDiv");
    var msgArea = document.getElementById('msgArea');
    
    if(!messageDiv || !msgArea)
    {
        var mainTable = document.getElementById('tblMain');
        if(!mainTable)
            throw "tblMain not found";
            
	    var errstr = CreateInfoMessageDiv(msg);
	    
        messageDiv.innerHTML = errstr;
    }
    else
    {
        msgArea.innerHTML = msg;
    }
}

function CreateErrorMessageDiv(msg)
{
    var errMessageDiv = "<div id=\"msgAreaTop\">";
    errMessageDiv += "<table id=\"error\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" width=\"100%\">";
    errMessageDiv += "<tr>";

    errMessageDiv += "<td width=\"49\"><img id=\"t1\" height=\"30\" width=\"50\" src=\"" + imgpath + "/stop_1.gif\"></td>";
    errMessageDiv += "<td class=\"infobarerr\" id=\"t2\" width=\"948\" align=\"left\"><div id=\"msgArea\">" + msg + "</div></td>";
    errMessageDiv += "<td width=\"15\"><img id=\"t3\" height=\"30\" width=\"17\" src=\"" + imgpath + "/stop_3.gif\"></td>";

    errMessageDiv += "</tr>";
    errMessageDiv += "</table>";
    errMessageDiv += "</div>";    
    
    return errMessageDiv;
}

function CreateInfoMessageDiv(msg)
{
    var infoMessageDiv = "<div id=\"msgAreaTop\">";
    infoMessageDiv += "<table id=\"error\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" width=\"100%\">";
    infoMessageDiv += "<tr>";

    infoMessageDiv += "<td width=\"49\"><img id=\"t1\" height=\"30\" width=\"50\" src=\"" + imgpath + "/info_1.gif\"></td>";
    infoMessageDiv += "<td class=\"infobar\" id=\"t2\" width=\"948\" align=\"left\"><div id=\"msgArea\">" + msg + "</div></td>";
    infoMessageDiv += "<td width=\"15\"><img id=\"t3\" height=\"30\" width=\"17\" src=\"" + imgpath + "/info_3.gif\"></td>";

    infoMessageDiv += "</tr>";
    infoMessageDiv += "</table>";
    infoMessageDiv += "</div>";    
    
    return infoMessageDiv;
}

function validateEmailId(elementValue)
{
    //http://www.breakingpar.com/bkp/home.nsf/Doc!OpenNavigator&87256B280015193F87256C40004CC8C6
    var emailPattern = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[(2([0-4]\d|5[0-5])|1?\d{1,2})(\.(2([0-4]\d|5[0-5])|1?\d{1,2})){3} \])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
    var result = emailPattern.test(elementValue); 
    
    var iChars = '"~`!#%&$={}[];:?/<>,_-'; 
    
    for (var i = 0; i < elementValue.length; i++) 
    {
  	    if (iChars.indexOf(elementValue.charAt(i)) != -1) 
  	    {
  	        result = false;
  	    }
    }
    return result;
} 


function validateMessageText(replyMesgTextId, MESSAGE_TEXT_REQUIRED, MESSAGE_TEXT_LIMIT)
{
    var mesgText = document.getElementById(replyMesgTextId);
    var msgValue = mesgText.value;
    msgValue = msgValue.replace(/^\s+/g, "").replace(/\s+$/g, "");
    
	if(msgValue.length <= 0){	
		showErrorMsg(MESSAGE_TEXT_REQUIRED);
	//	document.getElementById(replyMesgTextId).focus();
		return false;
	}
	
	if(mesgText.value.length > 5000){	
		showErrorMsg(MESSAGE_TEXT_LIMIT);
	//	document.getElementById(replyMesgTextId).focus();
		return false;
	}
	return true;
}

function IsEmptyControl(controlId,VALUE_REQUIRED_MSG)
{
    
    var control = document.getElementById(controlId);
   	if(control.value.length <= 0){	
		showErrorMsg(VALUE_REQUIRED_MSG);
		document.getElementById(controlId).focus();
		return false;
	}
	return true;
}

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(controlId,INVALID_DATE){
    var control = document.getElementById(controlId);
    if(control.value.length > 0){	
        var dtStr = control.value;
       
	    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)
	    {
		    return InvalidDateMessage(control,INVALID_DATE);
	    }
	    if (strMonth.length<1 || month<1 || month>12){
		    return InvalidDateMessage(control,INVALID_DATE);
	    }
	    if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		    return InvalidDateMessage(control,INVALID_DATE);
	    }
	    if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		    return InvalidDateMessage(control,INVALID_DATE);
	    }
	    if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		    return InvalidDateMessage(control,INVALID_DATE);
	    }
	    }
return true
}

function InvalidDateMessage(control,INVALID_DATE)
{
    showErrorMsg(INVALID_DATE);
	control.focus();
	return false;
}


function isURL(s) {
 	var regexpHttp = /http:\/\/[A-Za-z0-9\.-]{3,}\.[A-Za-z]{3}/;
 	var regexpHttps = /https:\/\/[A-Za-z0-9\.-]{3,}\.[A-Za-z]{3}/;
 	return regexpHttp.test(s) || regexpHttp.test(s) ;
}

function IsComboSelected(controlName, MESSAGE)
{
    var control = document.getElementById(controlName); 
     if (control.value <= 0 )
     {
        showErrorMsg(MESSAGE);
        control.focus();
        return false;
     }
     return true;
}
