﻿/*CONSTANTES*/
var sHighlightColor = '#DB7777'; 
//var sHighlightColor = '#ECFFEC';
var sColorRowSelected = "rgb(107, 138, 236)"
var sColorRowSelected_HighLight = '#E74E4E';


/*VARIABLES*/
var sLastColor = "";
var sLastSelect = "";
var oRowSelect = null;
var nRowIndexSelected = 0;

function setBold(oRow, nRowIndex)
{
    oRow.font.bold = true
}

function setBackColor(oRow, nRowIndex)
{
    if(oRowSelect !=null)
    {
        if(nRowIndex == nRowIndexSelected)
            oRow.style.backgroundColor = sColorRowSelected_HighLight;
        else
        {
            sLastColor = oRow.style.backgroundColor;
            oRow.style.backgroundColor = sHighlightColor;    
        }
    }
    else
    {
        sLastColor = oRow.style.backgroundColor;
        oRow.style.backgroundColor = sHighlightColor;    
    }
}

function unsetBackColor(oRow, nRowIndex)
{
    if(oRowSelect != null)
    {
        if(nRowIndex == nRowIndexSelected)
            oRow.style.backgroundColor = sColorRowSelected;
        else
            oRow.style.backgroundColor = sLastColor;
    }        
    else
    {
        oRow.style.backgroundColor = sLastColor;
    }
}

function isRowSelected(sHiddenId)
{
    var txtHiddenId = document.getElementById(sHiddenId);
    var nHiddenId = parseInt(txtHiddenId.value);
    return (nHiddenId > -1);
}

function setNew(sHiddenId)
{
    var txtHiddenId = document.getElementById(sHiddenId);
    txtHiddenId.value = "-1";
}

function setNew2(sHiddenId)
{
    var txtHiddenId = document.getElementById(sHiddenId);
    txtHiddenId.value = "-1|-1";
}

function setRowId(oRow, sId, sValueId, nRowIndex)
{        
    if(oRowSelect != null)
    {
        oRowSelect.style.backgroundColor = sLastSelect;       
    }
    sLastSelect = sLastColor;
    oRowSelect = oRow;
    nRowIndexSelected = nRowIndex;
    oRow.style.backgroundColor = sColorRowSelected;
    document.getElementById(sValueId).value = sId;
}

function openPopup(sUrl, sParametros, nWidth, nHeight)
{
    var nLeft = 0;
    var nTop = 0;
    var sOptions = ", resizable=0, scrollbars=0, toolbar=0,location=0, directories=0, status=0, menubar=0, copyhistory=0";
    if(sParametros.length > 0)
    {
        sUrl = sUrl + "?" + sParametros;
    }
    
    nLeft = Math.floor((screen.availWidth - nWidth) / 2, 10); 
	nTop = Math.floor((screen.availHeight - nHeight) / 2, 10);
    
    var Form = window.open(sUrl ,'Form','width=' + nWidth + ',height=' + nHeight + ',left=' + nLeft + ',top=' + nTop + sParametros);
	Form.focus();
}
function openPopup_ConNombreForm(sUrl, sParametros, nWidth, nHeight, NombreForm)
{
    var nLeft = 0;
    var nTop = 0;
    var sOptions = ", resizable=0, scrollbars=0, toolbar=0,location=0, directories=0, status=0, menubar=0, copyhistory=0";
    if(sParametros.length > 0)
    {
        sUrl = sUrl + "?" + sParametros;
    }
    
    nLeft = Math.floor((screen.availWidth - nWidth) / 2, 10); 
	nTop = Math.floor((screen.availHeight - nHeight) / 2, 10);
    
    var Form = window.open(sUrl ,NombreForm,'width=' + nWidth + ',height=' + nHeight + ',left=' + nLeft + ',top=' + nTop + sParametros);
	Form.focus();
}

//Suponemos q el CUIT viene en formato nnnnnnnnnnn ó nn-nnnnnnnn-n

