mirror of
https://github.com/avecms/AVE.cms.git
synced 2026-08-01 08:45:44 +00:00
2 lines
3.6 KiB
JavaScript
2 lines
3.6 KiB
JavaScript
(()=>{(function(h,c){"use strict";var a=h.Adminx||(h.Adminx={});function d(t){var r=t.getAttribute("data-bulk-target")||"";return{items:Array.prototype.slice.call(c.querySelectorAll('[data-bulk-item="'+r+'"]')),all:Array.prototype.slice.call(c.querySelectorAll('[data-bulk-all="'+r+'"]'))}}function u(t){var r=d(t),e=r.items.filter(function(n){return n.checked&&!n.disabled}),l=r.items.filter(function(n){return!n.disabled}),i=t.querySelector("[data-bulk-count]");t.hidden=e.length===0,t.classList.toggle("visible",e.length>0),i&&(i.textContent=e.length),r.all.forEach(function(n){n.checked=l.length>0&&e.length===l.length,n.indeterminate=e.length>0&&e.length<l.length})}function b(t){var r=d(t);r.items.concat(r.all).forEach(function(e){e.checked=!1,e.indeterminate=!1}),u(t)}function k(t){var r=d(t),e=r.items.filter(function(s){return s.checked&&!s.disabled}).map(function(s){return s.value}),l=t.querySelector("[data-bulk-action]"),i=l&&l.options[l.selectedIndex]?l.options[l.selectedIndex]:null;if(!l||!l.value||!e.length){a.Toast.show(a.tr("\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0437\u0430\u043F\u0438\u0441\u0438 \u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435"),"warning");return}var n=t.getAttribute("data-bulk-endpoint")||"",p=i.getAttribute("data-label")||i.textContent||l.value,m=i.getAttribute("data-kind")||"warning";a.Confirm.open({kind:m,title:a.tr("\u0412\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u044C \u043C\u0430\u0441\u0441\u043E\u0432\u043E\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435?"),message:a.tr("\u0412\u044B\u0431\u0440\u0430\u043D\u043E \u0437\u0430\u043F\u0438\u0441\u0435\u0439")+": "+e.length+". "+a.tr("\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435")+": "+p+".",confirmLabel:a.tr("\u041F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C"),onConfirm:function(){var s=new FormData;s.append("action",l.value),e.forEach(function(f){s.append("ids[]",f)}),a.Loader.show(),a.Ajax.post(n,s).then(function(f){a.Loader.hide();var g=f.data||{};if(!f.ok||g.success===!1){a.Toast.show(g.message||a.tr("\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0432\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u044C \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435"),"error");return}var o=g.data||{},v=(g.message||a.tr("\u0413\u043E\u0442\u043E\u0432\u043E"))+" \xB7 "+a.tr("\u043E\u0431\u0440\u0430\u0431\u043E\u0442\u0430\u043D\u043E")+" "+(o.done||0);o.skipped&&(v+=", "+a.tr("\u043F\u0440\u043E\u043F\u0443\u0449\u0435\u043D\u043E")+" "+o.skipped),a.Toast.show(v,o.errors&&o.errors.length?"warning":"success"),c.dispatchEvent(new CustomEvent("adminx:bulk-complete",{detail:{root:t,result:o}})),t.getAttribute("data-bulk-reload")!=="false"?h.location.reload():b(t)}).catch(function(){a.Loader.hide(),a.Toast.show(a.tr("\u0421\u0435\u0440\u0432\u0435\u0440 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D. \u041F\u043E\u0432\u0442\u043E\u0440\u0438\u0442\u0435 \u043F\u043E\u043F\u044B\u0442\u043A\u0443."),"error")})}})}c.addEventListener("change",function(t){var r=t.target.closest("[data-bulk-item]"),e=t.target.closest("[data-bulk-all]");if(!(!r&&!e)){var l=(r||e).getAttribute(r?"data-bulk-item":"data-bulk-all"),i=c.querySelector('[data-bulk-actions][data-bulk-target="'+l+'"]');i&&(e&&d(i).items.forEach(function(n){n.disabled||(n.checked=e.checked)}),u(i))}}),c.addEventListener("click",function(t){var r=t.target.closest("[data-bulk-apply]"),e=t.target.closest("[data-bulk-clear]"),l=r||e?(r||e).closest("[data-bulk-actions]"):null;l&&(r?k(l):b(l))}),c.querySelectorAll("[data-bulk-actions]").forEach(u),a.BulkActions={update:u,clear:b}})(window,document);})();
|