﻿var selRow = 0;
var antSelRow = 0;
var color = "f1f0ef";
var grptmp = 0;
var numCells = 0;
var colorUltSel = "";
var validCols = new Array();

jQuery(document).ready(function() {
    // [Lang ES] --------------

    // [end Lang CA] ----------

      //    alert($('.ui-jqgrid-hdiv').width(525));
    //    alert($('.ui-jqgrid-hbox').width(525));
    //    $('.ui-jqgrid-hdiv').width(500);
    //    $('.ui-jqgrid-hbox').width(500);

});


var columnsNames_ES = ['Cargando datos...', 'Pos', 'Grp', 'Jugador', 'Nº Equipo', 'Equipo', 'Club', 'Hex', 'Sexo', 'Edad', 'Hpu', 'v1', 'v2', 'v3', 'v4', 'Total'];
// [end Lang ES] ----------
// [Lang CA] --------------
var columnsNames_CA = ['Carregant dades...', 'Pos', 'Grp', 'Jugador', 'Nº Equip', 'Equip', 'Club', 'Hex', 'Sexe', 'Edat', 'Hpu', 'v1', 'v2', 'v3', 'v4', 'Total'];

var model =   [
                { index: 'pos', name: 'pos', width: 40, align: 'Center', label: eval('columnsNames_' + lang)[1], sortable: false, hidden: true },
                { index: 'grp', name: 'grp', width: 40, align: 'Center', label: eval('columnsNames_' + lang)[2], sortable: false, hidden: true },
                { index: 'nom', name: 'nom', width: 225, align: 'Left', label: eval('columnsNames_' + lang)[3], sortable: false, hidden: true },
                { index: 'eq', name: 'eq', width: 40, align: 'Left', label: eval('columnsNames_' + lang)[4], sortable: false, hidden: true },
                { index: 'nomeq', name: 'nomeq', width: 130, align: 'Left', label: eval('columnsNames_' + lang)[5], sortable: false, hidden: true },
                { index: 'club', name: 'club', width: 130, align: 'Left', label: eval('columnsNames_' + lang)[6], sortable: false, hidden: true },
                { index: 'hex', name: 'hex', width: 40, align: 'Center', label: eval('columnsNames_' + lang)[7], sortable: false, hidden: true },
                { index: 'sex', name: 'sex', width: 40, align: 'center', label: eval('columnsNames_' + lang)[8], sortable: false, hidden: true },
                { index: 'eda', name: 'eda', width: 40, align: 'center', label: eval('columnsNames_' + lang)[9], sortable: false, hidden: true },
                { index: 'hpu', name: 'hpu', width: 40, align: 'center', label: eval('columnsNames_' + lang)[10], sortable: false, hidden: true },
                { index: 'v1', name: 'v1', width: 40, align: 'center', label: eval('columnsNames_' + lang)[11], sortable: false, hidden: true },
                { index: 'v2', name: 'v2', width: 40, align: 'center', label: eval('columnsNames_' + lang)[12], sortable: false, hidden: true },
                { index: 'v3', name: 'v3', width: 40, align: 'center', label: eval('columnsNames_' + lang)[13], sortable: false, hidden: true },
                { index: 'v4', name: 'v4', width: 40, align: 'center', label: eval('columnsNames_' + lang)[14], sortable: false, hidden: true },
                { index: 'tot', name: 'tot', width: 40, align: 'center', label: eval('columnsNames_' + lang)[15], sortable: false, hidden: true }
            ];


