﻿///// Validació de dates correctes //////
function chkdate(objName) {
    //var strDatestyle = "US"; //United States date style
    var strDatestyle = "EU";  //European date style
    var strDate;
    var strDateArray;
    var strDay;
    var strMonth;
    var strYear;
    var intday;
    var intMonth;
    var intYear;
    var booFound = false;
    var datefield = objName;
    var strSeparatorArray = new Array("-", "/");
    var intElementNr;
    var err = 0;
    var strMonthArray = new Array(12);
    strMonthArray[0] = "Jan";
    strMonthArray[1] = "Feb";
    strMonthArray[2] = "Mar";
    strMonthArray[3] = "Apr";
    strMonthArray[4] = "May";
    strMonthArray[5] = "Jun";
    strMonthArray[6] = "Jul";
    strMonthArray[7] = "Aug";
    strMonthArray[8] = "Sep";
    strMonthArray[9] = "Oct";
    strMonthArray[10] = "Nov";
    strMonthArray[11] = "Dec";
    strDate = datefield.value;
    if (strDate.length < 1) {
        return true;
    }

    for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
        if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
            strDateArray = strDate.split(strSeparatorArray[intElementNr]);
            if (strDateArray.length != 3) {
                err = 1;
                return false;
            }
            else {
                strDay = strDateArray[0];
                strMonth = strDateArray[1];
                strYear = strDateArray[2];
            }
            booFound = true;
        }
    }

    if (booFound == false) {
        return false;
    }
    if (strYear.length == 2) {
        strYear = '20' + strYear;
    }

    // US style
    if (strDatestyle == "US") {
        strTemp = strDay;
        strDay = strMonth;
        strMonth = strTemp;
    }
    intday = parseInt(strDay, 10);
    if (isNaN(intday)) {
        err = 2;
        return false;
    }
    intMonth = parseInt(strMonth, 10);
    if (isNaN(intMonth)) {
        for (i = 0; i < 12; i++) {
            if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) {
                intMonth = i + 1;
                strMonth = strMonthArray[i];
                i = 12;
            }
        }
        if (isNaN(intMonth)) {
            err = 3;
            return false;
        }
    }
    intYear = parseInt(strYear, 10);
    if (isNaN(intYear)) {
        err = 4;
        return false;
    }
    if (intMonth > 12 || intMonth < 1) {
        err = 5;
        return false;
    }
    if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) {
        err = 6;
        return false;
    }
    if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) {
        err = 7;
        return false;
    }
    if (intMonth == 2) {
        if (intday < 1) {
            err = 8;
            return false;
        }
        if (LeapYear(intYear) == true) {
            if (intday > 29) {
                err = 9;
                return false;
            }
        }
        else {
            if (intday > 28) {
                err = 10;
                return false;
            }
        }
    }
    return true;
}

function LeapYear(intYear) {
    if (intYear % 100 == 0) {
        if (intYear % 400 == 0) {
            return true;
        }
    }
    else {
        if ((intYear % 4) == 0) {
            return true;
        }
    }
    return false;
}

////// Validació d'hores correctes //////
function validarHora(strHora) {
    var numSeparadors;
    var hores, minuts;
    var j;
    var hora;

    hora = strHora.value;

    if (hora == "" || hora == null)
        return true;

    numSeparadors = 0;
    hores = "";
    minuts = "";

    // Obtinc hores i minuts, tenint en compte el separador.
    for (j = 0; j < hora.length; j++) {
        if (hora.charAt(j) == ":" || hora.charAt(j) == ".")
            numSeparadors++;
        else {
            if (numSeparadors == 0)
                hores = hores + hora.charAt(j);
            if (numSeparadors == 1)
                minuts = minuts + hora.charAt(j);
        }
    }

    if (numSeparadors != 1 || hores == "" || minuts == "") {
        return false;
    }
    else {
        if (parseInt(hores, 10) >= 0 && parseInt(hores, 10) < 24 && parseInt(minuts, 10) >= 0 && parseInt(minuts, 10) < 60)
            return true;
        return false;
    }
}

