$(function() {

    $("#download_link").hoverClass("download_link_hover");

    $("#img_video").click(function() {

        $("#ytapiplayer").dialog({
            modal: true,
            width:580,
            resizable: false,
            height:400,
            position: ['center',20]
        })
        .show()
        .attr("style","padding:0;pargin:0;");
        $(".ui-dialog-titlebar").hide();

        var video = '<object width="560" height="349">';
        video += '<param name="movie" value="http://www.youtube.com/v/H3uZkqFEMvY?version=3&amp;hl=pt_BR&amp;rel=0"></param>';
        video += '<param name="allowFullScreen" value="true"></param>';
        video += '<param name="allowscriptaccess" value="always"></param>';
        video += '<embed src="http://www.youtube.com/v/H3uZkqFEMvY?version=3&amp;hl=pt_BR&amp;rel=0&autoplay=1" type="application/x-shockwave-flash" width="560" height="349" allowscriptaccess="always" allowfullscreen="true"></embed>';
        video += '</object>';
        $("#addvideo").html('<center>' + video + '</center>');

    });

    $(".columns_index").hoverClass("link-video-class-hover").click(function(){
         window.location.href = "resources";
    });

    $("#close_video").click(function(){
        $("#ytapiplayer").dialog( "close" );
        $("#addvideo").html("");
    });

    $("#quickLoginButton").button({ icons: {primary: 'ui-icon-triangle-1-e'}});
    $("#formLogin").validate({
        cancelSubmit : true,
        submitHandler: function(form) {

            loader("Verificando seus dados de acesso, aguarde ...");
            $.ajax({
                url: "registerLogin.json",
                dataType : 'json',
                data: $(form).serializeArray(),
                type: "POST",
                success:function(r) {

                    loaderDel();

                    try {

                        if (r.code == 0) {

                            $("#service_uid").val(r.data["service-uid"]);
                            // format Trevio URL for authenticated user
                            var url  = "http://" + server + "/auth?service-uid=";
                            url += r.data["service-uid"]+"&token="+r.data["token"];

                            window.location.href = url;

                        } else if (r.code == "-1") {

                            // se licenca for de parceiros
                            // direciona para a APP do Trevio 2
                            if (r.data.ispartner == 1) {
                                loader("Direcionando ao Trevio, aguarde ...");
                                window.location.href = "redirecttrevioold?login=" + $("#login").val();

                            // se nao for parceiro vamos tratar os dados UM A UM
                            } else {

                                // Se for uma Demonstracao Faz alguma coisa
                                if (r.data.partnumber == "TRVD") {
                                    userTrevioDemoCurrent(r.data);
                                } else {
                                    upgradeUserTrevio(r.data);
                                }
                            }

                        } else {
                            $("#errorformLogin").html( Errors[r.code] || Errors["default"] ).show();
                        }

                    } catch (e) {
                        $("#errorformLogin").html(Errors["default"]).show();
                    }
                }
            });
        },
        errorLabelContainer: $("#errorformLogin")
    });

    $("#show-revenda").click(function(){
        $("#revenda")
        .dialog({
            width:900,
            resizable: false,
            modal: false,
            title: "Revendas",
            draggable: false

        })
        .show();
        $("#revenda-form").reset();
        $("#revenda-form").show();
        $("#revenda-success").hide();
        src = $("#imgCaptchaRevenda").attr("src") + "?"+Math.random()
        $("#imgCaptchaRevenda").attr("src", src);
    });


    $("#show-contato").click(function(){
        $("#contact")
        .dialog({
            width:600,
            modal: true,
            resizable: false,
            position: ['center',10],
            title: "Contato"
        })
        .show();
        $("#formContact").reset();
        $("#contact-form").show();
        $("#contact-success").hide();
        src = $("#imgCaptchaContact").attr("src") + "?"+Math.random()
        $("#imgCaptchaContact").attr("src", src);
    });

    $("#send").button();
    $("#send-revenda").button();

    $("#revenda-confirm-success").button().click(function(){
        $("#revenda").dialog( "close" );
    });
    $("#confirm-success").button().click(function(){
        $("#contact").dialog( "close" );
    });

    $("#cancel-revenda").button().click(function(){
        $("#revenda").dialog("close");
        $("#revenda-form").reset();
    });
    $("#cancel").button().click(function(){
        $("#contact").dialog("close");
        $("#formContact").reset();
    });

    $("#reloadCaptchaContact").click(function(){
        src = $("#imgCaptchaContact").attr("src") + "?"+Math.random()
        $("#imgCaptchaContact").attr("src", src);
    });

    $("#reloadCaptchaRevenda").click(function(){
        src = $("#imgCaptchaRevenda").attr("src") + "?"+Math.random()
        $("#imgCaptchaRevenda").attr("src", src);
    });


    var validatorForm = $("#formContact").validate({
        cancelSubmit : true,
        submitHandler: function(form) {
            loader("Enviando seu contato, aguarde ...");
            $.ajax({
                url: "contato.json",
                dataType : 'json',
                data: $(form).serializeArray(),
                type: "POST",
                success:function(r) {
                    loaderDel();
                    if (r.code == 0) {
                        $("#contact-form").hide();
                        $("#contact-success").show();
                        $( 'html, body' ).animate( { scrollTop: 0 }, 'slow' );
                    } else {
                        $("#show-error-contact").show();
                        $("#errorContact").html(r.message).show();
                    }
                }
            });

        },
        highlight: function( element, errorClass, validClass ) {
            $(element).addClass(errorClass).removeClass(validClass);
            var numberError = validatorForm.numberOfInvalids();
            var text = $.gt.ngettext("Existe %s erro no formul&aacute;rio", ["Existem %s erros no formul&aacute;rio"], numberError);
            $("#title-error-contact").html( sprintf(text, numberError));
            $("#show-error-contact").show();
        },
        unhighlight: function( element, errorClass, validClass ) {
            if (validatorForm.numberOfInvalids() == 0) {
                $("#show-error-contact").hide();
            }
            $(element).removeClass(errorClass).addClass(validClass);
        },
        rules: {
            nome : {
                required : true
            },
            mail : {
                required : true,
                email: true
            },
            area: {
                required : true
            },
            mensagem: {
                required : true
            },
            checkCaptcha: {
                required : true
            }
        },
        messages: {
            nome : {
                required : "Informe seu Nome<br/>"
            },
            mail : {
                required : "Informe seu E-mail<br/>",
                email: "Informe um e-mail v&aacute;lido<br/>"
            },
            area: {
                required : "Selecione a area que queira contatar<br/>"
            },
            mensagem: {
                required : "Digite a mensagem<br/>"
            },
            checkCaptcha: {
                required: "Informe o texto de verifica&ccedil;&atilde;o de seguran&ccedil;a</br>"
            }
        }
    });


    var validatorFormRevenda = $("#formRevenda").validate({
        cancelSubmit : true,
        submitHandler: function(form) {
            loader("Enviando seus dados, aguarde ...");
            $.ajax({
                url: "revenda.json",
                dataType : 'json',
                data: $(form).serializeArray(),
                type: "POST",
                success:function(r) {
                    loaderDel();
                    if (r.code == 0) {
                        $( 'html, body' ).animate( { scrollTop: 0 }, 'slow' );
                        $("#revenda-form").hide();
                        $("#revenda-success").show();
                    } else {
                        $("#show-error-revenda").show();
                        $("#error-revenda").html(r.message).show();
                    }
                }
            });
        },
        highlight: function( element, errorClass, validClass ) {
            $(element).addClass(errorClass).removeClass(validClass);
            var numberError = validatorFormRevenda.numberOfInvalids();
            var text = $.gt.ngettext("Existe %s erro no formul&aacute;rio", ["Existem %s erros no formul&aacute;rio"], numberError);
            $("#title-error-revenda").html( sprintf(text, numberError));
            $("#show-error-revenda").show();
        },
        unhighlight: function( element, errorClass, validClass ) {
            if (validatorFormRevenda.numberOfInvalids() == 0) {
                $("#show-error-revenda").hide();
            }
            $(element).removeClass(errorClass).addClass(validClass);
        },
        rules: {
            nome : {
                required : true
            },
            mail : {
                required : true,
                email: true
            },
            empresa: {
                required : true
            },
            mensagem: {
                required : true
            },
            checkCaptcha: {
                required : true
            }
        },
        messages: {
            nome : {
                required : "Informe seu Nome<br/>"
            },
            mail : {
                required : "Informe seu E-mail<br/>",
                email: "Informe um e-mail v&aacute;lido<br/>"
            },
            empresa: {
                required : "Informe o nome da empresa<br/>"
            },
            mensagem: {
                required : "Digite a mensagem<br/>"
            },
            checkCaptcha: {
                required: "Informe o texto de verifica&ccedil;&atilde;o de seguran&ccedil;a</br>"
            }
        }
    });
});

