List = {
	paintings: [],
	start: 0,
	numberOfImages: 6,
	mouseover: false,
	imageSize: 45,
	loadingDiv: "favorite_list_loading",
	
	add: function(id,src){
		var pos = "none";
		for(i=0; i<this.paintings.length; i++){
			if(this.paintings[i].imgID == id){
				pos = i;
				break;
			}
		}
		if(pos == "none"){
			var img = new Image();
			img.src = src;
			img.imgID = id;
			
			var elm = document.getElementById("painting_id_"+id).elements;
			img.info = {filnavn: elm.filnavn.value,
						titel: elm.titel.value,
						dimension: elm.dimension.value,
						pris: elm.pris.value,
						id: parseInt(elm.id.value,10)};		
			this.paintings.push(img);
			this.save("add="+id,document.getElementById("painting_id_"+id));
			pos = this.paintings.length-1;
		}
		
		if(this.paintings.length>this.numberOfImages)
			this.start = pos-this.numberOfImages+1;
			
		this.repaint();
		if(typeof Menu != "undefined")
			Menu.setMenu("favorite");
	},
	
	remove: function(id){
		var temp = [];
		for(i=0; i<this.paintings.length; i++){
			if(this.paintings[i].imgID != id)
				temp.push(this.paintings[i]);
		}
		this.paintings = temp;
		this.repaint();
		this.save("remove="+id);
	},
	
	save: function(query,post){
		document.getElementById(this.loadingDiv).innerHTML = "Vent venligst...";
		if(post)
			YAHOO.util.Connect.asyncPostRequest('malerierFavoritList.php?'+query,this.loadingDiv,'',post);
		else
			YAHOO.util.Connect.asyncGetRequest('malerierFavoritList.php?'+query,this.loadingDiv,'');
	},
	
	load: function(){
		var funk= function(){
			List.loadPaintings();
		}
		document.getElementById(this.loadingDiv).innerHTML = "Henter favoritliste...";
		YAHOO.util.Connect.asyncGetRequest('malerierFavoritList.php?',this.loadingDiv,'',funk);
	},
	
	loadPaintings: function(){
		var size = parseInt(document.getElementById("favorit_size").value,10);
		this.paintings = [];
		for(i=0; i<size; i++){
			var img = new Image();		
			var elm = document.getElementById("favorit_info_"+i).elements;
			img.imgID = parseInt(elm.id.value,10);
			img.src =	elm.filnavn.value;
			img.info = {filnavn: elm.filnavn.value,
						titel: elm.titel.value,
						dimension: elm.dimension.value,
						pris: elm.pris.value,
						id: parseInt(elm.id.value,10)};	
			this.paintings.push(img);
		}
		this.repaint();
	},
	
	repaint: function(){
		for(i=0,p=this.start; i<this.numberOfImages; i++, p++){
			elm = document.getElementById("favorit_place_"+i);
			elm.style.visibility = 'hidden';
			if(p<this.paintings.length){
				if(elm.src != this.paintings[p].src){
					if(this.paintings[p].height>this.paintings[p].width){
						elm.height = this.imageSize;
						elm.width = Math.floor((this.paintings[p].width/this.paintings[p].height)*this.imageSize);
					}
					else{
						elm.width = this.imageSize;
						elm.height = Math.floor((this.paintings[p].height/this.paintings[p].width)*this.imageSize);
					}
					elm.name = this.paintings[p].imgID;
					elm.src = this.paintings[p].src;
				}
				elm.style.visibility= 'visible';
			}
		}

		if(this.start>=(this.paintings.length-this.numberOfImages))
			document.getElementById("list_next").style.visibility = 'hidden';
		else
			document.getElementById("list_next").style.visibility = 'visible';
		
		if(this.start<=0)
			document.getElementById("list_prev").style.visibility = 'hidden';
		else
			document.getElementById("list_prev").style.visibility = 'visible';
	},
	
	next: function(){
		if(this.start<(this.paintings.length-this.numberOfImages) && this.mouseover){
			this.start++;
			this.repaint();
			window.setTimeout(function(){List.next()},500);
		}
	},
	
	prev: function(){
		if(this.start>0 && this.mouseover){
			this.start--;
			this.repaint();
			window.setTimeout(function(){List.prev()},500);
		}
	},
	
	mouseActive: function(bool){
		this.mouseover = bool;
	},
	
	showMenu: function(id,cell){
		for(i=0; i<this.paintings.length; i++){
			if(this.paintings[i].imgID == id){
				PaintingMenu.initFavoriteList();
				PaintingMenu.showMenu(this.paintings[i].info,cell,0);
			}	
		}
	},
	
	isEmpty: function(){
		return (this.paintings.length == 0);	
	},
	
	buyFavorits: function(){
		var query = "id=";
		for(i=0; i<this.paintings.length; i++)
			query += this.paintings[i].imgID+",";
		query = query.substr(0,(query.length-1));
		YAHOO.util.Connect.asyncGetRequest('../kurv/kurv.php?kob=true&ajax=true&'+query,'kurvHTML','');
		DialogBox.paintAddBasketBox();
	},
	
	slideshow: function(){
		var query = "id=";
		for(i=0; i<this.paintings.length; i++)
			query += this.paintings[i].imgID+",";
		query = "?"+query.substr(0,(query.length-1));
		PaintingView.paint('slideshow',query);
	},
	
	sendFavorits: function(){
		DialogBox.paintFavoritFriendBox();
	}
}
