You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1 lines
22 KiB

var EXPO=EXPO||{};EXPO.events=EXPO.events||{},EXPO.events.feed?console.warn("WARNING: EXPO.eventsFeed is already defined!"):EXPO.events.feed=function(){var e={};e.opt={};var t=EXPO.common,i=function(e){this.opt=e,this.DOMbody=document.getElementById(e.bodyId)},n=function(e,t,i){e||(e=""),$.ajax({type:"GET",url:t,data:e,success:function(e){return"function"!=typeof i?e:void i(e)}})},s=function(e,t,i){return e.hasOwnProperty(t)&&(e[i]=e[t]),this},a=function(e){var t,i=0;for(t in e)e.hasOwnProperty(t)&&i++;return i},r=$(".wait-ajax.absolute"),c=function(e){var t=Object.keys(e).map(function(t){return encodeURIComponent(t)+"="+encodeURIComponent(e[t])}).join("&");return"?"+t};i.prototype={show:function(){$(this.DOMbody).slideDown()},hide:function(){$(this.DOMbody).hide()}};var l=function(e){this.opt=e;var i,n=this,s=0,a=$("#"+n.opt.subjectTriggerWrapId),r=n.opt.id,c=$("#"+r),l=$(".csb-menu-input",c),o=$("#"+this.opt.selectedItemsContainer,c),d=n.opt.defaultOn,h=n.opt.applyBtnClass,u=($("#"+n.opt.modalTrigger),document.getElementById(n.opt.bodyId),function(){p.hide()}),p=$(".wait-ajax.absolute");this.$modalInst=$("#"+r),this.itemsSelected={},this.tagsBoxItems={},this.sublist={},this.$inputFilter=$("#"+n.opt.filterInputId),this.$label=$(document.getElementById(this.opt.labelId)),this.$selectedItemsWrap=o,this.isReceived=!0,$(function(){for($(".topicChecks",a).on("change",function(){$(this).prop("checked")?n._setVisible($(this).val()):n._setUnvisible($(this).val())}),s=0;s<d.length;s++)i=$("#"+d[s]),i.prop("checked",!0),i.trigger("change");c.on("click","a.trigger",function(){var e=$(this).attr("data-name"),t=$(this).attr("data-id"),i=$(this).attr("data-template-id"),s=$(this).siblings(".dna-container");return"true"==$(this).attr("data-sub")&&$(this).parent().hasClass("level1")&&(s.children().length?n._slideToggle(s,$(this).parent()):(p.show(),n._renderSublist({name:e,id:t},i,u),$(this).parent().addClass("active"))),!1}),l.on("change",function(e,i){var s=$(this).attr("id"),a=$(this).closest(".custom-radio-check"),r=$(this).closest(".level"),c=r.parent().closest(".level").children(".custom-radio-check").find(".csb-menu-input"),l=r.children(".sublist");if(!i)if(a.hasClass("active")?a.removeClass("active"):a.addClass("active"),this.checked){var d=$(this).closest(".level").find(".trigger").first().text(),h={text:d,id:s};if(o.hasClass("visible")||o.addClass("visible"),n._addTag(s,h),l.length)$(".csb-menu-input",l).each(function(){var e=this.getAttribute("id"),i=($(this).closest(".level").find(".trigger").first().text(),t.closest(this,"custom-radio-check"));this.checked=!0,n._destroyTag(e),t.addClass(i,"active")});else if(r=r.parent().closest(".level"),$(".csb-menu-input",r.find(".sublist")).length==$(".csb-menu-input:checked",r.find(".sublist")).length){var u=c[0].getAttribute("id"),p=c.closest(".level").find(".trigger").first().text(),f=t.closest(this,"custom-radio-check"),g=t.closest(f.parentNode.parentNode,"level"),v={text:p,id:u};$(".csb-menu-input:checked",r.find(".sublist")).each(function(){n._destroyTag(this.getAttribute("id"))}),c.prop("checked",!0),t.addClass($(g).find(".custom-radio-check")[0],"active"),n._addTag(u,v)}}else if(n._destroyTag(s),o.children(".dna-clone").length||o.removeClass("visible"),l.length)$(".csb-menu-input",l).each(function(){var e=$(this).attr("id"),i=t.closest(this,"custom-radio-check");this.checked=!1,t.removeClass(i,"active"),n._destroyTag(e)}),l.addClass("hidden"),r.removeClass("active");else if(c.length&&c[0].checked){var f=t.closest(c[0],"custom-radio-check"),m=t.closest(f,"level"),b=m.querySelector(".sublist");c.prop("checked",!1),t.removeClass(f,"active"),n._destroyTag(c.attr("id")),$(".csb-menu-input:checked",b).each(function(){var e=this.getAttribute("id"),i=t.closest(this,"level").querySelector(".trigger").textContent,s={text:i,id:e};n._addTag(e,s)})}}),$("."+n.opt.deleteTagClass,c).on("click",function(e){e.stopPropagation();var t=$(this).attr("data-checkbox-id"),i=$("#"+t);return i.prop("checked",!1),i.trigger("change"),n._refreshLabel(),o.children(".dna-clone").length||o.removeClass("visible"),!1}),$(".del-on-page").on("click",function(){var e=$(this).attr("data-checkbox-id");$("."+n.opt.deleteTagClass+'[data-checkbox-id="'+e+'"]',c).trigger("click")}),n._autocompleteInit(),$("."+h,c).on("click",function(){return n.applyHandler(this),!1}),$("."+n.opt.clearAllButtonClass,c).on("click",function(e){return e.preventDefault(),n.resetList(),!1})})};l.prototype={_getAjax:function(e,t){var i=this;e||(e=""),r.css({display:"block"}),$.ajax({type:"GET",url:i.opt.ajaxUrl,data:e,success:function(e){return"function"!=typeof t?e:(r.hide(),void t(e))}})},_setVisible:function(e){var t=this;$("."+e,t.$modalInst).addClass("visible")},_setUnvisible:function(e){var t=this,i=$("."+e,t.$modalInst);i.find('input[type="checkbox"]').each(function(){var e=$(this);e.prop("checked")&&(e.prop("checked",!1),e.trigger("change"))}),i.find(".dna-container").each(function(){$(this).children().length&&$(this).addClass("hidden")}),i.removeClass("visible")},_checkCheckBox:function(e,t){var i,n=this;"th"==t?i=$("#tid_"+n.opt.prefix+e,n.$modalInst):"tg"==t&&(i=$("#tgid_"+n.opt.prefix+e,n.$modalInst)),i.length&&!i.prop("checked")&&(i.prop("checked",!0),i.trigger("change"))},check:function(e,t){var i,n=this;"th"==t?i=$("#tid_"+n.opt.prefix+e,n.$modalInst):"tg"==t&&(i=$("#tgid_"+n.opt.prefix+e,n.$modalInst)),i.length&&(i.prop("checked",!0),i.trigger("change"),i.parent().addClass("active"))},_autocompleteInit:function(){var e,t,i,c=this,l=c.$inputFilter.attr("data-form"),o=$("#"+c.opt.autoCompleteId),d=!0,h=function(e,t){r.show();var i=!0;for(var s in c.sublist)for(var l in c.sublist[s])l==t.item.value&&(i=!1);if($("#tid_"+c.opt.prefix+t.item.value+'[name="'+t.item.name+'"]:checked').length&&(i=!1),i){var o,d=$("#tid_"+c.opt.prefix+t.item.value+'[name="'+t.item.name+'"]'),h=function(e){a(e)?c._loadParentTree(e,function(){c._checkCheckBox(t.item.value,"tg"),r.hide()}):(r.hide(),console.warn())};d.length?(r.hide(),d.prop("checked",!0),d.trigger("change")):(o={id:t.item.value,name:t.item.name},n(o,c.opt.getParentUrl,h))}},u=function(t){for(e=t,i=0;i<e.length;++i)s(e[i],"text","label");for(i=0;i<e.length;++i)s(e[i],"id","value");c.$inputFilter.hasClass("ui-autocomplete-input")?c.$inputFilter.placeComplete("search",""):(c.$inputFilter.placeComplete({source:e,minLength:0,appendTo:o,select:function(e,t){c.$inputFilter.val(""),c.$inputFilter.trigger("keyup"),h(e,t),e.preventDefault()}}),c.$inputFilter.placeComplete("search",""),d=!1)};c.$inputFilter.attr("autocomplete","on"),c.$inputFilter.on("keyup",function(e){return t=$(this).val(),e.stopImmediatePropagation(),t.length>2&&d?(n({term:t,form:l},c.opt.autoCompleteUrl,u),d=!1):0!=t.length||d||c.$inputFilter.hasClass("ui-autocomplete-input")&&(c.$inputFilter.placeComplete("destroy"),d=!0),!1}).click(function(){return!1})},_renderSublist:function(e,t,i){var n=this,s=0,a=t+"-sub",c=function(e){if(e.length){for(n.sublist[a]={},s;s<e.length;s++)n.sublist[a][e[s].id]=dna.clone(t,e[s]);i(e.length)}else r.hide()};n._getAjax(e,c)},_loadParentTree:function(e,t,i){var n,s,a=this,c=e,l=function(){r.hide(),i||0===i?t(i):t()};r.show(),n={name:c.name,id:c.id},s=$("#tid_"+a.opt.prefix+c.id).closest(".level").children(".trigger").attr("data-template-id"),a._renderSublist(n,s,l)},_destroyTag:function(e,t){var i=this;i.itemsSelected[e]&&dna.destroy(i.itemsSelected[e]),i.tagsBoxItems[e]&&dna.destroy(i.tagsBoxItems[e])},_addTag:function(e,t){var i=this;i.itemsSelected[e]=dna.clone(i.opt.selectedItemTemplate,t),i.tagsBoxItems[e]=dna.clone(i.opt.tagsBoxId,t),i._refreshLabel(),a(i.itemsSelected)&&($(EXPO.events.feed.DOMapplyButton).show(),$(EXPO.events.feed.DOMhint).hide())},_slideToggle:function(e,t){e.hasClass("hidden")?(e.removeClass("hidden"),t.addClass("active")):(e.addClass("hidden").find("ul").addClass("hidden"),t.removeClass("active"))},resetList:function(){var e=this;for(var t in e.itemsSelected)e.itemsSelected.hasOwnProperty(t)&&($("#"+t,e.$selfContainer).prop("checked",!1).closest(".custom-radio-check").removeClass("active"),dna.destroy(e.itemsSelected[t]),dna.destroy(e.tagsBoxItems[t]));$(".level.active",this.$modal).removeClass("active"),this._refreshLabel(),this.$selectedItemsWrap.removeClass("visible")},_refreshLabel:function(){var e=this.$selectedItemsWrap.children().length;e?this.$label.text(this.$label.attr("data-selected")):this.$label.text(this.$label.attr("data-default"))},applyHandler:function(e){EXPO.events.feed.modalWindow.close()},selectTag:function(e){var t=!0,i=this,n=function(){if(i.isReceived=!1,e.children)$("#tgid_"+i.opt.prefix+e.children.id).length&&(t=!1),$("#tid_"+i.opt.prefix+e.id+":checked").length&&(t=!1),t?i._loadParentTree({name:e.name,id:e.id},function(){i.check(e.children.id,e.children.name),i.isReceived=!0}):$("#tgid_"+i.opt.prefix+e.id+":checked").length||($("#tgid_"+i.opt.prefix+e.children.id).prop("checked",!0),$("#tgid_"+i.opt.prefix+e.children.id).trigger("change"),i.isReceived=!0);else{for(var n in i.itemsSelected)n=="tid_"+i.opt.prefix+e.id&&(t=!1);$("#tid_"+i.opt.prefix+e.id+":checked").length&&(t=!1),t?(i.check(e.id,e.name),i.isReceived=!0):($("#tid_"+i.opt.prefix+e.id).prop("checked",!0),$("#tid_"+i.opt.prefix+e.id).trigger("change"),i.isReceived=!0)}};this.wait(n)},wait:function(e,t){var i,n=this,s=function(e,t,n){e.isReceived&&(n?t(n):t(),clearInterval(i))};i=setInterval(function(){s(n,e,t)},100)}};var o=function(e){this.opt=e;var i=this,s=$("#"+i.opt.id),a=$('input[type="checkbox"]',s),c=$("#"+this.opt.selectedItemsContainer,s),l=$("#"+this.opt.selectedItemsContainer,s)[0],o=($("#"+i.opt.modalTrigger),i.opt.applyBtnClass),d="id_",h=(document.getElementById(i.opt.bodyId),function(){});this.curDNA={},this.itemsSelected={},this.tagsBoxItems={},this.selectedWrap=c,this.$selfContainer=s,this.$modal=s,this.idPrefix=d,this.isReceived=!0,this.$label=$(document.getElementById(this.opt.labelId)),this.$inputFilter=$("#"+i.opt.filterInputId),$(function(){i._autocompleteInit(),s.on("click","a.trigger",function(){var e=$(this).attr("data-name"),n=$(this).attr("data-id"),s=this,a=$(this).attr("data-template-id"),c=$(this).siblings(".dna-container"),l=function(e,i){var n=t.closest(s,"level"),a=n.querySelector(".csb-menu-input");$(".csb-menu-input",c).each(function(){var e=t.closest(this,"custom-radio-check");this.selected||a.checked&&(this.checked=!0,t.addClass(e,"active"))}),r.hide()};return"true"==$(this).attr("data-sub")&&($(this).parent().hasClass("level1")?c.children().length?i._slideToggle(c,$(this).parent()):(r.show(),i._renderSublist({name:e,id:n},a,l)):$(this).parent().hasClass("level2")&&(c.children().length?i._slideToggle(c,$(this).parent()):(i._renderNested({name:e,id:n},l,a,n),$(this).parent().addClass("active")))),!1}),a.on("change",function(e,n){var s=(this.getAttribute("id"),"custom-radio-check"),a=(t.closest(this,s),"level"),r="active",o="sublist",d="csb-menu-input",u="level1",p="csb-selected",f="csbs-del",g="trigger",v="data-checkbox-id",m=t.closest(this,a),b=0==t.hasClass(m,u)?t.closest(m.parentNode,a):m,k=b.querySelector("."+d),C=b.querySelector("."+o),_=m.querySelector("."+o),y=t.closest(this,u),x=y.querySelector("."+d),I=y.querySelector("."+o),S=function(e){var i=t.closest(e,a)||this,n=i.querySelector("."+o);$("."+d,n).each(function(){D(this)})},T=function(e){var i=t.closest(e,a)||this,n=i.querySelector("."+o);$("."+d,n).each(function(){P(this)})},w=function(e){var i,n=t.closest(e,a);i=t.hasClass(n,"level1")?n:t.closest(n.parentNode,a),t.addClass(i.querySelector("."+s),r),i.querySelector("."+d).checked=!0},O=function(e){var i=t.closest(e,a),n=t.closest(i.parentNode,a)||i;t.removeClass(n.querySelector("."+s),r),n.querySelector("."+d).checked=!1},D=function(e){var i=t.closest(e,s);t.addClass(i,r),e.checked=!0,t.addClass(b,r),t.removeClass(C,"hidden")},P=function(e){var i=t.closest(e,s),n=t.closest(e,a);t.removeClass(i,r),e.checked=!1,n.querySelector("."+o)&&!t.hasClass(n,u)&&T(e)},B=function(){var e=(t.closest(C,o),$(C).children("li").children("."+s).find("."+d+":checked")),i=e.length,n=$(C).children("li").children("."+s).find("."+d).length;return n==i&&0!=i?!0:!1},A=function(){var e=$(I).children("li").children("."+s).find("."+d+":checked"),t=e.length,i=$(I).children("li").children("."+s).find("."+d).length;return i==t&&0!=t?!0:!1},M=function(){var e=b.querySelector("."+d);return e.checked?!0:!1},q=function(e){var i,n,c,h=t.closest(e,o),u=t.closest(e,a),b=u.querySelector("."+o),k=l.querySelectorAll("."+p),C=h.querySelector("."+o)?$("."+d+":checked",h.querySelector("."+o)):null,_=(C?C.length:null,[]),y=[],x=0,I=0,S=e.getAttribute("id"),T=0,w=0,O=0,D=0;m.querySelector("."+g).innerHTML;if(b){for(i=$(b).children("li").children("."+s).find("."+d+":checked"),D;D<i.length;D++)n=i[D].getAttribute("id"),_.push(n);for(O;O<k.length;O++)n=k[O].querySelector("."+f).getAttribute(v),"~~id~~"!=n&&y.push(n);for(x=y.length,I=_.length,T=0;x>T;T++)for(c=y[T],w=0;I>w;w++)c==_[w]&&F(i[w]);for(T=0;x>T;T++)c=y[T],c==S&&F(e);b.querySelectorAll(".final-tire")&&$("."+s+"."+r,b.querySelectorAll(".final-tire")).each(function(){F($("."+d,this)[0])})}else for(T=0;x>T;T++)c=y[T],c==S&&F(S)},F=function(e){var t=e.getAttribute("id");i._destroyTag(t),N()},E=function(e){var n=t.closest(e,a),s=n.querySelector("."+g),r=s.innerHTML,c=e.getAttribute("id"),l={id:c,text:r};i._addTag(c,l),N()},N=function(){c.find("."+f).length&&"~~id~~"!=c.find("."+f)[0].getAttribute(v)?c.addClass("visible"):c.removeClass("visible")},j=function(e){var t=$(e).children("li").children("."+s).find("."+d+":checked");t.each(function(){E(this)})},L=function(){var e=$(C).children("li").children("."+s).find("."+d+":checked");e.each(function(){F(this)})};i.strictMode?this.checked?(D(this),q(this),E(this)):(P(this),q(this),F(this)):this.checked?($(_).find("."+d)[0]&&_&&"~~id~~"!=$(_).find("."+d)[0].value&&q(this),B()?(w(this),D(this),q(k),E(k),L(C),k.getAttribute("id")!=x.getAttribute("id")||x.checked?A()&&(D(x),q(x),E(x)):(D(x),q(x),E(x))):(D(this),q(this),E(this)),_&&S(this)):(M()?(O(this),P(this),q(k),F(k),j(C),x.checked&&(P(x),F(x),j(I))):(P(this),q(this),F(this)),_&&(T(this),q(this))),h()}),$("."+i.opt.deleteTagClass,s).on("click",function(){var e=$(this).attr("data-checkbox-id"),t=$("#"+e);return t.prop("checked",!1),t.trigger("change"),i._refreshLabel(),c.children(".dna-clone").length||c.removeClass("visible"),!1}),$(".del-on-page").on("click",function(){var e=$(this).attr("data-checkbox-id");$("."+i.opt.deleteTagClass+'[data-checkbox-id="'+e+'"]',s).trigger("click")}),$(".clear",s).on("click",function(){return i.resetList(),!1}),$(".q-sel a",s).on("click",function(){var e=$(this),t=e.attr("data-name"),s=e.attr("data-id"),a={name:t,id:s},r=function(e){i._loadParentTree(e,function(){i._checkCheckBox(s)})};return n(a,i.opt.getParentUrl,r),!1}),$("."+o,s).on("click",function(){return i.applyHandler(this),!1}),$("."+i.opt.clearAllButtonClass,s).on("click",function(e){return e.preventDefault(),i.resetList(),!1})})};return o.prototype={_getAjax:function(e,t){var i=this;e||(e=""),$.ajax({type:"GET",url:i.opt.ajaxUrl,data:e,success:function(e){return"function"!=typeof t?(i.rawData=e,e):(i.rawData=e,void t(e))}})},_renderSublist:function(e,t,i){var n=this,s=0,a=t+"-sub",c=function(e){if(e.length){for(n.curDNA[a]={},s;s<e.length;s++)n.curDNA[a][e[s].id]=dna.clone(t,e[s]);$("."+t).parents(".level1").addClass("active"),i(e.length)}else r.hide()};n._getAjax(e,c)},_renderNested:function(e,t,i,n){var s=this,a=c(e),r=function(e){e.length&&dna.rest.get(i,s.opt.ajaxUrl+a,{callback:function(){t(e.length)},container:s.curDNA[i][n]})};s._getAjax(e,r)},_checkCheckBox:function(e){var t=this,i=$("#id_"+t.opt.prefix+e,t.$selfContainer);i.length&&!i.prop("checked")&&(i.prop("checked",!0),i.trigger("change"))},selectTag:function(e){var t=!0,i=this,s=function(){for(var s in i.curDNA)for(var a in i.curDNA[s])a==e.id&&(t=!1);if($("#id_"+i.opt.prefix+e.id+":checked").length&&(t=!1,$("#id_"+i.opt.prefix+e.id+":checked").trigger("change")),t){i.isReceived=!1;var r,c=$("#id_"+i.opt.prefix+e.id),l=function(t){i._loadParentTree(t,function(){i._checkCheckBox(e.id),i.isReceived=!0}),c=$("#id_"+i.opt.prefix+e.id)};c.length?(c.prop("checked",!0),c.trigger("change"),i.isReceived=!0):(r={id:e.id,name:e.name},n(r,i.opt.getParentUrl,l))}else $("#id_"+i.opt.prefix+e.id).prop("checked",!0),$("#id_"+i.opt.prefix+e.id).trigger("change")};this.wait(s)},wait:function(e,t){var i,n=this,s=function(e,t,n){e.isReceived&&(n?t(n):t(),clearInterval(i))};i=setInterval(function(){s(n,e,t)},100)},check:function(e,t){var i=this,n=$("#id_"+e,i.$selfContainer);n.length&&!n.prop("checked")&&(n.prop("checked",!0),n.trigger("change"))},_slideToggle:function(e,t){e.hasClass("hidden")?(t.addClass("active"),e.removeClass("hidden")):(t.removeClass("active"),e.addClass("hidden").find("ul"))},_destroyTag:function(e){var t=this;t.itemsSelected[e]&&dna.destroy(t.itemsSelected[e]),t.tagsBoxItems[e]&&dna.destroy(t.tagsBoxItems[e])},_addTag:function(e,t){var i=this;i.itemsSelected[e]=dna.clone(i.opt.selectedItemTemplate,t),i.tagsBoxItems[e]=dna.clone(i.opt.tagsBoxId,t),this._refreshLabel(),a(i.itemsSelected)&&($(EXPO.events.feed.DOMapplyButton).show(),$(EXPO.events.feed.DOMhint).hide())},resetList:function(){var e=this;for(var t in e.itemsSelected)e.itemsSelected.hasOwnProperty(t)&&($("#"+t,e.$selfContainer).prop("checked",!1).closest(".custom-radio-check").removeClass("active"),dna.destroy(e.itemsSelected[t]),dna.destroy(e.tagsBoxItems[t]));$(".level.active",this.$modal).removeClass("active"),this._refreshLabel(),this.selectedWrap.removeClass("visible")},_autocompleteInit:function(){var e,t,i,a=this,c=a.$inputFilter.attr("data-form"),l=$("#"+a.opt.autoCompleteId),o=!0,d=function(e,t){r.show();var i=!0,s=$("#id_"+a.opt.prefix+t.item.value);for(var c in a.curDNA)for(var l in a.curDNA[c])l==t.item.value&&(i=!1);if($("#id_"+a.opt.prefix+t.item.value+":checked").length&&(i=!1),i){var o,d=function(e){a._loadParentTree(e,function(){a._checkCheckBox(t.item.value)}),s=$("#id_"+a.opt.prefix+t.item.value)};s.length?(s.prop("checked",!0),s.trigger("change"),r.hide()):(o={id:t.item.value,name:t.item.name},n(o,a.opt.getParentUrl,d)),a.$inputFilter.val(t.item.label)}else s.prop("checked",!0),s.trigger("change"),r.hide()},h=function(t){for(e=t,i=0;i<e.length;++i)s(e[i],"text","label");for(i=0;i<e.length;++i)s(e[i],"id","value");a.$inputFilter.hasClass("ui-autocomplete-input")?a.$inputFilter.autocomplete("search",""):(a.$inputFilter.autocomplete({source:e,minLength:0,appendTo:l,select:function(e,t){d(e,t),a.$inputFilter.val(""),a.$inputFilter.trigger("keyup"),e.preventDefault()}}),a.$inputFilter.autocomplete("search",""),o=!1),r.hide()};a.$inputFilter.attr("autocomplete","on"),a.$inputFilter.on("keyup",function(e){return t=$(this).val(),e.stopImmediatePropagation(),t.length>2&&o?(r.show(),n({term:t,form:c},a.opt.autoCompleteUrl,h),o=!1):0!=t.length||o||a.$inputFilter.hasClass("ui-autocomplete-input")&&(a.$inputFilter.autocomplete("destroy"),o=!0),!1}).click(function(){return!1})},_loadParentTree:function(e,t,i){var n,s,c,l,o=this,d=e,h=$("#id_"+o.opt.prefix+d.id),u=function(e){var n=$("#id_"+o.opt.prefix+d.id),h=0,u=function(e){r.hide(),h++,h==e&&(i||0===i?t(i):t())};r.hide(),n.length&&a(o.curDNA[s+"-sub"])==e&&(c={name:d.name,id:d.id},r.show(),l=$("#id_"+o.opt.prefix+d.id).closest(".level").children(".trigger").attr("data-template-id"),o._renderNested(c,u,l,d.id))},p=function(){r.hide(),i||0===i?t(i):t()};r.show(),d.hasOwnProperty("parent")?h.length?(c={name:d.name,id:d.id},l=h.closest(".level").children(".trigger").attr("data-template-id"),o._renderNested(c,function(){r.hide(),t()},l,d.id)):(n={name:d.parent.name,id:d.parent.id},s=$("#id_"+o.opt.prefix+d.parent.id).closest(".level").children(".trigger").attr("data-template-id"),o._renderSublist(n,s,u)):(n={name:d.name,id:d.id},s=$("#id_"+o.opt.prefix+d.id).closest(".level").children(".trigger").attr("data-template-id"),o._renderSublist(n,s,p))},applyHandler:function(e){EXPO.events.feed.modalWindow.close()},_refreshLabel:function(){var e=this.selectedWrap.children().length;e?this.$label.text(this.$label.attr("data-selected")):this.$label.text(this.$label.attr("data-default"))}},e.init=function(e){$.extend(this.opt,e);var n=this,s=function(){$(n.DOMform).find('input[name="~~name~~"]').remove()};"None"!=this.opt.searchData&&this.opt.searchData&&(this.previousSearch=JSON.parse(this.opt.searchData)),this.DOMform=document.getElementById(this.opt.formId),this.DOMhint=document.getElementById(this.opt.filter.hintId),$(this.DOMform).on("submit",function(){s()}),$.widget("custom.placeComplete",$.ui.autocomplete,{_renderItem:function(e,t){return $("<li>").append($("<a>").text(t.label)).append('<span class="subj-category"> ('+t.cat+")</span>").appendTo(e)}}),this.DOMapplyButton=document.getElementById(this.opt.applyButtonId),this.filterPane=new i(this.opt.filter),$("#"+this.opt.filter.buttonId).on("click",function(){return t.hasClass(this,n.opt.activeClass)?(t.removeClass(this,n.opt.activeClass),n.filterPane.hide()):(t.addClass(this,n.opt.activeClass),n.filterPane.show()),!1}),$("#"+n.opt.bodyId+" ."+n.opt.modalTriggerClass).on("click",function(e){return e.preventDefault(),n.modalWindow.pullData(this.getAttribute("href")),n.modalWindow.open(),!1}),$("#"+n.opt.applyButtonId).on("click",function(){return $(n.DOMform).submit(),!1}),this.modalWindow=new t.Modal(n.opt.modal),this.placesModal=new o(n.opt.place),this.subjModal=new l(n.opt.subject),$(function(){if(n.previousSearch.inputs.length){$(n.DOMhint).hide();for(var e=0;e<n.previousSearch.inputs.length;e++)"th"==n.previousSearch.inputs[e].name?n.subjModal.selectTag(n.previousSearch.inputs[e]):"area"==n.previousSearch.inputs[e].name&&(n.previousSearch.inputs[e].children&&n.previousSearch.inputs[e].children.children?n.placesModal.selectTag(n.previousSearch.inputs[e].children.children):n.previousSearch.inputs[e].children?n.placesModal.selectTag(n.previousSearch.inputs[e].children):n.previousSearch.inputs[e]&&n.placesModal.selectTag(n.previousSearch.inputs[e]))}else $(n.DOMhint).fadeIn();(a(n.placesModal.itemsSelected)||a(n.subjModal.itemsSelected))&&$(n.DOMapplyButton).show()})},e}();