////// Validació de númerics correctes //////
function validarNumero(strNumero) {
    var numero;
    var numeroFinal, numAccess;
    var k;

    numero = strNumero.value;

    // Permeto posar com a separador de decimal "," o "'" o "." pero ho traspaso a format JavaScript numèric "."
    numeroFinal = "";
    for (k = 0; k < numero.length; k++) {
        if (numero.charAt(k) == "," || numero.charAt(k) == "'")
            numeroFinal = numeroFinal + ".";
        else
            numeroFinal = numeroFinal + numero.charAt(k);
    }

    if (isNaN(numeroFinal))
        return false;
    else {
        numAccess = "";
        // Substitueixo el "." per "," en cas de decimals, ja que l'Access ho gurda en format "XX,XX"
        for (k = 0; k < numeroFinal.length; k++) {
            if (numeroFinal.charAt(k) == ".")
                numAccess = numAccess + ",";
            else
                numAccess = numAccess + numeroFinal.charAt(k);
        }

        strNumero.value = numAccess;
        return true;
    }
}

////// Validació de NIF correcte //////
function ltrim(cadena) {
    var i = 0;
    while (cadena.charAt(i) == ' ') {
        i++;
    }
    return cadena.substring(i);
}

function rtrim(cadena) {
    var i;
    i = cadena.length - 1;
    while (cadena.charAt(i) == ' ') {
        i--;
    }
    return cadena.substring(0, i + 1);
}

function trim(cadena) {
    return rtrim(ltrim(cadena));
}


function validarLetras(cadena) {
    var caracter;
    var caracteresValidos = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";

    cadena = ltrim(cadena);
    cadena = rtrim(cadena);

    for (var i = 0; i < cadena.length; i++) {
        caracter = cadena.charAt(i);
        if (caracteresValidos.indexOf(caracter) < 0)
            return false;
    }
    return true;
}

function validarNumeros(cadena) {
    var caracter;
    var caracteresValidos = "-0123456789";

    cadena = ltrim(cadena);
    cadena = rtrim(cadena);

    for (var i = 0; i < cadena.length; i++) {
        caracter = cadena.charAt(i);
        if (caracteresValidos.indexOf(caracter) < 0)
            return false;
    }
    return true;
}

function validarMobil(cadena) {
    var caracter;
    var caracteresValidos = "0123456789";

    cadena = ltrim(cadena);
    cadena = rtrim(cadena);

    for (var i = 0; i < cadena.length; i++) {
        caracter = cadena.charAt(i);
        if (caracteresValidos.indexOf(caracter) < 0)
            return false;
    }
    if (cadena.substr(0, 1).toString() != "6" || cadena.length != 9) {
        return false;
    }
    return true;
}

function validarCP(cadena) {
    var caracter;
    var caracteresValidos = "0123456789";

    cadena = ltrim(cadena);
    cadena = rtrim(cadena);

    for (var i = 0; i < cadena.length; i++) {
        caracter = cadena.charAt(i);
        if (caracteresValidos.indexOf(caracter) < 0)
            return false;
    }
    if (cadena.length != 5) {
        return false;
    }
    return true;
}

function comprovarNif(cadena) {
    var numero;
    var letra;
    var estrang;
    var letrasNif = "TRWAGMYFPDXBNJZSQVHLCKE";

    cadena = ltrim(cadena);
    cadena = rtrim(cadena);

    numero = cadena.substr(0, 8);
    letra = cadena.substr(8, 1);
    estrang = cadena.substr(0, 1);

    if (estrang == "X" || estrang == "x")
        numero = cadena.substr(1, 7);

    if (validarNumeros(numero) == false)
        return false;
    if (validarLetras(letra) == false)
        return false;

    if (cadena.length != 9)
        return false;

    var posicionLetra = numero % 23;
    var letraCorrecta = letrasNif.charAt(posicionLetra);

    if (letraCorrecta != letra.toUpperCase())
        return false;

    return true;
}

