/* Properties
*********************************************/
// Variabler som skapas och sätts av pageparten:
//		emailsubscribe_newsletter_treeid
//		emailsubscribe_newsletter_pagepartid


/* OnInit
*********************************************/
//$(document).ready(function () {

//});

/* Methods
*********************************************/
var EmailSubscribe = {
	LoadComplete: function (status) {
		//alert('EmailSubscribe: LoadComplete: ' + status);
	},

	Subscribe: function (target, commandTarget) {
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		var address = $(target).val();
		if (reg.test(address) == true) {
			$(commandTarget).val('subscribe');
			document.forms[0].submit();
		} else {
			alert("Du måste ange en korrekt mailadress.");
		}
	},

	UnSubscribe: function (target, commandTarget) {
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		var address = $(target).val();
		if (reg.test(address) == true) {
			$(commandTarget).val('unsubscribe');
			document.forms[0].submit();
		} else {
			alert("Du måste ange en korrekt mailadress.");
		}
	},

	Reload: function () {
		$("#emailsubscribe_newsletter_Container").html(preloaderHTML);
		$.ajax({
			type: "POST",
			url: "/System/WebService/AjaxSystemServices.asmx/GetEmailSubscribeHTML",
			data: { pagePartId: emailsubscribe_newsletter_pagepartid, treeId: emailsubscribe_newsletter_treeid },
			dataType: "xml",
			//contentType: "application/json; charset=utf-8",
			success: function (data) {
				EmailSubscribe.AddResponse(data);
			},
			error: function (jqXHR, textStatus, errorThrown) {
				alert(jqXHR);
				alert(textStatus);
				alert(errorThrown);
			}
		});
	},

	AddResponse: function (data) {
		var status = "no content returned";

		try {
			CustomerInfo_PreHandleResponse(content);
		}
		catch (e) { }

		var content = $(data).find("string").text();
		if (content.length > 0) {
			status = "container missing";
			var containerDiv = document.getElementById("emailsubscribe_newsletter_Container");
			if (containerDiv) {
				if (containerDiv.innerHTML != content) {
					status = "content returned and container updated";
					containerDiv.innerHTML = content;
				} else {
					status = "content returned, no update needed";
				}
			} else {
				alert("page is missing container: " + "EmailSubscribe_Container_" + emailsubscribe_newsletter_pagepartid);
			}
		}

		try {
			EmailSubscribe.LoadComplete(status);
		}
		catch (e) { }
	}
}
