﻿// JScript File

var downImage = "Includes/Images/DOWN.jpg";
var upImage = "Includes/Images/UP.jpg";

var collapseAll = "Includes/Images/collapseAll.gif";
var expandAll = "Includes/Images/expandAll.gif";

var strMaximize = "Maximize";
var strMinimize = "Minimize";




function KeyCheck(e)
{
    var KeyID = (window.event) ? event.keyCode : e.keyCode;
    var evt = (window.event) ? event : e;
    var ctrl = evt.srcElement ? evt.srcElement : evt.target;
    if(KeyID == 13 && ctrl.type != 'textarea')
    {
        if(btnOnSubmitClick)
        {
            btnOnSubmitClick();
        }
    }
}
    

function img_onclick(tblName, imgName) 
{   
    var tbl = document.getElementById(tblName);
    if(tbl.style.display == "none")
    {
        tbl.style.display = 'block';
        tbl.style.width = "100%";
        var img = document.getElementById(imgName);
        img.src = upImage;
        img.alt = strMinimize;
        
    }
    else
    {
        tbl.style.display = 'none';
        var img = document.getElementById(imgName);
        img.src = downImage;
        img.alt = strMaximize;
    }
    return true;
}

function toggleAllItems(imgID, lblToggleAll, arrElements, arrImgNames)
{
    var img = document.getElementById(imgID);
    var lblToggle = document.getElementById(lblToggleAll);
    if(img != null)
    {
        if(img.alt == 'Collapse All')
        {
            //collapse all
            img.src = expandAll;
            img.alt = 'Expand All';
            lblToggle.innerHTML = 'Expand All';
            for(var i=0; i<arrElements.length; i++)
            {
                if( document.getElementById(arrImgNames[i]).alt == strMinimize)  
                    img_onclick(arrElements[i],arrImgNames[i]);
            }
        }
        else
        {
            //expand all
            img.src = collapseAll;
            img.alt = 'Collapse All';
            lblToggle.innerHTML = 'Collapse All';
            for(var i=0; i<arrElements.length; i++)
            {
                if( document.getElementById(arrImgNames[i]).alt == strMaximize)  
                    img_onclick(arrElements[i],arrImgNames[i]);
            }
        }
    }
}

function PerformPageValidate(validationGroups, validationSummaries)
{
        //Validate all Page sections
        var sectionState = new Array(validationGroups.length);
       
        for(var i=0;i<validationGroups.length;i++)
        {
            sectionState[i] = Page_ClientValidate(validationGroups[i]);
        }
        
        //Display all the invalid Sections
        
        for(var i=0;i<sectionState.length;i++)
        {
            if(sectionState[i] == true)
            {
                document.getElementById(validationSummaries[i]).style.display = 'none';
            }
            else
            {
                document.getElementById(validationSummaries[i]).style.display = 'block';
            }
        }
        

        for(var i = 0; i < Page_Validators.length; i++ )
        {
           ValidatorValidate(Page_Validators[i]);
        }
       
        //If all Sections are valid Perform Postback
        
        var retVal = true;
        
        for(var i=0;i<sectionState.length;i++)
        {
            if(sectionState[i] == false)
            {
                retVal = false;
            }
        }
        return retVal;
}

