(function($){
	$.fn.fdd2div = function(options)
	{
		var MianCssClassName="";
		var defaults =
		{ 
			CssClassName: "fdd2div_default",
			OpenStatus: "0",
			GenerateHyperlinks: "0",
			AnimationSpeed: "fast"
		}
		var options = $.extend(defaults, options);
		if($(this).attr('class')!=null) 
			MianCssClassName=$(this).attr('class');
		else
		{
			MianCssClassName=defaults.CssClassName;
			$(this).attr("class", MianCssClassName);
		}
		var unique_id = $(this).attr("id");
		var form=$(this).find('form');
		if($(this).find('form').length>0)
		{
			var FormMethod = $(form).attr('method');
				if(FormMethod!=null && FormMethod!="get")  FormMethod="post";//DECIDE THE FORM METHOD
			var FormAction = $(form).attr('action');
				if(FormAction==null) FormAction="?"; else FormAction+="?";
			var SelectName = $(form).find('select').attr('name');
			var SelectOptions = $(form).find('option');
			var main_option;
			var child_options="";
			SelectOptions.each
			(
			 	function(n,i)
				{
					var OptionValue="";
					if($(i).attr('value')!="")
						OptionValue=$(i).attr('value');
					else
						OptionValue=i.firstChild.nodeValue;
						if(n==0)
								main_option="<a class=\""+MianCssClassName+"_main_link collapsed\" href='"+FormAction+"'>"+i.firstChild.nodeValue+"</a>\n";
						else
						{
							if(defaults.GenerateHyperlinks==1)
								child_options+="<li><a href='"+OptionValue+"'>"+i.firstChild.nodeValue+"</a></li>\n";
							else
							{
								if(FormMethod=="post")
								{
										var newForm;
										newForm=CreateHiddenForm("form"+unique_id+"_"+n,FormAction,SelectName,OptionValue);
										$('body').append("<div style=\"position:absolute\">"+newForm+"</div>");
										child_options+="<li><a href='"+FormAction+"'>"+i.firstChild.nodeValue+"</a></li>\n";
								}
								else
									child_options+="<li><a href='"+FormAction+SelectName+"="+OptionValue+"'>"+i.firstChild.nodeValue+"</a></li>\n";
							}
						}
					}
				);
			var menu;
				menu=main_option+"<br><ul class=\""+MianCssClassName+"_ul_list\" style=\"position:absolute\" >"+child_options+"</ul>";
			$(this).html(menu);
			var child_options = "#" + unique_id + " ul";
			var main_option = "#" + unique_id + " a."+MianCssClassName+"_main_link";////CREATING UNIQUE VARIABLE
			if(defaults.OpenStatus==0)
				$(child_options).hide();
			else
				$(main_option).attr("class", MianCssClassName+"_main_link expanded");
			$(main_option).blur( function () {
				$(child_options).slideUp(defaults.AnimationSpeed);
				$(main_option).attr("class", MianCssClassName+"_main_link collapsed");
			});
			$(main_option).click(function () {
				if( $(this).attr("class") == MianCssClassName+"_main_link collapsed" )
					$(this).attr("class", MianCssClassName+"_main_link expanded");
				else
					$(this).attr("class", MianCssClassName+"_main_link collapsed");
				$(child_options).slideToggle(defaults.AnimationSpeed);
					return false;
				});
		}
		else
			alert("There is no/bad markup for form tag");
		function CreateHiddenForm(FormName,FormAction,SelectName,OptionValue)
		{
				var HiddenForm;
				HiddenForm="<form method=\"post\" name='"+FormName+"' action='"+FormAction+"'><input type='hidden' name='"+SelectName+"' value='"+OptionValue+"'></form>";
				return HiddenForm;
		}
	}
})
(jQuery);