function loadGrid() {

    $("#grid").jqGrid(
    
    

        {
            datatype: function() {},
            jsonReader: //Set the jsonReader to the JQGridJSonResponse squema to bind the data.
            {
            root: "Items",
            page: "CurrentPage",
            total: "PageCount",
            records: "RecordCount",
            repeatitems: true,
            cell: "Row",
            id: "ID"
        },

        colModel: model//Columns
         ,

        pager: "#pager", //Pager.

        loadui: 'enable',
        loadtext: eval('columnsNames_' + lang)[0],
        
        recordtext: "{0} - {1} de {2} elementos",
                recordtext: "{2} elementos",
                emptyrecords: 'No hay resultados',
                pgtext: 'Pág: {0} de {1}', //Paging input control text format.
        
        //pgtext: '',
        pgbuttons: true,
        pginput: false,
        footerrow: false,
        rowNum: "0", // PageSize.
        rowList: [], //Variable PageSize DropDownList. 
        viewrecords: true, //Show the RecordCount in the pager.
        multiselect: false,
        sortname: "ord", //Default SortColumn
        sortorder: "asc", //Default SortOrder.
        width: "776",
        height: "463",
        caption: "",
        hiddengrid: false,
        loadonce: true,
        shrinkToFit: false,
        gridComplete: function() {
            if ($("#grid").getGridParam("rowNum") != $("#grid").getGridParam("records"))
                $("#grid").setGridParam({ rowNum: $("#grid").getGridParam("records") }).trigger("reloadGrid");

            if ($("#grid").getGridParam("records") == 0)
                $("#grid").hide();

            restoreSelRow();

            if (selRow != 0) {
                $("#grid").setSelection(selRow, false);
            }
        },
        afterInsertRow: function(rowID, rowData, rowElem) {
            var grp = rowElem[1];
            if (grptmp != grp) {
                grptmp = grp;

                if (color == "f1f0ef")
                    color = "#ffffff";
                else
                    color = "f1f0ef";

            }

            var i = 0;
            numCells = rowElem.length;
            for (i = 0; i < rowElem.length; i++) {
                $("#grid").setCell(rowID, i, '', { 'background-color': color }, {});
            }


        },
        onSelectRow: function(rowId) {
            $("#grid").resetSelection();

            if (selRow != 0) {
                $("#grid").setSelection(selRow, false);
            }
        }
    }).navGrid("", { edit: false, add: false, search: false, del: false });



}




function gridReload() {

    jQuery("#grid").trigger("reloadGrid");
}

function selectPlayer() {

    $.ajax(
                {
                    url: url + "Torneos/DetalleTorneo.aspx/GetJugador", //PageMethod

                    data: "{'pSortColumn':'" + $('#grid').getGridParam("sortname") +
                    "','pSortOrder':'" + $('#grid').getGridParam("sortorder") +
                    "','pNameFilter':'" + $("#NombreJug").val() +
                    "','pClasif':'" + numeroCabecera + "'}", //PageMethod Parametros de entrada

                    dataType: "json",
                    type: "post",
                    contentType: "application/json; charset=utf-8",
                   
                    complete: function(jsondata, stat) {
                        if (stat == "success") {
                            var resultData = eval('(' + jsondata.responseText + ')')
                            antSelRow = selRow;
                            selRow = resultData.d;
                            $('#lnkSearch').attr('href', '#' + selRow);
                            $("#grid").setSelection(selRow, false);
                            restoreSelRow();
                        }
                        else
                            alert(JSON.parse(jsondata.responseText).Message);
                    }
                    
                });
 }


function restoreSelRow() {
                var i = 0;
                if (colorUltSel != "") {
                    if (antSelRow != 0) {
                        for (i = 0; i < numCells; i++) {
                            $("#grid").setCell(antSelRow, i, '', { 'background-color': colorUltSel }, {});
                        }
                    }
                }

                var col = $("#grid #" + selRow + " td:first").css('background-color');
                if (col != 'transparent')
                    colorUltSel = col;

                i = 0;
                for (i = 0; i < numCells; i++) {
                    $("#grid").setCell(selRow, i, '', { 'background-color': 'transparent' }, {});
                }            
            
            }





 function dataLoad() {


     $.ajax(
                {


                    url: url + "Torneos/DetalleTorneo.aspx/GetResultados", //PageMethod

                    data: "{'pPageSize':'" + $('#grid').getGridParam("rowNum") +
                    "','pCurrentPage':'" + $('#grid').getGridParam("page") +
                    "','pSortColumn':'" + $('#grid').getGridParam("sortname") +
                    "','pSortOrder':'" + $('#grid').getGridParam("sortorder") +
                    "','pNameFilter':'" + $("#NombreJug" + numeroVuelta).val() +
                    "','pClasif':'" + numeroCabecera //$("#ddlClasificaciones" + numeroVuelta).val() 
                    + "'}", //PageMethod Parametros de entrada

                    dataType: "json",
                    type: "post",
                    contentType: "application/json; charset=utf-8",
                    complete: function(jsondata, stat) {
                        if (stat == "success") {
                            selRow = JSON.parse(jsondata.responseText).d.SelectedRecord;
                            validCols = JSON.parse(jsondata.responseText).d.validCols;
                            $('#lnkSearch').attr('href', '#' + selRow);
                            jQuery("#grid")[0].addJSONData(JSON.parse(jsondata.responseText).d);

                            if (validCols != null) {
                                for (var i = 0; i < validCols.length;  i++) {
                                    if (validCols[i] != "")
                                        jQuery("#grid").ShowHideCol(validCols[i], '');
                                }

                            }
                        }
                        else
                            alert(JSON.parse(jsondata.responseText).Message);
                    }
                });

            }

