/*
 * sdSelectMenu
 * This script is a plugin for jQuery
 *
 * Copyright (c) 2010 Sliced Design
 * Author: Jeremy Hamel
 * Version: 1.0 (FEB 24, 2010)
 * jQuery Version: 1.3.2 (tested)
 *
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html 
 *
 * http://www.sliceddesign.com
 */

(function($){ 
	
	$.fn.sdSelectMenu = function(options) {  
  
            var defaults = {  
                className: 'sdSelectMenu'
            };  
              
            var options = $.extend(defaults, options);  
          	var opts = options; 		
			
			var obj = $(this);
			var name = obj.attr('name');
			var formName = obj.parent('form').attr('name');
			
			if(formName == '')
			{
				formName = 'form';
			}
			
			var id = formName +'-'+ name;
			
			obj.after('<div id="'+ id +'" class="'+ opts.className +'"><span class="'+ opts.className +'"><a href="#">'+ obj.find('option')[0].innerHTML +'</a></span><ul class="'+ opts.className +'"></ul></div>');
			
			for(var i=0; i<obj.find('option').length; i++)
			{
				$('ul.'+ opts.className).append('<li><a href="#" rel="'+ obj.find('option')[i].value +'">'+ obj.find('option')[i].innerHTML +'</a></li>');
			}
			
			$('ul.'+ opts.className +' li a').click(function(){
				var current = $(this);
				$('ul.'+ opts.className +' li').removeClass('selected');
				$('span.'+ opts.className +' a').text(current.text());
				$(this).addClass('selected');
				obj.val($(this).attr('rel'));
				$('ul.'+ opts.className).hide();
				return false;
			});
			
			$('span.'+ opts.className +' a').click(function(){
				if($('ul.'+ opts.className).is(':hidden'))
				{
					$('ul.'+ opts.className).show();
				}
				else
				{
					$('ul.'+ opts.className).hide();
				}
				return false;
			});
			
			$('ul.'+ opts.className).hide();
			obj.hide();	
	};	
	
})(jQuery);      