/**
 * Pick up viewer
 * Version: 10 Jul 2009
 * Depends on jQuery 1.3.2
 */
(function(){
	jQuery.fn.pickupviewer = function(config){

		// Extends
		config = jQuery.extend({
			selected: 0,
			speed: 300
		},config);

		// Property
		var target = this;
		var speed = config.speed;
		var childs = config.childs;
		var hiddens = config.hiddens;
		var selected = config.selected;
		var selected = config.selected;

		var viewerName = "pickupviewer-viewer";
		var pickupItems = new Array();
		var pickupSelectedName = "pickupviewer-selected";
		var pickupHiddenName = "pickupviewer-hidden";

		// Constructor
		var constructor = function(){
			jQuery(target).prepend('<div class="'+viewerName+'"></div>');

			jQuery("ul li a",target).map(function(i){
				var currentId = jQuery(this).attr("href");
				pickupItems.push(currentId);
				jQuery(currentId).css("display","none");
				if(i == selected){
					jQuery("div."+viewerName,target).html(jQuery(currentId).html());
					jQuery(this).addClass(pickupSelectedName);
					jQuery(this).click(function(){ return false; });
				}else{
					jQuery(this).addClass(pickupHiddenName);
					jQuery(this).click(function(){ view(i); return false; });
				}
			});
		}
		constructor();

		// View
		var view = function(targetNum){
			jQuery("ul li a",target).map(function(i){
				if(i == targetNum){
					jQuery(this).removeClass(pickupHiddenName).addClass(pickupSelectedName);
					jQuery(this).unbind("click").click(function(){ return false; });
				}else{
					jQuery(this).removeClass(pickupSelectedName).addClass(pickupHiddenName);
					jQuery(this).bind("click",function(){ view(i); return false; });
				}
			});
			jQuery("div."+viewerName,target).fadeOut(speed,function(){
				jQuery(this).html(jQuery(pickupItems[targetNum]).html());
				jQuery(this).fadeIn(speed);
			});
		}
	}
})(jQuery);