var userTrevioDemoCurrent = function(data) {

    var messageContent = "Com a nova vers&atilde;o do Trevio, voc&ecirc; monitora a utiliza&ccedil;&atilde;o de sites, ";
        messageContent +="redes sociais, resultados de buscas, mensageiros instant&acirc;neos e muito mais! <br/><br/>";
        messageContent += "Em casa ou na empresa voc&ecirc; garante o uso adequado e seguro da internet.<br/><br/>";
        messageContent += "<b>Aproveite a oportunidade para testar o Trevio Internet Security por 15 dias.<br/><br/>";
        messageContent += "Trevio: a vida digital do seu jeito. ";


    var idMessage = "dialog_migration_";
    $("#"+idMessage).remove();
    var divMessage = $("<div>").attr({"id" : idMessage}).html(messageContent);
    $("body").append(divMessage);

    $("#"+idMessage).dialog({
        modal: true,
		resizable: false,
		width: 650,
		title: "Conhe&ccedil;a o Trevio Internet Security",
		hideCloseButton: true,
		closeOnEscape: false,
		buttons: [
			{	text: $.gt.gettext("Mais tarde"),
				click: function() {
                    loader("Direcionando ao Trevio, aguarde ...");
                    window.location.href = "redirecttrevioold?login=" + $("#login").val();
				}
			},
			{	text: $.gt.gettext("Quero Conhecer"),
				click: function() {
                    window.location.href = "upgrade/demo";
				}
			}
		],
		close: function() {
			$(this).remove();
		}
    });
    $("#"+idMessage).parent().find('.ui-dialog-titlebar-close').hide();
}

var upgradeUserTrevio = function(data) {

    var messageContent = "<br/>Deseja modificar a sua conta Trevio para o novo Trevio Internet Security?";

    var idMessage = "dialog_migration_";
    $("#"+idMessage).remove();
    var divMessage = $("<div>").attr({"id" : idMessage}).html(messageContent);
    $("body").append(divMessage);

    $("#"+idMessage).dialog({
        modal: true,
		resizable: false,
		width: 550,
		title: "Modificar sua Conta Trevio",
		hideCloseButton: true,
		closeOnEscape: false,
		buttons: [
			{	text: $.gt.gettext("Nao quero alterar agora"),
				click: function() {
                    loader("Direcionando ao Trevio, aguarde ...");
                    window.location.href = "redirecttrevioold?login=" + $("#login").val();
				}
			},
			{	text: $.gt.gettext("Quero mudar para o novo Trevio"),
				click: function() {
                    window.location.href = "upgrade/start/" + data.serviceid;
				}
			}
		],
		close: function() {
			$(this).remove();
		}
    });
    $("#"+idMessage).parent().find('.ui-dialog-titlebar-close').hide();
}