function validaCif(cif) {
    var temp = cif.toUpperCase();
    var v1 = new Array(0, 2, 4, 6, 8, 1, 3, 5, 7, 9);
    var temp_aux = 0;
    var digit_final;

    if (cif == "N0021600B") {
        return true;
    }

    // Son 9 dígits?
    if (!/^[A-Za-z0-9]{9}$/.test(temp)) {
        return false;
    }
    else {
        // Es una llestra de les admeses en un Cif ?
        if (!/^[ABCDEFGHJKLMNPQRSUVW]/.test(temp)) {
            return false;
        }
    }

    for (i = 2; i <= 6; i += 2) {
        temp_aux = temp_aux + v1[parseInt(cif.substr(i - 1, 1))];
        temp_aux = temp_aux + parseInt(cif.substr(i, 1));
    }

    temp_aux = temp_aux + v1[parseInt(cif.substr(7, 1))];
    temp_aux = (10 - (temp_aux % 10));

    digit_final = cif.substr(8, 1);
    digit_final = digit_final.toUpperCase();

    if (temp_aux != digit_final) {
        if (temp_aux == 1 && digit_final == 'A')
            return true;
        if (temp_aux == 2 && digit_final == 'B')
            return true;
        if (temp_aux == 3 && digit_final == 'C')
            return true;
        if (temp_aux == 4 && digit_final == 'D')
            return true;
        if (temp_aux == 5 && digit_final == 'E')
            return true;
        if (temp_aux == 6 && digit_final == 'F')
            return true;
        if (temp_aux == 7 && digit_final == 'G')
            return true;
        if (temp_aux == 8 && digit_final == 'H')
            return true;
        if (temp_aux == 9 && digit_final == 'I')
            return true;
        if (temp_aux == 10 && digit_final == 'J')
            return true;
        if (temp_aux == 10 && parseInt(digit_final) == 0)
            return true;

        return false;
    }
    else {
        return true;
    }
}

// Validació nº Seguretat Social Persona Física
function validaNissPf(niss) {
    var digits;
    var numNiss;

    if (niss.length != 12)
        return false;

    if (niss.charAt(2) == '0')
        numNiss = niss.substr(0, 2) + niss.substr(3, 7);
    else
        numNiss = niss.substr(0, 10);

    digits = numNiss % 97;
    digits = digits.toString();

    if (digits.length < 2)
        digits = '0' + digits;

    if (niss.substr(10, 2) != digits)
        return false;

    return true;
}

// Validació nº Seguretat Social Persona Jurídica (Empresa)
function validaNissPj(niss) {
    var digits;
    var numNiss;

    if (niss.length != 11)
        return false;

    numNiss = niss.substr(0, 9);

    digits = numNiss % 97;
    digits = digits.toString();

    if (digits.length < 2)
        digits = '0' + digits;

    if (niss.substr(9, 2) != digits)
        return false;

    return true;
}

