﻿/* commonDirectory */
var commonDirectory=function(options){this.SetOptions(options);this.directoryBox=$('#'+this.options.directoryBox);this.directorys=$('#'+this.options.directoryBox+' > .secend');this.directorySubsBox=$('#'+this.options.directorySubsBox);this.directorySubs=$('#'+this.options.directorySubsBox+' > ul');this.fixedValue=this.options.fixedValue;this.timer=this.options.timer;this.Init()};commonDirectory.prototype={SetOptions:function(options){this.options={directoryBox:'directoryBox',directorySubsBox:'directorySubsBox',fixedValue:29,timer:[]};$.extend(this.options,options||{})},Init:function(){var _this=this;this.directoryBox.mouseenter(function(){_this.Over()}).mouseleave(function(){_this.Logout()})},Over:function(){var _this=this;for(var i=0;i<this.directorys.length;i++){(function(){var index=i;$(_this.directorys[index]).mouseenter(function(){_this.Logout();_this.timer.push(setTimeout(function(){$(_this.directorys[index]).addClass('hover');_this.directorySubsBox.css({display:'block'});$(_this.directorySubs[index]).css({display:'block'});for(var j=0;j<i;j++){if(index!=j){$(_this.directorys[j]).removeClass('hover');$(_this.directorySubs[j]).css({display:'none'})}}_this.GetValue(index);_this.SetPosition()},100))});_this.Out(index)})()}},Out:function(index){var _this=this;$(this.directorys[index]).mouseleave(function(event){if($(event.relatedTarget).parents('div').attr('id')!=_this.options.directorySubsBox){_this.Close(index)}});this.directorySubsBox.mouseleave(function(event){if($(event.relatedTarget).parents('ul').attr('id')!=_this.options.directoryBox){_this.Close(index)}})},Close:function(index){$(this.directorys[index]).removeClass('hover');this.directorySubsBox.css({display:'none'});$(this.directorySubs[index]).css({display:'none'})},GetValue:function(index){this.windowHeight=$(window).height();this.scrollHeight=$(document).scrollTop();this.directoryBoxOffsetTop=this.directoryBox.offset().top;this.currentDirectorysOffsetTop=$(this.directorys[index]).offset().top;this.directorySubsBoxHeight=this.directorySubsBox.outerHeight(true)},SetPosition:function(){var y_final,FromTheTop,FromTheBottom;FromTheTop=this.currentDirectorysOffsetTop-this.scrollHeight;FromTheBottom=this.windowHeight-FromTheTop;if(this.windowHeight>=this.directorySubsBoxHeight){if(FromTheTop>=this.fixedValue&&FromTheBottom>=this.directorySubsBoxHeight){y_final=this.currentDirectorysOffsetTop-this.directoryBoxOffsetTop-this.fixedValue}if(FromTheTop<this.fixedValue&&FromTheBottom>=this.directorySubsBoxHeight){if(this.currentDirectorysOffsetTop>=this.scrollHeight){y_final=this.currentDirectorysOffsetTop-this.directoryBoxOffsetTop-FromTheTop}else{y_final=this.currentDirectorysOffsetTop-this.directoryBoxOffsetTop}}if(FromTheBottom<this.directorySubsBoxHeight){y_final=this.currentDirectorysOffsetTop-this.directoryBoxOffsetTop-(this.directorySubsBoxHeight-FromTheBottom)}}else{y_final=this.currentDirectorysOffsetTop-this.directoryBoxOffsetTop-FromTheTop}this.directorySubsBox.css({top:y_final})},Logout:function(){for(var i=0;i<this.timer.length;i++){clearTimeout(this.timer[i])}this.timer=[]}};

$(document).ready(function(){
	var DH_Common_Directory = new commonDirectory({fixedValue:0});
});
