/*********************
//* jQuery Drop Line Menu- By Dynamic Drive: http://www.dynamicdrive.com/
//* Last updated: June 27th, 09'
//* Menu avaiable at DD CSS Library: http://www.dynamicdrive.com/style/
*********************/

var droplinemenu=
{
	arrowimage: {classname: 'downarrowclass', src: 'down.gif', leftpadding: 5}, //customize down arrow image
	animateduration: {over: 200, out: 100}, //duration of slide in/ out animation, in milliseconds

    getOffSet: function (elem) {
        // (1)
        var box = elem.getBoundingClientRect()

        // (2)
        var body = document.body
        var docElem = document.documentElement

        // (3)
        var scrollTop = window.pageYOffset || docElem.scrollTop || body.scrollTop
        var scrollLeft = window.pageXOffset || docElem.scrollLeft || body.scrollLeft

        // (4)
        var clientTop = docElem.clientTop || body.clientTop || 0
        var clientLeft = docElem.clientLeft || body.clientLeft || 0

        // (5)
        var top  = box.top +  scrollTop - clientTop
        var left = box.left + scrollLeft - clientLeft

        return { top: Math.round(top), left: Math.round(left) }
    }, 


	buildmenu: function(menuid)
	{
		jQuery(document).ready(function($)
		{
			var $mainmenu=$("#"+menuid+">ul");
			var $headers=$mainmenu.find("ul").parent();
            var $table_height = 73; //$mainmenu.offset().top
		
			$headers.each(function(i)
			{
				var $curobj=$(this);
				var $subul=$(this).find('ul:eq(0)');
				
				this._dimensions={h:$curobj.find('a:eq(0)').outerHeight()};
				this.istopheader=$curobj.parents("ul").length==1? true : false;
				
				if (!this.istopheader)
				{
					$subul.css({left:0, top:this._dimensions.h});
				}
				
				var $innerheader=$curobj.children('a').eq(0);
				$innerheader=($innerheader.children().eq(0).is('span'))? $innerheader.children().eq(0) : $innerheader; //if header contains inner SPAN, use that
				
				if (droplinemenu.arrowimage.src.length > 0)
				{
					$innerheader.append(
					'<img src="'+ droplinemenu.arrowimage.src
					+'" class="' + droplinemenu.arrowimage.classname
					+ '" style="border:0; padding-left: '+droplinemenu.arrowimage.leftpadding+'px" />'
					);
				}
				
				$curobj.hover(function(e)
				{
					 
					var $targetul=$(this).children("ul:eq(0)");
				
					if ($targetul.queue().length<=1)
					{ //if 1 or less queued animations
						if (this.istopheader)
						{
							$targetul.css({left: $mainmenu.offset().left, top: $table_height+this._dimensions.h});
							$("a:eq(0)", this).addClass("current");
							$(this).siblings().find("a:eq(0)").removeClass("current");
						}
						if (document.all && !window.XMLHttpRequest)
						{ //detect IE6 or less, fix issue with overflow
							$mainmenu.find('ul').css({overflow: (this.istopheader)? 'hidden' : 'visible'});
						}
						$targetul.slideDown(droplinemenu.animateduration.over);
					if ($targetul.attr('id')!="current_razdel")
					{
						$mainmenu.find("#current_razdel").css({display: "none", top: $table_height + this._dimensions.h});
					}
						

					}
				}, function(e)
				{
						var $targetul=$(this).children("ul:eq(0)");
						$targetul.slideUp(droplinemenu.animateduration.out);
						$("a:eq(0)", this).removeClass("current");

						$mainmenu.find("#current_razdel").css({display: "block", top: $table_height + this._dimensions.h});
						$mainmenu.find("#current_razdel").siblings("a").addClass("current");
				});
		
			}); //end $headers.each()
			$mainmenu.find("ul").css({display:'none', visibility:'visible', width:$mainmenu.width()}); 

		    $mainmenu.find("#current_razdel").css({display: "block", top: $table_height + $("li a", this).outerHeight()});
			$mainmenu.find("#current_razdel").siblings("a").addClass("current");

		}); //end document.ready
	}
}

