$(document).ready(function(){
	var input_changed = false;
	var confirm_submit = false;
	var input_errors = new Array;
	var row_coloring = $(".row_coloring");
	var print_page = $(".print");
	if(print_page.size() > 0) {
		window.print();
	}
	if (row_coloring.size() > 0) {
		$(".row_coloring").each(function() {
			$(this).find("tr:even").not(".header").addClass("row0"); 
		});	
	}
	$(".submit_button").attr("tabindex","2500");
	$(".main_container .splash").click(function() {
		var splash_url = $(this).find(".splash_url").attr("href");
		if(splash_url) {
			document.location.href = splash_url;
		}
	});
	$(".main_container .voided").click(function() {
		return false;
	});
	$(".print_icon").hover(function() {
		$(this).addClass("print_icon_hover");
	}, function() {
		$(this).removeClass("print_icon_hover");
	});
	$(".open_mail_editor").click(function() {
		$(this).attr("target","_blank");
	});
	$(".print_icon").click(function() {
		var out_url_string = $(this).attr("href");
		if(out_url_string) {
			if($(this).not(".voided")) {
				var w = 400;
				var h = 500;
				var posx = (screen.width-w)/2;
				var posy = (screen.height-h)/2;
				var properties;
				properties = "resizable=1,titlebar=0,menubar=0,scrollbars=1,fullscreen=0,toolbar=0,location=0,status=1,"; 
				properties += "width=" + w + ","; 
				properties += "height=" + h + ",";
				properties += "left=" + posx + ",";
				properties += "top=" + posy;
				window.open(out_url_string,'print',properties);
				return false;
			}
		} else {
			window.print();
		}
	});
	$(".main_container .open_competition").click(function() {
		var out_url = $(this).find(".splash_url");
		var out_url_string = out_url.attr("href");
		if(out_url_string) {
			if(out_url.is(".voided")) {
				return false;
			}
			var w = 305;
			var h = 425;
			var posx = (screen.width-w)/2;
			var posy = (screen.height-h)/2;
			var properties;
			properties = "resizable=0,titlebar=0,menubar=0,scrollbars=0,fullscreen=0,toolbar=0,location=0,status=0,"; 
			properties += "width=" + w + ","; 
			properties += "height=" + h + ",";
			properties += "left=" + posx + ",";
			properties += "top=" + posy;
			window.open('./?fika&action=signup','fika_signup',properties);
		}
	});
	$(".main_container .open_signup").click(function() {
		var out_url = $(this).find(".out_url");
		var out_url_string = out_url.attr("href");
		if(out_url_string) {
			if(out_url.is(".voided")) {
				return false;
			}
			var w = 300;
			var h = 200;
			var posx = (screen.width-w)/2;
			var posy = (screen.height-h)/2;
			var properties;
			properties = "resizable=0,titlebar=0,menubar=0,scrollbars=0,fullscreen=0,toolbar=0,location=0,status=0,"; 
			properties += "width=" + w + ","; 
			properties += "height=" + h + ",";
			properties += "left=" + posx + ",";
			properties += "top=" + posy;
			window.open('./?foraldrabrevet&action=signup','mail_signup',properties);
		}
	});
	$(".main_container .hover_area").click(function(e) {
		var out_url = $(this).find(".out_url");
		var out_url_string = out_url.attr("href");
		if(out_url_string) {
			if(out_url.is(".external_url")) {
				var targ;
				if (!e) var e = window.event;
				if (e.target) targ = e.target;
				else if (e.srcElement) targ = e.srcElement;
				if (targ.nodeType == 3)  { 
					// defeat Safari bug
					targ = targ.parentNode;
				}
				if(targ.className.indexOf("hover_area") != -1) {
					window.open(out_url_string,"_blank");
				}
			} else if(out_url.not(".external_url")) {
				document.location.href = out_url_string;
			} else if(out_url.is(".voided")) {
				return false;
			}
		}
	});
	$(".main_container .external_url").click(function() {
		$(this).attr("target","_blank");
	});
	$(".main_container .weblinks tr").click(function() {
		var weblink_url = $(this).find(".nowrap a").attr("href");
		window.open(weblink_url,'_blank');
		return false;
	});
	$(".main_container .weblinks tr").hover(function() {
		$(this).addClass("active_row");
	}, function() {
		$(this).removeClass("active_row");
	});
	$(".main_container .internal_links tr").click(function() {
		var weblink_url = $(this).find(".title a").attr("href");
		document.location.href = weblink_url;
		return false;
	});
	$(".main_container .internal_links tr").hover(function() {
		$(this).addClass("active_row");
	}, function() {
		$(this).removeClass("active_row");
	});
	$(".main_container .hover_area").hover(function() {
		$(this).addClass("hover_area_active");
	}, function() {
		$(this).removeClass("hover_area_active");
	});
	$(".main_container .left_menu .normal").hover(function() {
		$(this).addClass("hover");
	}, function() {
		$(this).removeClass("hover");
	});
	$(".main_container .left_menu .sub_normal").hover(function() {
		$(this).addClass("sub_hover");
	}, function() {
		$(this).removeClass("sub_hover");
	});
	$(".main_container .splash").hover(function() {
		$(this).addClass("splash_hover");
	}, function() {
		$(this).removeClass("splash_hover");
	});
	$(".dropdown_navigation").change(function() {
		var submit_ok = true;
		$(".dropdown_navigation").each(function() {
			if($(this).attr("value").indexOf("void") != -1) {
				submit_ok = false;
			}
		});
		if(submit_ok == true) {
			$(this).parents().find("form").submit();	
		} else {
			return false;	
		}
	});
	$(".logout").click(function() {
		if(!confirm("Vänligen bekräfta utloggningen")) {
			return false;
		}
	});
	$(".remember_input").focus(function() {
		remeber_input = $(this).attr("value");
		if($(this).attr("class").indexOf("changed") == -1) {
			$(this).attr("value","");
		}
	});	
	$(".remember_input").change(function() {
		$(this).addClass("changed");
		input_changed = true;
		confirm_submit = false;
	});
	$(".remember_input").blur(function() {
		if(!$(this).attr("value")) {
			$(this).attr("value",remeber_input);
		}
	});
	$(".signup .input .submit .submit_button").click(function() {
		var submitform = $(this).find("a").attr("class");
		confirm_submit = true;
		$(".signup").find("form."+submitform).submit();
	});
	$(".signup .input .validate_form").submit(function() {
		if(confirm_submit) {
			if(input_changed) {
				var submit_form = false;
				if($(this).is(".mail_signup")) {
					var user_email = $(".signup .input .user_email").attr("value");
					if(!checkEmail(user_email)) {
						alert("E-postadressen innehåller fel...");
						return false;
					} else {
						submit_form = true;
						return true;
					}
				} else if($(this).is(".fika_signup")) {
					submit_form = true;
					if($(this).find("input.parent_name").is(".changed")) { 
						var parent_name = $(this).parents().find("input.parent_name").attr("value");
						if(!isAlpha(parent_name)) {
							input_errors.push("* Förälderns namn innehåller felaktiga tecken");
							submit_form = false;
						}
						if(parent_name.length < 2) {
							input_errors.push("* Förälderns namn är för kort (Minst två tecken)");
							submit_form = false;
						}
					} else {
						input_errors.push("* Förälderns namn saknas");
						submit_form = false;
					}
					if($(this).find("input.teen_name").is(".changed")) { 
						var teen_name = $(this).parents().find("input.teen_name").attr("value");
						if(!isAlpha(teen_name)) {
							input_errors.push("* Tonåringens namn innehåller felaktigta tecken");
							submit_form = false;
						}
						if(teen_name.length < 2) {
							input_errors.push("* Tonåringens namn är för kort (Minst två tecken)");
							submit_form = false;
						}
					} else {
						input_errors.push("* Tonåringens namn saknas");
						submit_form = false;
					}
					if($(this).find("input.contestant_email").is(".changed")) { 
						var contestant_email = $(this).parents().find("input.contestant_email").attr("value");
						if(!checkEmail(contestant_email)) {
							input_errors.push("* E-postadressen innehåller fel");
							submit_form = false;
						}
					} else {
						input_errors.push("* E-postadressen saknas");
						submit_form = false;
					}
					if($(this).find("textarea.contestant_motive").is(".changed")) { 
						var contestant_motive = $(this).parents().find("textarea.contestant_motive").attr("value");
						if(contestant_motive.length > 1000) {
							input_errors.push("* Motiveringen är för lång (Max 1000 tecken)");
							submit_form = false;
						}
						if(contestant_motive.length < 50) {
							input_errors.push("* Motiveringen är för kort (Minst 50 tecken)");
							submit_form = false;
						}
					} else {
						input_errors.push("* Tonåringens namn saknas");
						submit_form = false;
					}
				}
				if(!submit_form) {
					var error_msg = "Tyvärr, formuläret innehåller följande fel:\n\n";
					for(var i=0;i<input_errors.length;i++){
						error_msg += input_errors[i] + "\n";
					}
					alert(error_msg);
					input_errors = new Array();
					return false;
				}
			} else {
				alert("Du har inte angett några uppgifter...");
				return false;
			}
		} else {
			return false;
		}
	})
	checkEmail = function(email) {
		var filter = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/;
		if (filter.test(email)) {
			return true;
		} else {
			return false;
		}
	}
	isAlpha = function(string) {
		var filter = /^([\a-zåäö]+[, ]?)+$/i;
		if(filter.test(string)) {
			return true;
		} else {
			return false;
		}
	}
});
