divers fixes : bouton sauvegarde
This commit is contained in:
1 parent
f1b176ae4a
commit
cf10b9073b
96 files changed
+402
-143
No files matched your search
@@ -0,0 +1 @@
|
||||
import{$ as e,A as t,B as n,E as r,G as i,J as a,K as o,L as s,M as c,N as l,O as u,P as d,Q as f,T as p,V as m,X as h,_ as ee,a as g,at as te,c as _,dt as v,ft as y,h as b,it as ne,j as x,p as S,q as C,r as re,u as w,ut as T,w as E,x as ie,z as ae}from"../chunks/39JK5HWF.js";import"../chunks/xihTtKlq.js";import{n as oe,t as se}from"../chunks/DTCALkcP.js";import{t as D}from"../chunks/BqkZ0BZ5.js";import{t as O}from"../chunks/BEgKbVuy.js";import{n as ce,t as k}from"../chunks/DRdGzrsF.js";import{t as le}from"../chunks/D4uBfDnr.js";import{t as ue}from"../chunks/D3MDK1zR.js";var de=y({load:()=>fe}),fe=async()=>({title:`Profil`,me:await O.me()}),A=function(e){return e[e.None=0]=`None`,e[e.Changed=1]=`Changed`,e[e.Saving=2]=`Saving`,e[e.Saved=3]=`Saved`,e[e.Error=4]=`Error`,e}({}),pe={listTimezones:()=>D.get(`/misc/timezones`)},me=u(`<i class="incon-spin1 anomate-spin"></i> Enregistrement en cours`,1),he=u(`<i class="incon-ok anomate-spin"></i> Enregistrement réussi`,1),ge=u(`<button><!></button>`);function _e(e,a){te(a,!0);let o=g(a,`state`,7),s=g(a,`disabled`,3,!1);m(()=>{(o()===A.Saved||o()===A.Error)&&setTimeout(()=>{o(A.None)},2e3)});let l=()=>{a.handleClick&&(o()===A.Changed||o()===A.None)&&a.handleClick()};var u=ge();let d;var f=i(u),h=e=>{var i=t();n(()=>p(i,a.label)),r(e,i)},ee=e=>{var t=me();T(),r(e,t)},_=e=>{var t=he();T(),r(e,t)},y=e=>{var n=t(`Echec`);r(e,n)};E(f,e=>{o()==A.None||o()==A.Changed?e(h):o()==A.Saving?e(ee,1):o()==A.Saved?e(_,2):o()==A.Error&&e(y,3)}),v(u),n(()=>{u.disabled=s(),d=b(u,1,`bt`,null,d,{disabled:s(),changed:A.Changed,saving:A.Saving,saved:A.Saved,error:A.Error})}),c(`click`,u,l),r(e,u),ne()}x([`click`]);var ve=u(`<div class="m-2"><div class="dark:bg-stone-700 bg-stone-300 rounded inline px-2 py-1 text-sm"><span class="inline-block w-20"> </span> <span> </span> <button class="ml-4 pointer" title="Annuler"><i class="icon-cancel"></i></button></div></div>`),ye=u(`<div class="mb-4 formgroup container"><h2>Mon compte</h2> <form><div class="formelement"><label for="email" class="my-1 flex-1">Email</label> <input id="email" type="text" class="textinput"/> <!></div> <div class="grid grid-cols-1 gap-x-4 md:grid-cols-2"><div class="formelement"><label for="firstname" class=" my-1 flex-1">Prénom</label> <input id="firstname" type="text" class="textinput"/> <!></div> <div class="formelement"><label for="lastname" class="my-1 flex-1">Nom</label> <input id="lastname" type="text" class="textinput"/> <!></div></div> <div class="grid grid-cols-1 gap-x-4 md:grid-cols-2"><div class="formelement"><label for="lang" class="block my-1 flex-1">Langue</label> <select class="textinput"><option>English</option><option>Français</option></select> <!></div> <div class="formelement"><label for="timezone" class="block my-1 flex-1">Timezone</label> <!> <!></div></div> <div class="formelement"><label for="theme" class="block my-1 flex-1">Thème</label> <select class="textinput"><option>Automatique</option><option>Sombre</option><option>Clair</option></select> <!></div> <!></form></div> <div class="mb-4 formgroup container"><h2>Canaux de communication</h2> <!> <div class="flex gap-2 mt-6"><div><select class="textinput"><option></option><option>Email</option><option>Signal</option><option>Telegram</option><option>Whatsapp</option></select></div> <div class="flex-1"><input type="text" class="textinput"/></div> <div><!></div></div></div>`,1);function j(t,u){te(u,!0);let g=a(s(()=>u.data.me.user)),y=f(a([])),b=f(a({type:``,address:``})),x=f(a([])),T=new ce,E=f(a(A.None)),D=f(a(A.None));re(async()=>{h(y,await O.listAddresses(g.id),!0),h(x,(await pe.listTimezones()).map(e=>({value:e,label:e})),!0)}),m(()=>{oe(g.theme),se()});let de=e=>{e.preventDefault(),h(E,A.Saving,!0),ue(g.email)||T.set(`email`,`Adresse email invalide !`),g.firstname||T.set(`firstname`,`Le prénom est obligatoire !`),g.lastname||T.set(`lastname`,`Le nom est obligatoire !`),T.size==0&&O.update(g.id,g).then(()=>{h(E,A.Saved,!0)}).catch(e=>{h(E,A.Saving,!0),console.error(e)})},fe=()=>{h(D,A.Saving,!0),O.createAddress(g.id,d(b)).then(e=>{d(y).push(e),h(b,{type:``,address:``},!0),h(D,A.Saved,!0)}).catch(e=>{console.log(e)})},me=e=>{O.deleteAddress(g.id,e).then(()=>{h(y,d(y).filter(t=>t.id!=e),!0)}).catch(e=>{console.log(e)})},he=()=>{T.clear(),h(E,A.Changed,!0)},ge=e=>{e.focus()};var j=ye(),M=o(j),N=C(i(M),2),P=i(N),F=C(i(P),2);w(F),ae(()=>_(F,()=>g.email,e=>g.email=e)),ee(F,e=>ge?.(e));var be=C(F,2);k(be,{key:`email`,get errors(){return T}}),v(P);var I=C(P,2),L=i(I),R=C(i(L),2);w(R);var xe=C(R,2);k(xe,{key:`firstname`,get errors(){return T}}),v(L);var Se=C(L,2),z=C(i(Se),2);w(z);var Ce=C(z,2);k(Ce,{key:`lastname`,get errors(){return T}}),v(Se),v(I);var B=C(I,2),V=i(B),H=C(i(V),2),U=i(H);U.value=U.__value=`en`;var we=C(U);we.value=we.__value=`fr`,v(H);var Te=C(H,2);k(Te,{key:`lang`,get errors(){return T}}),v(V);var Ee=C(V,2),De=C(i(Ee),2);le(De,{get items(){return d(x)},valueMode:`id`,get value(){return g.timezone},set value(e){g.timezone=e}});var
Line truncated
|
||||
Reference in new issue
Block a user