    /**
	*
	*	Fotowettbewerb JavaScript
	*
	*	File: $.foto.js
	*	Author: mbrueckmann
	*	Date: 18.08.2009
	*
	**/

	/*
	 * vars, setup etc. 
	 */

	var formContent = new Array();
	formContent[0] = new Object();
	
	//smal browser checkup
	var ie = false;
	if ((navigator.userAgent.toLowerCase().indexOf("msie 6.0") !=-1) ||
		(navigator.userAgent.toLowerCase().indexOf("msie 7.0") !=-1) ||
		(navigator.userAgent.toLowerCase().indexOf("msie 8.0") !=-1)){
		ie = true;
	}
	

	function ajaxCallback(){
		$("#foto_container").ready(function(){
			//Loadinganimation
			var loader = $('<div id="loader"><img src="/sc/img/foto/ic_ajax-loader.gif" alt="Lade..." /></div>').appendTo("form#step1 div#col1").hide();
			var contentLoader = $('<div id="contentLoader"><img src="/sc/img/foto/ic_ajax-loader.gif" alt="Lade..." /></div>').appendTo("form#step3 div#navigation").hide();
			/*
			 * Workaround for styling file-inputs
			 * Author: mbr 2009-08-18 
			 */

			$("form#step3").ajaxStart(function() {
				contentLoader.fadeIn("fast");
			}).ajaxStop(function() {
				contentLoader.fadeOut("fast"); 
			}).ajaxError(function(a, b, e) {
				throw e;
			});

			//Form validation			
			var container = $('div#error_container');
			

			var step2 = $("#step2").validate({
				rules: {
				wm_team: {
				      required: true
				},
				prename: "required",
				name: "required",
				zip: {
				      required: true,
				      digits: true,
				      minlength: 5,
					  maxlength: 5
				},
				city: "required",
				address: "required",
				email: {
				      required: true,
				      email: true
				}
			},
			messages: {
				wm_team:  "Bitte w&auml;hlen Sie Ihren Favoriten",
				prename:  "Geben Sie Ihren Vornamen an",
				name:  "Geben Sie Ihren Nachnamen an",
				zip:  {
					required: "Geben Sie Ihre PLZ an",
					digits: "Geben Sie eine g&uuml;ltige PLZ ein",
					minlength: "Geben Sie eine g&uuml;ltige PLZ ein",
					maxlength: "Geben Sie eine g&uuml;ltige PLZ ein"
				},
				city: "Geben Sie Ihren Wohnort an",
				address: "Geben Sie Ihre Adresse an",
				email: {
					required: "Geben Sie Ihre E-Mail Adresse an",
					email: "Geben Sie eine g&uuml;ltige E-Mail Adresse an"
				}
			},
			errorContainer: container,
			errorLabelContainer: $("ul", container),
			wrapper: 'li',
			submitHandler: function(form) {
					$(form).ajaxSubmit({
						target:	'#foto_container',
	    				skipEncodingOverride: true
					});
				}
			});
			
			var step3 = $("#step3").validate({
			rules: {
				nameRights: "required",
				authorRights: "required"
			},
			messages: {
				nameRights: "",
				authorRights: ""			
			},
			errorContainer: container,
			submitHandler: function(form) {
				$(form).ajaxSubmit({
					target:	'#foto_container',
					skipEncodingOverride: true
				});
			}
			});
			
	    
	    /*
	     * Ajax form handling
	     */
			
		//Next Step
		$("form:not(#step1) a#next").click(function(){
			var form = $(this).parent().parent();
			form.children("input#send").val("1");
			form.submit();
			
			//toggle style of the error inputs to the label 
			switch (form.attr("id")){
				case "step2":
					$("form#step2 input.error").siblings("label").addClass("error");
				break;
				
				case "step3":
					$("form#step3 input.error").parent().siblings().children().addClass("errorRights");
				break;
			}
			
			return false;
		});
		
		//Next Step1
		$("form#step1 a#next").click(function(){
			if (($('#fileText').val() != "") && ($('#fileText').val() != undefined)){
				$("#foto_container").load("/fe/ajax/wm-game/step-2.jsp");
			}else{
				$("#error_container").fadeIn("slow").children("ul:not(.f1)").append("<li>Bitte w&auml;hlen Sie ein Foto aus</li>").addClass("f1");				
			}
			
			return false;
		});

		//Previous Step
		$("form a#back").click(function(){	
			$("form input#send").val("0");
			
			$("form#step2").ajaxSubmit({
				target:	'#stage'
			});
			
			$("form#step3").ajaxSubmit({
				target:	'#foto_container'
			});
			
			return false;
		});
	    
	    //workaround, to remove error-state from labels
	    $("form#step2 input").keyup(function(){
	    	if ($(this).siblings("label").hasClass("error")){
	    		if ($(this).valid()){
	    			$(this).siblings("label").animate({color: "#58585A"},"slow",function(){
	    				$(this).removeClass("error");
	    			});
	    		}
	    	}
	    });
	    $("form#step2 input, form#step2 select").change(function(){
	    	if ($(this).valid()){
	    		formContent[0][$(this).attr("name")] = $(this).val();
	    	}
	    });
	    
	    fillFields();
	    
	    $("form#step3 input").click(function(){
	    	if ($(this).parent().siblings().children().hasClass("errorRights")){
	    		if ($(this).valid()){
	    			$(this).parent().siblings().children().animate({color: "#58585A"},"slow",function(){
	    				$(this).removeClass("errorRights").css("color","");
	    			});
	    		}
	    	}
	    });
	    
	    /*
	     * Main navigation with ajax
	     */
	    
	    $("#header_content ul li a").click(function(){
	    	//load content
	    	var link = $(this).attr("href").split("#");
	    	$("div#foto_container").load("/fe/ajax/wm-game/"+link[1]+".jsp");

	    	//change navigation
	    	$.each($(this).parent().siblings().children(), function(){
	    		var state = $(this).attr("class").split("_");
	    		$(this).attr("class",state[0]);
	    	});
	    	return false;
	    });
	    
	    $("a.homelink, a.backHome").click(function(){	
	    	$("form#reset")[0].submit();	
	    	
	    	return false;
	    });
	    
	    /*
	     * Normal links in content with ajax
	     */
	    
/*	    $("a[href='#teilnahmebedingungen']").not(".conditions").click(function(){
	    	$("a.conditions").click();
	    	return false;
	    });
*/
	    $("#main_content a#link_conditions").click(function(){
	    	$("div#foto_container").load("/fe/ajax/wm-game/teilnahmebedingungen.jsp");
	    	return false;
	    });
	    
	    $("area[href='#jetzt_mitmachen'], area[href='#teilnahmebedingungen'], area[href='#datenschutz'], area[href='#gewinne']").click(function(){
	    	var link = $(this).attr("href").split("#");
	    	$("div#stage").load("/fe/ajax/wm-game/"+link[1]+".jsp");
	    	return false;
	    });
		});
	};	

	/*
	 * Document ready, start ajaxCallback function
	 */
	
	$(document).ready(function(){
		ajaxCallback();
				
	});
		
	/*
	 * change content from flash (callbacks)
	 */
	function flashLink(link){
		
		if ((link == "/") || (link == "") || (link == undefined)){
			document.window.refesh();
		}else{
			$("div#stage").load("/fe/ajax/wm-game/"+link+".jsp");	
		}
	}
	
	/*
	 * helper function for refilling fields
	 */
	function fillFields(){
		for (var field in formContent[0]){
			if ($("input[name='"+ field +"'], select[name='"+ field +"']").val() == "")
				$("input[name='"+ field +"'],select[name='"+ field +"']").val(formContent[0][field]);
		}
	}