// Validació dels dígits de control d'un compte corrent
function validaCC(num) {
    var part1, part2, res1, res2, i;
    var multiplicador;

    if (num.length != 20)
        return false;

    part1 = num.substr(0, 8);
    part2 = num.substr(10, 10);
    res1 = 0;
    res2 = 0;

    // 1er Dígit de Control
    for (i = 1; i <= 8; i++) {
        switch (i) {
            case 1:
                multiplicador = 4;
                break;
            case 2:
                multiplicador = 8;
                break;
            case 3:
                multiplicador = 5;
                break;
            case 4:
                multiplicador = 10;
                break;
            case 5:
                multiplicador = 9;
                break;
            case 6:
                multiplicador = 7;
                break;
            case 7:
                multiplicador = 3;
                break;
            case 8:
                multiplicador = 6;
                break;
        }
        res1 += parseInt(part1.substr(i - 1, 1), 10) * multiplicador;
    }

    res1 = 11 - (res1 % 11);
    if (res1 == 10) {
        res1 = 1;
    }
    else {
        if (res1 == 11)
            res1 = 0;
    }

    // 2on Dígit de Control
    for (i = 1; i <= 10; i++) {
        switch (i) {
            case 1:
                multiplicador = 1;
                break;
            case 2:
                multiplicador = 2;
                break;
            case 3:
                multiplicador = 4;
                break;
            case 4:
                multiplicador = 8;
                break;
            case 5:
                multiplicador = 5;
                break;
            case 6:
                multiplicador = 10;
                break;
            case 7:
                multiplicador = 9;
                break;
            case 8:
                multiplicador = 7;
                break;
            case 9:
                multiplicador = 3;
                break;
            case 10:
                multiplicador = 6;
                break;
        }
        res2 += parseInt(part2.substr(i - 1, 1), 10) * multiplicador;
    }

    res2 = 11 - (res2 % 11);
    if (res2 == 10) {
        res2 = 1;
    }
    else {
        if (res2 == 11)
            res2 = 0;
    }

    if (res1 == parseInt(num.substr(8, 1), 10) && res2 == parseInt(num.substr(9, 1), 10))
        return true;
    else
        return false;
}

// Neteja una cadena de caràcters extranys, deixant nomès lletres i números
function netejaCadena(txt) {
    var i, strTxt, digit;

    strTxt = "";
    for (i = 0; i < txt.length; i++) {
        digit = txt.charAt(i);
        digit = digit.toUpperCase();
        digit = digit.charCodeAt(0);
        if ((digit > 64 && digit < 91) || (digit > 47 && digit < 58))
            strTxt = strTxt + txt.charAt(i).toUpperCase();
    }
    return strTxt;
}

// Sobre un camp de texte, elimina els digíts no númerics.
// Ús: <input name="telefon" type="text" onKeyUp="validaDigitNum(this);">
function validaDigitNum(obj) {
    var flg = 0;

    while (flg == 0) {
        if (obj.value.length != 0) {
            if (isNaN(obj.value.charAt(obj.value.length - 1)))
                obj.value = obj.value.substring(0, obj.value.length - 1);
            else
                flg = 1;
        }
        else
            flg = 1;
    }
}

// Sobre un camp de texte, elimina els digíts no númerics però deixa la coma i el punt (imports)
// Ús: <input name="preu" type="text" onKeyUp="validaDigitImp(this);">
function validaDigitImp(obj) {
    var flg = 0;

    while (flg == 0) {
        if (obj.value.length != 0) {
            if (isNaN(obj.value.charAt(obj.value.length - 1)) && obj.value.charAt(obj.value.length - 1) != "," && obj.value.charAt(obj.value.length - 1) != ".")
                obj.value = obj.value.substring(0, obj.value.length - 1);
            else
                flg = 1;
        }
        else
            flg = 1;
    }
}

//--- Converteix un decimal a Hexadecimal
function converteixAHexa(num) {
    var hexadecimal = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F");
    var hexaDec = Math.floor(num / 16);
    var hexaUni = num - (hexaDec * 16);
    return hexadecimal[hexaDec] + hexadecimal[hexaUni];
}

//--- Arrodoneix un número amb decimals a 2 decimals
function arrodoneixA2(numero_decimal) {
    numero_decimal = parseFloat(numero_decimal.toString().replace(/,/g, "."));
    return Math.round(numero_decimal * 100) / 100;
}

