﻿//IsAllowPaging:to set the grid is paging or not.If allow paging set the value "1" else "0"
function __CheckAll(strChkID , strDgID , IsAllowPaging)
{
    for (var i=1; i<$('#'+strDgID)[0].rows.length - IsAllowPaging; i++) 
    {
        var cell = $('#'+strDgID)[0].rows[i].cells[0];
        //the CheckBox is not disabled then to set the value.
        if($(cell).find("INPUT")[0].disabled == false)
        {
            $(cell).find("INPUT")[0].checked = $('#'+strChkID).attr("checked")?true:false;
        }
    }
}
function __IsAllCheck(strDgID , IsAllowPaging)
{
    var bolAllCheck = true;
    for (var i=1; i<$('#'+strDgID)[0].rows.length - IsAllowPaging; i++) 
    {
        var cell = $('#'+strDgID)[0].rows[i].cells[0];
        if($(cell).find("INPUT")[0].checked == false)
        {
            bolAllCheck = false;
            break;
        }
    }
    try
    {
        var HeaderCell = $('#'+strDgID)[0].rows[0].cells[0];
        $(HeaderCell).find("INPUT")[0].checked = bolAllCheck;
    }catch(e){}
}
function __OtherUnChecked(strDgID , IsAllowPaging , event)
{
    //define IE or Firefox or other browser
    var objTarget = event.target?event.target:event.srcElement;   
    
    if(objTarget.checked == true)
    {
        for (var i=1; i<$('#'+strDgID)[0].rows.length - IsAllowPaging; i++)
        {
            var cell = $('#'+strDgID)[0].rows[i].cells[0];
            if($(cell).find("INPUT")[0] != objTarget)
            {
                $(cell).find("INPUT")[0].checked = false;
            }
        }
    }
}
function __GetParentElementByTagName(vobj,vstrTagName) {
    while (vobj.tagName!=vstrTagName.toUpperCase())
    {
        vobj=$(vobj).parent()[0];
        if(vobj==null) return;
    }
    return vobj;
}
//Highlight GridViewRow
function __HighlightGridRow(vobjRow, vblnHighLight){
    var _CurDataGrid;
    _CurDataGrid = __GetParentElementByTagName(vobjRow,"TABLE");
    var strCss = $(vobjRow).attr("__IClassName");

    if(strCss==null)
        $(vobjRow).attr("__IClassName",$(vobjRow).attr("className"));
    if (vblnHighLight){
        $(vobjRow).attr("className",$(_CurDataGrid).attr("HighlightRowClassName"));
    }else{
        if(vobjRow.rowIndex == $(_CurDataGrid).attr("SelectedIndex"))
        {
            $(vobjRow).attr("className",$(_CurDataGrid).attr("SelectedRowClassName"));
        }else{
            if(strCss==null)
            {
                $(vobjRow).attr("className",$(_CurDataGrid).attr("RowClassName"));
            }else{
                $(vobjRow).attr("className",strCss);
                $(vobjRow).removeAttr("__IClassName");
            }
        }
    }
}
//Select GridViewRow
var colorPreSelRow = "";
function __SelectGridRow(event)
{
    //define IE or Firefox or other browser
    var objTarget = event.target?event.target:event.srcElement;   
    var objRow = __GetParentElementByTagName(objTarget,"TR");
    var _CurDataGrid = __GetParentElementByTagName(objRow,"TABLE");
    if($(_CurDataGrid).attr("SelectedIndex")>-1)
    {
        var objPreSelRow=_CurDataGrid.rows[$(_CurDataGrid).attr("SelectedIndex")];
        var strCss = $(objPreSelRow).attr("__IClassName");
        if(strCss==null)
        {
            $(objPreSelRow).attr("className",$(_CurDataGrid).attr("RowClassName"));
        }else{
            $(objPreSelRow).attr("className",strCss);
            $(objPreSelRow).removeAttr("__IClassName");
        }
    }
    if($(objRow).attr("__IClassName")==null) $(objRow).attr("__IClassName",$(objRow).attr("className"));
    $(objRow).attr("className",$(_CurDataGrid).attr("SelectedRowClassName"));
    $(_CurDataGrid).attr("SelectedIndex",objRow.rowIndex);
    var intSelIdx =objRow.rowIndex;
    var intHRows = $(_CurDataGrid).attr("HeaderRows");
    if(intHRows!=null) intSelIdx=intSelIdx-intHRows;
    __CreateHiddenElement(_CurDataGrid.id + "_SelectedIndex",intSelIdx);
}
function __CreateHiddenElement(vstrName,vstrVal){
    var objElement = $('#' + vstrName);
    if(typeof(objElement)!="object")
    {
        var objElement=document.createElement("INPUT");
        objElement.setAttribute("name",vstrName);
        objElement.setAttribute("id",vstrName);
        objElement.setAttribute("type","hidden");
        objElement.style.display="none";
        objElement.value=vstrVal;
        document.forms[0].appendChild(objElement);
    }else{
        $(objElement).val(vstrVal);
    }
    return objElement;
}
function __PagerOnChange(GridViewClientName,event)
{
    //define IE or Firefox or other browser
    var objTarget;
    if(event != null)
        objTarget = event.target?event.target:event.srcElement;
    __doPostBack(GridViewClientName,'Page$' + $("#" + objTarget.id)[0].options[$("#" + objTarget.id)[0].selectedIndex].value);
}
if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();