String.prototype.isOkCuit = function ()
{
    var sCUIT = this;
    var sPonderador = '543276';
    if(sCUIT.length == 13)
    {
        var aCUIT = sCUIT.split('-');
        sCUIT = aCUIT.join('');
    }   
    
    if(sCUIT.length == 11)
    {
        var nSuma = 0;
        
        for(var i = 0; i < sCUIT.length - 1; i++)
        { 
            //alert(sCUIT.charAt(i));
            nSuma += parseInt(sCUIT.charAt(i), 10) * parseInt(sPonderador.charAt(i % 6), 10);
        }

        nSuma = 11 - (nSuma % 11);               
        
        switch (nSuma)
        {
            case 10: nSuma = 9; break;
            case 11: nSuma = 0; break;
        }
        alert(nSuma);
        return (nSuma == parseInt(sCUIT.charAt(10)));
    }
    else
    {
        return false;
    }

    
}

String.prototype.isOkCBU = function ()
{
    var sCBU = this;
         
    if(sCBU.length == 22)
    {
        var sBlock01 = sCBU.substr(0, 8);
        var sBlock02 = sCBU.substr(8, 21);
        
        return sBlock01.isBlockOk() && sBlock02.isBlockOk();
    }
    else
    {
        return false;
    }   
}

String.prototype.isBlockOk = function()
{   
    var sBlock = this; 
    var sPonderador = '9713';
    var nSuma = 0;	

    if(sBlock.length > 8)
    {
        k = 3;
    }
    else
    {
        k = 1;
    }
    

    for(var i = 0; i < (sBlock.length - 1); i++)
    {	
        nSuma += parseInt(sBlock.charAt(i), 10) * parseInt(sPonderador.charAt((i + k) % 4), 10);
    }
    	
   
   return sBlock.charAt(sBlock.length - 1) == ((10 - (nSuma % 10)) % 10);
}

String.prototype.toDecimal = function()
{
//    if(this.trim() != "")
//    {
        var nNum = parseFloat(this.replace(",", "."));        
        return ((isNaN(nNum))? 0.00 : nNum);
//    }
//    else
//    {
//        return 0.00;
//    }
}


Number.prototype.toDecimalFormat = function(nDecimal)
{
        return this.toFixed(nDecimal).replace(".", ",");
}

String.prototype.formatValue = function(nDecimal)
{       
    return this.toDecimal().toDecimalFormat(nDecimal);
}

formatValue = function(input, nDecimal)
{
    if(input.value !== 'undefined')
    {
        input.value = input.value.formatValue(nDecimal).toString();
    }
}

//Object.prototype.formatearValor = function(nDecimal)
//{
//    if(this.value !== 'undefined')
//    {
//        this.value = this.value.formatValue(nDecimal).toString();
//    }
//    return 0;
//}

//if(typeof(Object.registerClass) != 'undefined')
//{
//    Object.registerClass('Object.formatValue', null, Sys.IDisposable);
//}

var bPointNumPad = false;

document.onkeypress = function(e)
{
    var keynum;
    var numcheck;
    var bIE = false;
    var bResp = true;

    if(window.event) // IE
    {
      keynum = event.keyCode;     
      bIE = true;
    }
    else 
    {
        if(e.which) // Netscape/Firefox/Opera
        {              
            keynum = e.which;            
        }
     }
    

    
    if(String.fromCharCode(keynum) == '.' && bPointNumPad == true)
    {
        if((bIE == true) &&  (event.srcElement.type == 'text'))
        {           
            event.keyCode = 44;                     
        }
        else
        {
            if((bIE == false) && (e.explicitOriginalTarget.type == 'text')) //Falta resolver lo de mozilla
            {               
                 var evt = document.createEvent("KeyEvents");
                 //var evt = document.createEvent("KeyboardEvent");
                
                evt.initKeyEvent(
                         "keypress",//  in DOMString typeArg,
                          true,      //  in boolean canBubbleArg,
                          true,      //  in boolean cancelableArg,
                          null,      //  in nsIDOMAbstractView viewArg,  Specifies UIEvent.view. This value may be null.
                          false,   //  in boolean ctrlKeyArg,
                          false,      //  in boolean altKeyArg,
                          false,      //  in boolean shiftKeyArg,
                          false,   //  in boolean metaKeyArg,
                           0,      //  in unsigned long keyCodeArg,
                           44);   //  in unsigned long charCodeArg);
                //evt.preventDefault();
                document.getElementById(e.explicitOriginalTarget.id).dispatchEvent(evt);
                bResp = false;
                //e.which = 44;
            }
        }
        
        bPointNumPad = false;
    }
    
    return bResp;
}


