$(window).bind('beforeunload', function() {} );
var warenkorb = {};
var reverse = false;
var previousSlide = false;
var listUrl = "/list.php";
var headerData = [];
var showTheCart = "Warenkorb <br>show the cart";
var strItemsInCart = "Artikel im Warenkorb <br/>items in cart";
var continueOrder = "mehr bestellen<br>continue shopping";
var miniWarenkorb = "<img src='/common/icons/mini_warenkorb.gif' style='border:none;position:absolute;left:-33px;' />";
var allAmazing = ""; //"&nbsp;all Amazing Shops ...";
var enterTitle = "Titel eingeben";
var searchResultTitle = "&nbsp;searchresult / Suchergebnis : ";
var suchTitle = "&nbsp;search title / Titelsuche";
var tablePagination = 20;
//----------------------------
function mailsend(mail,p1,p2,p3) {
	var ca;
	ca = "mailto:" + p2 + "\@" + p3 + "." + p1;
	mail.href = ca;
	return (1);
}
//----------------------------
var beforeImg = "";
function cleanText(str){
	str = str.replace(/ /ig, "_");
	str = str.replace(/\(/ig, "");
	str = str.replace(/\)/ig, "");
	str = str.replace(/\//ig, "");
	str = str.replace(/&nbsp;/ig, "_");

	str = str.replace(/__/ig, "_");
	str = str.replace(/_$/ig, "");

	return escape( str.toLowerCase() );
}

$(document).ready( function(){

		$("#flextable tr").live("mouseover", function(event){
				var txt = $($(this).children().get(1)).find("div").html() + "_"+ $($(this).children().get(2)).find("div").html();
				txt = cleanText( txt );
				if( $("#inflyme").length==0){
					$(".flyme").find("img").attr("id", "default_pic");
					$(".flyme").prepend("<img id='inflyme' src='' alt='' /><br/>");
					$(".flyme").append("<br/><input onfocus='this.select()' id='inflyerror' type='text' value='' style='background-color:transparent;font-size:small; border:none;' />");
					$("#inflyerror").hide();
				}
				var file = "/images/item/"+txt+".jpg"
				$.getJSON("/common/file_exists.php?name="+file+"&default=x", function(data){
					if(data == "x"){
						$("#inflyerror").val(txt+".jpg");
						$("#inflyerror").show();
						$("#default_pic").show();
					}else{
						$("#inflyme").attr("src", "/thumbs/x170"+data);
						$("#inflyme").attr("alt", file);
						$("#inflyme").show();
						$("#inflyerror").hide();
						$("#default_pic").hide();
					 }
				});
		});

		$("#flextable tr").live("mouseout", function(event){
				$("#inflyme").hide();		
		});

		if($(document).width() < 1030){
			$(".thestuff").css({"marginRight":0});	
		}

/*	
	if($("#farbta").length==0){
		$(document.body).append("<div id='farbta' style='z-index:10000;position:absolute; overflow:hidden;top:0px; right:0px;width:20px; height:20px;'><div class='farbtog' style='width:20px;height:20px;position:relative;'>&nbsp;</div><div class='tadaa'></div></div>");
		$(".farbtog").toggle( function(){$("#farbta").css({width:200,height:200});}, function(){$("#farbta").css({width:20,height:20});});
		var f = $.farbtastic(".tadaa", function(val){
			//console.log(val, vul);
			$(".farbtog").html(val);
			val = val.replace(/#/i, "");
			$(".bbord, .overshop").css({"backgroundImage":"url(/thumbs/background/"+val+"_50.png)"});
		});
		f.setColor("#22AAAA");
	}
*/
	adjustLargeThumb();
	// logo ausdünnen damit coverflow besser aussieht
	$(".toog").live("mouseover", function(){ $(this).addClass("tooga"); });
	$(".toog").live("mouseout", function(){ $(this).removeClass("tooga"); });
	$(".aktuellblock").live("click", function(){ document.location.href= $(this).find("a").attr("href"); } );
	
	$("#dshop, #flow").hover( function(){
		$(".opal").fadeTo(200, 0.3);
		$("#flow").fadeTo(200, 1.0);
	},
	function(){
		$(".opal").fadeTo(200, 1.0);	
		$("#flow").fadeTo(200, 0.3);
	})
	// aus dem Warenkorb löschen
	$("#warenkorb tbody img").live("click", function(){
		var tus = $(this).parents("tr");
		var id = findId(tus);
		//alert(id);
		delete( warenkorb[ id ] );
		$(".trSelected").each( function(){ if( findId( tus) == id  ){ tus.removeClass("trSelected") } } );
		tus.remove();
		//reCalc();
		setCounter()
		storeOrder();
	});

	//order();
	// in den warenkorb legen
	$("#flextable tr").live("click", function(){
		var id = findId(this);
		//alert(id);
		if(!confirm("wollen Sie den Artikel in den Warenkorb legen?")){
			return;
		}
		if( $(this).hasClass("trSelected") ){
			warenkorb[id] = $(this).html();
			$(this).css({"overflow":"hidden"});
			
			animateItemToBasket(this);
			
			if($("#warenkorb th").length==0){
				$("#warenkorb").find("thead").append("<tr id='heady'><th></th></tr>");
				$("#warenkorb").find("tfoot").append("<tr id='footy'><th></th></tr>");
				$("#newflex").find("th").each( function(){
					$(this).appendTo($("#heady"));
					$("#footy").append("<th> </th>");

				});

//$.toJSON(thing)
				//$("#newflex").find("th").each( function(){ $(this).appendTo($("#footy")); /*$("#footy").append("<th> </th>");*/ });
			}
			$("#warenkorb").find("tbody").append("<tr id='w_"+id+"'><td title='delete from cart - aus dem Warenkorb entfernen'><img class='remover' src='/common/icons/remove.gif' /></td>"+warenkorb[id]+"</tr>");
			setCounter();
			$(this).remove();
		}else{
			delete( warenkorb[id] );
			$("#w_"+id).remove();
		}
		reCalc();
		storeOrder();
	});


	
//**hidemenus
	$("#sidebar ul").hide();
	$(".page_selection").parents("ul").show();
	$(".page_selection").next().show();
	$("ul.menu").show();
	$("#sidebar li>a:nth-child(1)").live( "click", function(){
		$(this).next().show("slow");
	});
//**	
	doScrollAktuell();
	detectAllShops();
	detectActiveShop();
	createShopSelection();
	//$(".allshopmenu ul").hide();
	$(".basket").css({color:"#DDD"});
	
//**checkInsideShop
	var inShop = false;
	//if( $(".page_selection").attr("href") == "/content/shop"){ inShop = true;}
	if( $(".page_selection").parents().hasClass("allshopmenu") ){ inShop = true;}

	if( !(inShop) ){
		$(".allshopmenu > ul").hide();
	}else{
		$(".menu ul").hide();
		$(".allshopmenu > ul").show();

	}
//**	

	equalizeHeight();
	//$(".thumbimage").eq(0).css({opacity:0.5});
	$(".ptogtitle").live("click", function(){ $("#newflex").remove(); });
	$.getJSON(listUrl+"?action=headers&format=json&jsoncallback=?", function(response){
		headerData = response;
		$(".tripshow").live("click", function(){ showfilter(this,  $(this).attr("qtype"),  $(this).attr("query"),  $(this).html() ); });
		$(".basket").css({color:"#000"});


	});
//	$(".kick").click( function(){ doScrollAktuell();
//	});
	//aktuellblock")
	
	//------------------------------
	//style cookie
/*
	$.getJSON("/common/styleselection.php", function(result){
		var str = "";
		for(var i in result.data){
			var act =(result.data[i] == result.actual)? "*" : "";
			str += "<li class='styleselection' data='"+result.data[i]+"'>"+result.data[i]+" "+act+"</li>";
		}
		$("ul.menu").append("<li ><a>Style</a><ul style='display:none'>"+str+"</ul></li>");
	});
	$(".styleselection").live("click", function(){ $.cookie("layout", $(this).attr("data"), {path: '/', expires: 2 }); document.location.reload() });
*/
	//********
	preSiz = parseInt( $("#sidebar .innerboard").width() /2) *2;

	$("a").each( function(){
	//console.log( $(this).attr("query") );
		if( $(this).attr("query") ){
		//preImg.push( "/thumbs/x" + preSiz + "/images/cover/"+$(this).attr("query") );
			//console.log( "/thumbs/x" + preSiz + "/images/cover/"+$(this).attr("query") );
		}
	});
	//$.preLoadImages(preImg);
	$(".tripshow").live( "mouseover" , function(){
		//console.log(img);
		var q = $(this).attr("query"); // $(this).parent().prevAll().length;
		myNewFlow.moveTo(flowPos[q]);
	});
	
	// click to show background image
	$(".tripshow").live( "click" , function(){
		$(".topp").hide();
		var pad = parseInt( $(".bbord").css("paddingRight"));
		var marge = parseInt( $(".thestuff").css("marginRight"));
		
		var size = marge -(pad);
		var img = "/thumbs/x" + size + "/images/cover/"+$(this).attr("query") + ".jpg";
		if($(".flyme").length ==0){
			$("#main .bbord").append("<div class='flyme' style='position:absolute;top:"+pad+"px;right:"+pad+"px;'><img src='' />");
		}
		$(".flyme").animate({"top":$(window).height()}, 200, function(){
			$(".flyme img").attr("src", img);
			$(".flyme").animate({"top":pad*2}, 1000 );
		});
		
		//$("#main .innerboard").css({"backgroundColor":"#EEE","backgroundRepeat":"no-repeat","backgroundPosition":"right 80px ","backgroundImage": "url("+img+")" });
	});

	$("#footer").find(".page_selection").removeClass("page_selection");

});
var preSiz = 100;
var preImg = {};

function searchTitle(obj){
	showfilter(obj, "title", $(obj).val(), searchResultTitle + $(obj).val());
}
//----------------------------
function animateItemToBasket(row){
	var spos = $(row).offset();
	var tpos = $("#main").offset();
	var rect = "<div id='anim'><table style='width:100%;height:100%'><tr>"+ $(row).html() + "</tr></table></div>";
	$(document.body).append(rect);
	$("#anim").css({"position":"absolute", top:spos.top, left:spos.left, "backgroundColor":"red", zIndex:10000, overflow:"hidden"});
	$("#anim").animate({left:tpos.left+50,top:tpos.top+50, width:$(".toog").width() }, 1000, function(){ $("#anim").remove(); $(row).find("td").html("&nbsp;"); } );
	
}
//----------------------------

function adjustLargeThumb(){
	var w = $(window).width();
	var h = $(window).height();
	var x = Math.max(w, h);
	if(x>1024){ x=1024;
	}else if(x>800){ x=800; 
	}else if(x>800){ x=800; 
	}else if(x>640){ x=640; 
	}else if(x>480){ x=480; 
	}else{ x = 320; }
	$(".thumbimage a").each( function(){
		
		var href = $(this).attr("href");
		href = href.replace(/\/album\//i, "/thumbs/f"+x+"/")
		$(this).attr("href", href);
	});
}
//----------------------------
function setCounter(){
	var cc = $("#warenkorb").find("tbody tr").length
	$(".counter").html( "<b class='amount'>"+cc +"</b>"+ strItemsInCart+"<br />CHF <b class='chf'>"+reCalc()+".00</b>" )
}
//----------------------------
function reCalc(){
	var col = headerData.data.reverse["price"];
	var summe = 0;
	$("#warenkorb tbody tr").each( function(){
		summe += parseFloat( findPrice($(this)) );
	});
	return summe;

}
//----------------------------
function findId(obj){
	var pos = headerData.data.reverse["unique"];
	return $(obj).find("td:eq("+(pos+1)+")" ).text();
}
//----------------------------
function findPrice(obj){
	var pos = headerData.data.reverse["price"];
	return $(obj).find("td:eq("+(pos+1)+")" ).text();
}

//----------------------------
var extraShop = "";
function detectAllShops(){
	$("#sidebar .embed").find("a").each( function(){
		if($(this).text().match(/shop/i) ){
			$(this).css({"position":"relative"});
			extraShop += "<li>"+$(this).parent().html()+"</li>";
			$(this).html( "<span style='display:none'>"+ miniWarenkorb + $(this).html() + "</span>" );
		}
	});
}
//----------------------------
function detectActiveShop(){
	if($(".page_selection").text().match(/shop/i) ){
		$("#dshop").show();
		adjustForShop(20, 200, 1);
	}else{
		$("#dshop").hide();
		//console.log( $(".page_selection").text() );
	}

}
//----------------------------
function doScrollAktuell(){
	if($("#scroll").length==0){
		$("#header").append("<div id='scroll'>&nbsp;</div>");
		$(".aktuellblock").appendTo("#scroll");
		$(".aktuellblock").css({paddingTop:"10px",marginBottom:"100px", color:"#FFF"});
		$(".aktuellblock a").css({color:"#FFF"});
		$("#aktuell >.aktuellblock").remove();
		$(".kick").hide();
		$('#scroll').serialScroll({
			items:'.aktuellblock',
			//prev:'#screen2 a.prev',
			//next:'#screen2 a.next',
			//offset:-230, //when scrolling to photo, stop 230 before reaching it (from the left)
			start:0, //as we are centering it, start at the 2nd
			//duration:1200,
			force:true,
			stop:true,
			lock:false,
				axis:'y',
				interval:6000,
				step:1,

			cycle:true, 
			easing:'easeOutQuart', 
			jump: true //click on the images to scroll to them
		}); 
	}
}
//----------------------------
function equalizeHeight(){
	$("#main").css({height:"auto"});
	$("#aktuell").css({height:"auto"});
	$("#sidebar").css({height:"auto"});

	var h = Math.max ( $("#main").height(), $("#aktuell").height(), $("#sidebar").height() );
	$("#main").css({height:h});
	$("#aktuell").css({height:h});
	$("#sidebar").css({height:h});
	setTimeout("equalizeHeight()", 1000);

}

//----------------------------
function showBasket(){
	$("#basket").hide();
	$("#basket").load("/store.php", function(){
		setCounter();
		if($("#filladdress").length==0){
			$("#basket").html("<div id='basket'><div id='filladdress'></div><table border='1' id='warenkorb' style='border-collapse:collapse;'><thead></thead><tfoot></tfoot><tbody></tbody></table></div>");
			//order();
		}
		//$("#footy").find("th:eq(1)").html("<a id='order' onclick='order();'><button>Order Article / Artikel Bestellen</button></a>");
	});
	//
}
//----------------------------
function toggleShop(){
	if($("#basket").is(":visible")){
		$(".continuer").html(showTheCart);
		$(".topp").hide();
		$("#basket").slideUp("slow", function(){
			$("#newflex").slideDown("slow");
		});
	}else{
		$(".continuer").html(continueOrder);
		$("#newflex").slideUp("slow", function(){
			$("#basket").slideDown("slow");
			order();
			$("#main .innerboard").css({"backgroundImage": "url()" });
			$(".topp").show();
			
		});
		
	}
}
//----------------------------
var myNewFlow = new ContentFlow('flow');
var movedToList=false
// verbreitet sidebar und reduziert main
//------------------------------------------
var flowPos = {};
var posCnt = 0;
function addImg(obj){
	myNewFlow.addItem(obj, "last");
	var query = $(obj).attr("query");
	flowPos[query] = posCnt++;
}
//------------------------------------------
function createShopSelection(){
	var ul = "";
	var xtra = "<div class='h3'>"+miniWarenkorb+allAmazing+"</div><ul class='othershops'>"+extraShop+"</ul>";
	xtra += "<div class='h3'>"+suchTitle+"</div><div class='sucha othershops'><input type='text' value='"+enterTitle+"' onfocus='this.value=\"\"' onchange='searchTitle(this)' /><button onclick='searchTitle($(this).prev().get(0))'>&gt;</button></div>";
	$("#dshop").append("<div class='overshop'>"+xtra+"</div><ul class='selection'></ul>");
	$(".allshopmenu").append("<ul >"+extraShop+"</ul>");
	$(".othershops").hide();
	$(".overshop .h3").toggle( 
		function(){
			$(this).next().slideDown();
		}, 
		function(){$(this).next().slideUp();
	});
	$(".basket").each( function(){
		$(this).find(".triplink").appendTo("#dshop .selection");
		$(this).remove();
	});
}
//------------------------------------------
function adjustForShop(margin, siz, speed){
	if(movedToList==true){ return; }
	var w = $(document.body).width() - margin ;

	var ox = parseInt( $("#main").css( "marginLeft") );
	$("#wrap").css({"margin":margin, width:"auto"});
	$("#main").css({"marginLeft": ox+siz });
	$("#main .innerboard").addClass("thestuff");
	var sw = $("#sidebar").width();
	$("#sidebar").css({width: sw+siz});
	$(".basketselected").removeClass("basketselected");
		movedToList=true;
	//	createShopSelection();
/*
	$("#wrap").animate({width:w }, speed, function(){
		$("#wrap").css({"margin":margin, width:"auto" });
		var ox = parseInt( $("#main").css( "marginLeft") );
		$("#main").animate({marginLeft: ox+siz},speed, function(){
			var sw = $("#sidebar").width()
			$("#sidebar").animate({width: sw+siz},speed,
				function(){
					$(".basketselected").removeClass("basketselected");
					if(movedToList==false){
						createShopSelection();
						movedToList=true;
					}
				}
			
			);
		});

	});
*/
}
function renderActor(){
	return "<div class='toggler'><table style='width:100%;'><tr><td ><div class='toog' onclick='toggleShop();'><img src='/common/icons/warenkorb.png' /><div class='continuer'>"+showTheCart+"</div></div></td><td ><div class='counter'></div></td></tr></table></div>";
}
//----------------------------
// zeigt eine Tabelle von choice
function showfilter(obj, qtype, query, caption){
	
	if($("#newflex").length!=0){$("#newflex").remove();}
	$("#main .innerboard").html("<div><div class='topp'>"+renderActor()+"</div><div id='basket'></div>"+ renderActor() +"<div id='newflex'><table id='flextable'></table></div>");
	showBasket();
	$(".topp").hide();
	var rpTrue = (tablePagination>0) ? true : false ;
	var jurl = listUrl+"?action=list&format=json";
		//data.display
		var argList = {
			url: jurl,
			colModel :headerData.data.display,
			searchitems : headerData.data.search,
			dataType: 'json',
			"qtype": qtype,
			"query": query,
			sortname: "title",
			sortorder: "asc",
			usepager: true,
			title: caption,
			useRp: rpTrue,
			rp: tablePagination,
			showTableToggleBtn: true,
			blockOpacity:1.0,
			onSuccess: function(){
				equalizeHeight();
				doScrollAktuell();
			},
			width: "560",
			height: "auto"
			};
			$("#newflex").html("<table id='flextable'></table>");
		$("#flextable").flexigrid(argList);
		$('#newflex').show();
}
//------------------------------------------
(function($) {
  var cache = [];
  // Arguments are image paths relative to the current page.
  $.preLoadImages = function() {
    var args_len = arguments.length;
    for (var i = args_len; i--;) {
      var cacheImage = document.createElement('img');
      cacheImage.src = arguments[i];
      cache.push(cacheImage);
    }
  }
})(jQuery)
//------------------------------------------

var nextImageLoad=0;
function showC(){
	var inx=nextImageLoad;
	nextImageLoad = 1 - nextImageLoad;
	var out = nextImageLoad;
	$(".flexigrid").css({"zIndex":15});
	$("#comic"+inx).hide();
	$("#comic"+inx).css({"zIndex":11});
	$("#comic"+out).css({"zIndex":10});
	$("#comic"+inx).fadeIn("slow");
}

//----------------------------
//----------------------------
function order(){
	var contentURI = "/common/view.php?mode=content&object=";
	$("#filladdress").load(contentURI+"/segmente/addressform.htm", function(){
		$("#filladdress").show();
		var art = "";

		$("#warenkorb").find("tr").each( function(){
			art += "<tr>";
			$(this).find("td").each( function(){
				var t = ( $(this).text()=="&nbsp" || $(this).text()=="" || $(this).text()==" ") ? "-" : $(this).text() ;
				art += "<td style='border:solid 1px red;'> "+ t +"</td>";
			});
			art += "</tr>";
		});
		$("#artikel").val( "<table border='1' cellspacing='1' cellpadding='1' style='border:solid 1px red;'>"+ art +"</table>" );
	});
}

//----------------------------
function storeOrder(){
	var url = "/store.php";
	jQuery.post( url, {basket:$("#basket").html()}, function(){});

}
//----------------------------

