﻿function newsletter(viewUrl, actionUrl) {
    $('#newsletter_notification').html("");

    $('#lightbox')
            .css({
                'height': $(document).height(),
                //reset opacity because IE loses it on open 
                'filter': 'alpha(opacity=60)'
            })
            .fadeIn('slow');
    $('#newsletter_form').fadeIn('slow');

    $('#newsletter_view').load(viewUrl);

    $('#newsletter_form').fadeIn('slow');
    return false;
}

function adjustLightbox() {
    $('#lightbox').css({ 'height': $(document).height() });
};

var resizeTimer = null;
$(window).bind('resize', function() {
    if (resizeTimer) clearTimeout(resizeTimer);
    resizeTimer = setTimeout(adjustLightbox, 100);
});

function delay(milliseconds) {
    $('body').animate({ opacity: 1.0 }, milliseconds)
}

function cancelNewsletter() {
    $('#lightbox').fadeOut('slow');
    $('#newsletter_form').fadeOut('slow');
    $('#newsletter_form input[type!=button]').val('');
    $('#newsletter_form input[type=checkbox]').each(function(i) {
        this.checked = false;
    });
    $('#newsletter_message').html('').css({ 'display': 'none' });

    $('#newsletter_notification').html("");
}


function cancelNewsletterInParent() {

    $("#lightbox", top.document).fadeOut('slow');

    $('#newsletter_form', top.document).fadeOut('slow');
    $('#newsletter_form input[type!=button]', top.document).val('');
    $('#newsletter_form input[type=checkbox]', top.document).each(function(i) {
        this.checked = false;
    });
    $('#newsletter_message', top.document).html('').css({ 'display': 'none' });

    $('#newsletter_notification', top.document).html("");

}

function showMessage(text) {
    $('#newsletter_notification').append('<div>' + text + '</div>');
}

function newsletterCallback(notification) {

    var SeverityType = { Information: 0, Warning: 1, Critical: 2 };
    var hasErrors = false;
    var messageCount = 0;

    // Clear messags
    $('#newsletter_notification').html('');

    // Check for AJAX errors
    if (notification == null) {
        showMessage("An network error has occurred. Please try again later.");
        messageCount++;
    }
    else {

        // Display error messages
        for (var i in notification) {
            messageCount++;

            var message = notification[i];
            var severity = message.Severity;

            showMessage(message.Text);

            if (severity == SeverityType.Critical || severity == SeverityType.Warning) {
                hasErrors = true;
            }
        }
    }

    // No errors so say thanks wait a moment and fade out
    if (!hasErrors) {
        showMessage("Thank you.");
        delay(2000);
        cancelNewsletter();
    }

}

$(function() {
    SignupForNewsletter();
});

function SignupForNewsletter() {

    if ($("pm_subscription_form") != null) {

        $("#SubscribeToNewsLetter").click(function() {

            try {
                if (ValidateNewsLetterSubscription()) {
                    $('#subscription_form').hide();
                    $('#saving').show();
                    
                    
                    return true;
                }
                else {
                    return false;
                }
            }
            catch (err) {
                window.alert(err);
                return false;
            }
        });
    
    }


}

function validateEmail(elementValue) {
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    return emailPattern.test(elementValue);
}

    
function ValidateNewsLetterSubscription() {
    var returnValue = true;


    $('.error').hide();
        
  	    var title = $("input#contact_title").val();
  		if (title == "") {
  		    $("#contact_title_error").show();
        $("input#contact_title").focus();
        returnValue = false;
      }
  		var firstName = $("input#contact_name").val();
  		if (firstName == "") {
        $("#contact_name_error").show();
        $("input#contact_name").focus();
        returnValue = false;
      }
  		var lastName = $("input#contact_lastname").val();
  		if (lastName == "") {
  		    $("#contact_lastname_error").show();
  		    $("input#contact_lastname").focus();
  		    returnValue = false;
  		}

  		var emailAddress = $("input#contact_email").val();
  		if (    (emailAddress == "") ||
  		        (validateEmail(emailAddress) == false)
  		    )
  		 {
  		    $("#contact_email_error").show();
  		    $("input#contact_email").focus();
  		    returnValue = false;
  		}

  		/*var lastName = $("input#captcha").val();
  		if (lastName == "") {
  		    $("#captcha_error").show();
  		    $("input#captcha").focus();
  		    returnValue = false;
  		}*/

  		return returnValue;
}

