jQuery(document).ready(function () {
    //            jQuery(".NewsletterForm").dialog('open');
    if (jQuery("#NewsletterForm") != null && jQuery("#NewsletterForm").length > 0) jQuery("#NewsletterForm").dialog({ autoOpen: false, resizable: false, height: 230, modal: true, width: 400, open: function (event, ui) { jQuery('#nsfFirstName').focus(); } });
});
function NewsletterFormSubmit() {
    if (!ValidateForm())
        return;

    SwitchPanels("pnlNewsletterForm", "pnlWorking");

    var url = '/DesktopModules/TimbroNewsletter/RequestHandler.ashx';
    $.post(url, { type: "POST", firstName: jQuery('#nsfFirstName').val().trim(), lastName: jQuery('#nsfLastName').val().trim(), email: jQuery('#nsfEmail').val().trim() }, function (html) { ResponseHandler(html); });
}

function ResponseHandler(response) {
    if (response != 'ok') {
        setTimeout('SwitchPanels("pnlWorking", "pnlNewsletterForm");', 500);
        setTimeout('alert("' + response + '")', 700);
        //alert(response);
        return;
    }

    setTimeout('SwitchPanels("pnlWorking", "pnlThanks");', 500);
}

function SwitchPanels(from, to) {
    jQuery('#' + from).fadeOut(200, function () { jQuery('#' + to).fadeIn(200) });
}

function ValidateForm() {
    var mailRegex = /^((\"[^\"\f\n\r\t\v\b]+\")|([\w\!\#\$\%\&'\*\+\-\~\/\^\`\|\{\}]+(\.[\w\!\#\$\%\&'\*\+\-\~\/\^\`\|\{\}]+)*))@((\[(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))\])|(((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))\.((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9])))|((([A-Za-z0-9\-])+\.)+[A-Za-z\-]+))$/;
    var firstName = jQuery('#nsfFirstName').val().trim();
    var lastName = jQuery('#nsfLastName').val().trim();
    var email = jQuery('#nsfEmail').val().trim();
    var error = '';

    if (firstName.length == 0)
        error += 'Field \'First Name\' is mandatory.\n';
    if (lastName.length == 0)
        error += 'Field \'Last Name\' is mandatory.\n';
    if (email.length == 0)
        error += 'Field \'E-mail Address\' is mandatory.\n';
    else if (!mailRegex.test(email))
        error += 'Field \'E-mail Address\' has invalid format. Example: email@email.com\n';

    if (error.length > 0) {
        alert(error);
        return false;
    }

    return true;
}
