﻿
// JScript File

document.oncontextmenu = disableRightClick;
window.onunload = disableRightClick;

function disableRightClick() {
    return false;
}


//onKeyDown
//function disableCutCopy(e) 
//{   
//    if(event.ctrlKey)
//    {        
//        event.returnValue = false;
//    }          
//} 

function disableCutCopy(e) {
    if (event.ctrlKey) {
        event.returnValue = false;
    }
    //    var s=event.altKey+"E"+"P";
    //   // alert(s);
    //    if(event.altKey)
    //    {
    //        return false;
    //    }             
}


//call back calling function
//call back calling function
function DoCallback(url, params, type) {
    //alert("z");
    //alert(params);  
    var xmlRequest;
    var pageUrl = url + "?callback=true&param=" + params + "&param1=" + type;

    if (window.XMLHttpRequest)//non-IE browser
    {
        xmlRequest = new XMLHttpRequest();
        xmlRequest.open("GET", pageUrl, false);
        xmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
        xmlRequest.send(null);
        return xmlRequest;
    }
    if (window.ActiveXObject)//IE-browser
    {
        xmlRequest = new ActiveXObject("Microsoft.XMLHTTP");
        xmlRequest.open("POST", pageUrl, false);
        xmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
        xmlRequest.send(null);
        return xmlRequest;
    }
}

//set callback combo value
function selectddlValue(ddlvalue, hiddenvalue, hiddenText) {
    var value = ddlvalue.value;
    hiddenvalue.value = value;
    hiddenText.value = ddlvalue.Text;
}


function checkLeapYear(year) {
    return (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) ? 1 : 0;
}

function CheckValidDates(Day, Month, Year) {


    var Valid = 1;
    // //day 30
    if ((parseInt(Month) == 4) || (parseInt(Month) == 6) || (parseInt(Month) == 9) || (parseInt(Month) == 11)) {
        if ((parseInt(Day) >= 1) && (parseInt(Day) <= 30))
        { Valid = 1; }
        else { Valid = 0; }
    }

    //day 31

    if ((parseInt(Month) == 1) || (parseInt(Month) == 3) || (parseInt(Month) == 5) || (parseInt(Month) == 7) || (parseInt(Month) == 8) || (parseInt(Month) == 10) || (parseInt(Month) == 12)) {
        if ((parseInt(Day) >= 1) && (parseInt(Day) <= 31))
        { Valid = 1; }
        else { Valid = 0; }
    }

    if (parseInt(Month) == 2)//check Febrary
    {
        if (!checkLeapYear(parseInt(Year))) {
            if ((parseInt(Day) >= 1) && (parseInt(Day) <= 28))
            { Valid = 1; }
            else { Valid = 0; }
        }
        else {
            if ((parseInt(Day) >= 1) && (parseInt(Day) <= 29))
            { Valid = 1; }
            else { Valid = 0; }
        }

    }
    return Valid;


}





function clientcallback(ddlsource, ddldesignation, type, formname) {

    var data = ddlsource.value;
    if (!data)
    { return; }

    var xmlRequest = DoCallback(formname, data, type);
    var result = xmlRequest.responseText;

    if (!result)
    { return; }

    var rows = result.split('|');
    ddldesignation.length = 0;

    for (var i = 0; i < rows.length - 1; ++i) {
        var values = rows[i].split('^');
        var option = document.createElement("OPTION");
        option.value = values[0]; // value
        option.innerHTML = values[1]; // Text 
        ddldesignation.appendChild(option);


    }
}



//Required field
function required(name, lbl, error) {

    try {
        lbl.innerHTML = "";
        if ((name.value == "") || (name.value == 0) || (name.value == -1))
        { lbl.innerHTML = error; }
    }

    catch (err) {
        alert(err.description);
    }
    chkAllValidation();

}
//Date of birth required


//   if(d.value==0 )
//   {
//     
//     return;
//   }
//   else{lbl.innerHTML="";}
//   if(m.value==0)
//   {
//     lbl.innerText="Select valid date of birth"; 
//     return;
//   }
//   else{lbl.innerHTML="";}
//   
//   if(y.value==0)
//   {
//     lbl.innerText="Select valid date of birth"; 
//     return;
//   }
//   else{lbl.innerHTML="";}
//   

//}

