jQuery(document).ready(function(){

	if ($.cookie("textSize")=="TextLarge"){
		$('.TextSize a.large').addClass('active');	
	}
	else if ($.cookie("textSize")=="TextMedium"){
		$('.TextSize a.medium').addClass('active');
	}
	else{
		$('.TextSize a.small').addClass('active');	
	}

	$('#wrapper').addClass($.cookie("textSize")); //if cookie for textsize isset then add a class to wrapper
	
	$('.TextSize a.large').click(function(){
		$('.TextSize a').removeClass('active');
		$(this).addClass('active');
		$('#wrapper').addClass('TextLarge');
		$('#wrapper').removeClass('TextMedium');	
		$.cookie("textSize", "TextLarge", {path:'/'});
	});
	$('.TextSize a.medium').click(function(){
		$('.TextSize a').removeClass('active');
		$(this).addClass('active');
		$('#wrapper').addClass('TextMedium');	
		$('#wrapper').removeClass('TextLarge');
		$.cookie("textSize", "TextMedium", {path:'/'});
	});
	$('.TextSize a.small').click(function(){
		$('.TextSize a').removeClass('active');
		$(this).addClass('active');
		$('#wrapper').removeClass('TextMedium');
		$('#wrapper').removeClass('TextLarge');
		$.cookie("textSize", "", {path:'/'});
	});	
		
	$('input#searchTextField').focus(function(){
		this.title = $(this).attr('value');
		this.value = '';
	});
	$('input#searchTextField').blur(function(){
		this.value = $(this).attr('title');
	});
	
	$('a.emptyCart').click(function(){
		$( ".warning" ).dialog({ 
			modal: true,
			draggable:false,
			resizable:false,
			buttons: { 
				"Avbryt": function() { 
					$(this).dialog("close"); 
				},
				"Ok": function() { 
					$(this).dialog("close"); 
					window.location = "/";
				}
			}
		});
	});
	
	$('.delete-product').click(function(){
		var r=confirm("Er du sikker på at du vil slette artikkelen?");
		if(r==true){
			return true;	
		}
		else{
			return false;	
		}
	});
	
	//-------Ajax -General-------
 	$.ajaxSetup ({
		cache: false
	});
	var ajax_load_bar = "<img src='/img/loading_bar.gif' alt='loading...'>";
 	//-------End of Ajax -General-------
 	
	$('a.contributor').click(function(){
		var Contributor_nr = $(this).attr("name");
		var Contributor_name = $(this).attr("title");
		var loadUrl = '/4daction/Ajax_Get_Bidragsyter?Nr='+Contributor_nr+'&t='+Math.random(); // Math.random will be added to the url to prevent caching
		$(".info-bidragsyter").html(ajax_load_bar).load(loadUrl);
		
		$(".info-bidragsyter").dialog({
			title: Contributor_name,
			draggable:true,
			resizable: false,
			modal: true,
			minHeight: 300,
			width: 400
		});
	});
  	
	/****************************************************/
    $("#tabs").tabs();
	
		
	$('form.orderInfo').keypress(function(e) { //Disable ENTER key as form submission
		if (e.which == 13) return false;
	});
	
	//******* initialize forms - onload or reload page
	$('#enter-customer-id').show();
	$('#enter-contact-person, #enter-billing-address, #review-order, #change-frakt, .delivery-method').hide();
	if ($('input:radio[name=vCartFakturaTil]:checked').val() == '1'){ //If form is reloaded, and radio buttons value is 1, then it will not hide the div.deliveryAddress 
       	$('div.deliveryAddress').show();
	}
	if ($('#subscribe-newsletter-check').attr('checked')){
		$('#subscribe-options').show();		
	}
	else{
		$('#subscribe-options').hide();		
	}
	//******* end of initialize forms		
	
	function ordreBestiltAv(){return ($('#ordreBestiltAv').val());}
	function ordreReferanse(){return ($('#ordreReferanse').val());}
	function adresserEpost(){return ($('#adresserEpost').val());}			
	function gjentaEpost(){return ($('#gjentaEpost').val());}			
	function adresserTelefon(){return ($('#adresserTelefon').val());}
	function adresserTelefaks(){return ($('#adresserTelefaks').val());}
	function adresserNavn(){return ($('#adresserNavn').val());}
	function adresserCareOf(){return ($('#adresserCareOf').val());}
	function adresserLeveringsadresse(){return ($('#adresserLeveringsadresse').val());}
	function adresserPoststed(){return ($('#adresserPoststed').val());}
	function cartFakturaTil1(){return ($('#cartFakturaTil1').val());} //radio button, values will be 1 and 0
	function cartFakturaNavn(){return ($('#cartFakturaNavn').val());}
	function cartFakturaCareOf(){return ($('#cartFakturaCareOf').val());}
	function cartFakturaAdresse(){return ($('#cartFakturaAdresse').val());}
	function cartFakturaPoststed(){return ($('#cartFakturaPoststed').val());}
	function cartBestillingAnmerkning(){return ($('textarea#cartBestillingAnmerkning').val());}
	
	//---------Validation----------------//
	function isValidTwoChar(text){
		if (text.length < 2) return false; else return true;
	}
	
	function isValidEmailAddress(emailAddress) {
 		var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
 		return pattern.test(emailAddress);
	}
	
	function isEqualTo(text1, text2){
		if ( text1 == text2 ) return true; else return false;
	}
	//---------End of Validation----------------//
	
	/*function getPostSted(Nr){
		loadXMLDoc("/4daction/Ajax_Get_Poststed?Nr="+Nr+"&t=" + Math.random(),function(){
			if (xmlhttp.readyState==4 && xmlhttp.status==200){
				document.getElementById("ajaxGetPoststed").innerHTML=xmlhttp.responseText;
			}
		});
	}*/
	
	function showDeliveryAddress(){ 
		$('#enter-delivery-address').fadeIn(500);
		$('#change-frakt').hide();
		$('.delivery-option').show();
		$('.delivery-method').hide();
		$('#enter-contact-person').hide(); 
		$('#enter-billing-address').hide();
		$('#review-order').hide();
	}
		
	function showContactPerson(){ 
		var OK = false;
		
		if(isValidTwoChar(adresserNavn())){ 
			$('label.error[for=adresserNavn]').hide(); OK = true;
		}
		else{
			$('label.error[for=adresserNavn]').show().css('display','block'); OK = false;	
		}

		if(isValidTwoChar(adresserLeveringsadresse())){ 
			$('label.error[for=adresserLeveringsadresse]').hide(); OK = true && OK;
		}
		else{
			$('label.error[for=adresserLeveringsadresse]').show().css('display','block'); OK = false;	
		}
		
		/*if(isValidTwoChar(adresserPoststed())){ 
			$('label.error[for=adresserPoststed]').hide(); OK = true && OK;
		}
		else{
			$('label.error[for=adresserPoststed]').show(); OK = false;	
		}*/
		
		/*$("#getPoststed").load('/4daction/Ajax_Get_Poststed?Nr='+$('#adresserPoststed').val()+'&t='+Math.random());
		var getPoststed = $('#getPoststed').html();
		if (getPoststed == "Not Found"){
			OK = false;	
		}
		else{ 
			OK = true && OK;
		}*/
		
		if(OK){
			$('#enter-delivery-address').hide();
			//$('.order-computation-products').hide();
			$('#change-frakt').show();
			$('.delivery-option').hide();
			$('.delivery-method').show();
			$('#enter-contact-person').fadeIn(500); 
			$('#enter-billing-address').hide();
			$('#review-order').hide();
		}
		
	}
	
	function showBillingAddress(){ 
		var OK = false;
		
		if(isValidTwoChar(ordreBestiltAv())){ 
			$('label.error[for=ordreBestiltAv]').hide();OK = true; 
		}
		else{ 
			$('label.error[for=ordreBestiltAv]').show().css('display','block'); OK = false; 
		}
		
		if(isValidEmailAddress(adresserEpost())){ 
			$('label.error[for=adresserEpost]').hide(); OK = true && OK;
			if(isEqualTo(adresserEpost(), gjentaEpost())){ 
				$('label.error[for=gjentaEpost]').hide(); OK = true && OK;
			}
			else{
				$('label.error[for=gjentaEpost]').show().css('display','block'); OK = false;
			}
		}
		else{
			$('label.error[for=adresserEpost]').show().css('display','block'); OK = false;
		}
		
		if(isValidTwoChar(adresserTelefon())){ 
			$('label.error[for=adresserTelefon]').hide(); OK = true && OK;
		}
		else{
			$('label.error[for=adresserTelefon]').show().css('display','block'); OK = false;	
		}
			
		if (OK){
			$('#enter-delivery-address').hide();
			$('#change-frakt').show();
			$('.delivery-option').hide();
			$('.delivery-method').show();
			$('#enter-contact-person').hide(); 
			$('#enter-billing-address').fadeIn(500);
			$('#review-order').hide();
		}
	}
	
	function showReviewOrder(){
		var OK = false;
		
		$("#review-delivery-Info").html("<p>Navn (firmanavn/instans): "+adresserNavn()+"</p>");
		$("#review-delivery-Info").append("<p>c/o: "+adresserCareOf()+"</p>");
		$("#review-delivery-Info").append("<p>Leveringsadresse: "+adresserLeveringsadresse()+"</p>");
		$("#review-delivery-Info").append("<p>Poststed: "+$('#leverings-poststed').html()+"</p>");
		
		$("#review-contact-person").html('<p>Kontaktperson/Attention: '+ ordreBestiltAv() +'</p>');
		$("#review-contact-person").append("<p>Referanse/rekvisisjon: "+ordreReferanse()+"</p>");
		$("#review-contact-person").append("<p>E-post: "+adresserEpost()+"</p>");
		$("#review-contact-person").append("<p>Telefon: "+adresserTelefon()+"</p>");
		$("#review-contact-person").append("<p>Telefaks: "+adresserTelefaks()+"</p>");
						
		if ($('input:radio[name=vCartFakturaTil]:checked').val() == '1'){
			if(isValidTwoChar(cartFakturaNavn())){ 
				$('label.error[for=cartFakturaNavn]').hide(); OK = true;
			}
			else{
				$('label.error[for=cartFakturaNavn]').show().css('display','block'); OK = false;	
			}
			
			if(isValidTwoChar(cartFakturaAdresse())){ 
				$('label.error[for=cartFakturaAdresse]').hide(); OK = true && OK;
			}
			else{
				$('label.error[for=cartFakturaAdresse]').show().css('display','block'); OK = false;	
			}
			
			$("#getFakturaPoststed").load('/4daction/Ajax_Get_Poststed?Nr='+$('#cartFakturaPoststed').val()+'&t='+Math.random());
			var getFakturaPoststed = $('#getFakturaPoststed').html();
			if (getFakturaPoststed == "Not Found") OK = false;	else OK = true && OK;
			
			$("#review-billing-info").html("<p>Navn (firmanavn/instans): "+cartFakturaNavn()+"</p>");
			$("#review-billing-info").append("<p>c/o: "+cartFakturaCareOf()+"</p>");
			$("#review-billing-info").append("<p>Fakturaadresse: "+cartFakturaAdresse()+"</p>");
			$("#review-billing-info").append("<p>Poststed: "+cartFakturaPoststed()+" "+getFakturaPoststed+"</p>"); //Query poststed here
			$("#review-billing-info").append("<p>Anmerkning til bestilling: "+cartBestillingAnmerkning()+"</p>");
			
		}
		else{
			$("#review-billing-info").html("<p>Fakturaen sendes med leveransen</p>"); OK = true;
		}
		$('#subscribe-newsletter-email').val(adresserEpost());
		
		if(OK){
			$('#enter-delivery-address').hide();
			$('#change-frakt').show();
			$('.delivery-option').hide();
			$('.delivery-method').show();
			$('#enter-contact-person').hide(); 
			$('#enter-billing-address').hide();
			$('#review-order').fadeIn(500);
		}
	}
	
	$('#kunde, #poststed').focus(function(){ 
		$('#AnonymPoststed').val(""); 
	});
	$('#AnonymPoststed').focus(function(){ 
		$('#kunde, #poststed').val(""); 
	});
	
	$('.show-delivery-address').click(function(){ 
		showDeliveryAddress(); 
	});
		
	$('.show-contact-person').click(function(){ 
		showContactPerson(); 
	});  
	$('#adresserNavn, #adresserCareOf, #adresserLeveringsadresse').keydown(function(e){ 
		if (e.which == 13) showContactPerson(); else return true; 
	});
	
	$('.show-billing-address').click(function(){ 
		showBillingAddress(); 
	}); 
	$('#ordreBestiltAv, #ordreReferanse, #adresserEpost, #gjentaEpost, #adresserTelefon, #adresserTelefaks').keydown(function(e){ 
		if (e.which == 13) showBillingAddress(); else return true; 
	});	
	
	$('.show-review-order').click(function(){ 
		showReviewOrder(); 
	});
	$('#cartFakturaTil1, #cartFakturaTil2, #cartFakturaNavn, #cartFakturaCareOf, #cartFakturaAdresse').keydown(function(e){ 
		if (e.which == 13) showReviewOrder(); else return true; 
	});
	
	$("#cartFakturaPoststed").blur(function(){ 
		$("#getFakturaPoststed").load('/4daction/Ajax_Get_Poststed?Nr='+this.value+'&t='+Math.random()); 
	});
	
	$('input:radio[name=vCartFakturaTil]').change(function(){
    	if ($('input:radio[name=vCartFakturaTil]:checked').val() == '0'){
        	$('div.deliveryAddress').slideUp(200);
		}
   		else if ($('input:radio[name=vCartFakturaTil]:checked').val() == '1'){
        	$('div.deliveryAddress').slideDown(200);
		}
	});
	
	$('#subscribe-newsletter-check').change(function(){
		if ($('#subscribe-newsletter-check').attr('checked')){
			$('#subscribe-options').slideDown(100);		
		}
		else{
			$('#subscribe-options').slideUp(100);		
		}
	});
	
	/*$('#checkout').click(function(){
		var checked = $('#subscribe-newsletter-check').is(':checked');
		if (!checked){
			var  r=confirm("Er du sikker på at du ikke ønsker å motta tilbud og nyheter fra oss på e-post?");
			if(r==true){
				return true;
			}
			else{
				$('.grow-box').animate( { fontSize:"20px" }, 1500 ).animate( { borderWidth:"5px" },500 ).animate({ color:"#FF0000" }, 500);
				return false;
			}
		}
	});*/

	/**********************************************/

});