function arrodoneix(numero_decimal, num) {
    var i = 0;
    var numAux = 1;
    for (i = 0; i < num; i++) {
        numAux = numAux * 10;
    }
    numero_decimal = parseFloat(numero_decimal.toString().replace(/,/g, "."));
    return Math.round(numero_decimal * numAux) / numAux;
}
//--- Munta una data al revés perque pugui ser comparada amb una altre
//--- Entra: DD/MM/AAAA o DD-MM-AAAA
//--- Surt: AAAAMMDD
function normalitzaData(strData) {
    var auxData;

    auxData = strData.split("/");
    if (auxData.length == 1)
        auxData = strData.split("-");

    if (auxData[0].length == 1)
        auxData[0] = "0" + auxData[0];
    if (auxData[1].length == 1)
        auxData[1] = "0" + auxData[1];
    if (auxData[2].length == 2) {
        if (parseInt(auxData[2], 10) > 79)
            auxData[2] = "19" + auxData[2];
        else
            auxData[2] = "20" + auxData[2];
    }

    return auxData[2].toString() + auxData[1].toString() + auxData[0].toString();
}

function formatejaImport(valorImport) {
    var importAux;

    importAux = "";

    if (valorImport != "") {
        importAux = FormatNumber(valorImport, 2, true, false, false);
        importAux = importAux;

        return importAux;
    } else {
        return "";
    }

}

function nomDelMes(numMes) {

    var strMonthArray = new Array(13);


    strMonthArray[1] = "Gener";
    strMonthArray[2] = "Febrer";
    strMonthArray[3] = "Marc";
    strMonthArray[4] = "Abril";
    strMonthArray[5] = "Maig";
    strMonthArray[6] = "Juny";
    strMonthArray[7] = "Juliol";
    strMonthArray[8] = "Agost";
    strMonthArray[9] = "Setembre";
    strMonthArray[10] = "Octubre";
    strMonthArray[11] = "Novembre";
    strMonthArray[12] = "Desembre";

    return strMonthArray[numMes]
}

//--- Equivalent a la funció FormatNumber de .net
function FormatNumber(num, decimalNum, bolLeadingZero, bolParens, bolCommas) {


    /**********************************************************************
    IN:
    NUM - the number to format
    decimalNum - the number of decimal places to format the number to
    bolLeadingZero - true / false - display a leading zero for
    numbers between -1 and 1
    bolParens - true / false - use parenthesis around negative numbers
    bolCommas - put commas as number separators.
 
	RETVAL:
    The formatted number!
    **********************************************************************/


    if (isNaN(parseInt(num))) return "NaN";

    var tmpNum = num;
    var iSign = num < 0 ? -1 : 1; 	// Get sign of number

    // Adjust number so only the specified number of numbers after
    // the decimal point are shown.
    tmpNum *= Math.pow(10, decimalNum);
    tmpNum = Math.round(Math.abs(tmpNum))
    tmpNum /= Math.pow(10, decimalNum);
    tmpNum *= iSign; 				// Readjust for sign


    // Create a string object to do our formatting on
    var tmpNumStr = new String(tmpNum);

    // See if we need to strip out the leading zero or not.
    if (!bolLeadingZero && num < 1 && num > -1 && num != 0)
        if (num > 0)
        tmpNumStr = tmpNumStr.substring(1, tmpNumStr.length);
    else
        tmpNumStr = "-" + tmpNumStr.substring(2, tmpNumStr.length);

    // See if we need to put in the commas
    if (bolCommas && (num >= 1000 || num <= -1000)) {
        var iStart = tmpNumStr.indexOf(".");
        if (iStart < 0)
            iStart = tmpNumStr.length;

        iStart -= 3;
        while (iStart >= 1) {
            tmpNumStr = tmpNumStr.substring(0, iStart) + "," + tmpNumStr.substring(iStart, tmpNumStr.length)
            iStart -= 3;
        }
    }

    // See if we need to use parenthesis
    if (bolParens && num < 0)
        tmpNumStr = "(" + tmpNumStr.substring(1, tmpNumStr.length) + ")";

    return tmpNumStr; 	// Return our formatted string!
}


