

var redeemticket = {
	init: function(){
		redeemticket.addEmailChangeEvent();
		redeemticket.addEditButtonEvent();
		redeemticket.addConditionsButtonEvent();
		redeemticket.addNodataEvent();
		
		if($('#submitted').val() == 1){
			if($('#GastKundeId').val() === 0 || $('#GastDatenGeandert').val() === 1){
				redeemticket.activateAddDataAreaEditable()	
			} else if ($('#GastKundeId').val()) {
				redeemticket.activateAddDataArea();
			}
		}
		
		
				
	},
	
	
	addEmailChangeEvent: function(){
		$('#email').change(function(){
			redeemticket.getValidateData();

		});
		$('#checkemailbutton').click(function(){
			redeemticket.getValidateData();
		});
		
	},
	
	getValidateData: function(){
			var data = $("#redeemticket").serialize();
			var url = $('#ajaxreqlink').attr('href');
			$.post(url, data, function(rdata) {
				redeemticket.processDataOnValidate(rdata);
			}, "json");
	},

	processDataOnValidate: function(data){
		$('.clubform-error').html('');
		$('#statusmessage').html(data.status_message);
		$('#checkmailicon').html(data.status_icon);

		if(data.status == 1){ // new
			redeemticket.activateAddDataAreaEditable();
			redeemticket.clearDataInFields();
		}		
		if(data.status == 2){ // edit
			redeemticket.activateAddDataArea();
			redeemticket.makeAddDataAreaNotEditable();
			redeemticket.insertDataInFields(data.data);
			// insertData
		}


	},
	
	insertDataInFields: function(data){
		$('#Anrede' + data._d_Anrede).attr('checked','checked');
		$('#Titel').val(data._d_Titel);
		$('#Vorname').val(data._d_Vorname);
		$('#Nachname').val(data._d_Nachname);
		$('#Strasse').val(data._d_Strasse);
		$('#PLZ').val(data._d_Plz);
		$('#Ort').val(data._d_Ort);
		$('#TEL').val(data._d_Tel);
		if(data._d_GolfErfahrung == 2){
			$('#GolfErfahrung').attr('checked','checked');	
		} else {
			$('#GolfErfahrung').removeAttr('checked');	
		}
		$('#Geburtsdatum').val(data._d_Geburtsdatum);
		$('#GastKundeId').val(data._d_ID);
		$('#GastDatenGeandert').val(0);

	},

	clearDataInFields: function(){
		// $('#Anrede' + data._d_Anrede).attr('checked','checked');

		$('#Titel').attr('value','');
		$('#Vorname').attr('value','');
		$('#Nachname').attr('value','');
		$('#Strasse').attr('value','');
		$('#PLZ').attr('value','');
		$('#Ort').attr('value','');
		$('#TEL').attr('value','');
		$('#Geburtsdatum').attr('value','');
		$('#GolfErfahrung').removeAttr('checked');
		$('#GastKundeId').val('0');
		$('#GastDatenGeandert').val(1);

	},
	
	addEditButtonEvent: function(){
		
		$('#editbutton').click(function(e){
			e.preventDefault();
			redeemticket.makeAddDataAreaEditable();
			$('#GastDatenGeandert').val(1);
		});
		
	},
	
	addConditionsButtonEvent: function(){

		$('#agb').click(function(){
			if ($(this).attr('checked')) {
				$('#submitbutton').removeAttr('disabled');
				$('#agbcheck').html('');
			} else {
				// $('#submitbutton').attr('disabled', 'disabled');
			}
		});
		
		
		$('#submitbutton').click(function(){
			
			if(!$('#agb').attr('checked') && !$('#nodata1').attr('checked')){
				
				// keine Prüfung mehr
				//$('#agbcheck').html('Bitte akzeptieren!');
				// return false;
				
				return true;				
			} else {
				$('#Anrede0').removeAttr('disabled');
				$('#Anrede1').removeAttr('disabled');
				$('#GolfErfahrung').removeAttr('disabled');
				
				return true;
			}			
			
		});
		
		
	},
	
	
	activateAddDataArea: function(){
		$('.adddataarea').css('display','block');
	},
	
	activateAddDataAreaEditable: function(){
		redeemticket.activateAddDataArea();
		redeemticket.makeAddDataAreaEditable();
	},
	
	makeAddDataAreaEditable: function(){
		$('#editbutton').hide();
		$('.addfieldsdataarea').addClass('editable');
		$('.addfieldsdataarea').removeClass('noteditable');
		
		$('#Titel').removeAttr('readonly');
		$('#Vorname').removeAttr('readonly');
		$('#Nachname').removeAttr('readonly');
		$('#Strasse').removeAttr('readonly');
		$('#PLZ').removeAttr('readonly');
		$('#Ort').removeAttr('readonly');
		$('#TEL').removeAttr('readonly');
		$('#Geburtsdatum').removeAttr('readonly');

		$('#Anrede0').removeAttr('disabled');
		$('#Anrede1').removeAttr('disabled');
		$('#GolfErfahrung').removeAttr('disabled');

	},
	
	makeAddDataAreaNotEditable: function(){
		$('#editbutton').show();
		$('.addfieldsdataarea').removeClass('editable');
		$('.addfieldsdataarea').addClass('noteditable');
		
		$('#Titel').attr('readonly','readonly');
		$('#Vorname').attr('readonly','readonly');
		$('#Nachname').attr('readonly','readonly');
		$('#Strasse').attr('readonly','readonly');
		$('#PLZ').attr('readonly','readonly');
		$('#Ort').attr('readonly','readonly');
		$('#TEL').attr('readonly','readonly');
		$('#Geburtsdatum').attr('readonly','readonly');

		$('#Anrede0').attr('disabled','disabled');
		$('#Anrede1').attr('disabled','disabled');
		$('#GolfErfahrung').attr('disabled','disabled');
		
	},
	
	
	addNodataEvent: function(){
		redeemticket.noDataCheck();
		
		
		$('#nodata0,#nodata1').click(function(){
			redeemticket.noDataCheck();
		});
	},
	
	
	noDataCheck: function(){
			if($('#nodata1').attr('checked')){
				redeemticket.activateAddDataAreaEditable();
				redeemticket.clearDataInFields();
				$('.addfieldsdataarea').hide();
				$('#checkdatainfo').hide();
				$('#emailbox').hide();
				$('#agbbox').hide();
				$('#email').attr('value','');

			} else {
				redeemticket.activateAddDataAreaEditable();
				// redeemticket.clearDataInFields();				
				$('.addfieldsdataarea').show();
				$('#checkdatainfo').show();
				$('#emailbox').show();
				$('#agbbox').show();
				// $('#email').attr('value','');
			}									
	}
	
};


