/**
 * Slide Box : a jQuery Plug-in
 * Samuel Garneau <samgarneau@gmail.com>
 * http://samuelgarneau.com
 * 
 * Released under no license, just use it where you want and when you want.
 */

(function($){
	
	$.fn.slideBox = function(params){
	
		var content = $(this).html();
		var defaults = {
			width: "100%",
			height: "200px",
			position: "bottom"			// Possible values : "top", "bottom"
		}
		
		// extending the fuction
		if(params) $.extend(defaults, params);
		
		var divPanel = $("<div class='slide-panel'>");
		var divContent = $("<div class='content' id='slideboxContent'>");
	
		$(divContent).html(content);
		$(divPanel).addClass(defaults.position);
		$(divPanel).css("width", defaults.width);
		
		// centering the slide panel
		//$(divPanel).css("left", (100 - parseInt(defaults.width))/2 + "%");
		$(divPanel).css("left", (document.body.clientWidth - parseInt(defaults.width))/2);
	
		// if position is top we're adding 
		if(defaults.position == "top")
			$(divPanel).append($(divContent));
		
		// adding buttons
		$(divPanel).append("<div class='slide-button' id='open-button' style='display:none'>Open</div>");
		$(divPanel).append("<div id='close-button' title='Close'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>");
		
		if(defaults.position == "bottom")
			$(divPanel).append($(divContent));
		
		$(this).replaceWith($(divPanel));
		
		// Buttons action
		$("#close-button").click(function(){
			//$(divContent).animate({height: "0px"}, 1000, null, slideboxClosed);
			// Sliding to 0px causes flicker in IE
			$(divContent).animate({"height": "1px"}, "slow", null, slideboxClosed);
			//$(divContent).slideUp();
			$(this).hide();
		});
		
		$("#open-button").click(function(){
			if ($.browser.mozilla) {
				$(divContent).animate({height: defaults.height}, 1000);
			} else {
				$(divContent).slideDown();
			}
		});
		
	};
	
})(jQuery);

function slideboxClosed () {
	jQuery("#slideboxContent").hide();
}