function chkoneCharge(name, e) {
    
    //  var IKeycode;
    //  var b=name.value;
    //    //Number and hypen only allowed
    //  IKeycode=e.keyCode;
    ////  alert(IKeycode);
    //  if ((IKeycode>=97 && IKeycode<=122)||(IKeycode>=65 && IKeycode<=90)|| (IKeycode>32 && IKeycode<46) || (IKeycode>57 && IKeycode<65) || (IKeycode>91 && IKeycode<97)  || IKeycode==32  ||IKeycode==47 ||(IKeycode>122 && IKeycode<=126))
    //     {   e.returnValue=false;}
    //        else
    //        {   if (b.length==0)
    //           {
    //             if(IKeycode==46)  
    //              { e.returnValue=false;}
    //            }
    //         } 
    //         
    //   var j=b.length;
    //   var i; 
    //     //only one hypen allowed.
    //for(i=0;i<j;i++)
    //{if((b.charCodeAt(i)==46)  && (IKeycode==46))
    // {e.returnValue=false; }
    //}
}
function chktName(name, e)
 {
    var IKeycode;
    var b = name.value;

    if (window.ActiveXObject) {
        IKeycode = event.keyCode;

        //Alphabet with (one whitespace)characters only allowed
        if ((IKeycode > 32 && IKeycode <= 39) || (IKeycode > 41 && IKeycode <= 46) || (IKeycode == 47) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 90 && IKeycode < 97) || (IKeycode > 47 && IKeycode <= 57) || (IKeycode == 40) || (IKeycode == 41) || (IKeycode == 27) || (IKeycode > 122 && IKeycode <= 126))
        { event.returnValue = false; }
        else {
            if (b.length == 0)//first character should be alphabet
            {
                if (IKeycode == 40 || IKeycode == 41 || IKeycode == 46 || IKeycode == 32)
                { event.returnValue = false; }
            }
        }


//        var j = b.length;
//        //only one Whitespace allowed.
//        for (var i = 0; i < j; i++) 
//        {
//            if ((b.charCodeAt(i) == 32) && (IKeycode == 32))
//             {
//                event.returnValue = false;
//                return;
//            }
//        }
    }
    else {
        IKeycode = e.charCode;
        //Alphabet with (one whitespace)characters only allowed
        if ((IKeycode > 32 && IKeycode <= 39) || (IKeycode > 41 && IKeycode <= 46) || (IKeycode == 47) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 90 && IKeycode < 97) || (IKeycode > 47 && IKeycode <= 57) || (IKeycode == 40) || (IKeycode == 41) || (IKeycode == 27) || (IKeycode > 122 && IKeycode <= 126)) {
            e.preventDefault();
            e.stopPropagation();
        }
        else {
            if (b.length == 0)//first character should be alphabet
            {
                if (IKeycode == 40 || IKeycode == 41 || IKeycode == 46 || IKeycode == 32) {
                    e.preventDefault();
                    e.stopPropagation();
                }
            }
        }


//        var j = b.length;
//        //only one Whitespace allowed.
//        for (var i = 0; i < j; i++)
        // {
//            if ((b.charCodeAt(i) == 32) && (IKeycode == 32))
//             {
//                e.preventDefault();
//                e.stopPropagation();
//                return;
//            }
   //     }

    }
}