var buytickets = {
	init: function(){
		buytickets.addEvents();
	},
	
	addEvents: function(){
		$('#counttickets_minus').click(function(){
			var count = $('#counttickets').val();
			count = Math.round(count / 10) * 10;
			count = count - 10;
			if(count < 10){
				count = 10;
			}
			$('#counttickets').val(count);
		});
		$('#counttickets_plus').click(function(){
			var count = $('#counttickets').val();
			count = Math.round(count / 10) * 10;
			count = count + 10;
			$('#counttickets').val(count);			
		});
	}
	
};




var repeatsend = {
	init: function(){
		
		// var mode = $(this).val();
		var mode = $('.ticketmode:checked').val();
		$('.modebox').hide();
		$('.' + mode + 'mode').show();

		
		$('.ticketmode').click(function(){

			var mode = $('.ticketmode:checked').val();
			$('.modebox').hide();
			$('.' + mode + 'mode').fadeIn("slow");
			
		});
	}
};


var infobox = {
		
	init: function() {
		
		$('.moreinfo-box').each(function(){
			var moreinfocontent = $(this).find('.moreinfo-content');
			var openbutton = $(this).find('.open-button');
			var closebutton = $(this).find('.close-button');
			
			moreinfocontent.hide();
			closebutton.hide();
			
			openbutton.click(function(){
				closebutton.show();
				openbutton.hide();
				moreinfocontent.slideDown();
			});
			
			$(closebutton).click(function(){
				closebutton.hide();
				openbutton.show();
				moreinfocontent.slideUp();
				
			});
			
			
		});
	
	}
		
};



