(function(a){a.fn.drilldown=function(m){var f={wrapper_class:"catPicker catPicker-panel",menu_class:"catPicker-menu",submenu_class:"catPicker-nav",parent_class:"dd-parent",parent_class_link:"dd-parent-a",active_class:"active",header_class_list:"catPicker-breadcrumb",header_class:"catPicker-breadcrumbwrapper",class_selected:"dd-selected",event_type:"click",hover_delay:300,speed:"slow",save_state:false,show_count:false,count_class:"dd-count",icon_class:"fa fa-chevron-right floatRight",link_type:"backlink",reset_text:'<span class="fa fa-folder-open"></span> All',default_text:"Select Option",show_end_nodes:true,hide_empty:true,menu_height:false,show_header:false,header_tag:"div",header_tag_class:"catPicker-header",finalCatBoxNameNumeric:1,finalCatBoxName:"category"};var m=a.extend(f,m);return this.each(function(w){var t=this;a(t).addClass(f.menu_class);a(t).addClass(f.submenu_class);a(t).removeClass("hidden");var q='<div class="'+f.wrapper_class+'" />';a(t).wrap(q);var s=a(t).parent();var o=a(s).index("."+f.wrapper_class);var v=f.header_class+"-"+o;var p=f.wrapper_class+"-"+o;a(s).attr("id",p);var n='<div id="'+v+'" class="'+f.header_class+'"></div>';r();if(!j(t,s)){if(f.save_state==true){var u=f.wrapper_class+"-"+o;b(u,t)}}k(t,s);a(window).resize(function(){h(t,s)});a("li a",t).click(function(x){$link=this;$activeLi=a(this).parent("li").stop();$siblingsLi=a($activeLi).siblings();if(a("> ul",$activeLi).length||f.show_end_nodes){if(a($link).hasClass(f.active_class)){a("ul a",$activeLi).removeClass(f.active_class);k(t,s)}else{e($activeLi,s,t)}}a(s,t).scrollTop(0);if(a(this).next("ul").length>0){x.preventDefault();x.stopPropagation();a($link).trigger("catPicker.parentclick")}else{a($link).addClass(f.active_class)}a($link).trigger("catPicker.linklclick")});a("#"+v).on("click","a",function(y){if(a(this).hasClass("link-back")){x=a("#"+p+" ."+f.parent_class_link+".active").length;x=x-2;a("a."+f.active_class+":last",t).removeClass(f.active_class)}else{var x=parseInt(a(this).index("#"+v+" a"));if(x==0){a("a",t).removeClass(f.active_class)}else{x=x-1;a("a."+f.active_class+":gt("+x+")",t).removeClass(f.active_class)}}k(t,s);y.preventDefault();a(t).trigger("catPicker.linklclick")});function r(){a("ul",t).each(function(){a(this).addClass(f.submenu_class)});a(t).before(n);$arrow='<span class="'+f.icon_class+'"></span>';var F=a(t).outerWidth(true);F+="px";var C=a("li",t).outerHeight(true);var E=a("ul",t);var D=g(E);var y=a('[rel="'+D+'"]',E);var A=d(y);if(f.link_type=="link"){B=C*(D+A)}else{B=C*D}var G=a("> ul",s);var z=a(">li",G).length;var B=C*z;var x=C*z+a(n).height();if(f.menu_height){a(s).css({height:f.menu_height,width:F,"overflow-y":"auto","overflow-x":"hidden"})}else{a(s).css({height:x+"px",width:F})}a(t).css({height:B+"px",width:F});a("li",t).each(function(){a(this).css({width:F});a("ul",this).css({width:F,marginRight:"-"+F,marginTop:"0"});if(a("> ul",this).length){a(this).addClass(f.parent_class);a("> a",this).addClass(f.parent_class_link).append($arrow);if(f.show_count==true){var H=a("a:not(."+f.parent_class_link+")",this);var I=parseInt(a(H).length);getCount=I;a("> a",this).append(' <span class="'+f.count_class+'">('+getCount+")</span>")}}});a("ul",s).each(function(){a("li:last",this).addClass("last")});a("> ul > li:last",s).addClass("last");if(f.link_type=="link"){a(E).css("top",C+"px")}}});function e(x,q,w){var p=a("."+f.header_class,q);var r=a(f.header_tag,p).text();var y=a("> a",x).text();if(f.link_type=="catPicker-breadcrumb"){if(!a("ul",p).length){a(p).prepend('<ul class="'+f.header_class_list+'"></ul>')}if(r==f.default_text){a("ul li:last-child",p).remove();a("ul",p).append('<li class="first"><a href="#" onClick="getCatID('+f.finalCatBoxNameNumeric+',\''+f.finalCatBoxName+'\');">'+f.reset_text+'</a></li>')}else{a("ul li:last-child",p).remove();a("ul",p).append('<li><a href="#" onClick="getCatID('+f.finalCatBoxNameNumeric+',\''+f.finalCatBoxName+'\');">'+r+'</a></li>')}a("ul",p).append('<li class="active">'+y+'</li>')}if(f.link_type=="backlink"){if(!a("a",p).length){a(p).prepend('<a href="#" class="link-back" onClick="getCatID('+f.finalCatBoxNameNumeric+',\''+f.finalCatBoxName+'\');">'+r+'</a>')}else{a(".link-back",p).html(r)}}if(f.link_type=="link"){if(!a("a",p).length){a(p).prepend('<ul><li class="first"><a href="#" onClick="getCatID('+f.finalCatBoxNameNumeric+',\''+f.finalCatBoxName+'\');">'+f.reset_text+'</a></li></ul>')}}l(p,y);var t=a("> a",x);a(t).addClass(f.active_class);var A=a("> ul",x);var u=a(x).outerHeight(true);var o=a(">li",A).length;var s=u*o;a(w).css({height:s+"px"});var v=a(p).outerHeight(true);var n=s+v;if(f.menu_height){if(f.hide_empty&&!o){a(q).css({height:v,"overflow-y":"hidden","overflow-x":"hidden"})}else{a(q).css({height:f.menu_height,"overflow-y":"auto","overflow-x":"hidden"})}}else{a(q).css({height:n+"px"})}a("> ul li",x).show();a("> ul",x).animate({"margin-right":0},f.speed);var B=a(x).siblings();a(B).hide();if(f.link_type!="link"){a(t).hide()}if(f.save_state==true){var z=a(q).attr("id");i(z,w)}}function c(s,r,p){var n=a("."+f.header_class,p);var q=a("> a",s);var v=a("."+f.active_class,p).length;var w=a(q).index("."+f.active_class,p);var t=a(r).outerWidth(true);a("ul",s).css("margin-right",-t+"px");a(q).addClass(f.active_class);a("> ul li",s).show();a("a",s).show();var u=a("> a",s).html();a(f.header_tag,n).html(u);if(f.link_type=="catPicker-breadcrumb"){var o=w-1;a("a:gt("+w+")",n).remove()}}function l(o,n){if(!a(f.header_tag,o).length){if(f.show_header==true){a(o).append("<"+f.header_tag+' class="'+f.header_tag_class+'"</'+f.header_tag+'>')}else{a(o).append("<"+f.header_tag+' class="hidden '+f.header_tag_class+'"</'+f.header_tag+'>')}}a(f.header_tag,o).html(n)}function k(w,q){var p=a("."+f.header_class,q);a("ul",p).remove();a("a",p).remove();a("li",w).show();a("a",w).show();var x=a(w).outerWidth(true);if(f.link_type=="link"){if(a("a."+f.active_class+":last",w).parent("li").length){var A=a("a."+f.active_class+":last",w).parent("li");a("ul",A).css("margin-right",-x+"px")}else{a("ul",w).css("margin-right",-x+"px")}}else{a("ul",w).css("margin-right",-x+"px")}l(p,f.default_text);if(f.link_type=="catPicker-breadcrumb"){var r=a(f.header_tag,p).text();if(!a("ul",p).length){a(p).prepend('<ul class="'+f.header_class_list+'"></ul>')}if(r==f.default_text){a("ul",p).append('<li class="active">'+f.default_text+'</li>')}}if(f.save_state==true){var z=a(q).attr("id");i(z,w)}var u=w;a("a."+f.active_class,w).each(function(C){var B=a(this).parent("li").stop();e(B,q,w);u=a(this).parent("li")});var y;if(a("> ul",u).length){y=a("> ul",u)}else{var y=u}var o=a(">li",y).length;var t=a("li",y).outerHeight(true);var s=(t*o);var v=a(p).outerHeight(true);var n=(t*o)+v;if(f.menu_height){if(f.hide_empty&&!o){a(q).css({height:v,"overflow-y":"hidden","overflow-x":"hidden"})}else{a(q).css({height:f.menu_height,"overflow-y":"auto","overflow-x":"hidden"})}a(w).css({height:s+"px"})}else{a(q).css({height:n+"px"});a(w).css({height:s+"px"})}}function j(o,p){var n=a("."+f.class_selected,o).parents("li");a.each(n,function(q,r){a("> a",r).addClass(f.active_class)});return n.length}function b(o,q){var n=a.cookie(o);if(n!=null){var p=n.split(",");a.each(p,function(s,t){t=parseInt(t)+0;var r=a("li:eq("+t+")",q);a("> a",r).addClass(f.active_class)})}}function i(o,p){var n=[];a("a."+f.active_class,p).each(function(q){var s=a(this).parent("li");var r=a("li",p).index(s);n.push(r)});a.cookie(o,n,{path:"/"})}function h(n,p){a(p).css({width:"auto"});a(n).css({width:"auto"});var o=a(p).outerWidth(true);o+="px";a(p).css({width:o});a(n).css({width:o});a("li",n).each(function(){a(this).css({width:o});a("ul",this).css({width:o,marginRight:"-"+o,marginTop:"0"})});k(n,p)}function g(n){var o=undefined;a(n).each(function(){var p=parseInt(a("> li",this).length);a(this).attr("rel",p);if(o===undefined||o<p){o=p}});return o}function d(o){var n=undefined;a(o).each(function(){var p=parseInt(a(this).parents("li").length);if(n===undefined||n<p){n=p}});return n}}})(jQuery);