| Server IP : 46.105.57.169 / Your IP : 216.73.216.144 Web Server : Apache System : Linux webd003.cluster120.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : maitricfuz ( 93378) PHP Version : 8.4.10 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/maitricfuz/www/maitric/media/system/js/ |
Upload File : |
/**
* @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org>
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/class JMultiSelect{constructor(e){this.tableEl=e,this.formEl=e.closest("form"),this.rowSelector='tr[class^="row"]',this.boxSelector='input[type="checkbox"][name="cid[]"]',this.checkallToggle=this.tableEl.querySelector('[name="checkall-toggle"]'),this.prevRow=null,this.tableEl.addEventListener("click",c=>{c.target.closest(this.rowSelector)&&this.onRowClick(c)}),this.checkallToggle&&this.checkallToggle.addEventListener("click",({target:c})=>{const t=c.checked;this.getRows().forEach(o=>{this.changeBg(o,t)})})}getRows(){return Array.from(this.tableEl.querySelectorAll(this.rowSelector))}changeBg(e,c){e.classList.toggle("row-selected",c)}onRowClick({target:e,shiftKey:c}){if(e.tagName&&(e.tagName==="A"||e.tagName==="BUTTON"||e.tagName==="SELECT"||e.tagName==="TEXTAREA"||e.tagName==="INPUT"&&!e.matches(this.boxSelector)))return;const t=e.closest(this.rowSelector),o=e.matches(this.boxSelector)?e:t.querySelector(this.boxSelector);if(!o)return;const s=o!==e?!o.checked:o.checked;if(s!==o.checked&&(o.checked=s,Joomla.isChecked(s,this.formEl)),this.changeBg(t,s),c&&this.prevRow){document.getSelection().removeAllRanges();const r=this.getRows(),l=r.indexOf(this.prevRow),i=r.indexOf(t);l>=0&&i>=0&&Math.abs(l-i)>1&&(l<i?r.slice(l,i+1):r.slice(i,l+1)).forEach(n=>{if(n===t)return;const a=n.querySelector(this.boxSelector);a&&a.checked!==s&&(a.checked=s,this.changeBg(n,s),Joomla.isChecked(s,this.formEl))})}this.prevRow=t}}const onBoot=h=>{let e="#adminForm";const c=window.Joomla?Joomla.getOptions("js-multiselect",{}).formName:"";if(c){const t=c[0];e=t!=="."&&t!=="#"?`#${c}`:c}h.querySelectorAll(e).forEach(t=>{t&&!("multiselect"in t.dataset)&&(t.dataset.multiselect="",new JMultiSelect(t))})};onBoot(document),document.addEventListener("joomla:updated",({target:h})=>onBoot(h));