1
0
Fork 0
mirror of synced 2024-06-27 10:41:00 +12:00

Added option to hide modal button

This commit is contained in:
eldadfux 2019-08-25 09:01:14 +03:00
parent 82174cbc95
commit b6de00101c
3 changed files with 3 additions and 3 deletions

View file

@ -2459,7 +2459,7 @@ else{element.disabled=false;element.value=offset+limit;}};check();for(let i=0;i<
list.sort(function(a,b){return a.pathname.length-b.pathname.length;});for(let i=0;i<list.length;i++){if(list[i].pathname===window.location.pathname.substring(0,list[i].pathname.length)){list[i].classList.add('selected');if(selected!==null){list[selected].classList.remove('selected');}
selected=i;}
else{list[i].classList.remove('selected');}}};document.addEventListener('state-changed',check);check();}});})(window);(function(window){window.ls.container.get('view').add({selector:'data-ui-modal',controller:function(document,element,expression){let name=element.dataset['name']||null;let buttonText=expression.parse(element.dataset['buttonText']||'');let buttonClass=element.dataset['buttonClass']||'button-class';let buttonIcon=element.dataset['buttonIcon']||null;let buttonEvent=element.dataset['buttonEvent']||'';let buttonAlias=element.dataset['buttonAlias']||'';let buttonElements=(!buttonAlias)?[document.createElement('button')]:document.querySelectorAll(buttonAlias);let openEvent=element.dataset['openEvent']||null;let background=document.getElementById('modal-bg');if(!background){background=document.createElement('div');background.id='modal-bg';background.className='modal-bg';document.body.appendChild(background);background.addEventListener('click',function(){document.dispatchEvent(new CustomEvent('modal-close',{bubbles:false,cancelable:true}));});}
if(!buttonAlias){buttonElements.forEach((button)=>{button.innerText=buttonText;button.className=buttonClass;button.type='button';if(buttonIcon){let iconElement=document.createElement('i');iconElement.className=buttonIcon;button.insertBefore(iconElement,button.firstChild);}});}
if(!buttonAlias&&(buttonText||buttonIcon)){buttonElements.forEach((button)=>{button.innerText=buttonText;button.className=buttonClass;button.type='button';if(buttonIcon){let iconElement=document.createElement('i');iconElement.className=buttonIcon;button.insertBefore(iconElement,button.firstChild);}});}
if(buttonEvent){buttonElements.forEach((button)=>{button.addEventListener('click',function(){document.dispatchEvent(new CustomEvent(buttonEvent,{bubbles:false,cancelable:true}));});});}
element.classList.add('modal');if(!buttonAlias){buttonElements.forEach((button)=>{element.parentNode.insertBefore(button,element);});}
let open=function(){document.documentElement.classList.add('modal-open');document.dispatchEvent(new CustomEvent('modal-open',{bubbles:false,cancelable:true}));element.classList.add('open');element.classList.remove('close');};let close=function(){document.documentElement.classList.remove('modal-open');element.classList.add('close');element.classList.remove('open');};if(name){document.querySelectorAll("[data-ui-modal-ref='"+name+"']").forEach(function(elem){elem.addEventListener('click',open);});}

View file

@ -374,7 +374,7 @@ else{element.disabled=false;element.value=offset+limit;}};check();for(let i=0;i<
list.sort(function(a,b){return a.pathname.length-b.pathname.length;});for(let i=0;i<list.length;i++){if(list[i].pathname===window.location.pathname.substring(0,list[i].pathname.length)){list[i].classList.add('selected');if(selected!==null){list[selected].classList.remove('selected');}
selected=i;}
else{list[i].classList.remove('selected');}}};document.addEventListener('state-changed',check);check();}});})(window);(function(window){window.ls.container.get('view').add({selector:'data-ui-modal',controller:function(document,element,expression){let name=element.dataset['name']||null;let buttonText=expression.parse(element.dataset['buttonText']||'');let buttonClass=element.dataset['buttonClass']||'button-class';let buttonIcon=element.dataset['buttonIcon']||null;let buttonEvent=element.dataset['buttonEvent']||'';let buttonAlias=element.dataset['buttonAlias']||'';let buttonElements=(!buttonAlias)?[document.createElement('button')]:document.querySelectorAll(buttonAlias);let openEvent=element.dataset['openEvent']||null;let background=document.getElementById('modal-bg');if(!background){background=document.createElement('div');background.id='modal-bg';background.className='modal-bg';document.body.appendChild(background);background.addEventListener('click',function(){document.dispatchEvent(new CustomEvent('modal-close',{bubbles:false,cancelable:true}));});}
if(!buttonAlias){buttonElements.forEach((button)=>{button.innerText=buttonText;button.className=buttonClass;button.type='button';if(buttonIcon){let iconElement=document.createElement('i');iconElement.className=buttonIcon;button.insertBefore(iconElement,button.firstChild);}});}
if(!buttonAlias&&(buttonText||buttonIcon)){buttonElements.forEach((button)=>{button.innerText=buttonText;button.className=buttonClass;button.type='button';if(buttonIcon){let iconElement=document.createElement('i');iconElement.className=buttonIcon;button.insertBefore(iconElement,button.firstChild);}});}
if(buttonEvent){buttonElements.forEach((button)=>{button.addEventListener('click',function(){document.dispatchEvent(new CustomEvent(buttonEvent,{bubbles:false,cancelable:true}));});});}
element.classList.add('modal');if(!buttonAlias){buttonElements.forEach((button)=>{element.parentNode.insertBefore(button,element);});}
let open=function(){document.documentElement.classList.add('modal-open');document.dispatchEvent(new CustomEvent('modal-open',{bubbles:false,cancelable:true}));element.classList.add('open');element.classList.remove('close');};let close=function(){document.documentElement.classList.remove('modal-open');element.classList.add('close');element.classList.remove('open');};if(name){document.querySelectorAll("[data-ui-modal-ref='"+name+"']").forEach(function(elem){elem.addEventListener('click',open);});}

View file

@ -28,7 +28,7 @@
});
}
if(!buttonAlias) {
if(!buttonAlias && (buttonText || buttonIcon)) {
buttonElements.forEach((button) => {
button.innerText = buttonText;