	
	var arrSteps=4;
	
	
	var notepad=function()
	{
		var opened=false;
		var removed=false;
		var added=false;
		var fail = false;
	};
	
	notepad.toggle=function()
	{
		if(notepad.opened!=true)
		{
			notepad.opened=true;
		}
		else if(notepad.opened==true && (notepad.removed==true || notepad.added==true))
		{
			notepad.opened=true;
		}		
		else
		{
			notepad.close();
		}
		notepad.update();
		notepad.updateopened();
	};
	
	notepad.close=function()
	{
		$("#notepad").animate({ height: 20 },500,function(){});
		notepad.opened=false;
	};

	notepad.update=function()
	{

		var st=$.cookie("notepad");
		if(st != null)
		{
			var arr=st.split(",");
			var s="";

			if(notepad.opened==true)
			{
				$("#notepad").animate({ height: (arr.length/arrSteps)*35+180 },500,function(){});
			}

			if(arr.length>2)
			{
				for(var i=0;i<arr.length;i+=arrSteps)
				{
					var url=arr[i+0];
					var title=arr[i+1];
					var uuid=arr[i+2];
					var colorcode=arr[i+3];

					s+='<div style="height:40px;"><a onClick="notepad.remove(\''+colorcode+'\');" style="text-decoration:none;">x</a> <b><a href="'+url+'?colorcode='+colorcode+'">'+title+' - '+colorcode+'</a></b><br/></div>';
				}
			}
//<a href="#" onclick="simulator.show();" style="padding-left:7px;">Simulation starten</a>
			$('#numnotepad').html(Math.round(arr.length/arrSteps));
			$('#notepadcontent').html(s);
		}
		
		notepad.updateopened();
	}
	
	notepad.updateopened=function()
	{
		if(notepad.opened==true)
		{
			$('#notepadopenclose').attr("src","/img/notepad_close.png");
		}
		else
		{
			$('#notepadopenclose').attr("src","/img/notepad_open.png");
		}
		
		var st=$.cookie("notepad");
		if(st != null)
		{
			var arr=st.split(",");
			if(arr.length<2)
			{
				$('#notepadarticles').hide();
				$('#notepadnoarticles').show();
			}
			else
			{
				$('#notepadnoarticles').hide();
				$('#notepadarticles').show();
			}
		}
		notepad.removed=false;
		notepad.added=false;
	}

	notepad.remove=function(colorcode)
	{
		
		var st=$.cookie("notepad");
		var arr=st.split(",");
		var s="";
		for(var i=0;i<arr.length;i+=arrSteps)
		{
			var url=arr[i+0];
			var title=arr[i+1];
			var tuuid=arr[i+2];
			var ccode=arr[i+3];

			if(ccode!=colorcode)
			{
				if(s!="")s+=",";
				s+=url+","+title+","+tuuid+","+ccode;
			}
		}
		notepad.removed=true;
		var options={path:"/"};
		$.cookie("notepad",s,options);

		notepad.update();
	};

	notepad.insert=function(uuid,title,url,colorcode)
	{
		notepad.fail = false;
		var s=$.cookie("notepad");
		if(s==null)s="";
		var arr=s.split(",");
		
			
		if(colorcode != undefined && colorcode != "")
		{
			if(colorcode != arr[3] && colorcode != arr[7] 
				&& colorcode != arr[11] && colorcode != arr[15] 
				&& colorcode != arr[19] && colorcode != arr[23] 
				&& colorcode != arr[27] && colorcode != arr[31] 
				&& colorcode != arr[35] && colorcode != arr[39])
			{
				if((arr.length/4)<10)
				{
					if(s!="")s+=",";
					s+=url+","+title+","+uuid+","+colorcode;
		
					var options={path:"/"};
					$.cookie("notepad",s,options);
		
					notepad.added=true;
				}
				else
				{
					alert(TEXTE['error_notepad_max_carpet']);
					notepad.fail = true;
				}
			}
		else
			{
				alert(TEXTE['error_notepad_already_colorcode']);
				notepad.fail = true;
			}
		}
		else
		{
			alert(TEXTE['error_notepad_choose_colorcode']);
			notepad.fail = true;
		}
		notepad.update();
	}


	// ---------------------------------------------------------------------------------------------------------------------
	
	
	var ff=function()
	{
		
	};
	
	ff.filterCarpetTypes="";

	var sprache;
	
	ff.request=function(lang)
	{
		if(lang != null || lang != 'undefined'){
		  sprache = lang;
		  $.ajax({
		    dataType: 'json',
		    url: '/'+lang+'/meta/floorfinder_ajax.opl?filter_quality='+ff.filterQuality+'&filter_pattern='+ff.filterPattern+'&filter_color='+ff.filterColor+'&filter_type='+ff.filterType+'&filter_collection='+ff.filterCollection+'&modus='+modus+'&filter_search='+ff.filterSearch+'&filter_carpettypes='+ff.filterCarpetTypes, 
		    success: function(data) 
		    {
		    	ff.data=data;
				ff.display();
				
				if(modus==1){
					ff.setFilterPro(data);
				}else if(modus==0){
					ff.setFilterPrivate(data);
				}
		    }
		  });
		}
	};
	
	ff.changeCollection=function(id, which, length)
	{
		ff.filterCollection=id;
		ff.filterSelection=id;
		ff.request(sprache);
		
		for(var i=0;i<=length;i++)
			$('#collection'+i).removeClass("active");
		
		$('#collection'+which).addClass("active");
	};
	
	ff.setFilterPrivate=function(data){
		$('#colors').html("");
		for(var i=0; i<colorarr.length; i++) {
			 $('#colors').append('<a onClick="ff.changeColor('+i+');" id="color'+i+'">'+colorarr[i]+'</a><br/>');
			 if(ff.data['filter'][0]['colors'][0].length==1){
				break;
			}
		}
		if(ff.data['filter'][0]['colors'][0].length==1)$('#colors').append('<a onClick="ff.changeColor('+i+');" id="color'+i+'">'+colorarr[ff.data['filter'][0]['colors'][0][0]]+'</a><br/>');
		
		
//		$('#areas').html("");
//		for(var i = 0;i<areas.length;i++){
//			if(ff.data['filter'][0]['areas'][0][0]==0)$('#areas').append('<a onClick="ff.changeRoom('+i+');" id="room'+i+'">'+areas[i]+'</a><br/>');
//			if(ff.data['filter'][0]['areas'][0].length==1 && ff.data['filter'][0]['areas'][0][0]!=0 || ff.data['filter'][0]['areas'][0].length==0){
//				$('#areas').append('<a onClick="ff.changeRoom(\'0\');" id="room0">'+areas[0]+'</a><br/>');
//				break;
//			}
//		}
		
		$('#quality').html("");
		for(var i = 0;i<quality.length;i++){
			//$('#quality').append('<a onClick="ff.changeQuality('+i+');" id="quality'+i+'">'+quality[i]+'</a><br/>');
			$('#quality').append('<a onClick="ff.changeQuality('+i+');" id="quality'+i+'">'+quality[i]+'</a><br/>');
			if((ff.data['filter'][0]['quality'][0].length==1 && ff.data['filter'][0]['quality'][0][0]!=0) || ff.data['filter'][0]['quality'][0].length==0){
				$('#quality').append('<a onClick="ff.changeQuality('+i+');" id="quality'+i+'">'+quality[ff.data['filter'][0]['quality'][0][0]]+'</a><br/>');
				break;
			}
		}		
		
		//if(ff.data['filter'][0]['areas'][0].length==1){
//			$('#areas').append('<a onClick="ff.changeRoom('+i+');" id="room'+i+'">'+areas[0]+'</a><br/>');
		//	if(ff.data['filter'][0]['areas'][0][0]!=0)$('#areas').append('<a onClick="ff.changeRoom('+i+');" id="room'+i+'">'+areas[ff.data['filter'][0]['areas'][0][0]]+'</a><br/>');
		//}
		
		
		$('#pattern').html("");
		for(var i = 0; i<pattern.length;i++){
			$('#pattern').append('<a onClick="ff.changePattern('+i+');" id="pattern'+i+'" >'+pattern[i]+'</a><br/>');
			if(ff.data['filter'][0]['pattern'][0].length==1){
				break;
			}
			
		}
		if(ff.data['filter'][0]['pattern'][0].length==1)$('#pattern').append('<a onClick="ff.changePattern('+i+');" id="pattern'+i+'" >'+pattern[ff.data["filter"][0]["pattern"][0][0]]+'</a><br/>');
		
		
		$('#shapes').html("");
		for(var i = 0; i<shapes.length;i++){
			$('#shapes').append('<a onClick="ff.changeType('+i+');" id="type'+i+'">'+shapes[i]+'</a><br/>');
			if(ff.data['filter'][0]['shapes'][0].length==1){
				break;
			}
		}
		if(ff.data['filter'][0]['shapes'][0].length==1)$('#shapes').append('<a onClick="ff.changeType('+i+');" id="type'+i+'">'+shapes[ff.data["filter"][0]["shapes"][0][0]]+'</a><br/>');
	};
	
	
	
	
	
	
	ff.setFilterPro=function(data){
		
		$('#colors').html("");
		for(var i=0; i<colorarr.length; i++) {
			 $('#colors').append('<a onClick="ff.changeColor('+i+');" id="color'+i+'">'+colorarr[i]+'</a><br/>');
			 if(ff.data['filter'][0]['colors'][0].length==1){
				break;
			}
		}
		if(ff.data['filter'][0]['colors'][0].length==1)$('#colors').append('<a onClick="ff.changeColor('+i+');" id="color'+i+'">'+colorarr[ff.data['filter'][0]['colors'][0][0]]+'</a><br/>');
		
		$('#carpettypes').html("");
		var lengthCT = 0;
		var sizeOfData = 0;
		var s="";
		s+='<a onClick="ff.changeCTypes(\'0\');" id="ctype0">'+carpettypes[0]["name"]+'</a><br/>';
		for(e in carpettypes){lengthCT++;}
		for(e in ff.data["filter"][0]["carpettype"][0]){sizeOfData++;}
		for(var uuid in carpettypes){
			for(var j = 0; j<=lengthCT;j++){
				o = j;
				k = o+1;
//				console.log(uuid==ff.data["filter"][0]["carpettype"][0][j]);
				if(uuid==ff.data["filter"][0]["carpettype"][0][j]){
					if(carpettypes[ff.data["filter"][0]["carpettype"][0][j]]!=undefined)s+='<a onClick="ff.changeCTypes(\''+ff.data["filter"][0]["carpettype"][0][j]+'\');" id="ctype'+k+'">'+carpettypes[ff.data["filter"][0]["carpettype"][0][j]]["name"]+'</a><br/>';
				}
			}
		}
		$('#carpettypes').append(s);
			
		$('#collections').html("");
		stringCollection = "";
		var lengthCollection = 0;		
		
		for(col in collection){lengthCollection++;}
		var m = 0;
		var n = 0;
		for(var id in collection){
			if(id==ff.data["filter"][0]["collection"][0] && (ff.data["filter"][0]["collection"][0]!=undefined || ff.data["filter"][0]["collection"][0]!=null)){
				stringCollection+='<a onClick="ff.changeCollection('+0+','+0+','+lengthCollection+');" id="collection'+0+'">'+collection[0]["name"]+'</a><br/>';
				stringCollection+='<a onClick="ff.changeCollection('+id+','+m+','+lengthCollection+');" id="collection'+n+'">'+collection[id]["name"]+'</a><br/>';
			}
			m++;
			if((ff.data["filter"][0]["collection"][0] == null || ff.data["filter"][0]["collection"][0] == undefined || ff.data["filter"][0]["collection"][0] == "")){
				stringCollection+='<a onClick="ff.changeCollection('+id+','+n+','+lengthCollection+');" id="collection'+n+'">'+collection[id]["name"]+'</a><br/>';
			}
			n++;
		}
		$('#collections').append(stringCollection);
	};
	
	oldCType=0;
	ff.changeCTypes=function(which)
	{
		
		ff.filterCarpetTypes=which;
		ff.request(sprache);
		
		//for(var i=0;i<=length;i++)
		$('#ctype'+oldCType).removeClass("active");
		
		$('#ctype'+which).addClass("active");
		oldCType=which;
	};
	
	ff.changeQuality=function(which)
	{
		ff.filterQuality=which;
		ff.request(sprache);
		
		for(var i=0;i<3;i++){
			$('#quality'+i).removeClass("active");
		}
		$('#quality'+which).addClass("active");
	};
	
	
	ff.changeRoom=function(which)
	{
		ff.filterRoom=which;
		ff.request(sprache);
		
		for(var i=0;i<14;i++)
			$('#room'+i).removeClass("active");
		
		$('#room'+which).addClass("active");
	};
	
	ff.changeColor=function(which)
	{
		ff.filterColor=which;
		ff.request(sprache);
		
		for(var i=0;i<=10;i++)
			$('#color'+i).removeClass("active");
		
		$('#color'+which).addClass("active");
	};
	
	ff.changeType=function(which)
	{
		ff.filterType=which;
		ff.request(sprache);
		
		for(var i=0;i<4;i++)
			$('#type'+i).removeClass("active");
		
		$('#type'+which).addClass("active");
	};
	
	ff.changePattern=function(which)
	{
		ff.filterPattern=which;
		ff.request(sprache);
		
		for(var i=0;i<4;i++)
			$('#pattern'+i).removeClass("active");
		
		$('#pattern'+which).addClass("active");
	};
	
	ff.search=function(what){
		
		ff.filterSearch=what;
		ff.request(sprache);
		if(what=="")
		{
			ff.showChooser();
		}
		else
		{ 
			ff.hideChooser(); 
		}

		
	};
	
	ff.hideChooser=function(){
		//$('#ff_opacity').css({"opacity":"0"});
		$('.ff_opacity').fadeIn(100);

		
	}
	ff.showChooser=function(){
		$('.ff_opacity').fadeOut(100);
	}
	
	ff.display=function(start)
	{
		$('#results').fadeOut(200,function()
		{
				
			$('#results').show();

			$('#results').html("");
	
			if(start == null)start=0;
			else
			{
				start*=20;
			}
	
			var l=ff.data["carpets"].length;
			
	
			$('#numcarpets_1').html(" "+ff.data["carpets"].length+" ");
			$('#numcarpets_2').html(" "+ff.data["carpets"].length+" ");
	
			if (l>0) {
				$('#carpetsfound').show();
				$('#nocarpetsfound').hide();
				
				$('#carpetfrom_1').html(" "+(start+1)+" ");
				if((start+20)<=l)$('#carpetto_1').html(" "+(start+20)+" ");
				else $('#carpetto_1').html(" "+(l)+" ");
		
				$('#carpetfrom_2').html(" "+(start+1)+" ");
				if((start+20)<=l)$('#carpetto_2').html(" "+(start+20)+" ");
				else $('#carpetto_2').html(" "+(l)+" ");
			} else {
				$('#carpetsfound').hide();
				$('#nocarpetsfound').show();
			}
			
			
			ff.start=[];
			nullimg = 0;
			for(var i=start;i<start+20;i++)
			{
				if(i<l)
				{
					var current=ff.data["carpets"][i];
//					if (ff.data["carpets"][i].pattern)var options=ff.data["carpets"][i];
//					var current=ff.data["carpets"][i];
//					console.log(ff.data["carpets"][i]);
					
					var marg=6;
				
					if((i+1-nullimg)%4==0)marg=0;
					if(current.imgUuid!=''){
					ff.start.push("ffc"+i);
					
					$('#results').append('<div id="ffc'+i+'" style="display:none;float:left;margin-right:'+marg+'px;margin-bottom:20px;"><a href="'+current.pageUrl+'?colorcode='+current.colorcode+'"><img style="width:180px;height:122px;border:none;" src="/thumbs/floorfinder.opl?carpet='+current.imgUuid+'" /><br/>'+current.title+'&#160;&#160;'+current.colorCode+'</a></div>');
					}else{
						nullimg++;
						
					}	
					
					$('#results').append('<div id="ffc'+i+'" style="display:none;float:left;margin-right:'+marg+'px;"><img style="width:180px;height:122px;" src="/thumbs/floorfinder.opl?carpet='+current.imgUuid+'" /><br/>'+current.colorCode+'<br/>'+current.contentidpriv+'</div>');
				}
			}
			
			if(ff.start != null)
			for(var i=0;i<ff.start.length;i++)
			{
				$('#'+ff.start[i]).delay(50*i).fadeIn();
			}
			
			var oldstart=start;
			start=start-60;
			if(start<0)start=0;

			var count=start/20;
			var prev=(oldstart-20)/20;
			var next=(oldstart+20)/20;
			if(prev<0)prev=0;

			var paging ="";
			if((start-20)>(-20))paging='<a onClick="ff.display('+prev+');"><img src="/img/ff_next.png"/></a>';
			var end;

			for(var i=start-20;i<start+5*20;i+=20)
			{				
				var col="#646567";
				if(i==oldstart-20)col="#000";
				count++;
				if(i<=l-20)paging+=' <a onClick="ff.display('+(count-1)+');" style="color:'+col+';">'+(count)+'</a> ';
				end=i;
			}
			
			if(end<=l-20)paging+=' <a onClick="ff.display('+next+');"><img src="/img/ff_prev.png"/></a>';
			$("#paging_1").html(paging);
			$("#paging_2").html(paging);
		});
	}


	$(document).ready(function() {
		
		notepad.update();
		
	});

	
	function getParameters(url) {
	    var parameters = null;   

	    if (url == null)
	        parameters = window.location.search.substr(1).split("&");
	    else
	        parameters = url.split("?")[1].split("&");

	    var hashedParameters = { };
	    jQuery.each(parameters, function(index, value) {
	        var keyValue = value.split("=");
	        hashedParameters[keyValue[0]] = keyValue[1];
	    });

	    return hashedParameters;
	}
	
 	function carpetValidation(length){
	 	
 		var arr=[];
 		 		
 		for(var i = 1; i <= length; i++){
 			if(document.getElementById('carpetorder'+i).checked==true){
 				arr[i] = "true";
 			}
 		}
 		
	 	var counter = 0;
	 	
	 	for(var i = 0; i < arr.length; i++)
	 	{
	 		if(arr[i+1]!="" && arr[i+1]=="true")
	 		{
	 			counter++;
	 		}
	 	}
		if(counter > 3){
 			alert(TEXTE['error_carpetorder_count']);
 		}
 	}

 	
 	
 	
 	
 	
 	
 	
