$(document).ready(function(){
	$.ef ={};
	$.ef.wishlist = COOKIE.read("ef-wishlist");
/* 	$.ef.wishlist = COOKIE.erase("ef-wishlist"); */

	var h = $("#content .left.row1").height();
	//$("#content .left.row2").css({ height: h + "px" });

	var h = $(".band-meta").height()-5;
	$("#content .left.row1 .left .content-order").css({ height: h + "px" });

	initWishlist();

	$("#header .row2 a:not(#wishlist, .kontakt-ef), #fancybox-outer a, .teaser-authors-wrap .back img, .band-galerie a img").live('mouseover', function(){
		$(this).stop().animate({ opacity: .6 }, 200);
	}).live('mouseout', function(){
		$(this).stop().animate({ opacity: 1 }, 200);
	});

	$("#header .row2 a.kontakt-ef img, p.gototop a img, a.cancel-wishlist img").hover(function(){
		var src = $(this).attr("src").replace("gruen", "rot");
		$(this).attr("src", src);
	}, function(){
		var src = $(this).attr("src").replace("rot", "gruen");
		$(this).attr("src", src);
	});

	$("a.addto-wishlist, a.refresh-wishlist, a.removeall-wishlist, a.send-wishlist").live('mouseover', function(){
		$(this).addClass("remove-wishlist-hover");
	}).live('mouseout', function(){
		$(this).removeClass("remove-wishlist-hover");
	});

	var i = 1001;
	$(".band-galerie:not('.no-group') a").each(function(){
		i=i-1;
		$(this).attr("rel", "gal-group").find("img").css({ zIndex: i });
	});
	
  $("div.band-galerie a[rel=gal-group]").fancybox({
		'transitionIn'		: 'none',
		'transitionOut'		: 'none',
		'titleShow': false
	});

	$("p.gototop a").click(function(){
		$("html, body").animate({ scrollTop: 0 }, 400);
		return false;
	});

	$("a.addto-wishlist").live("click", function(){
		var wishlist = COOKIE.read("ef-wishlist");
		var id = $(this).attr("id");

		if (wishlist==null)
			wishlist = id + "-";
		else if (wishlist.indexOf(id) != -1)
			wishlist = wishlist;
		else
			wishlist = wishlist + id + "-";

		$.ef.wishlist = COOKIE.create("ef-wishlist", wishlist);

		initWishlist();
		return false;
	});

	$("a.remove-wishlist").live("click", function(){
		var id = $(this).attr("id");
		var wishlist = COOKIE.read("ef-wishlist");

		$.ef.wishlist = COOKIE.create("ef-wishlist", wishlist.replace(id + "-", ""));
		$("#" + id).html("auf den Wunschzettel").addClass("addto-wishlist").removeClass("filled remove-wishlist");

		initWishlist();
		return false;
	});

	$("a.cancel-wishlist").live("click", function(){
		var id = $(this).attr("id");
		var wishlist = COOKIE.read("ef-wishlist");
			
		$(this).parent().parent().addClass("canceled-row");
		$(this).parent().prev().find("p").addClass("canceled");

		$(".canceled-row").delay(1800).animate({ opacity: 0 }, 800, function(){
			if ($(".wishlist TBODY").children().size()<=3)
				$("#wrapper-my-wishlist").remove();
			else
				$(this).remove();

			$.ef.wishlist = COOKIE.create("ef-wishlist", wishlist.replace(id + "-", ""));
			initWishlist();
		});

		return false;
	});

	$("a.send-wishlist").live("click", function(){
		$("#content .row1 .wishlist-form").show();

		var t = $(".wishlist-form").offset().top - 200;
		$("html, body").delay(200).animate({ scrollTop: t + "px" }, 800);

		return false;
	});

	$(".left.row2.news div.wrap:last-child").css({ borderBottom: "0px none", paddingBottom: 0, marginBottom: 0 });
	$(".teaser-books-wrap:nth-child(6), .teaser-authors-wrap:nth-child(6), .teaser-authors-wrap:nth-child(11)").css({ marginLeft: 0 });

	var options = {
		target:        '#wishlist-form',
		beforeSubmit:  validate,
		success:       showResponse,
		url:       		 'http://www.editionfuenf.de/send-wishlist.php'
	};

	$('#wishlist-form').ajaxForm(options);


	$("div.teaser-books-wrap").hover(function(){
		$('div.front', this).removeClass("hidden");
		$('div.back', this).addClass("hidden");
	}, function () {
		$('div.back', this).removeClass("hidden");
		$('div.front', this).addClass("hidden");
  });
	
	$("div.teaser-books-wrap").click(function () {
		window.open($("a", this).attr("href"), '_parent');
	});

});

$(window).load(function(){
	var h = $("#content .left.row1").height();
	$("#content .left.row2:not('.news')").css({ height: h + "px" });

	var h = $(".band-meta").height()-5;
	$("#content .left.row1 .left .content-order").css({ height: h + "px" });	
});


