%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/bitrix/www/bitrix/components/bitrix/ui.tile.list/templates/.default/
Upload File :
Create Path :
Current File : //home/bitrix/www/bitrix/components/bitrix/ui.tile.list/templates/.default/script.min.js

(function(t){BX.namespace("BX.UI.Tile");if(BX.UI.Tile.List){return}var e=[];function i(t){this.id=t.id;this.node=t.node;this.data=t.data;this.nameNode=r.getNode("tile-item-name",this.node)}function n(t){this.init(t)}n.prototype.events={containerClick:"container-click",tileClick:"tile-click",tileRemove:"tile-remove",tileEdit:"tile-edit",tileAdd:"tile-add",buttonAdd:"add",buttonSelect:"select",buttonSelectFirst:"select-first",search:"search",input:"input",searcherCategoryClick:"popup-category-click",searcherItemClick:"popup-item-click"};n.getById=function(t){var i=e.filter(function(e){return e.id===t});return i.length>0?i[0]:null};n.getList=function(){return e};n.prototype.init=function(t){this.list=[];this.id=t.id;this.context=BX(t.containerId);this.duplicates=t.duplicates;this.multiple=t.multiple;this.readonly=t.readonly;this.attributeId="data-bx-id";this.attributeData="data-bx-data";this.tileContainer=r.getNode("tile-container",this.context);this.tileTemplate=r.getNode("tile-template",this.context);this.input=r.getNode("tile-input",this.context);this.buttonAdd=r.getNode("tile-add",this.context);this.buttonSelect=r.getNode("tile-select",this.context);if(!this.context||!this.input){return}r.getNodes("tile-item",this.context).forEach(this.initNode.bind(this));if(!this.readonly){this.initEventHandlers()}this.searcher=null;e.push(this)};n.prototype.initEventHandlers=function(){if(this.buttonAdd){BX.bind(this.buttonAdd,"click",this.onButtonAdd.bind(this))}if(this.context){BX.bind(this.context,"click",this.onContainerClick.bind(this))}if(this.buttonSelect){BX.bind(this.buttonSelect,"click",this.onButtonSelect.bind(this));BX.bind(this.tileContainer,"click",this.onButtonSelect.bind(this))}BX.bind(this.input,"input",this.onInput.bind(this));BX.bind(this.input,"blur",this.onInputEnd.bind(this));r.handleKeyEnter(this.input,this.onInputEnd.bind(this))};n.prototype.getSearchInput=function(){return this.input};n.prototype.isSearcherInit=function(){return!!this.searcher};n.prototype.clearSearcher=function(){this.isButtonSelectFired=false;if(this.searcher){this.searcher.hide();this.searcher=null}};n.prototype.hideSearcher=function(){this.searcher.hide()};n.prototype.showSearcher=function(t){if(!this.searcher){this.searcher=new Searcher({id:this.id,caller:this,context:this.context,title:t||""})}this.searcher.filterByName();this.searcher.show()};n.prototype.setSearcherData=function(t){if(!this.searcher){this.showSearcher()}this.searcher.setCategories(t)};n.prototype.initNode=function(t){if(!t){return null}var e=t.getAttribute(this.attributeId);var n=t.getAttribute(this.attributeData);try{n=JSON.parse(n)}catch(t){try{n=JSON.parse(BX.util.htmlspecialcharsback(n))}catch(t){n={}}}var s=new i({id:e,node:t,data:n});if(s.id&&!this.duplicates&&this.findDuplicates(s.id)){s=null;return null}var o=r.getNode("remove",t);if(o){BX.bind(o,"click",this.onRemove.bind(this,s))}BX.bind(t,"click",this.onClick.bind(this,s));this.list.push(s);return s};n.prototype.onRemove=function(t,e){e.preventDefault();e.stopPropagation();this.removeTile(t);return false};n.prototype.onClick=function(t,e){e.preventDefault();e.stopPropagation();this.fire(this.events.tileClick,[t])};n.prototype.removeTiles=function(){var t=this.list;t.forEach(this.removeTile.bind(this))};n.prototype.removeTile=function(t){this.list=BX.util.deleteFromArray(this.list,this.list.indexOf(t));BX.remove(t.node);this.fire(this.events.tileRemove,[t])};n.prototype.getTile=function(t){var e=this.list.filter(function(e){return e.id===t});return e.length>0?e[0]:null};n.prototype.getTilesData=function(){return this.list.map(function(t){return t.data})};n.prototype.getTilesId=function(){return this.list.map(function(t){return t.id}).filter(function(t){return!!t})};n.prototype.getTiles=function(){return this.list};n.prototype.findDuplicates=function(t){var e=this.getTile(t);if(!e){return false}this.removeTile(e)};n.prototype.addTile=function(t,e,i,n,s){if(!t||this.readonly){return null}if(!this.multiple){this.removeTiles();if(this.isSearcherInit()){this.hideSearcher()}}e=e||{};i=i||"";s=s||"";n=n||"";var o=this.tileTemplate;if(!o){return null}o=o.innerHTML;var l="";if(s){l+="color: "+BX.util.htmlspecialchars(s)+"; "}if(n){l+="background-color: "+BX.util.htmlspecialchars(n)+"; "}o=r.replace(o,{id:BX.util.htmlspecialchars(i+""),name:BX.util.htmlspecialchars(t),data:BX.util.htmlspecialchars(JSON.stringify(e)),style:l});var h=document.createElement("div");h.innerHTML=o;h=h.children[0];var a=this.initNode(h);if(!a){return null}this.input.parentNode.insertBefore(h,this.input);this.fire(this.events.tileAdd,[a]);return a};n.prototype.updateTile=function(t,e,i,n,r){if(!t||this.readonly){return null}e=e||null;i=i||null;n=n||null;r=r||null;if(e){t.nameNode.textContent=e}if(i){t.data=i}if(n||n===null){t.node.style.backgroundColor=n}if(r){t.node.style.color=r}this.fire(this.events.tileEdit,[t]);return t};n.prototype.fire=function(t,e){BX.onCustomEvent(this,t,e)};n.prototype.onInput=function(){var t=this.input.value;if(this.searcher&&t.length>0){this.searcher.filterByName(t)}this.fire(this.events.input,[this.input.value])};n.prototype.onInputEnd=function(){var t=this.input.value;this.input.value="";r.changeDisplay(this.input,false);r.changeDisplay(this.buttonSelect,true);this.fire(this.events.search,[t])};n.prototype.onButtonAdd=function(t){t.preventDefault();t.stopPropagation();this.fire(this.events.buttonAdd,[])};n.prototype.onContainerClick=function(){this.fire(this.events.containerClick,[])};n.prototype.onButtonSelect=function(t){t.preventDefault();t.stopPropagation();r.changeDisplay(this.buttonSelect,false);r.changeDisplay(this.input,true);this.input.focus();this.fire(this.events.buttonSelect,[]);if(!this.isButtonSelectFired){this.fire(this.events.buttonSelectFirst,[]);this.isButtonSelectFired=true}};var r={getObjectByKey:function(t,e,i){var n=t.filter(function(t){return t.hasOwnProperty(e)&&t[e]===i});return n.length>0?n[0]:null},getNode:function(t,e){var i=this.getNodes(t,e);return i.length>0?i[0]:null},getNodes:function(t,e){if(!e){return[]}return BX.convert.nodeListToArray(e.querySelectorAll('[data-role="'+t+'"]'))},changeClass:function(t,e,i){if(!t){return}if(i){BX.addClass(t,e)}else{BX.removeClass(t,e)}},changeDisplay:function(t,e){if(!t){return}t.style.display=e?"":"none"},replace:function(t,e,i){e=e||{};i=i||false;if(!t){return""}for(var n in e){if(!e.hasOwnProperty(n)){continue}var r=e[n];r=r||"";if(!i&&r){r=BX.util.htmlspecialchars(r)}t=t.replace(new RegExp("%"+n+"%","g"),r)}return t},handleKeyEnter:function(e,i){if(!i){return}var n=function(e){e=e||t.event;if(e.keyCode===10||e.keyCode===13){e.preventDefault();e.stopPropagation();i();return false}};BX.bind(e,"keyup",n)},getTemplatedNode:function(t,e,i){if(!t){return null}var n=r.replace(t.innerHTML,e,i);var s=document.createElement("div");s.innerHTML=n;return s.children[0]}};BX.UI.Tile.List=n})(window);

Zerion Mini Shell 1.0