(function($){
	$.CMenu = function(options){
		var settings = {
			animation : 0,
			animation_speed: 200,
			animation_main_menu_only: 0
		};
		if (options) {
			$.extend(settings,options);
		}
		$("ul#CMenu > li > ul").hide();
		var vertical_menu = $("ul#CMenu").hasClass("CMenu_vertical") ? true : false;
		$(".CMenu li").hover(function(){
			var elem = $(this).find("ul:first");
			if (vertical_menu){
				$(this).find("ul:first").css({"position" : "absolute","top" : "0px","left" : $(this).find("a.menu:first").width() + "px"});
			}else{
				if (!$(this).parent().hasClass("CMenu")){
					$(this).find("ul:first").css({"position" : "absolute","top" : "0px","left" : $(this).find("a.menu:first").width() + "px"});
				}
			}

			if (settings.animation){
				if (!vertical_menu && !$(this).parent().hasClass("CMenu")){
					if (!settings.animation_main_menu_only){
						$(this).find("ul:first").css("z-index","1000").animate({width: "toggle"},settings.animation_speed);
					}else{
						$(this).find("ul:first").css("z-index","1000").show();
					}
				}else{
					$(this).find("ul:first").css("z-index","0").slideDown(settings.animation_speed);
				}
			}else{
				$(this).find("ul:first").css("z-index","1000").show();
			}
		},function(){
			if (settings.animation){
				if (!vertical_menu && !$(this).parent().hasClass("CMenu")){
					if (!settings.animation_main_menu_only){
						$(this).find("ul:first").css("z-index","0").animate({width: "toggle"},settings.animation_speed);
					}else{
						$(this).find("ul:first").css("z-index","0").hide();
					}
				}else{
					$(this).find("ul:first").css("z-index","0").slideUp(settings.animation_speed);
				}
			}else{
				$(this).find("ul:first").css("z-index","0").hide();
			}
		});
	}
})(jQuery);

