/*

	photohandler
	---
	Flickr foto's weergeven en besturen
	
	$("#page").photohandler( { xml: "http://seriousrequest.3fm.nl/page/08_photohandler_"+photohandler } );	

	Boy van Amstel
	http://www.boyvanamstel.nl
	
*/

(function($){ 
	$.fn.extend({ 
		
		// Functie
		photohandler: function(options) 
		{ 
	
			// Standaard variabelen
			var defaults = { 
				xml: "http://seriousrequest.3fm.nl/page/08_xml_photohandler/",
				preview: "#photopreview",
				description: ".photohandler_description"				
			}; 
			
			// Het formulier
			var obj = $(this);
			
			// Variabelen
			var options = $.extend(defaults, options); 
	
			// Clicks op previews
			obj.find(".photohandler_overview a").unbind("click").click(function() {
				$.fn.loadImage( { url: options.xml+"/"+ $(this).attr("title"), setpreview: obj.find(options.preview), setdescription: obj.find(options.description) } );
				window.location.hash="photohandler_moveup";
				return false;
			});
			
			$(".photohandler_control a").unbind("click").click(function() {
																		
				var previews = $(".photohandler_overview a").length;
				var currentId = obj.find(options.preview).attr("class").substr(3);
				var imageById = new Array();
				var imageByNumber = new Array();
				
				$(".photohandler_overview a").each(function(i, item)
				{
					var id = $(item).attr("title");
					imageById["id"+id.toString()] = i;
					imageByNumber[i] = id;
				});
			
				var currentNumber = imageById["id"+currentId.toString()];
				
				switch($(this).hasClass("witharrowleft"))
				{
					case true:
						if(currentNumber > 0)
						{
							$.fn.loadImage( { url: options.xml+"/"+ imageByNumber[currentNumber - 1], setpreview: obj.find(options.preview), setdescription: obj.find(options.description) } );
						}
					break;
					case false:
						//alert(currentNumber);
						if(currentNumber < previews)
						{
							$.fn.loadImage( { url: options.xml+"/"+ imageByNumber[currentNumber + 1], setpreview: obj.find(options.preview), setdescription: obj.find(options.description) } );						
						}
					break;
					
				}
			
				return false;
			});	
			
			
			$(".photohandler_specifiek :submit").unbind("click").click(function() {
				
				//alert($(this).parents(".photohandler_specifiek").attr("action"));
				
				var var1 = $(this).parents(".photohandler_specifiek").find("[name=photohandler_var1]").val();
				var var2 = $(this).parents(".photohandler_specifiek").find("[name=photohandler_var2]").val();
				
				window.location.href = $(this).parents(".photohandler_specifiek").attr("action") + "/" + var1 + "/" + var2;
				
				return false;
			});
			
		} 
		,
		loadImage: function(options)
		{
			
			var input = options.url;
			var photo = options.setpreview;
			var description = options.setdescription;
			  
			$.ajax({
				type: "GET",
				dataType: "xml",
				url: input,
				success: function (xml) {
					
					// Loopen door resultaten
					$("photo",xml).each(function()
					{
						
						// Afbeelding weergeven
						//alert($(this).find("image").text());
						photo.attr("src", $(this).find("image").text());
						photo.attr("alt", $(this).find("title").text());
						photo.attr("title", $(this).find("title").text());
						photo.attr("class", "img"+$(this).find("code").text());
						//description.html('<h3>' + $(this).find("date").text() + '</h3>' + $(this).find("description").text());
			
					});
					
				}
			});
			
			return false;
		
		}

	}); 
})(jQuery);