function initWishlist(){
	$("#wrapper-my-wishlist").remove();
	$("#content .row1 .wishlist-form").hide();

	var wishlist = COOKIE.read("ef-wishlist");

	if (wishlist!=null && wishlist!=""){
		var wishlistArray = wishlist.split("-");
		var wishlistCount = wishlistArray.length-1;

		$("#my-wishlist").append('<div id="wrapper-my-wishlist"></div>');

		$("#header .row2 a:not('#wishlist')").addClass("small-margin");
		$("#wishlist").html("Wunschzettel (" + wishlistCount + ")").addClass("filled");

		$("#wrapper-my-wishlist").append('<table class="wishlist"><tr><th class="my-wishlist-title">Ich wünsche mir:</th><th></th></tr>');

		for (var i=0; i<wishlistCount; i++){
			$("#wrapper-my-wishlist table").append('<tr><td><div class="left height"><a title="Zum Band ' + wishlistArray[i].replace(/[a-zA-Z]+/, "") + '" href="' + band[wishlistArray[i]][7] + '"><img src="' + band[wishlistArray[i]][0] + '"></a></div><div class="left height"><div class="content-teaser"><p class="no-space">' + band[wishlistArray[i]][1] + '</p><p class="no-space-bold">' + band[wishlistArray[i]][2] + '</p><p class="oblique no-space"><span class="oblique">' + band[wishlistArray[i]][3] + '</span></p><p class="teaser-small meta">' + band[wishlistArray[i]][4] + '<br />' + band[wishlistArray[i]][5] + '<br />' + band[wishlistArray[i]][6] + '</p></div></div><div class="clear"></div></td><td><a href="" class="right cancel-wishlist" id="' + wishlistArray[i] + '"><img alt="Band entfernen" title="Band entfernen" src="assets/optik/images/bleistift-gruen.png" /></a></td></tr>');

			// seite band;; auslagern
			$("#" + wishlistArray[i] + ".addto-wishlist").html("vom Wunschzettel entfernen").removeClass("addto-wishlist").addClass("filled remove-wishlist");
		}

		$("#wrapper-my-wishlist table").append('<tr><td colspan="2" class="wishlist-actions"><a href="./unsere-ersten-fuenf/" class="removeall-wishlist">noch mehr Wünsche?</a><a href="" class="send-wishlist">Wunschzettel versenden</a></td></tr>');
		
		$("#wrapper-my-wishlist").append('</table>');

		$("#wishlist-band-data").empty();
		for (var i=0; i<wishlistCount; i++){
			var ndx = "band" + i;
			$("#wishlist-band-data").append('<input type="hidden" name="data[' + ndx + '][autor]" value="' + band[wishlistArray[i]][1] + '">');
			$("#wishlist-band-data").append('<input type="hidden" name="data[' + ndx + '][titel]" value="' + band[wishlistArray[i]][2] + '">');
			$("#wishlist-band-data").append('<input type="hidden" name="data[' + ndx + '][genre]" value="' + band[wishlistArray[i]][3] + '">');
			$("#wishlist-band-data").append('<input type="hidden" name="data[' + ndx + '][pages]" value="' + band[wishlistArray[i]][4] + '">');
			$("#wishlist-band-data").append('<input type="hidden" name="data[' + ndx + '][price]" value="' + band[wishlistArray[i]][5] + '">');
			$("#wishlist-band-data").append('<input type="hidden" name="data[' + ndx + '][isbn]" value="' + band[wishlistArray[i]][6] + '">');
		}
	}
	else{
		$("#header .row2 a:not('#wishlist')").removeClass("small-margin");
		$("#wishlist").html("Wunschzettel").removeClass("filled");
		$("#wrapper-my-wishlist").remove();
		
		$("#my-wishlist").append('<p class="oblique-red space-top">Es sind noch keine Wunschtitel ausgewählt.</p>');
	}
}



function validate(formData, jqForm, options){
	var queryString = $.param(formData);

	var senderFirstnameValue = $('input[name=sender-firstname]').fieldValue();
	var senderLastnameValue = $('input[name=sender-lastname]').fieldValue();
	var senderEmailValue = $('input[name=sender-email]').fieldValue();

	var receiverFirstnameValue = $('input[name=receiver-firstname]').fieldValue();
	var receiverLastnameValue = $('input[name=receiver-lastname]').fieldValue();
	var receiverEmailValue = $('input[name=receiver-email]').fieldValue();		

 	var err = false;
	
	// reset
 	$('input[name=sender-firstname], input[name=sender-lastname], input[name=sender-email], input[name=receiver-firstname], input[name=receiver-lastname], input[name=receiver-email]').removeClass("error");

  if (!senderFirstnameValue[0]){
	  $('input[name=sender-firstname]').addClass("error");
    err = true;
  }
  if (!senderLastnameValue[0]){
	  $('input[name=sender-lastname]').addClass("error");
    err = true;
  }
  if (!validate_email(senderEmailValue[0])){
	  $('input[name=sender-email]').addClass("error");
    err = true;
  }
  if (!receiverFirstnameValue[0]){
	  $('input[name=receiver-firstname]').addClass("error");
    err = true;
  }
  if (!receiverLastnameValue[0]){
	  $('input[name=receiver-lastname]').addClass("error");
    err = true;
  }
  if (!validate_email(receiverEmailValue[0])){
	  $('input[name=receiver-email]').addClass("error");
    err = true;
  }

	if (err)
		return false;

	return true; 
}


