﻿(function($){$.fn.extend({encjaMenu:function(opt){var defaults={menu:{},elem:"div",selem:"span",main:$(".ui-main-menu"),sub:$(".ui-sub-menu"),ssub:$(".ui-ssub-menu")}
var opt=$.extend(defaults,opt);return this.each(function(){var addMenuElems=function(obj,level){if(!obj.id){return false;}
if(typeof level=='undefined'){var level=0;}
var selem=$(document.createElement(opt.selem));var packer=$(document.createElement(opt.selem));selem.html(obj.content);selem.attr("id",obj.id);selem.attr("url",obj.url);selem.click(function(){try{eval(obj.url+'(this);');}catch(e){if(obj.ajax==1){encjaNS.startModule({url:obj.url});}else if(obj.ajax==2){encjaNS.startModule({url:obj.url,newWindow:obj.nW});}
else{window.location.href=obj.url;}}});selem.hover(function(e){selem.addClass('ui-menu-hover');},function(e){selem.removeClass('ui-menu-hover');})
if(obj.subMenu){level+=1;var elem=$(document.createElement(opt.elem));for(i in obj.subMenu){var sElem=addMenuElems(obj.subMenu[i],level);if(sElem){sElem.addClass("ui-menu-sub").appendTo(elem);}}
if(level==1){elem.addClass("ui-menu-hide").attr("mainid",obj.id).appendTo(opt.sub);}else if(level==2){elem.addClass("ui-menu-hide").attr("mainid",obj.id).appendTo(opt.ssub);}}
return selem;}
var elem=$(document.createElement(opt.elem));for(i in opt.menu){var mElem=addMenuElems(opt.menu[i]);if(mElem){mElem.addClass("ui-menu-main").appendTo(elem);}}
elem.appendTo(opt.main);});}});$.extend($.fn.encjaMenu,{setHistory:function(arg){$(".ui-menu-selected",".ui-menu").removeClass("ui-menu-selected");$("div",".ui-sub-menu").addClass("ui-menu-hide");$("div",".ui-ssub-menu").addClass("ui-menu-hide");var c=arg.split('/').pop()+'';$(".ui-menu").find("[url='"+c+"']").each(function(){forAll(this);});function forAll(ob)
{var mId=$(ob).parent().attr('mainid');$(ob,".ui-sub-menu").parents().removeClass("ui-menu-hide");$(ob).addClass("ui-menu-selected");$('[mainid='+this.id+']',".ui-ssub-menu").removeClass("ui-menu-hide");if(mId){$('#'+mId,'.ui-menu').addClass("ui-menu-selected");forAll($('#'+mId));}else{return;}}}});})(jQuery);