//--- Munta una hora perque pugui ser comparada amb una altre
//--- Entra: HH:MM o HH.MM
//--- Surt: HHMM
function normalitzaHora(strData) {
    var auxHora;

    auxHora = strData.split(":");
    if (auxHora.length == 1)
        auxHora = strData.split(".");

    if (auxHora[0].length == 1)
        auxHora[0] = "0" + auxHora[0];
    if (auxHora[1].length == 1)
        auxHora[1] = "0" + auxHora[1];

    return auxHora[0].toString() + auxHora[1].toString();
}

// Sobre un camp de texte, no deixa entrar caràcters que no siguin números
// Ús: <input name="telefon" type="text" onKeyPress="vNum();">
function vNum() {
    if (event.keyCode < 48 || event.keyCode > 57)
        event.returnValue = false;
}

// Sobre un camp de texte, no deixa entrar caràcters que no siguin caracters de A a Z
// Ús: <input name="telefon" type="text" onKeyPress="vNum();">
function vXls() {
    if ((event.keyCode < 65 || event.keyCode > 90) && (event.keyCode < 97 || event.keyCode > 122))
        event.returnValue = false;
}

// Sobre un camp de texte, no deixa entrar caràcters que no siguin números, la coma, el punt o el negatiu
// Ús: <input name="preu" type="text" onKeyPress="vImp();">
function vImp() {
    if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 44 || event.keyCode > 46))
        event.returnValue = false;
}

function validarEmail(cadena) {

    if (cadena.length == 0) {
        return true;
    }
    else {
        //comprovem que hi hagi el @ i el punt redera de l'@ (i no seguits, amb un caràcter com a mínim entre ells)
        if ((cadena.indexOf("@") <= 0) || (cadena.indexOf(".", cadena.indexOf("@") + 2) == -1)) {
            return false;
        }
        //comprovem que el punt no estigui al final
        else if ((cadena.indexOf(".", cadena.indexOf("@"))) == (cadena.length) - 1) {
            return false;
        }
        //comprovem que @ no estigui al final
        else if ((cadena.indexOf("@")) == (cadena.length) - 1) {
            return false;
        }
        return true;
    }
}
//--- Afegeix a una url l'http si no el tenia:
function formatejaUrl(url) {
    //alert(url.substr(0,7))
    if (url.substr(0, 7) == "http://") {
        return (url);
    } else {
        return ("http://" + url);
    }
}
//--- Dins d'un HTML amaga el div "tot" i mostra el div "espera" posant-lo al centre de la pàgina
function mostraEspera() {
    document.getElementById("tot").style.display = "none";
    document.getElementById("espera").style.display = "";
    document.getElementById("espera").style.top = (document.body.clientHeight / 2) - (document.getElementById("espera").offsetHeight / 2);
    document.getElementById("espera").style.left = (document.body.clientWidth / 2) - (document.getElementById("tEspera").offsetWidth / 2);
    return true;
}

function mostraCarregaDades() {
    window.top.frames("top_1").document.getElementById("carrega_dades").style.display = "";
    window.top.frames("top_1").document.getElementById("carrega_dades").style.top = 3;
    window.top.frames("top_1").document.getElementById("carrega_dades").style.left = document.body.clientWidth - 18;
}

function ocultaCarregaDades() {
    window.top.frames("top_1").document.getElementById("carrega_dades").style.display = "none";
}

function ompleZeros(num, digits) {
    var resposta, i;
    resposta = num
    for (i = 0; i < digits - num.length; i++) {
        resposta = "0" + resposta;
    }
    return resposta;
}

function loading(missatge) {
    var finestra = document.createElement("div");
    var miss = document.createElement("div");
    var dins = false;
    var resposta = false;
    finestra.className = "loading";
    miss.innerHTML = "<img src='_img/loading.gif'>" + missatge;
    miss.className = "loadingMissatge";
    document.body.appendChild(finestra);
    document.body.appendChild(miss);

}

