﻿var SM_url = "http://www.sendminer.it/sm/public/subscribe.do";
//var Newsletter_wsUrl = "/LTV_WebSite/services/RegisterNewsletterUser.asmx";
var Newsletter_wsUrl = "services/RegisterNewsletterUser.asmx";

function ShowHideForm(divId) {
//    if ($("#socialTop").is(":visible")) {
//        $("#socialTop").hide();
//        $("#" + divId).slideToggle(toggleSpeed);
//    }
//    else
//        $("#" + divId).slideToggle(toggleSpeed, function() { $("#socialTop").show(); });
    $("#" + divId).slideToggle(toggleSpeed);
}

function CheckSubscribeNewsletter(divId, hideOnComplete) {
    if (validateForm(divId)) {
        $("#" + divId + " .loader").show();
        var emailId = divId + " .required_email";
        var tipoId = divId + " .RegisterSourceType";
        var tipoNewsletterId = divId + " .NewsletterSubscribeSourceType";
        var email = $("#" + emailId).val();
        CheckUser(emailId, tipoId, tipoNewsletterId);
        SubscribeNewsletter(email, emailId, divId, hideOnComplete);
        }
    }

    function SubscribeNewsletter(email, emailId, divId, hideOnComplete) {
        var params = $("#" + divId + " *").serialize();
        //rinomino il parametro actionSM in action
        //questo perchè SendMiner vuole il parametro col nome 'action'
        //ma chiamarlo direttamente action nell'html da problemi sul refresh per UpdatePanel dei risultati di ricerca
        params = params.replace("actionSM", "action");
        var v = SM_url + "?" + params;
        $.get(v);
        setTimeout(function() { RegisterNewsletterCallback(emailId, divId, hideOnComplete); }, 2000);

    }

    function RegisterNewsletterCallback(emailId, divId, hideOnComplete) {
        $("#" + emailId).val("");
        $("#" + divId + " .loader").hide();
        alert("Grazie per esserti registrato alla nostra newsletter!");
        if (hideOnComplete)
            ShowHideForm(divId);
    }

    function CheckUser(emailId, tipoId, tipoNewsletterId) {
        var email = $("#" + emailId).val();
        var tipo = $("#" + tipoId).val();
        if (tipo == "")
            tipo = null;
        var tipoNewsletter = $("#" + tipoNewsletterId).val();
        var v = new WebService(Newsletter_wsUrl, "CheckAndRegisterUser");
        v.successFunction = CheckUserCallback;
        v.appendParameter("email", email);
        v.appendParameter("tipo", tipo);
        v.appendParameter("tipoNewsletter", tipoNewsletter);
        v.callWebService();
        
    }

    function CheckUserCallback(result) {
//        if (result.d) {
//            alert("ok");
//        }
//        else {
//            alert("ko");
//        }
    }
