var images_id = new Array(), images_thumb = new Array(), images_large = new Array(), images_hr = new Array(), images_title = new Array(), images_selected = new Array(), basketitems = new Array();

var total_thumbs = 0, active_thumb = 0, dragging = false, active_drag = 9999, zindex = 999;

preload("prev_off", "fileadmin/templates/img/toc.gif");
preload("prev_on", "fileadmin/templates/img/prev.gif");
preload("next_off", "fileadmin/templates/img/toc.gif");
preload("next_on", "fileadmin/templates/img/next.gif");

function initGallery() {
	total_thumbs = images_id.length;
	var i = 0;
	var element = Builder.node("div", { id: "thumb_"+i, className: "thumb_off" });
	$("thumbs").appendChild(element);
	var element = Builder.node("img", { src: images_thumb[i], height: "50", alt: "", id: "thumb_img_"+i, className: "thumb_img", onmousedown: "active_drag="+i+";zindex+=1;", onmouseup: "if(!dragging){selectThumb("+i+")};" });
	$("thumb_"+i).appendChild(element);
	if (images_selected[i]) {
		$("thumb_img_"+i).fade({ duration: 0.0, from: 1, to: 0.2 });
	} else {
		new Draggable("thumb_img_"+i, {
			revert: true,
			endeffect: function(element) { 
							if (images_selected[element]) {
								new Effect.Opacity(element, {from:0, to:1.0, duration:10} );
							}
						},
			onStart: function(drgObj,mouseEvent) {
				drgObj.element.setStyle({"cursor":"move"});
				drgObj.element.setStyle({"border":"2px dashed #669900"});
				drgObj.element.setStyle({"clip":"rect(10px 50px 40px 0px)"});
				dragging = true;
			},
			onEnd: function(drgObj,mouseEvent) {
				drgObj.element.setStyle({"cursor":"default"});
				drgObj.element.setStyle({"border":"none"});
				setTimeout("dragging=false;active_drag=9999",1000);
			}
		});
	}
	selectThumb(0);
	for (i=1;i<total_thumbs;i++) {
		var element = Builder.node("div", { id: "thumb_"+i, className: "thumb_off" });
		$("thumbs").appendChild(element);
		var element = Builder.node("img", { src: images_thumb[i], height: "50", alt: "", id: "thumb_img_"+i, className: "thumb_img", onmousedown: "active_drag="+i+";zindex+=1;", onmouseup: "if(!dragging){selectThumb("+i+")};" });
		$("thumb_"+i).appendChild(element);
		if (images_selected[i]) {
			$("thumb_img_"+i).fade({ duration: 0.0, from: 1, to: 0.2 });
		} else {
			new Draggable("thumb_img_"+i, {
				revert: true,
				endeffect: function(element) { 
								if (images_selected[element]) {
									new Effect.Opacity(element, {from:0, to:1.0, duration:10} );
								}
							},
				onStart: function(drgObj,mouseEvent) {
					drgObj.element.setStyle({"cursor":"move"});
					drgObj.element.setStyle({"border":"2px dashed #669900"});
					drgObj.element.setStyle({"clip":"rect(10px 50px 40px 0px)"});
					dragging = true;
				},
				onEnd: function(drgObj,mouseEvent) {
					drgObj.element.setStyle({"cursor":"default"});
					drgObj.element.setStyle({"border":"none"});
					setTimeout("dragging=false;active_drag=9999",1000);
				}
			});
		}
	}
	var aceptables = new Array("thumb_img","thumbing");
	Droppables.add("basket", {
		accept: aceptables,
		hoverclass: "basket_on",
		onDrop: function() {
			addThumb();
		}
	});
	showCounter(basket_items);
}

function selectThumb(id) {
	$("thumb_visor").update("");
	var element = Builder.node("img", { src: images_large[id], alt: "", style: "display: none;", onload: "showThumb('"+id+"');" });
	$("thumb_visor").appendChild(element);
	$("thumb_title").update("- "+images_title[id]+" -");
	$("thumb_"+active_thumb).className = "thumb_off";
	active_thumb = id;
	$("thumb_"+active_thumb).className = "thumb_on";
	var zoom = "";
	for (i=0;i<total_thumbs;i++) {
		zoom += (i!=id) ? '<a href="'+images_hr[i]+'" rel="lightbox" style="display: none;">x</a>' : '<a href="'+images_hr[i]+'" rel="lightbox" style="float: right;">AMPLIAR</a>';
	}
	id++;
	if (id<10) {
		id = "0"+id;
	}
	zoom = '<span style="float: left;">&nbsp;'+id+'_'+total_thumbs+'</span>'+zoom;
	$("thumb_counter").update(zoom);
}

function paginateThumbs(what){
	var thumbing = active_thumb+what;
	if (thumbing>(total_thumbs-1)) {
		thumbing = 0;
	} else if (thumbing<0) {
		thumbing = total_thumbs-1;
	}
	selectThumb(thumbing);
}

function addThumb() {
	var id = (active_drag!=9999) ? active_drag : active_thumb;
	if (!images_selected[id]) {
		$("thumb_img_"+id).fade({ duration: 0.0, from: 1, to: 0.4 });
		images_selected[id] = true;
		// images_hr[id] -> AJAX
		tx_ztbamboo_pi1addToCatalog(images_hr[id]);
	}
}

function showCounter(counter) {
	$("basket_counter").update(counter);
}

function showThumb(id) {
	$("thumb_visor").update("");
	var element = Builder.node("div", { id: "img_thumb", style: "background: url("+images_large[id]+") left top no-repeat; display: none;" });
	$("thumb_visor").appendChild(element);
	$("img_thumb").update('<a href="javascript:void(null);" onmouseover="changeImg(\'paginador_prev\',\'prev_on\');" onmouseout="changeImg(\'paginador_prev\',\'prev_off\');" onclick="paginateThumbs(-1);return false;"><img src="fileadmin/templates/img/toc.gif" width="370" height="500" alt="" id="paginador_prev" style="float: left;" /></a><a href="javascript:void(null);" onmouseover="changeImg(\'paginador_next\',\'next_on\');" onmouseout="changeImg(\'paginador_next\',\'next_off\');" onclick="paginateThumbs(1);return false;"><img src="fileadmin/templates/img/toc.gif" width="370" height="500" alt="" id="paginador_next" style="float: right;" /></a>');
	Effect.Appear("img_thumb");
}

function viewCatalogue(L) {
	window.location = "/index.php?id=34&L="+L;
}