function Left(str, n) {
    if (n <= 0)
        return "";
    else if (n > String(str).length)
        return str;
    else
        return String(str).substring(0, n);
}
function Right(str, n) {
    if (n <= 0)
        return "";
    else if (n > String(str).length)
        return str;
    else {
        var iLen = String(str).length;
        return String(str).substring(iLen, iLen - n);
    }
}

//Funcions inici i respostaAjax perque no doni error si no esta definida en la pàgina.
function inici() { }
function respostaAjax(response) {}

function accioAjax(accio, camps) {
    //Funció per a accions simples ajax, totes en el mateix aspx.
    //accio: Acció a realitzar
    //camps: Camps que es passen, si només es vol passar un camp, es pot posar el valor directe, sino ha de ser "&camp1=valor1&camp2=valor2"
    camps = camps.toString();
    if (camps != "") {
        if (camps.substring(0, 1) != "&") camps = "&valor=" + camps;
    }
    execAjax("ajax_accio.aspx", "", "&accio=" + accio + camps);
}

function accioAjaxFunct(accio, camps,respostaAjaxFunct) {
    //Funció per a accions simples ajax, totes en el mateix aspx.
    //accio: Acció a realitzar
    //camps: Camps que es passen, si només es vol passar un camp, es pot posar el valor directe, sino ha de ser "&camp1=valor1&camp2=valor2"
    //respostaAjaxFunct: Funció a la que ha de cridar la resposta del ajax.
    camps = camps.toString();
    if (camps != "") {
        if (camps.substring(0, 1) != "&") camps = "&valor=" + camps;
    }
    execAjaxFunct("ajax_accio.aspx", "", "&accio=" + accio + camps, respostaAjaxFunct);
}


function buidarTaula(taula) {
    buidarTaula(taula, 1);
}

function buidarTaula(taula,inici) {
    var taulaResultats = document.getElementById(taula);
    for (i = taulaResultats.rows.length; i > inici; i--) {

        taulaResultats.deleteRow(i - 1);
    }
}

function loadingTaula(taula) {
    loadingTaula(taula, 1);
}
function loadingTaula(taula,inici) {
    buidarTaula(taula,inici);
    var taulaResultats = document.getElementById(taula);
    var fila = document.createElement("tr");
    var cella = document.createElement("td");
    var imgLoading = document.createElement("img");
    var cos = document.createElement("tbody");
    cella.colSpan = 40;
    cella.align = "center";
    cella.valing = "middle";
    cella.height = "150px"
    cella.style.padding = "5px";
    imgLoading.src = "_img/ajax-loader.gif";
    cella.appendChild(imgLoading);
    fila.appendChild(cella);
    cos.appendChild(fila);
    taulaResultats.appendChild(cos);
}

function imprimirAspx(aspx) {

    var winApp
    var pos_x, pos_y;
    pos_x = screen.width / 2;
    pos_y = screen.height / 2;
    pos_x = pos_x - 400 + ((800 - 800) / 2);
    pos_y = pos_y - 300 + (((600 - 400) / 2) - 20);

    if (winApp && !winApp.closed)
        winApp.close();
    winApp = window.open(aspx, "", "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=1,dependent=no,width=900,height=600");
    winApp.moveTo(pos_x, pos_y);

}

function obrirFinestra(aspx) {

    var winApp
    var pos_x, pos_y;
    pos_x = screen.width / 2;
    pos_y = screen.height / 2;
    pos_x = pos_x - 400 + ((800 - 800) / 2);
    pos_y = pos_y - 300 + (((600 - 400) / 2) - 20);

    if (winApp && !winApp.closed)
        winApp.close();
    winApp = window.open(aspx, "", "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=1,dependent=no,width=760,height=600");
    winApp.moveTo(pos_x, pos_y);

}
						

