Date.dayNames = ['Domingo', 'Segunda-feira', 'Ter�a-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'S�bado'];

//Date.abbrDayNames = ['dom', 'seg', 'ter', 'qua', 'qui', 'sex', 's�b'];

Date.monthNames = ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'];

Date.abbrMonthNames = ['jan', 'fev', 'mar', 'abr', 'mai', 'jun', 'jul', 'ago', 'set', 'out', 'nov', 'dez'];

Date.firstDayOfWeek = 1;

Date.format = 'dd/mm/yyyy';

Date.fullYearStart = '20';



function WebMethodExec(pagePath, fn, paramArray, successFn, errorFn) {
    var paramList = '';
    if (paramArray.length > 0) {
        for (var i = 0; i < paramArray.length; i += 2) {
            if (paramList.length > 0) paramList += ',';
            paramList += '"' + paramArray[i] + '":"' + paramArray[i + 1] + '"';
        }
    }
    paramList = '{' + paramList + '}';

    $.ajax({
        type: "POST",
        url: pagePath + "/" + fn,
        contentType: "application/json; charset=utf-8",
        data: paramList,
        success: successFn,
        error: errorFn,
        async: false
    })
;
}

function OpenModalPlayers(materialId, tipo, w, h) {
    var newA = document.createElement("A");
    newA.rel = "thickbox";
    newA.href = "/Players.aspx?materialId=" + materialId + "&tipo=" + tipo + "&TB_iframe=true&height=" + h + "&width=" + w;
    newA.title = "Visualização";
    tb_show(newA.title, newA.href, newA.rel);
    newA = null;
} 



function stripHTML(html) {
    var BodyContents = /([\s\S]*\<body[^\>]*\>)([\s\S]*)(\<\/body\>[\s\S]*)/i;
    var h = html.match(BodyContents);
    if (h != null && h[2]) {
        html = h[2];
    }
    html = html.replace(/\/\/--\>/gi, "");
    html = html.replace(/<br\/?>/gi, "\n");
    html = html.replace(/(<\/h.>|<\/p>|<\/div>)/gi, "$1\n\n");
    html = html.replace(/<[^>]+>/g, "");
    html = html.replace(/&lt/g, "<");
    html = html.replace(/&gt/g, ">");
    html = html.replace(/&nbsp/g, "");
    html = html.replace(/&#160/g, "");
    return html;

}


function HtmlToTextArea(html) {
    var BodyContents = /([\s\S]*\<body[^\>]*\>)([\s\S]*)(\<\/body\>[\s\S]*)/i;
    var h = html.match(BodyContents);
    if (h != null && h[2]) {
        html = h[2];
    }

    html = html.replace(/<br\/?>/gi, "\n");

    return html;
}


function stripHTMLOnSubmit() {
    var re = /<\S[^><]*>/g
    for (i = 0; i < arguments.length; i++)
        arguments[i].value = arguments[i].value.replace(re, "")
}


/**
* Extensoes do JQuery
*/

//Valida email
jQuery.fn.isValidEmail = function() {
    var str = $(this).val();

    if (str.indexOf('@') > -1 && str.indexOf('.') > -1) {
        return true;
    }

    return false;
}

function isValidEmail(email) {
    if (email.indexOf('@') > -1 && email.indexOf('.') > -1)
        return true;

    return false;
}

//Pega valor de uma CheckBox
jQuery.fn.isChecked = function() {
    this.each(function() {
        isChecked = this.checked;
    });

    return isChecked;
}

function getDate(date) {
    date = date.split('/');
    if (date[0] < 10) date[0] = '0' + date[0];
    return date[2] + date[1] + date[0];
}

function ValidateDate(date) {
    date = date.split('/');
    if (date[0] < 10) date[0] = '0' + date[0];

    return (date[2] + date[1] + date[0]) >= 19000101;
}

function eventStartEndDate(input, start, end, msg) {

    if (getDate(input.value) < getDate(start) || getDate(input.value) > getDate(start)) {
        alert(msg + ' (' + start + ' - ' + end + ')');
        input.value = "";
        return false;
    }

    return true;
}

function ticketStartDate(input, ed) {
    if (getDate(input.value) > getDate(ed))
        return false;

    return true;
}

function ticketEndDate(input, sd) {
    if (getDate(input.value) < getDate(sd))
        return false;

    return true;
}


function ticketPromotion(input, start, end) {
    if (getDate(input.value) < getDate(start) || getDate(input.value) > getDate(end))
        return false;

    return true;
}

function compareLowDate(start, end) {

    if (getDate(end) > getDate(start))
        return false;

    return true;
}

function compareHour(input, nextInput, msg) {
    hrs = input.value.substring(0, 2);
    min = input.value.substring(3, 5);
    nextHrs = nextInput.substring(0, 2);
    nextMin = nextInput.substring(3, 5);

    if ((hrs < nextHrs) || (min < nextMin) || ((hrs == nextHrs) && (min == nextMin))) {
        alert(msg);
        input.focus();
    }
}


function validateHour(txt) {
    hrs = txt.substring(0, 2);
    min = txt.substring(3, 5);

    if (txt == "")
        return false;

    if (((hrs >= 00) && (hrs <= 23)) && ((min >= 00) && (min <= 59)))
        return true;


    return false;
}


function onlyNum(e) {
    var key = new Number();
    if (window.event) {
        key = e.keyCode;
    }
    else if (e.which) {
        key = e.which;
    }
    else {
        return true;
    }
    if ((key < 48) || (key > 63) && (key != 8)) {
        return false;
    }
}


function eventPreview(eventId) {
    window.open("Website.aspx?eventId=" + eventId, "_preview", "");
}


function setMaxLength() {
    var x = document.getElementsByTagName('textarea');
    var counter = document.createElement('div');
    counter.className = 'counter';



    for (var i = 0; i < x.length; i++) {
        if (x[i].getAttribute('MaxLen')) {
            x[i].onkeyup = x[i].onchange = checkMaxLength;
            x[i].onkeyup();
        }
    }
}

function checkMaxLength() {
    var maxLength = this.getAttribute('MaxLen');
    var currentLength = this.value.length;
    if (currentLength > maxLength) {
        this.value = this.value.substring(0, maxLength)
    }
}

window.onload = function() {
    $("input, textarea").change(function() {
        this.value = $.trim(this.value);
        this.value = stripHTML(this.value);
    });

    setMaxLength();
}

//***************////REGISTER.ASPX
function validateRegister() {
    var log = "";

    if ($('#txtName').val() == "")
        log = log + "\nSeu nome não pode ficar em branco";


    if (!$('#txtEmail').val())
        log = log + "\nSeu e-mail não pode ficar em branco";
    else
        if (!$('#txtEmail').isValidEmail())
        log = log + "\nE-mail inválido";

    if ($('#txtSenha').val().length < 6)
        log = log + "\nSua senha precisa ter no mínimo 6 caracteres";

    if ($('#txtSenha').val() != $('#txtRepetirSenha').val())
        log = log + "\nSenha e confirmação de senha estão diferentes";

    if (log != "") {
     
        alert("Os campos listados abaixo não foram preenchidos corretamente\n" + log);
        return false;
    }
}

//**************////LOGIN.ASPX
function validateLogin() {
    if (!$('#txtEmail').isValidEmail() || $('#txtPassword').val() == "") {
        alert("Os campos E-mail e Senha não foram preenchido corretamente.");
        return false;
    }
    else
        return true;
}

//**************////MASTERPAGE.ASPX
function userLogin(email, password) {
    if (!isValidEmail(email) || password == "")
        alert("Usuário ou senha inválida");
    else
        WebMethodExec("/Default.aspx", "UserAuthorize", ["email", email, "password", password], LoginOK, LoginErro);
}

function LoginErro() {
    $('#txtEmail').val("");
    $('#txtPass').val("");

    alert("Usuário ou senha inválida");
}

function LoginOK(response) {
    var data = eval('(' + response + ')');

    if (data.d != '')
        location = data.d;
    else
        LoginErro();
}

//**************////TOOLS.ASPX

function validateSelectTool(websiteTool, ticketTool) {
    if (websiteTool == false && ticketTool == false) {
        alert("É obrigatória a seleção de pelo menos uma ferramenta.");
        return false;
    }
    return true;
}


function validaFeb(date) {
    date = date.split('/');
    year = date[2];

    test = false;

    if (date[1] == 2) {
        if (year % 100 == 0) {
            if (year % 400 == 0)
                test = true;
        }
        else
            if ((year % 4) == 0)
            test = true;
        else
            test = false;

        if (test == true)
            if (date[0] > 29) return false;
        else
            return true;

        if (test == false)
            if (date[0] > 28) return false;
        else
            return true;
    } else return true;
}


//***************PRESENTATION.ASPX
/*
 
 
 
*/
function validatePresentation(name, description, date, starthour, endhour, speakername, eventStartDate, eventEndDate) {
    var log = "";
    if (name == "") log = log + "\nNome";
    if (description == "") log = log + "\nDescrição";
    if (date == "" || !ValidateDate(date)) log = log + "\nData";
    else
        if (getDate(eventStartDate) > getDate(date)) log = log + "\nA data da sua atividade não pode ser antes do início do evento.";

    if (!validateHour(starthour)) log = log + "\nHorário inicial (De:)";
    if (!validateHour(endhour)) log = log + "\nHorário final (às:)";


    if (!validaFeb(date)) log = log + "\nData inválida";

    if (getDate(eventEndDate) < getDate(date)) log = log + "\nA data da sua atividade não pode ser depois do término do evento.";


    if (log == "")
        return true;
    else {
        alert("Os campos listados abaixo não foram preenchidos corretamente:" + log);
        return false;
    }
}

//***************PHOTOSPEAKER.ASPX
var maxWidth = 500;
var maxHeight = 500;
var fileTypes = ["bmp", "gif", "png", "jpg", "jpeg", "tif"];
var globalPic;

function imgVerify() {
    __doPostBack('lbtnSendPhoto', '');
}


//***************WEBSITEINFO.ASPX
function websiteInfoVerify(name, compareLowDate, startDate, endDate, enableEndDate, locationName, locationAddress, locationCity, locationState, organizerName) {
    var log = "";
    if ($.trim(name) == "") log = log + "\nNome do evento";
    if (enableEndDate)
        if (startDate != endDate)
        if (compareLowDate) log = log + "\nA data final não pode ser menor que a data inicial.";

    if (locationName == "") log = log + "\nLocal";
    if (locationAddress == "") log = log + "\nEndereço";
    if (locationCity == "") log = log + "\nCidade";
    if (locationState == "") log = log + "\nEstado";
    if (organizerName == "") log = log + "\nOrganizador";

    if (log == "") {
        return true;
    }

    else {
        alert("Os campos listados abaixo não foram preenchidos corretamente:" + log);
        return false;
    }
}


function saveErro() {
    alert('Não foi possível salvar o formulário.');
}






//
function strReplaceChr(texto) {

    texto = texto.replace(/[^a-zA-Z 0-9]+/g, '');
    texto = texto.replace(/\s * | * \s+/g, '');

    //

    return $.trim(texto);
}

function validacpf(s) {

    s = s.replace(/[^0-9]/g, "");

    var i;
    var c = s.substr(0, 9);
    var dv = s.substr(9, 2);
    var d1 = 0;

    for (i = 0; i < 9; i++) {
        d1 += c.charAt(i) * (10 - i);
    }

    if (d1 == 0)
        return false;


    d1 = 11 - (d1 % 11);

    if (d1 > 9) d1 = 0;

    if (dv.charAt(0) != d1)
        return false;

    d1 *= 2;

    for (i = 0; i < 9; i++) {

        d1 += c.charAt(i) * (11 - i);

    }

    d1 = 11 - (d1 % 11);

    if (d1 > 9) d1 = 0;

    if (dv.charAt(1) != d1)
        return false;

    return true;

}

var currentPage = 1;

var lastPage = 1;

var pageSize = 20;

var regTotal = -1;

var regQts = 1;

var page = 1;

var GeneralCat = 0;

function DisplayProgressIndication() {

    $('.pag').hide();
    $('.pag').unbind();

    var height = $('#divLoadList').height();

    $('#divLoadList').height(height);
    $('#divLoadList').addClass('loading');
}


function UpdatePaging() {
    var link = "";
    var paging = "";

    if (regTotal % pageSize != 0) {
        while (regTotal % pageSize != 0) {
            regTotal++;
        }
    }

    for (a = 1; a <= regTotal; a++) {
        if (a % pageSize == 0) {
            link = a;

            link = link / pageSize;
            if (link != currentPage) {
                paging = paging + " <a href='javascript:void(0)' onclick='SelectPage(" + link + ")'>" + link + "</a> ";
            } else {
                if (regTotal > pageSize) {
                    paging = paging + " <span>" + link + "</span>";
                }
            }
        }
    }


    $('#pagging').empty();
    $('#pagging').html(paging);

}


function SelectPage(link) {
    currentPage = link;
    DisplayConteudos(GeneralCat);
}


function NextPage(evt) {
    evt.preventDefault();
    DisplayProgressIndication();
    currentPage = ++currentPage;
    DisplayConteudos(GeneralCat);
}


function PrevPage(evt) {
    evt.preventDefault();
    DisplayProgressIndication();
    currentPage = --currentPage
    DisplayConteudos(GeneralCat);
}