var headerSlideShow =  {
		init: function() {
			setInterval( "headerSlideShow.slideSwitch()", 5000 );
		},


		slideSwitch: function() {
		    var activeSlide = $('#header img.active');
		    if ( activeSlide.length == 0 ) {
		    	 activeSlide = $('#header img:last');
		    } 	 
			var nextSlide =  activeSlide.next().length ? activeSlide.next() : $('#header img:first');
		    activeSlide.addClass('last-active');

		    nextSlide.css({opacity: 0.0})
		    	.addClass('active')
		    	.animate({opacity: 1.0}, 1500, function() {
					activeSlide.removeClass('active last-active');
		     	});
		}

		
}


var clubsearchImageJSCheck = {
		
		init: function(){
				$('.tx-golfclubservices-pi1 img').each(function(index, element){
					$.ajax({  
						url:        $(element).attr('src'),  
						type:       'HEAD',  
						error:      function() {
							$(element).remove();
						}
					});
				});
		}
}



var oldvalue = '';

var mailagainchecker = {
		test: function(element){
		
			var newvalue = $(element).val();
			var difl = newvalue.length - oldvalue.length;
			var error = 0;
			if(difl > 4 || difl < -4 ){
			     $(element).val(oldvalue);
			     error = 1 
			} else {
			  oldvalue = newvalue;
			}
			if(error){
				   $('#againemailerror').remove();   
				   $(element).after('<div style="color: red; padding-left: 170px ;" id="againemailerror">Bitte tippen Sie die Email-Adresse ein<br /></div>');
				   $('#againemailerror').fadeTo( 3000, 1, function(){
					   $('#againemailerror').fadeTo( 1000, 0.1, function(){
						   $('#againemailerror').remove();
					   })
				   });
			}
	
		}
}





jQuery(document).ready(function(){
	if($('#redeemticket').length > 0){
			redeemticket.init();		
	}
	
	if($('#counttickets').length > 0){
			buytickets.init();		
	}
	
	if($('#repeatsend').length > 0){
			repeatsend.init();		
	}
	
	if($('.moreinfo-box').length > 0){
		infobox.init();		
	}

	if($('#header img').length > 1){
		headerSlideShow.init();		
	}

	if($('.tx-golfclubservices-pi1 img').length > 0){
		clubsearchImageJSCheck.init();		
	}

	
	
	$('a.scrollTop').click(function(event){
		event.preventDefault();
		$('html, body').animate({scrollTop:0}, 'medium');
		return false;
	});

	
	$('.loginsubmit').each(function(){
		var imgno = $(this).attr('src');
		var imgact = $(this).attr('rel');
		
		$(this).hover(function(){
			$(this).attr('src', imgact);
		},function(){
			$(this).attr('src', imgno);
		});
			
	});
	
	
	
	
	$('#billing_email_again').keydown(function(){
		mailagainchecker.test(this);
	   
	});	
	
	$('#billing_email_again').change(function(){
		mailagainchecker.test(this);
		    
	});		
	
	
});





if (typeof (Cufon) != "undefined" && Cufon != null) {
	
	
	Cufon.replace('.v2 #col3_content h1, .v2 #col3_content h2', {
		fontFamily: 'DaxCondensed',
		fontWeight: 500
	});
	
	Cufon.replace('.v2 .mainnavbox .menuitem a', {
		fontFamily: 'DaxCondensed',
		fontWeight: 700,
		hover: true
	});

}