function showResponse(responseText, statusText){
	$.ef.wishlist = COOKIE.erase("ef-wishlist");
		
	initWishlist();

	$("#my-wishlist").append(responseText);
	return false;
}


function UnCryptMailto(s){
	var n = 0;
  var r = "";

  for (var i=0; i<s.length; i++){
	  n = s.charCodeAt(i);
    if (n>=8364)
	    n = 128;

    r += String.fromCharCode(n - 1);
  }
  return r;
}


function linkTo_UnCryptMailto(s){
	location.href = UnCryptMailto(s);
}


function validate_email(field){
	return (/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i.test(field));
}


/**
  * Create/Read/Delete Cookies - based on code from PPK
  * http://www.quirksmode.org/js/cookies.html
  */
  var COOKIE = function(){
    return{
      /*
      * @param{String}  name   The cookie name
      * @param{String}  value  The value to store
      * @param{Integer} days   The number of days to store the value
      */
      create: function(name, value, days){
        if (days){
          var date = new Date();
          date.setTime(date.getTime()+(days*24*60*60*1000));
          var expires = "; expires="+date.toGMTString();
        }
        else var expires = "";
        document.cookie = name+"="+value+expires+"; path=/";
      },

      /*
      * @param{String}  name   The cookie name
      */
      read: function(name){
        var nameEQ = name + "=";
        var ca = document.cookie.split(';');
        for(var i=0;i < ca.length;i++){
          var c = ca[i];
          while (c.charAt(0)==' ') c = c.substring(1,c.length);
          if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
        }
        return null;
      },

      /*
      * @param{String}  name   The cookie name
      */
      erase: function(name){
        COOKIE.create(name,"",-1);
      }
    }
  }(); // end COOKIE


/*
	$("a.refresh-wishlist").live("click", function(){
		sendWishlist();
		return false;
	});
*/
/*
function sendWishlist(){
	var wishlist = COOKIE.read("ef-wishlist");

	if (wishlist != null && wishlist != ""){
		var wishlistArray = wishlist.split("-");
		var wishlistCount = wishlistArray.length-1;
		var baende = "";

		for (var i=0; i<wishlistCount; i++){
			var j = i+1;
			var ndx = "band" + j;
			
			baende += band[wishlistArray[i]][1] + "%0d%0a";
			baende += band[wishlistArray[i]][2] + "%0d%0a";
			baende += band[wishlistArray[i]][3] + "%0d%0a%0d%0a";
			baende += band[wishlistArray[i]][4] + "%0d%0a";
			baende += band[wishlistArray[i]][5] + "%0d%0a";
			baende += band[wishlistArray[i]][6] + "%0d%0a";
			baende += band[wishlistArray[i]][7] + "%0d%0a%0d%0a--%0d%0a%0d%0a";
		}

		var subject = "edition fünf - Wunschzettel von";
		var body = "Liebe(r) %0d%0a%0d%0a im Herbst 2010 sind die ersten Bände der edition fünf erschienen. In drei %0d%0a Romanen, einem Selbstzeugnis und einem Band mit Erzählungen loten Autorinnen %0d%0a aus, wie Frauen sich die Welt erobern. %0d%0a%0d%0a Die Bücher kommen in schönstem Gewand daher: Leinengebunden, mit %0d%0a Lesebändchen und Geschenkbanderolen. %0d%0a%0d%0a Zum Leseglück fehlen mir noch die folgenden Bände: %0d%0a%0d%0a " + baende + " %0d%0a%0d%0a Die wünsch ich mir! %0d%0a%0d%0a%0d%0a Mit herzlichen Grüßen";
 
		subject = subject.replace(/ü/g, "%c3%bc");

		body = body.replace(/ß/g, "%e2%82%ac");
		body = body.replace(/ü/g, "%c3%bc");
		body = body.replace(/ö/g, "%c3%b6");
		body = body.replace(/ä/g, "%c3%a4");
		body = body.replace(/Ü/g, "%c3%9c");
		body = body.replace(/Ö/g, "%c3%96");
		body = body.replace(/Ä/g, "%c3%84");
		body = body.replace(/ß/g, "%c3%9f");

		location.href = 'mailto:?subject=' + subject + '&body=' + body;
	}
	return false;
}
*/
