
var manageTabs = {

	mainAction : 0,
	tabPages : [
		'panel',
		'panel_form',
		'panel_adventure',
		'panel_gog',
		'panel_aoc'
	],
	
	pagesLog : [
		'',
		'',
		'get_christmas_adventure',
		'gog',
		'age_of_conan'
	],
	
	change : function (action) {
	
		var url = "/index.php/wishes/tab";
		action = parseInt(action);
		
		if (action == undefined || action == null || action === '')
			action = manageTabs.mainAction;
		
		var tabsCount = manageTabs.tabPages.length;
		var hasVisibleTab = false;
		
		for (var i = 0; i < tabsCount; i++) {
		
			if (i == action) {
			
				manageTabs.show(manageTabs.tabPages[i]);
				hasVisibleTab = true;
				
				continue;
			}
			
			manageTabs.hide(manageTabs.tabPages[i]);
		}
		
		if (!hasVisibleTab)
			manageTabs.show(manageTabs.tabPages[0]);
		
		new Ajax.Request(url, {
			method: 'post',
			parameters: {tab: action},
			onSuccess: function(transport) {
			
			}
		});
		
		var medium = manageTabs.pagesLog[action];
		if (medium != '') {
		
			var logUrl = "http://holiday.thewitcher.com/?utm_source=newsletter&utm_medium=" + medium + "&utm_campaing=christmas_card";
			new Ajax.Request(logUrl, { method: 'post' , onSuccess: function(transport) { }});
		}
	},
	
	show : function (tabName) {
	
		if ($(tabName) != null)
			$(tabName).style.display = "block";
	},
	
	hide : function (tabName) {
	
		if ($(tabName) != null)
			$(tabName).style.display = "none";
	}
};

var manageErrors = {

	errorFields : [ 
	
		'email_to',
		'name_to',
		'body',
		'captcha'
	],
	
	setError : function (error) {
	
		if (error.indexOf("|") == -1) {
		
			$('error_div').innerHTML = "";
			$('success').innerHTML = error;
			$('email_to').value = ""; 
			$('name_to').value = "";
			retrun;
		}
		
		$('success').innerHTML = "";
		var tokens = error.split("|");
		
		manageErrors.clearErrors(tokens[0]);
		$(tokens[0]).style.border = "2px solid #cD3230";
		$('error_div').innerHTML = tokens[1];
	},
	
	clearErrors : function (exclude) {
	
		var count = manageErrors.errorFields.length;
		for (var i = 0; i < count; i++) {
		
			if (manageErrors.errorFields[i] == exclude)
				continue;
			
			$(manageErrors.errorFields[i]).style.border = "2px #ffffff inset";
		}
	}
};

var loaderHelper = {

	inputs : [
	
		'email_to',
		'name_to',
		'name_from',
		'body',
		'captcha',
		'commit'
	],
	
	setEnabled : function (enabled) {
	
		$('captcha').value = "";
		var count = loaderHelper.inputs.length;
		for (var i = 0; i < count; i++) {
		
			if (loaderHelper.inputs[i] != 'commit') 
				$(loaderHelper.inputs[i]).style.border = "2px #ffffff inset";
			
			$(loaderHelper.inputs[i]).disabled = enabled ? "" : "disabled";
		}
	}
};

var captchaHelper = {

	reload : function () {
	
		var url = "/index.php/wishes/reload";
		new Ajax.Request(url, {
			method: 'post',
			onSuccess: function(transport) {
				
				var now = new Date();
				$('captcha_image').src = "/index.php/sfCaptcha/date/" + now.getTime();
			}
		});
	}
};