function chkName(name, e) {
    var IKeycode;
    var b = name.value;

    if (window.ActiveXObject) {
        IKeycode = event.keyCode;

        //Alphabet with (one whitespace)characters only allowed
        if ((IKeycode > 32 && IKeycode <= 39) || (IKeycode > 41 && IKeycode <= 46) || (IKeycode == 47) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 90 && IKeycode < 97) || (IKeycode > 47 && IKeycode <= 57) || (IKeycode == 40) || (IKeycode == 41) || (IKeycode == 27) || (IKeycode > 122 && IKeycode <= 126))
        { event.returnValue = false; }
        else {
            if (b.length == 0)//first character should be alphabet
            {
                if (IKeycode == 40 || IKeycode == 41 || IKeycode == 46 || IKeycode == 32)
                { event.returnValue = false; }
            }
        }


        var j = b.length;
        //only one Whitespace allowed.
        for (var i = 0; i < j; i++) {
            if ((b.charCodeAt(i) == 32) && (IKeycode == 32)) {
                event.returnValue = false;
                return;
            }
        }
    }
    else {
        IKeycode = e.charCode;
        //Alphabet with (one whitespace)characters only allowed
        if ((IKeycode > 32 && IKeycode <= 39) || (IKeycode > 41 && IKeycode <= 46) || (IKeycode == 47) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 90 && IKeycode < 97) || (IKeycode > 47 && IKeycode <= 57) || (IKeycode == 40) || (IKeycode == 41) || (IKeycode == 27) || (IKeycode > 122 && IKeycode <= 126)) {
            e.preventDefault();
            e.stopPropagation();
        }
        else {
            if (b.length == 0)//first character should be alphabet
            {
                if (IKeycode == 40 || IKeycode == 41 || IKeycode == 46 || IKeycode == 32) {
                    e.preventDefault();
                    e.stopPropagation();
                }
            }
        }


        var j = b.length;
        //only one Whitespace allowed.
        for (var i = 0; i < j; i++) {
            if ((b.charCodeAt(i) == 32) && (IKeycode == 32)) {
                e.preventDefault();
                e.stopPropagation();
                return;
            }
        }

    }
}
//Chk address 
function chkAddress(name, e) {
    var IKeycode;
    if (window.ActiveXObject) {
        IKeycode = event.keyCode;
        //only Alphabet 
        if ((IKeycode > 32 && IKeycode <= 39) || (IKeycode > 41 && IKeycode <= 47) || (IKeycode > 58 && IKeycode < 65) || (IKeycode > 90 && IKeycode < 97) || (IKeycode == 27) || (IKeycode > 122 && IKeycode <= 126))
        { event.returnValue = false; }
    }
    else {
        IKeycode = e.charCode;
        //only Alphabet 
        if ((IKeycode > 32 && IKeycode <= 39) || (IKeycode > 41 && IKeycode <= 47) || (IKeycode > 58 && IKeycode < 65) || (IKeycode > 90 && IKeycode < 97) || (IKeycode == 27) || (IKeycode > 122 && IKeycode <= 126)) {
            e.preventDefault();
            e.stopPropagation();
        }
    }
}

//Check number validation 
function chkNumberonly(e) {
    var IKeycode;
    if (window.ActiveXObject) {        
        IKeycode = event.keyCode;
        //  alert(IKeycode);
        if ((IKeycode >= 97 && IKeycode <= 122) || (IKeycode >= 65 && IKeycode <= 91) || (IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 91 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126))
        { event.returnValue = false; }

    }
    else {
        IKeycode = e.charCode;
        if ((IKeycode >= 97 && IKeycode <= 122) || (IKeycode >= 65 && IKeycode <= 91) || (IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 91 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126)) {
            e.preventDefault();
            e.stopPropagation();
        }
    }
}


//Check number validation 
function chkAlbhaNumeric(e) {
    var IKeycode;
    if (window.ActiveXObject) {
        IKeycode = event.keyCode;
        //  alert(IKeycode);
        if ((IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 90 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126))
        { event.returnValue = false; }

    }
    else {
        IKeycode = e.charCode;
        //  alert(IKeycode);
        if ((IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 90 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126)) {
            e.preventDefault();
            e.stopPropagation();
        }
    }



}

//Added By Kavitha for No of Pages textbox
//suppress the 0 for the first time
function chkpages(name, e) {
    //alert(window.ActiveXObject);   
    var IKeycode;
    if (window.ActiveXObject) {
        //alert("a");    
        var b = name.value;
        IKeycode = event.keyCode;
        if (b.length == 0)//first
        {
            if (IKeycode == 48) {
                event.returnValue = false;
            }
            else {
                if ((IKeycode >= 97 && IKeycode <= 122) || (IKeycode >= 65 && IKeycode <= 91) || (IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 91 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126)) {
                    event.returnValue = false;
                }
            }
        }
        else {
            if ((IKeycode >= 97 && IKeycode <= 122) || (IKeycode >= 65 && IKeycode <= 91) || (IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 91 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126)) {
                event.returnValue = false;
            }
        }
    }
    else {
        var b1 = name.value;
        IKeycode = e.charCode;

        if (b1.length == 0)//first
        {
            //alert(IKeycode);
            if (IKeycode == 48) {
                e.preventDefault();
                e.stopPropagation();
            }
            else {
                if ((IKeycode >= 97 && IKeycode <= 122) || (IKeycode >= 65 && IKeycode <= 91) || (IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 91 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126)) {
                    e.preventDefault();
                    e.stopPropagation();
                }
            }
        }
        else {
            if ((IKeycode >= 97 && IKeycode <= 122) || (IKeycode >= 65 && IKeycode <= 91) || (IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 91 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126)) {
                e.preventDefault();
                e.stopPropagation();
            }
        }
    }
}

