diff --git a/dist/assets/gamutable.365527a2.js b/dist/assets/gamutable.365527a2.js deleted file mode 100644 index 002f355..0000000 --- a/dist/assets/gamutable.365527a2.js +++ /dev/null @@ -1 +0,0 @@ -import{i as Ue,r as v,o as qe,c as ke,w as le,n as Fe,a as u,b as f,d as o,e as V,v as Ge,u as s,f as U,F as q,g as F,t as G,h as Se,j as x,k as D,l as I,m as H,p as ze,q as Ke,s as Qe,Y as We,x as Xe,y as xe,V as $e}from"./vendor.38f224e0.js";(function(){const g=document.createElement("link").relList;if(g&&g.supports&&g.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))b(n);new MutationObserver(n=>{for(const h of n)if(h.type==="childList")for(const L of h.addedNodes)L.tagName==="LINK"&&L.rel==="modulepreload"&&b(L)}).observe(document,{childList:!0,subtree:!0});function r(n){const h={};return n.integrity&&(h.integrity=n.integrity),n.referrerpolicy&&(h.referrerPolicy=n.referrerpolicy),n.crossorigin==="use-credentials"?h.credentials="include":n.crossorigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function b(n){if(n.ep)return;n.ep=!0;const h=r(n);fetch(n.href,h)}})();function oe(d,g){let r=-1;return d.forEach((b,n)=>{b.html.id===parseInt(g)&&(r=n)}),r}function je(d){try{return JSON.parse(d)}catch(g){return console.log("erreur recupJson ",g),!1}}function Ye(d,g){let r=document.createElement("a");r.href=d,g&&r.setAttribute("target","_blank"),r.click()}function Ze(d,g){if((Number.isInteger(d)||parseInt(d)==d)&&(Number.isInteger(g)||parseInt(g)==g))return parseInt(d)-parseInt(g);{let r=toString(d).toLowerCase(),b=toString(g).toLowerCase();return rb?1:0}}const Ie=(d,g,r,b)=>d.sort((n,h)=>g.reduce((L,w,A)=>{if(L===0){let[_,k]=r&&r[A]==="desc"?[h[b][w],n[b][w]]:[n[b][w],h[b][w]];_=typeof _=="string"?_.toLowerCase():_,k=typeof k=="string"?k.toLowerCase():k;let M=/^(\d{2})\/(\d{2})\/(\d{2,4})$/;if(typeof _!="number"){let O=_.match(M);Array.isArray(O)&&(_=O[3]+O[2]+O[1]);let m=k.match(M);Array.isArray(m)&&(k=m[3]+m[2]+m[1])}L=_>k?1:_{localforage.setDriver(localforage[r.stockage.toUpperCase()]),W("maj"),r.urlvuebloc&&fetch(r.urlvuebloc).then(l=>l.text()).then(l=>{ne.value=l})});const Te=ke(()=>{if(Q.value){const[l,t]=Q.value.split(" "),[e,a,i]=l.split("-"),[c,y,S]=t.split(":");return`${i}/${a}/${e} \xE0 ${c}h${y}min${S}sec`}else return""}),J=ke(()=>{if(He(),!z.value&&!re.value)return Ce(n.value);let l=n.value.filter(t=>{let e=!(Object.values(t[E.value]).toString().toLowerCase().indexOf(z.value.toLowerCase())<0);return e?(Object.keys(m.value).forEach(a=>{if(e){let i=m.value[a];if(i!==null){Array.isArray(i)||(i=[i]);let c=[];i.forEach(y=>{Number.isInteger(y)&&c.push(y),y.length>0&&c.push(y.toLowerCase())}),c.length&&(O.value[a]==="select"?c.some(S=>{if(Number.isInteger(S)){if(parseInt(t[E.value][a])===S)return!0}else if(t[E.value][a]!==void 0&&!(S.indexOf(t[E.value][a].toString().toLowerCase().toString())===-1||!t[E.value][a].toString().toLowerCase()))return!0})||(e=!1):t[E.value][a].toString().toLowerCase().indexOf(c.toString())===-1&&(e=!1))}}}),e):!1});return Ce(l)});le(m,()=>{ee()}),le(N,l=>{parseInt(l)?B.value=l:B.value=n.value.length,sessionStorage.setItem("nbItems",B.value),sessionStorage.setItem("nbItemsChaine",N.value)}),le(n,()=>{ee(),localforage.setItem(T,JSON.stringify(n.value))}),le(J,()=>{r.filtrecolmulti==="non"&&M.value.forEach(l=>{let t=[];J.value.forEach(e=>{let a=e[E.value][l];t.indexOf(a)===-1&&(t.push(a),filtreColValOk.value=!0)}),ie.value[l]=t})}),le(m,()=>{let l=[];m.value&&Object.entries(m.value).forEach(([t,e])=>{Array.isArray(e)||(e=[e]),l.push({champ:t,valeurs:e})}),ue||localStorage.setItem("filtreselect_"+T,JSON.stringify(l))},{deep:!0});function ve(l){h.value=l.header,l.crayons!==void 0&&(L.value=l.crayons),l.maj!==void 0&&(Q.value=l.maj),l.classes!==void 0&&(w.value=l.classes),l.checkbox!==void 0&&(A.value=l.checkbox,Object.keys(A.value).forEach(e=>{_.value[e]=[]})),l.ordreCol!==void 0&&(k.value=l.ordreCol);let t=[];return l.filtreCol!==void 0&&(t=l.filtreCol),ee(),t}function Le(l,t=null){if(parseInt(t)>0)if(l.length>0){let e=oe(n.value,t);e>=0?n.value[e]=l[0]:n.value.unshift(l[0])}else{let e=oe(n.value,t);n.value.splice(e,1)}else t==="maj"?l.length&&(l[0]&&l[0].search&&(E.value="search"),l.length>0&&l.forEach((e,a)=>{let i=oe(n.value,e.html.id);i>=0?n.value[i]=l[a]:n.value.unshift(l[a])})):(n.value=l,l[0]&&l[0].search&&(E.value="search"));localforage.setItem(T,JSON.stringify(n.value))}function he(l){l!==void 0&&(O.value=l,M.value=[],Object.keys(O.value).forEach(t=>{let e=[];n.value.forEach(a=>{let i=a[E.value][t];i&&e.indexOf(i)===-1&&e.push(i)}),M.value.push(t),ie.value[t]=e.sort(),m.value[t]=[]}))}function Ee(l){l.a_supprimer&&l.a_supprimer.forEach(t=>{let e=oe(n.value,t);e!==-1&&n.value.splice(e,1)})}function W(l){console.log("chargerJson pour ",l),se.value=!0;let t=r.apiuri;if(parseInt(l)>0)t+="&id="+l;else{let e=localStorage.getItem("header_"+T);e=je(e),e&&e.header!==void 0&&n.value.length===0&&(console.log("charge LS"),localforage.getItem(T).then(function(a){a=je(a);let i=ve(e);n.value=a,he(i),r.nomblocajaxreload&&ajaxReload(r.nomblocajaxreload)}).catch(function(a){console.log(a)})),l==="maj"&&(Q.value?t+="&maj="+Q.value:e&&e.maj?t+="&maj="+e.maj:l=null)}fetch(t).then(e=>e.json()).then(e=>{let a=e.shift();Ee(a);let i=ve(a);Le(e,l),he(i),Fe(()=>{se.value=!1;const c=localStorage.getItem("filtreselect_"+T),y=localStorage.getItem("triCol_"+T);let S=[];if(r.filtreselect?(r.filtreselect.split(",").forEach(C=>{const[j,...P]=C.split("|"),X=S.findIndex(de=>de.champ===j);X===-1?S.push({champ:j,valeurs:P}):S[X].valeurs.push(P[0])}),localStorage.setItem("filtreselect_"+T,JSON.stringify(S))):c&&(S=JSON.parse(c)),S.forEach(C=>{M.value.includes(C.champ)&&(m.value[C.champ]=[...m.value[C.champ],...C.valeurs])}),re.value++,ue=!1,ce&&r.tparpage.includes(ce)&&(N.value=ce),fe?(fe.split(",").forEach(C=>{const[j,P]=C.split("|");M.value.includes(j)&&te(j,P)}),localStorage.setItem("triCol_"+T,fe)):y&&y.split(",").forEach(C=>{const[j,P]=C.split("|");M.value.includes(j)&&te(j,P)}),parseInt(r._id)>0){let C=parseInt(r._id),j=parseInt(B.value);if(parseInt(j)){let P=0;if(Object.values(n.value).forEach((X,de)=>{C===X.html.id&&(P=de+1)}),P>j){let X=parseInt(P/j)+1;p.value=X}}me(C,"id")}r.nomblocajaxreload&&ajaxReload(r.nomblocajaxreload),k.value&&Object.entries(k.value).forEach(([C,j])=>{te(C,j)}),$("td.crayon-init").removeClass("crayon-init")})}).catch(e=>console.log(e))}function ee(){let l={header:h.value,crayons:L.value,classes:w.value,filtreCol:O.value,ordreCol:k.value,maj:Q.value};localStorage.setItem("header_"+T,JSON.stringify(l))}function Ve(l){m.value[l]=[],ee()}function we(){re.value++}function Me(){return r.apiuri?r.apiuri.match(/.*page=(.*)/)[1]:""}function Pe(l,t){let e=t.crayons!==void 0&&t.crayons[l]!==void 0?t.crayons[l]:t.html.id;if(Object.keys(L.value).indexOf(l)!==-1)return`crayon ${L.value[l]}-${l}-${e}`}function te(l,t=!1){const e=Y.value.indexOf(l);e!==-1?(t||(t="asc",K.value[e]==="asc"&&(t="desc")),K.value[e]=t):(t||(t="asc"),Y.value.push(l),K.value.push(t)),n.value=Ie(n.value,Y.value,K.value,E.value),k.value[l]=t,ee()}function ge(l,t){const e=Y.value.indexOf(l);if(e!==-1&&K.value[e]===t)return"active"}function Je(){n.value=Ie(n.value,["id"],"",E.value),K.value=[],Y.value=[],k.value=[],Object.keys(O.value).forEach(l=>{m.value[l]=[]}),localStorage.removeItem("filtreselect_"+T),localStorage.removeItem("filtreCol_"+T),localStorage.removeItem("triCol_"+T)}function me(l,t){if(t==="id"&&parseInt(l)){let e=ae.value.indexOf(l);e!==-1?ae.value.splice(e,1):ae.value.push(l)}}function be(l="tableau"){let t=[],e=J.value;l==="table"&&(e=n.value),Object.values(e).forEach(c=>{t.push(c.html)});const a={fichierpdf:r.fichierpdf,namepdf:r.namepdf,header:h.value,arg:r.argpdf,Tdata:t};$.ajax({url:r.pdfuri,type:"POST",dataType:"text",data:a}).done(function(c){c&&Ye(c,!0)})}function _e(l="tableau"){let t=[],e=[],a=[],i=J.value;l==="table"&&(i=n.value),Object.keys(h.value).forEach(c=>e.push(c)),a=i.reduce((c,y)=>{let S=[];return Object.values(y[r.champcsv]).forEach(C=>S.push(C)),[...c,[...S]]},[]),t=[[...e],...a],Ne(t,r.delimitercsv,r.namecsv)}function Ae(l){let t=ne.value;return Object.keys(l).forEach(e=>{t=t.replace(`@@${e}@@`,l[e])}),t}function ye(l){Z.value=l}function Be(l){_.value[l]!==void 0&&_.value[l].length?_.value[l]=[]:(_.value[l]=[],J.value.forEach(t=>{_.value[l].push(t.html.id)}))}function De(l,t){let e="page";if(t.includes("action=")&&(e="action"),e==="action")$.ajax({url:t,data:{data:_.value[l]},type:"POST"}).done(function(){W("maj")});else{const a=encodeURIComponent(JSON.stringify(_.value[l]));t+="&data="+a,t+="&var_zajax=content";const i={};i.onClose=()=>{W("maj")},$.modalbox(t,i)}}function Ce(l){let t=p.value*B.value-B.value,e=p.value*B.value;return l.slice(t,e)}function He(){let l=Math.ceil(n.value.length/B.value);R.value=[];for(let t=1;t<=l;t++)R.value.push(t)}function Ne(l,t,e){e.includes(".csv")&&(e=e.split(".")[0]);let a="";t?a=b.unparse(l,{delimiter:t}):a=b.unparse(l),b.download(a,e)}function Re(l,t=!0){console.log("rechargerJson"),ue=t,W(l)}return g({rechargerJson:Re}),(l,t)=>(u(),f("div",et,[o("div",tt,[V(o("select",{id:"parPage","onUpdate:modelValue":t[0]||(t[0]=e=>U(N)?N.value=e:N=e)},[(u(!0),f(q,null,F(d.tparpage,e=>(u(),f("option",{key:e},G(e),1))),128))],512),[[Ge,s(N)]]),V(o("input",{class:"gamutable--rechercher",type:"text","onUpdate:modelValue":t[1]||(t[1]=e=>U(z)?z.value=e:z=e),placeholder:"Rechercher"},null,512),[[Se,s(z)]]),o("button",{class:"btn gamutable--resetOrderBy",type:"button",onClick:t[2]||(t[2]=x(e=>Je(),["stop"])),title:"R\xE9initialiser les tris des colonnes"},st),o("button",{class:"btn var_gamutable rouge",type:"button",onClick:t[3]||(t[3]=x(e=>W(),["stop"])),title:"Rechargement complet du tableau"},ot),o("button",{class:"btn var_gamutable",type:"button",onClick:t[4]||(t[4]=x(e=>W("maj"),["stop"])),title:"Mise \xE0 jour du tableau - derni\xE8re version de la base de donn\xE9e le : "+s(Te)},ut,8,rt),s(ne)?V((u(),f("button",{key:0,class:"btn gamutable--vueTable",title:"Switcher en Vue tableau",onClick:t[5]||(t[5]=x(e=>ye("tableau"),["stop"]))},ft,512)),[[D,s(Z)==="bloc"]]):I("",!0),s(ne)?V((u(),f("button",{key:1,class:"btn gamutable--vueBloc",title:"Switcher en Vue Bloc",onClick:t[6]||(t[6]=x(e=>ye("bloc"),["stop"]))},pt,512)),[[D,s(Z)==="tableau"]]):I("",!0),V(o("button",{class:"btn gamutable--exportCSV",type:"button",onClick:t[7]||(t[7]=x(e=>_e(),["stop"])),title:"Exporter le tableau affich\xE9 en csv"},ht,512),[[D,d.namecsv]]),V(o("button",{class:"btn",type:"button",onClick:t[8]||(t[8]=x(e=>be(),["stop"])),title:"G\xE9n\xE9rer le PDF du tableau affich\xE9"},mt,512),[[D,d.fichierpdf]]),V(o("button",{class:"btn gamutable--exportCSV",type:"button",onClick:t[9]||(t[9]=x(e=>_e("table"),["stop"])),title:"Exporter le tableau complet en csv"},_t,512),[[D,d.namecsv]]),V(o("button",{class:"btn",type:"button",onClick:t[10]||(t[10]=x(e=>be("table"),["stop"])),title:"G\xE9n\xE9rer le PDF du tableau complet"},Ct,512),[[D,d.fichierpdf]]),V(o("span",kt,$t,512),[[D,s(se)]]),V(o("span",jt,Ot,512),[[D,!s(se)]]),o("span",{class:"gamutable-nbrMax","data-nbrmax":s(n).length},G(s(J).length)+" / "+G(s(n).length)+" \xE9l\xE9ments",9,Tt),o("span",{class:"includespip",innerHTML:d.includespip},null,8,Lt)]),s(Z)==="bloc"?(u(),f("div",Et,[(u(!0),f(q,null,F(s(J),e=>(u(),f("div",{class:"vueBlocs-unbloc",key:e.id,innerHTML:Ae(e.html)},null,8,Vt))),128))])):I("",!0),s(Z)==="tableau"?(u(),f("table",wt,[o("thead",null,[o("tr",null,[(u(!0),f(q,null,F(s(h),(e,a,i)=>(u(),f("th",{key:"head_"+i,class:H([a,s(w)[a]])},[o("span",Mt,[o("span",{innerHTML:e},null,8,Pt),o("span",Jt,[o("i",{class:H(["fa fa-sort-asc fa-sort-up",ge(a,"asc")]),"aria-hidden":"true",onClick:x(c=>te(a,"asc"),["stop"])},null,10,At),o("i",{class:H(["fa fa-sort-desc fa-sort-down",ge(a,"desc")]),"aria-hidden":"true",onClick:x(c=>te(a,"desc"),["stop"])},null,10,Bt)])])],2))),128))]),s(M).length||Object.keys(s(A)).length?(u(),f("tr",Dt,[(u(!0),f(q,null,F(s(h),(e,a,i)=>(u(),f("th",{key:"filtreCol_"+i},[s(A)[a]!==void 0?(u(),f("div",{key:0,id:"filtreCol_"+a,class:H([s(w)[a],"flex justify-between"])},[o("input",{class:"ml-2",type:"checkbox",onClick:x(c=>Be(a),["stop"])},null,8,Nt),o("button",{onClick:x(c=>De(a,s(A)[a]),["stop"])},qt,8,Rt)],10,Ht)):I("",!0),s(M).indexOf(a)!==-1?(u(),f("div",{key:1,id:"filtreCol_"+a,class:H(s(w)[a])},[s(O)[a]==="select"?(u(),ze(s(We),{key:0,modelValue:s(m)[a],"onUpdate:modelValue":c=>s(m)[a]=c,options:s(ie)[a].sort(s(Ze)),"hide-selected":"",multiple:"",taggable:"","close-on-select":"","clear-on-close":"",searchable:"",onSelected:we,"onSearch:focus":t[11]||(t[11]=()=>{})},{tag:Ke(({option:c,remove:y})=>[o("div",Gt,[Qe(G(c)+" ",1),o("span",{class:"tag--remove pointer",title:"Cliquer pour supprimer ",onClick:x(y,["stop"])},"x",8,zt)])]),_:2},1032,["modelValue","onUpdate:modelValue","options"])):I("",!0),s(O)[a]==="input"?V((u(),f("input",{key:1,class:"gamutable__input--filtrer","onUpdate:modelValue":c=>s(m)[a]=c,type:"text",placeholder:"Rechercher",onKeydown:t[12]||(t[12]=()=>{})},null,40,Kt)),[[Se,s(m)[a]]]):I("",!0),s(O)[a]==="input"&&s(m)[a].length!==0?(u(),f("button",{key:2,onClick:x(c=>Ve(a),["stop"]),title:"Vider ce champ",class:"gamutable__input--filtrer"}," X ",8,Qt)):I("",!0)],10,Ft)):I("",!0)]))),128))])):I("",!0)]),o("tbody",null,[(u(!0),f(q,null,F(s(J),e=>(u(),f("tr",{key:e.html.id,class:H(s(ae).indexOf(e.html.id)!==-1?"select":"")},[(u(!0),f(q,null,F(e.html,(a,i,c)=>(u(),f("td",{key:"td_"+c,class:H([Pe(i,e),i,s(w)[i],e.classes!==void 0?e.classes[i]:""]),onClick:y=>me(e.html.id,i)},[s(A)[i]!==void 0?(u(),f("div",Xt,[a.split("-")[0]==="dataid"?(u(),f("div",Yt,[o("label",null,[V(o("input",{type:"checkbox","onUpdate:modelValue":y=>s(_)[i]=y,value:a.split("-")[1]},null,8,Zt),[[Xe,s(_)[i]]])])])):(u(),f("div",{key:1,innerHTML:a},null,8,el))])):(u(),f("div",{key:1,innerHTML:a},null,8,tl))],10,Wt))),128))],2))),128))])])):I("",!0),o("div",ll,[o("div",al,G(s(J).length)+" / "+G(s(n).length)+" \xE9l\xE9ments ",1),o("div",sl,[o("div",nl,[s(p)!=1?(u(),f("button",{key:0,type:"button",class:"page-link",onClick:t[13]||(t[13]=e=>U(p)?p.value=1:p=1)}," Premier ")):I("",!0),s(p)!=1?(u(),f("button",{key:1,type:"button",class:"page-link",onClick:t[14]||(t[14]=e=>U(p)?p.value--:p--)}," Pr\xE9c\xE9dent ")):I("",!0)]),o("div",ol,[(u(!0),f(q,null,F(s(R).slice(s(p)-4<0?0:s(p)-4,s(p)+3),e=>(u(),f("button",{type:"button",class:H(["page-link",{on:e===s(p)}]),onClick:a=>U(p)?p.value=e:p=e},G(e),11,rl))),256))]),o("div",il,[s(p)U(p)?p.value++:p++),class:"page-link"}," Suivant ")):I("",!0),s(p)U(p)?p.value=s(R).length:p=s(R).length),class:"page-link"}," Dernier ")):I("",!0)])])])]))}},Oe={GamuTable:ul};let pe=1;for(const d of document.getElementsByClassName("vue-gamutable"))pe===1?(window.app=xe({components:Oe,mounted(){app.rechargerJson=this.$refs.montableau.rechargerJson}}),app.use($e),app.provide("$papa",app.config.globalProperties.$papa),app.mount(d)):pe===2&&(window.app_deux=xe({components:Oe,mounted(){app_deux.rechargerJson=this.$refs.montableau_deux.rechargerJson}}),app_deux.use($e),app_deux.provide("$papa",app_deux.config.globalProperties.$papa),app_deux.mount(d)),pe++;$("#vueGamutable").on("click",".url_action",function(d){console.log("coucou"),d.preventDefault(),d.stopPropagation();let g=$(this).data("confirm");if(g!==void 0&&!confirm(g))return;let r=$(this).attr("href"),b=$(this).data("id");$(this).has("i.icon, i.fa")&&$(this).find("i.icon, i.fa").eq(0).replaceWith('');let n=$(this).data("ajaxreload");console.time("Chargement de VueJs APRES Ajax"),$.ajax({url:r,dataType:"json",async:!0}).done(function(h){!$.isEmptyObject(h)&&!$.isEmptyObject(h.message_erreur)?alert(h.message_erreur):(parseInt(b)>0?app.rechargerJson(b):app.rechargerJson("maj"),n!==void 0&&(console.log("depart reload: "+n),ajaxReload(n,{args:{id:b},callback:function(){}})))})}); diff --git a/dist/assets/gamutable.3b8eae4d.js b/dist/assets/gamutable.3b8eae4d.js new file mode 100644 index 0000000..5ec275e --- /dev/null +++ b/dist/assets/gamutable.3b8eae4d.js @@ -0,0 +1 @@ +import{i as Ue,r as v,o as qe,c as ke,w as le,n as Fe,a as u,b as f,d as o,e as V,v as Ge,u as s,f as U,F as q,g as F,t as G,h as Se,j as x,k as D,l as I,m as N,p as ze,q as Ke,s as Qe,Y as We,x as Xe,y as xe,V as $e}from"./vendor.38f224e0.js";(function(){const g=document.createElement("link").relList;if(g&&g.supports&&g.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))b(n);new MutationObserver(n=>{for(const h of n)if(h.type==="childList")for(const L of h.addedNodes)L.tagName==="LINK"&&L.rel==="modulepreload"&&b(L)}).observe(document,{childList:!0,subtree:!0});function r(n){const h={};return n.integrity&&(h.integrity=n.integrity),n.referrerpolicy&&(h.referrerPolicy=n.referrerpolicy),n.crossorigin==="use-credentials"?h.credentials="include":n.crossorigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function b(n){if(n.ep)return;n.ep=!0;const h=r(n);fetch(n.href,h)}})();function oe(d,g){let r=-1;return d.forEach((b,n)=>{b.html.id===parseInt(g)&&(r=n)}),r}function je(d){try{return JSON.parse(d)}catch(g){return console.log("erreur recupJson ",g),!1}}function Ye(d,g){let r=document.createElement("a");r.href=d,g&&r.setAttribute("target","_blank"),r.click()}function Ze(d,g){if((Number.isInteger(d)||parseInt(d)==d)&&(Number.isInteger(g)||parseInt(g)==g))return parseInt(d)-parseInt(g);{let r=toString(d).toLowerCase(),b=toString(g).toLowerCase();return rb?1:0}}const Ie=(d,g,r,b)=>d.sort((n,h)=>g.reduce((L,w,A)=>{if(L===0){let[_,k]=r&&r[A]==="desc"?[h[b][w],n[b][w]]:[n[b][w],h[b][w]];_=typeof _=="string"?_.toLowerCase():_,k=typeof k=="string"?k.toLowerCase():k;let M=/^(\d{2})\/(\d{2})\/(\d{2,4})$/;if(typeof _!="number"){let O=_.match(M);Array.isArray(O)&&(_=O[3]+O[2]+O[1]);let m=k.match(M);Array.isArray(m)&&(k=m[3]+m[2]+m[1])}L=_>k?1:_{localforage.setDriver(localforage[r.stockage.toUpperCase()]),W("maj"),r.urlvuebloc&&fetch(r.urlvuebloc).then(l=>l.text()).then(l=>{ne.value=l})});const Te=ke(()=>{if(Q.value){const[l,t]=Q.value.split(" "),[e,a,i]=l.split("-"),[c,y,S]=t.split(":");return`${i}/${a}/${e} \xE0 ${c}h${y}min${S}sec`}else return""}),J=ke(()=>{if(Ne(),!z.value&&!re.value)return Ce(n.value);let l=n.value.filter(t=>{let e=!(Object.values(t[E.value]).toString().toLowerCase().indexOf(z.value.toLowerCase())<0);return e?(Object.keys(m.value).forEach(a=>{if(e){let i=m.value[a];if(i!==null){Array.isArray(i)||(i=[i]);let c=[];i.forEach(y=>{Number.isInteger(y)&&c.push(y),y.length>0&&c.push(y.toLowerCase())}),c.length&&(O.value[a]==="select"?c.some(S=>{if(Number.isInteger(S)){if(parseInt(t[E.value][a])===S)return!0}else if(t[E.value][a]!==void 0&&!(S.indexOf(t[E.value][a].toString().toLowerCase().toString())===-1||!t[E.value][a].toString().toLowerCase()))return!0})||(e=!1):t[E.value][a].toString().toLowerCase().indexOf(c.toString())===-1&&(e=!1))}}}),e):!1});return Ce(l)});le(m,()=>{ee()}),le(H,l=>{parseInt(l)?B.value=l:B.value=n.value.length,sessionStorage.setItem("nbItems",B.value),sessionStorage.setItem("nbItemsChaine",H.value)}),le(n,()=>{ee(),localforage.setItem(T,JSON.stringify(n.value))}),le(J,()=>{r.filtrecolmulti==="non"&&M.value.forEach(l=>{let t=[];J.value.forEach(e=>{let a=e[E.value][l];t.indexOf(a)===-1&&(t.push(a),filtreColValOk.value=!0)}),ie.value[l]=t})}),le(m,()=>{let l=[];m.value&&Object.entries(m.value).forEach(([t,e])=>{Array.isArray(e)||(e=[e]),l.push({champ:t,valeurs:e})}),ue||localStorage.setItem("filtreselect_"+T,JSON.stringify(l))},{deep:!0});function ve(l){h.value=l.header,l.crayons!==void 0&&(L.value=l.crayons),l.maj!==void 0&&(Q.value=l.maj),l.classes!==void 0&&(w.value=l.classes),l.checkbox!==void 0&&(A.value=l.checkbox,Object.keys(A.value).forEach(e=>{_.value[e]=[]})),l.ordreCol!==void 0&&(k.value=l.ordreCol);let t=[];return l.filtreCol!==void 0&&(t=l.filtreCol),ee(),t}function Le(l,t=null){if(parseInt(t)>0)if(l.length>0){let e=oe(n.value,t);e>=0?n.value[e]=l[0]:n.value.unshift(l[0])}else{let e=oe(n.value,t);n.value.splice(e,1)}else t==="maj"?l.length&&(l[0]&&l[0].search&&(E.value="search"),l.length>0&&l.forEach((e,a)=>{let i=oe(n.value,e.html.id);i>=0?n.value[i]=l[a]:n.value.unshift(l[a])})):(n.value=l,l[0]&&l[0].search&&(E.value="search"));localforage.setItem(T,JSON.stringify(n.value))}function he(l){l!==void 0&&(O.value=l,M.value=[],Object.keys(O.value).forEach(t=>{let e=[];n.value.forEach(a=>{let i=a[E.value][t];i&&e.indexOf(i)===-1&&e.push(i)}),M.value.push(t),ie.value[t]=e.sort(),m.value[t]=[]}))}function Ee(l){l.a_supprimer&&l.a_supprimer.forEach(t=>{let e=oe(n.value,t);e!==-1&&n.value.splice(e,1)})}function W(l){console.log("chargerJson pour ",l),se.value=!0;let t=r.apiuri;if(parseInt(l)>0)t+="&id="+l;else{let e=localStorage.getItem("header_"+T);e=je(e),e&&e.header!==void 0&&n.value.length===0&&(console.log("charge LS"),localforage.getItem(T).then(function(a){a=je(a);let i=ve(e);n.value=a,he(i),r.nomblocajaxreload&&ajaxReload(r.nomblocajaxreload)}).catch(function(a){console.log(a)})),l==="maj"&&(Q.value?t+="&maj="+Q.value:e&&e.maj?t+="&maj="+e.maj:l=null)}fetch(t).then(e=>e.json()).then(e=>{let a=e.shift();Ee(a);let i=ve(a);Le(e,l),he(i),Fe(()=>{se.value=!1;const c=localStorage.getItem("filtreselect_"+T),y=localStorage.getItem("triCol_"+T);let S=[];if(r.filtreselect?(r.filtreselect.split(",").forEach(C=>{const[j,...P]=C.split("|"),X=S.findIndex(de=>de.champ===j);X===-1?S.push({champ:j,valeurs:P}):S[X].valeurs.push(P[0])}),localStorage.setItem("filtreselect_"+T,JSON.stringify(S))):c&&(S=JSON.parse(c)),S.forEach(C=>{M.value.includes(C.champ)&&(m.value[C.champ]=[...m.value[C.champ],...C.valeurs])}),re.value++,ue=!1,ce&&r.tparpage.includes(ce)&&(H.value=ce),fe?(fe.split(",").forEach(C=>{const[j,P]=C.split("|");M.value.includes(j)&&te(j,P)}),localStorage.setItem("triCol_"+T,fe)):y&&y.split(",").forEach(C=>{const[j,P]=C.split("|");M.value.includes(j)&&te(j,P)}),parseInt(r._id)>0){let C=parseInt(r._id),j=parseInt(B.value);if(parseInt(j)){let P=0;if(Object.values(n.value).forEach((X,de)=>{C===X.html.id&&(P=de+1)}),P>j){let X=parseInt(P/j)+1;p.value=X}}me(C,"id")}r.nomblocajaxreload&&ajaxReload(r.nomblocajaxreload),k.value&&Object.entries(k.value).forEach(([C,j])=>{te(C,j)}),$("td.crayon-init").removeClass("crayon-init")})}).catch(e=>console.log(e))}function ee(){let l={header:h.value,crayons:L.value,classes:w.value,filtreCol:O.value,ordreCol:k.value,maj:Q.value};localStorage.setItem("header_"+T,JSON.stringify(l))}function Ve(l){m.value[l]=[],ee()}function we(){re.value++}function Me(){return r.apiuri?r.apiuri.match(/.*page=(.*)/)[1]+"&gamuId="+r.id_auteur:""}function Pe(l,t){let e=t.crayons!==void 0&&t.crayons[l]!==void 0?t.crayons[l]:t.html.id;if(Object.keys(L.value).indexOf(l)!==-1)return`crayon ${L.value[l]}-${l}-${e}`}function te(l,t=!1){const e=Y.value.indexOf(l);e!==-1?(t||(t="asc",K.value[e]==="asc"&&(t="desc")),K.value[e]=t):(t||(t="asc"),Y.value.push(l),K.value.push(t)),n.value=Ie(n.value,Y.value,K.value,E.value),k.value[l]=t,ee()}function ge(l,t){const e=Y.value.indexOf(l);if(e!==-1&&K.value[e]===t)return"active"}function Je(){n.value=Ie(n.value,["id"],"",E.value),K.value=[],Y.value=[],k.value=[],Object.keys(O.value).forEach(l=>{m.value[l]=[]}),localStorage.removeItem("filtreselect_"+T),localStorage.removeItem("filtreCol_"+T),localStorage.removeItem("triCol_"+T)}function me(l,t){if(t==="id"&&parseInt(l)){let e=ae.value.indexOf(l);e!==-1?ae.value.splice(e,1):ae.value.push(l)}}function be(l="tableau"){let t=[],e=J.value;l==="table"&&(e=n.value),Object.values(e).forEach(c=>{t.push(c.html)});const a={fichierpdf:r.fichierpdf,namepdf:r.namepdf,header:h.value,arg:r.argpdf,Tdata:t};$.ajax({url:r.pdfuri,type:"POST",dataType:"text",data:a}).done(function(c){c&&Ye(c,!0)})}function _e(l="tableau"){let t=[],e=[],a=[],i=J.value;l==="table"&&(i=n.value),Object.keys(h.value).forEach(c=>e.push(c)),a=i.reduce((c,y)=>{let S=[];return Object.values(y[r.champcsv]).forEach(C=>S.push(C)),[...c,[...S]]},[]),t=[[...e],...a],He(t,r.delimitercsv,r.namecsv)}function Ae(l){let t=ne.value;return Object.keys(l).forEach(e=>{t=t.replace(`@@${e}@@`,l[e])}),t}function ye(l){Z.value=l}function Be(l){_.value[l]!==void 0&&_.value[l].length?_.value[l]=[]:(_.value[l]=[],J.value.forEach(t=>{_.value[l].push(t.html.id)}))}function De(l,t){let e="page";if(t.includes("action=")&&(e="action"),e==="action")$.ajax({url:t,data:{data:_.value[l]},type:"POST"}).done(function(){W("maj")});else{const a=encodeURIComponent(JSON.stringify(_.value[l]));t+="&data="+a,t+="&var_zajax=content";const i={};i.onClose=()=>{W("maj")},$.modalbox(t,i)}}function Ce(l){let t=p.value*B.value-B.value,e=p.value*B.value;return l.slice(t,e)}function Ne(){let l=Math.ceil(n.value.length/B.value);R.value=[];for(let t=1;t<=l;t++)R.value.push(t)}function He(l,t,e){e.includes(".csv")&&(e=e.split(".")[0]);let a="";t?a=b.unparse(l,{delimiter:t}):a=b.unparse(l),b.download(a,e)}function Re(l,t=!0){console.log("rechargerJson"),ue=t,W(l)}return g({rechargerJson:Re}),(l,t)=>(u(),f("div",et,[o("div",tt,[V(o("select",{id:"parPage","onUpdate:modelValue":t[0]||(t[0]=e=>U(H)?H.value=e:H=e)},[(u(!0),f(q,null,F(d.tparpage,e=>(u(),f("option",{key:e},G(e),1))),128))],512),[[Ge,s(H)]]),V(o("input",{class:"gamutable--rechercher",type:"text","onUpdate:modelValue":t[1]||(t[1]=e=>U(z)?z.value=e:z=e),placeholder:"Rechercher"},null,512),[[Se,s(z)]]),o("button",{class:"btn gamutable--resetOrderBy",type:"button",onClick:t[2]||(t[2]=x(e=>Je(),["stop"])),title:"R\xE9initialiser les tris des colonnes"},st),o("button",{class:"btn var_gamutable rouge",type:"button",onClick:t[3]||(t[3]=x(e=>W(),["stop"])),title:"Rechargement complet du tableau"},ot),o("button",{class:"btn var_gamutable",type:"button",onClick:t[4]||(t[4]=x(e=>W("maj"),["stop"])),title:"Mise \xE0 jour du tableau - derni\xE8re version de la base de donn\xE9e le : "+s(Te)},ut,8,rt),s(ne)?V((u(),f("button",{key:0,class:"btn gamutable--vueTable",title:"Switcher en Vue tableau",onClick:t[5]||(t[5]=x(e=>ye("tableau"),["stop"]))},ft,512)),[[D,s(Z)==="bloc"]]):I("",!0),s(ne)?V((u(),f("button",{key:1,class:"btn gamutable--vueBloc",title:"Switcher en Vue Bloc",onClick:t[6]||(t[6]=x(e=>ye("bloc"),["stop"]))},pt,512)),[[D,s(Z)==="tableau"]]):I("",!0),V(o("button",{class:"btn gamutable--exportCSV",type:"button",onClick:t[7]||(t[7]=x(e=>_e(),["stop"])),title:"Exporter le tableau affich\xE9 en csv"},ht,512),[[D,d.namecsv]]),V(o("button",{class:"btn",type:"button",onClick:t[8]||(t[8]=x(e=>be(),["stop"])),title:"G\xE9n\xE9rer le PDF du tableau affich\xE9"},mt,512),[[D,d.fichierpdf]]),V(o("button",{class:"btn gamutable--exportCSV",type:"button",onClick:t[9]||(t[9]=x(e=>_e("table"),["stop"])),title:"Exporter le tableau complet en csv"},_t,512),[[D,d.namecsv]]),V(o("button",{class:"btn",type:"button",onClick:t[10]||(t[10]=x(e=>be("table"),["stop"])),title:"G\xE9n\xE9rer le PDF du tableau complet"},Ct,512),[[D,d.fichierpdf]]),V(o("span",kt,$t,512),[[D,s(se)]]),V(o("span",jt,Ot,512),[[D,!s(se)]]),o("span",{class:"gamutable-nbrMax","data-nbrmax":s(n).length},G(s(J).length)+" / "+G(s(n).length)+" \xE9l\xE9ments",9,Tt),o("span",{class:"includespip",innerHTML:d.includespip},null,8,Lt)]),s(Z)==="bloc"?(u(),f("div",Et,[(u(!0),f(q,null,F(s(J),e=>(u(),f("div",{class:"vueBlocs-unbloc",key:e.id,innerHTML:Ae(e.html)},null,8,Vt))),128))])):I("",!0),s(Z)==="tableau"?(u(),f("table",wt,[o("thead",null,[o("tr",null,[(u(!0),f(q,null,F(s(h),(e,a,i)=>(u(),f("th",{key:"head_"+i,class:N([a,s(w)[a]])},[o("span",Mt,[o("span",{innerHTML:e},null,8,Pt),o("span",Jt,[o("i",{class:N(["fa fa-sort-asc fa-sort-up",ge(a,"asc")]),"aria-hidden":"true",onClick:x(c=>te(a,"asc"),["stop"])},null,10,At),o("i",{class:N(["fa fa-sort-desc fa-sort-down",ge(a,"desc")]),"aria-hidden":"true",onClick:x(c=>te(a,"desc"),["stop"])},null,10,Bt)])])],2))),128))]),s(M).length||Object.keys(s(A)).length?(u(),f("tr",Dt,[(u(!0),f(q,null,F(s(h),(e,a,i)=>(u(),f("th",{key:"filtreCol_"+i},[s(A)[a]!==void 0?(u(),f("div",{key:0,id:"filtreCol_"+a,class:N([s(w)[a],"flex justify-between"])},[o("input",{class:"ml-2",type:"checkbox",onClick:x(c=>Be(a),["stop"])},null,8,Ht),o("button",{onClick:x(c=>De(a,s(A)[a]),["stop"])},qt,8,Rt)],10,Nt)):I("",!0),s(M).indexOf(a)!==-1?(u(),f("div",{key:1,id:"filtreCol_"+a,class:N(s(w)[a])},[s(O)[a]==="select"?(u(),ze(s(We),{key:0,modelValue:s(m)[a],"onUpdate:modelValue":c=>s(m)[a]=c,options:s(ie)[a].sort(s(Ze)),"hide-selected":"",multiple:"",taggable:"","close-on-select":"","clear-on-close":"",searchable:"",onSelected:we,"onSearch:focus":t[11]||(t[11]=()=>{})},{tag:Ke(({option:c,remove:y})=>[o("div",Gt,[Qe(G(c)+" ",1),o("span",{class:"tag--remove pointer",title:"Cliquer pour supprimer ",onClick:x(y,["stop"])},"x",8,zt)])]),_:2},1032,["modelValue","onUpdate:modelValue","options"])):I("",!0),s(O)[a]==="input"?V((u(),f("input",{key:1,class:"gamutable__input--filtrer","onUpdate:modelValue":c=>s(m)[a]=c,type:"text",placeholder:"Rechercher",onKeydown:t[12]||(t[12]=()=>{})},null,40,Kt)),[[Se,s(m)[a]]]):I("",!0),s(O)[a]==="input"&&s(m)[a].length!==0?(u(),f("button",{key:2,onClick:x(c=>Ve(a),["stop"]),title:"Vider ce champ",class:"gamutable__input--filtrer"}," X ",8,Qt)):I("",!0)],10,Ft)):I("",!0)]))),128))])):I("",!0)]),o("tbody",null,[(u(!0),f(q,null,F(s(J),e=>(u(),f("tr",{key:e.html.id,class:N(s(ae).indexOf(e.html.id)!==-1?"select":"")},[(u(!0),f(q,null,F(e.html,(a,i,c)=>(u(),f("td",{key:"td_"+c,class:N([Pe(i,e),i,s(w)[i],e.classes!==void 0?e.classes[i]:""]),onClick:y=>me(e.html.id,i)},[s(A)[i]!==void 0?(u(),f("div",Xt,[a.split("-")[0]==="dataid"?(u(),f("div",Yt,[o("label",null,[V(o("input",{type:"checkbox","onUpdate:modelValue":y=>s(_)[i]=y,value:a.split("-")[1]},null,8,Zt),[[Xe,s(_)[i]]])])])):(u(),f("div",{key:1,innerHTML:a},null,8,el))])):(u(),f("div",{key:1,innerHTML:a},null,8,tl))],10,Wt))),128))],2))),128))])])):I("",!0),o("div",ll,[o("div",al,G(s(J).length)+" / "+G(s(n).length)+" \xE9l\xE9ments ",1),o("div",sl,[o("div",nl,[s(p)!=1?(u(),f("button",{key:0,type:"button",class:"page-link",onClick:t[13]||(t[13]=e=>U(p)?p.value=1:p=1)}," Premier ")):I("",!0),s(p)!=1?(u(),f("button",{key:1,type:"button",class:"page-link",onClick:t[14]||(t[14]=e=>U(p)?p.value--:p--)}," Pr\xE9c\xE9dent ")):I("",!0)]),o("div",ol,[(u(!0),f(q,null,F(s(R).slice(s(p)-4<0?0:s(p)-4,s(p)+3),e=>(u(),f("button",{type:"button",class:N(["page-link",{on:e===s(p)}]),onClick:a=>U(p)?p.value=e:p=e},G(e),11,rl))),256))]),o("div",il,[s(p)U(p)?p.value++:p++),class:"page-link"}," Suivant ")):I("",!0),s(p)U(p)?p.value=s(R).length:p=s(R).length),class:"page-link"}," Dernier ")):I("",!0)])])])]))}},Oe={GamuTable:ul};let pe=1;for(const d of document.getElementsByClassName("vue-gamutable"))pe===1?(window.app=xe({components:Oe,mounted(){app.rechargerJson=this.$refs.montableau.rechargerJson}}),app.use($e),app.provide("$papa",app.config.globalProperties.$papa),app.mount(d)):pe===2&&(window.app_deux=xe({components:Oe,mounted(){app_deux.rechargerJson=this.$refs.montableau_deux.rechargerJson}}),app_deux.use($e),app_deux.provide("$papa",app_deux.config.globalProperties.$papa),app_deux.mount(d)),pe++;$("#vueGamutable").on("click",".url_action",function(d){console.log("coucou"),d.preventDefault(),d.stopPropagation();let g=$(this).data("confirm");if(g!==void 0&&!confirm(g))return;let r=$(this).attr("href"),b=$(this).data("id");$(this).has("i.icon, i.fa")&&$(this).find("i.icon, i.fa").eq(0).replaceWith('');let n=$(this).data("ajaxreload");console.time("Chargement de VueJs APRES Ajax"),$.ajax({url:r,dataType:"json",async:!0}).done(function(h){!$.isEmptyObject(h)&&!$.isEmptyObject(h.message_erreur)?alert(h.message_erreur):(parseInt(b)>0?app.rechargerJson(b):app.rechargerJson("maj"),n!==void 0&&(console.log("depart reload: "+n),ajaxReload(n,{args:{id:b},callback:function(){}})))})}); diff --git a/dist/manifest.json b/dist/manifest.json index ef4e531..61e7af2 100644 --- a/dist/manifest.json +++ b/dist/manifest.json @@ -1,6 +1,6 @@ { "gamutable.js": { - "file": "assets/gamutable.365527a2.js", + "file": "assets/gamutable.3b8eae4d.js", "src": "gamutable.js", "isEntry": true, "imports": [