document.onkeydown= function(e)
{
    var keynum;

    if(window.event) // IE
    {
      keynum = event.keyCode;     
    }
    else
    {
         if(e.which) // Netscape/Firefox/Opera
         {            
            keynum = e.which;
         }
    }
    
    bPointNumPad = keynum == 110; 
    
    return true;
}

function panelActivate(e, sPanel, nKey)
{
    var nKeyNum;

    if(window.event) // IE
    {
      nKeyNum = event.keyCode;
      
    }
    else
    {
         if(e.which) // Netscape/Firefox/Opera
         {            
            nKeyNum = e.which;
         }
    }        
    
    if(nKeyNum == nKey)
    {
        var mpu = $find(sPanel);
        mpu.show();  
    }
    
    return false;
}

function btnActivateOnEnter(e, sPanel)
{
    var nKeyNum;

    if(window.event) // IE
    {
      nKeyNum = event.keyCode;
    }
    else
    {
         if(e.which) // Netscape/Firefox/Opera
         {            
            nKeyNum = e.which;
         }
    }        
    //Si preciona la tecla CTRL + ENTER
    if(e.ctrlKey && nKeyNum == 13)
    {
        var mpu = $find(sPanel);
        mpu.show();  
    }
    
    return false;
}

function panelActivateF12(e, sPanel)
{
    panelActivate(e, sPanel, 123);
    //panelActivate(e, sPanel, 13);
    //alert("Enter");    
    return false;
}

function ValidarEliminarDeGrilla(Id, sMensajeConfirmacion, sMensajeNoSelecto)
{
    var IdValue = document.getElementById(Id).value;
    if(IdValue == '-1')
    {
        alert(sMensajeNoSelecto); 
        return false;
    }
    else
    {
        return confirm(sMensajeConfirmacion);
    }
}

function selectAll(chkAll)
{            
                         
             
    for(var i=0; i < chkAll.form.elements.length; i++)
    {
        if((chkAll.form.elements[i].type == 'checkbox') && (chkAll.form.elements[i].id.indexOf("chkSel") > 0))
        {
            chkAll.form.elements[i].checked = !chkAll.checked;
            chkAll.form.elements[i].click(); 
            		            
        }		
    }
}

function btnActivateOnEnter(e, sPanel)
{
    var nKeyNum;

    if(window.event) // IE
    {
      nKeyNum = event.keyCode;
    }
    else
    {
         if(e.which) // Netscape/Firefox/Opera
         {            
            nKeyNum = e.which;
         }
    }        
    //Si preciona la tecla CTRL + ENTER
    if(e.ctrlKey && nKeyNum == 13)
    {
        var mpu = $find(sPanel);
        mpu.show();  
    }
    
    return false;
}

function MostrarBanner (NomBanner)
{
    if (NomBanner != "")
    {
        var params = {};
        params.menu = "false";
        params.quality = "high";
        params.wmode = "transparent";
        params.scale = "exactfit";
        swfobject.embedSWF("../images/" + NomBanner, "Banner", "170", "350", "5.0.0", false);
    }
}

function MostrarBannerPromo (NomBanner)
{
    if (NomBanner != "")
    {
        var params = {};
        params.menu = "false";
        params.quality = "high";
        params.wmode = "transparent";
        params.scale = "exactfit";
        swfobject.embedSWF("../images/" + NomBanner, "Banner", "800", "280", "5.0.0", false);
    }
}
function OpenPopUp_Norma(Juego, IdIdioma)
{
    var nWidth = 880;
    var nHeight = 420;
    var nLeft = Math.floor((screen.availWidth - nWidth) / 2, 10); 
	var nTop = Math.floor((screen.availHeight - nHeight) / 2, 10);
    var sUrl = 'wfNormaJuego.aspx?Juego=' + Juego + '&IdIdioma=' + IdIdioma;
    var Form = window.open(sUrl ,'Normas','width=' + nWidth + ',height=' + nHeight + ',left=' + nLeft + ',top=' + nTop);
	Form.focus();
}