//Check number validation 
function chkPhone(name, e) {
    var IKeycode;
    if (window.ActiveXObject) {
        IKeycode = event.keyCode;
        //  alert(IKeycode);
        if ((IKeycode >= 97 && IKeycode <= 122) || (IKeycode >= 65 && IKeycode <= 91) || (IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 91 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126))
        { event.returnValue = false; }

    }
    else {
        IKeycode = e.charCode;
        //  alert(IKeycode);
        if ((IKeycode >= 97 && IKeycode <= 122) || (IKeycode >= 65 && IKeycode <= 91) || (IKeycode > 32 && IKeycode < 46) || (IKeycode > 57 && IKeycode < 65) || (IKeycode > 91 && IKeycode < 97) || IKeycode == 32 || IKeycode == 46 || IKeycode == 47 || (IKeycode > 122 && IKeycode <= 126)) {
            e.preventDefault();
            e.stopPropagation();
        }
    }
}

//Email validations

function EmailRegularExp(name, lbl, error)//regular expression for email
{

    var s = name.value;
    lbl.innerHTML = "";
    var p = new RegExp("\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");
    var result = p.exec(s);
    if (result == null)
    { lbl.innerHTML = error; }
}

function EmailRegularExpAlter(name, lbl, error)//regular expression for email
{
    lbl.innerText = "";
    var s = name.value;
    if (s != "") {
        lbl.innerText = "";
        var p = new RegExp("\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");
        var result = p.exec(s);
        if (result == null)
        { lbl.innerText = error; }
    }
}


function rightTrim(strValue) {
    var objRegExp = /^([\w\W]*)(\b\s*)$/;
    if (objRegExp.test(strValue)) {
        strValue = strValue.replace(objRegExp, '$1');
    }
    return strValue;
}

function leftTrim(strValue) {
    var objRegExp = /^(\s*)(\b[\w\W]*)$/;
    if (objRegExp.test(strValue)) {
        strValue = strValue.replace(objRegExp, '$2');
    }
    return strValue;
}

function trimAll(strValue) {
    var objRegExp = /^(\s*)$/;
    if (objRegExp.test(strValue)) {
        strValue = strValue.replace(objRegExp, '');
        if (strValue.length == 0)
            return strValue;
    }

    //check for leading & trailing spaces
    objRegExp = /^(\s*)([\W\w]*)(\b\s*$)/;
    if (objRegExp.test(strValue)) {

        strValue = strValue.replace(objRegExp, '$2');
    }
    return strValue;
}



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 strDay = dtStr.substring(0, pos1)
    var strMonth = 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 "The date format should be : dd/mm/yyyy"
    }
    if (strMonth.length < 1 || month < 1 || month > 12) {
        return "Please enter a valid month"
    }
    if (strDay.length < 1 || day < 1 || day > 31 || (month == 2 && day > daysInFebruary(year)) || day > daysInMonth[month]) {
        return "Please enter a valid day"
    }
    if (strYear.length != 4 || year == 0 || year < minYear || year > maxYear) {
        return "Please enter a valid 4 digit year between " + minYear + " and " + maxYear
    }
    if (dtStr.indexOf(dtCh, pos2 + 1) != -1 || isInteger(stripCharsInBag(dtStr, dtCh)) == false) {
        return "Please enter a valid date"
    }
    return ""
}


  function IsAllowChar(e)
        {                              
            if(window.event.keyCode)
            {                         
                key = window.event.keyCode;            
                 
                if(key >= 47 && key <= 57)
                {                
                
                return true;
                }            
                return false;
            }
            else if(e.which)       
            {
                key = e.which;                    
                if(key >= 47 && key <= 57)
                {                
                return true;
                }            
                return false;                    
            }
        }            