function textboxMultilineMaxNumber(txt,maxLen,event)
{
    try
    {
        if(txt.value.length > (maxLen-1))
        {
            if(event.keyCode==8 ||   event.keyCode==9    || event.keyCode==37  || event.keyCode==38 || event.keyCode==39 || event.keyCode==40 || event.keyCode==46)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
    }
    catch(e){}
}

// restrict manual entry in file upload 
function AddAlertMessage(txt,maxLen,event,type)
{
try{

    if(txt.value.length > (maxLen-1))
     {
     if(event.keyCode==8 ||   event.keyCode==9    || event.keyCode==37  || event.keyCode==38 || event.keyCode==39 || event.keyCode==40 || event.keyCode==46)
     {
     return true;
     }
    else
     {
      //---------------------------------
        //BUG ID: Solut00080911 
        //Fixed By: Raman Bansal
        //Fixed On: 12 Feb, 2008
        //Desc: added message for image also
        if(type=='D')
            alert("Please select a document through browse button");
        else
            alert("Please select an image through browse button");
//     event.keyCode=0;
     return false;
     }
     }
    }
   catch(e){}
}

function fillPhoneData(phoneAreaCode, phoneFirst, phoneLast, phoneExt, hiddenPhoneControl)
{
    var ctrlphoneAreaCode = document.getElementById(phoneAreaCode);
    var ctrlphoneFirst = document.getElementById(phoneFirst);
    var ctrlphoneLast = document.getElementById(phoneLast);
    var ctrlhiddenPhoneControl = document.getElementById(hiddenPhoneControl);
    var ctrlphoneExt;
    if(phoneExt != '')
    {
        //If extension is present
        ctrlphoneExt = document.getElementById(phoneExt);
        if(ctrlphoneAreaCode.value == "" && ctrlphoneFirst.value == "" && 
            ctrlphoneLast.value == "" && ctrlphoneExt.value == "")
        {
            ctrlhiddenPhoneControl.value = "";
        }
        else
        {
            ctrlhiddenPhoneControl.value = ctrlphoneAreaCode.value + '-' + ctrlphoneFirst.value + '-' + ctrlphoneLast.value + 'ext' + ctrlphoneExt.value;
        }
    }
    else
    {
        //If no extension is present
        if(ctrlphoneAreaCode.value == "" && ctrlphoneFirst.value == "" && 
            ctrlphoneLast.value == "")
        {
            ctrlhiddenPhoneControl.value = "";
        }
        else
        {
            ctrlhiddenPhoneControl.value = ctrlphoneAreaCode.value + '-' + ctrlphoneFirst.value + '-' + ctrlphoneLast.value;
        }
    }
}

function imposeMaxLength(Object, MaxLen)
{
    var clipData = "";
    try
    {
        clipData = window.clipboardData.getData('Text');
    }
    catch(ex)
    {}
    if(Object.value.length + clipData.length <= MaxLen)
        return true;
    else
        {
             alert("Cannot paste data in the field beyond " + MaxLen +" chars.");
            return false;
        }
    //return (Object.value.length + clipData.length < MaxLen);
}


//Validates all Address controls to verify that complete address if filled.
function validateMultipleFields(arrControls, arrValues, errCntrl)
{
    var arrValid = new Array(arrControls.length);
    var sum;
    for(var i=0;i<arrControls.length;i++)
    {
        var cntrl = document.getElementById(arrControls[i]);
        if(cntrl.type == 'select-one')
        {
            //If Control is a combobox then check its SelectedIndex
            if(cntrl.selectedIndex >0) arrValid[i] = 1;
            else arrValid[i] = 0;
        }
        else
        {
            //Else check control's value
            if(cntrl.value != '') arrValid[i] = 1;
            else arrValid[i] = 0;
        }
    }
    sum = 0;
    for(var i=0;i<arrValid.length;i++)
    {
        sum +=arrValid[i];
    }
    if(sum == 0 || sum == arrValid.length)
    {
        //All items have value and hence is valid
        
        for(var i=0;i<arrValid.length;i++)
        {
            var ctrl = document.getElementById(arrValues[i]);
            if(ctrl && ctrl.tagName == 'LABEL')
            {
                ctrl.style.display = 'none';
            }
        }
        return true;
    }
    {
        //Some controls are not populated and hence not valid
        if(errCntrl)
        {
            errCntrl.innerText = '';
            errCntrl.innerHTML = '';
        }
        for(var i=0;i<arrValid.length;i++)
        {
            var ctrl = document.getElementById(arrValues[i]);
            if(arrValid[i] == 0)
            {
                if(ctrl)
                {
                    ctrl.style.display = 'inline';
                }
            }
            else if(arrValid[i] != 0)
            {
                if(ctrl && ctrl.tagName == 'LABEL')
                {
                    ctrl.style.display = 'none';
                }
            }
        }
        return false;
    }
}
