D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
psa
/
admin
/
cp
/
public
/
javascript
/
components
/
pages
/
Filename :
EditMassMailTemplatePage.js
back
Copy
"use strict";(self.webpackChunkPlesk=self.webpackChunkPlesk||[]).push([["components/pages/EditMassMailTemplatePage"],{2555:(e,s,l)=>{l.r(s),l.d(s,{default:()=>g});var t=l(286),n=l(1289),a=l(89),o=l(596),i=l.n(o),r=l(285),d=l(611),c=l.n(d),m=l(646),u=l(2556);const p=a.Locale.getSection("components.forms.MassMailForm"),b=({customers:e,resellers:s,loading:l,mutation:a,onSuccess:o,values:i,onChange:d,children:b=null,footer:g=null,errors:h={},submitButtonProps:f={},hideNameField:x=!1,onSubmit:T=e=>e,applyButton:j=!1})=>{const M=(0,r.useMemo)((()=>s.map((({id:e,name:s,email:l})=>{const t=atob(e).split(":")[1];return{id:t,title:`${s} (${l})`,selected:i.resellers?.includes(t)}}))),[s,i.resellers]),C=(0,r.useMemo)((()=>e.map((({id:e,name:s,email:l})=>{const t=atob(e).split(":")[1];return{id:t,title:`${s} (${l})`,selected:i.clients?.includes(t)}}))),[e,i.clients]);return(0,r.jsxs)(n.default,{state:l?"submit":null,values:i,onFieldChange:d,mutation:a,onSuccess:o,onSubmit:e=>T({...e,sendToResellersMode:e.sendToResellers?e.sendToResellersMode:"all",sendToClientsMode:e.sendToClients?e.sendToClientsMode:"all",resellers:(e.resellers??[]).map(Number),clients:(e.clients??[]).map(Number)}),errors:h,submitButton:{"data-testid":"btn-submit",...f},applyButton:j,cancelButton:{"data-testid":"btn-cancel",component:m.default,to:"/cp/server/mass-mail"},children:[b,!x&&(0,r.jsx)(t.FormFieldText,{required:!0,size:"xl",label:p.lmsg("name"),name:"name"}),(0,r.jsx)(t.FormFieldText,{required:!0,size:"xl",label:p.lmsg("fromEmail"),name:"fromEmail"}),(0,r.jsx)(t.FormFieldCheckbox,{label:p.lmsg("sendToAdmins"),name:"sendToAdmins"}),(0,r.jsx)(t.FormFieldCheckbox,{label:p.lmsg("sendToResellers"),name:"sendToResellers"}),(0,r.jsxs)("div",{className:c()({"mass-mail-form-block-hidden":!i.sendToResellers}),children:[(0,r.jsxs)(t.FormFieldSelect,{size:"lg",name:"sendToResellersMode",label:p.lmsg("sendToResellersMode"),children:[(0,r.jsx)("option",{value:"all",children:p.lmsg("sendToResellersModeAll")}),(0,r.jsx)("option",{value:"select",children:p.lmsg("sendToResellersModeSelect")}),(0,r.jsx)("option",{value:"except",children:p.lmsg("sendToResellersModeExcept")})]}),(0,r.jsx)(t.FormField,{className:c()({"mass-mail-form-block-hidden":"all"===i.sendToResellersMode}),name:"resellers",children:({setValue:e})=>(0,r.jsx)(u.default,{name:"select-reseller",onChange:e,options:M})})]}),(0,r.jsx)(t.FormFieldCheckbox,{label:p.lmsg("sendToClients"),name:"sendToClients"}),(0,r.jsxs)("div",{className:c()({"mass-mail-form-block-hidden":!i.sendToClients}),children:[(0,r.jsxs)(t.FormFieldSelect,{size:"lg",name:"sendToClientsMode",label:p.lmsg("sendToClientsMode"),children:[(0,r.jsx)("option",{value:"all",children:p.lmsg("sendToClientsModeAll")}),(0,r.jsx)("option",{value:"select",children:p.lmsg("sendToClientsModeSelect")}),(0,r.jsx)("option",{value:"except",children:p.lmsg("sendToClientsModeExcept")})]}),(0,r.jsx)(t.FormField,{className:c()({"mass-mail-form-block-hidden":"all"===i.sendToClientsMode}),name:"clients",children:({setValue:e})=>(0,r.jsx)(u.default,{name:"select-client",onChange:e,options:C})})]}),(0,r.jsx)(t.FormFieldText,{required:!0,size:"xl",label:p.lmsg("subject"),name:"subject"}),(0,r.jsx)(t.FormFieldText,{description:p.lmsg("bodyDescription"),required:!0,size:"fill",rows:10,multiline:!0,label:p.lmsg("body"),name:"body"}),g]})};b.propTypes={customers:i().array.isRequired,resellers:i().array.isRequired,loading:i().bool.isRequired,mutation:i().func.isRequired,onSuccess:i().func.isRequired,onSubmit:i().func,values:i().object.isRequired,submitButtonProps:i().object,onChange:i().func.isRequired,children:i().node,footer:i().node,errors:i().object,hideNameField:i().bool,applyButton:i().oneOf([i().object,i().bool])};const g=b},2554:(e,s,l)=>{l.r(s),l.d(s,{default:()=>t.default});var t=l(2555)},2556:(e,s,l)=>{l.r(s),l.d(s,{default:()=>c});var t=l(285),n=l(89),a=l(641),o=l(596),i=l.n(o);const r=n.Locale.getSection("components.elements.double-list-selector"),d=({name:e,options:s,onChange:l=()=>{},...o})=>{const[i,d]=(0,t.useState)(null),c=(0,t.useRef)(s);return(0,t.useEffect)((()=>{const t=new n.EnhancedDoubleListSelector({list:s,applyTo:e,isSearchable:!0,locale:r,name:e,onChange:e=>{const s=Object.keys(e).reduce(((s,l)=>e[l]?[...s,l]:s),[]);l(s)},...o});return d(t),()=>{t.remove(),d(null)}}),[]),(0,t.useEffect)((()=>{i&&c.current!==s&&s.forEach(((e,s)=>{c.current[s].selected!==e.selected&&(i._toggleItemSelection(s,!e.selected),c.current[s].selected=e.selected)}))}),[i,s]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{id:e}),i&&(0,t.jsx)(a.default,{children:i})]})};d.propTypes={name:i().string.isRequired,options:i().arrayOf(i().shape({selected:i().bool,id:i().any,title:i().string,description:i().string,icons:i().arrayOf(i().shape({src:i().string,title:i().string}))})).isRequired,isSearchable:i().bool,onChange:i().func};const c=d},2559:(e,s,l)=>{l.r(s),l.d(s,{default:()=>f});var t=l(1120),n=l(586),a=l(628),o=l(286),i=l(536),r=l(89),d=l(285),c=l(2552),m=l(1281),u=l.n(m),p=l(2554),b=l(580);const g=t.gql` mutation UpdateMassEmailTemplate($input: UpdateMassEmailTemplateInput!) { updateMassEmailTemplate(input: $input) { errors } } `,h=r.Locale.getSection("components.pages.EditMassMailTemplatePage"),f=()=>{const{templateId:e}=(0,b.useParams)(),s=btoa(`MassEmailTemplate:${e}`),{data:{viewer:{customers:l,resellers:t},massEmail:{template:{__typename:r,...m},templateResellers:f,templateClients:x}}}=(0,n.useQuery)(u(),{variables:{numericId:Number(e),id:s}}),[T,j]=(0,d.useState)((()=>({...m,clients:x.contacts.map((({id:e})=>atob(e).split(":")[1])),resellers:f.contacts.map((({id:e})=>atob(e).split(":")[1]))}))),M=(0,b.useNavigate)(),[C,{loading:F}]=(0,a.useMutation)(g,{update:c.evictMassEmailCache});return(0,d.jsx)(p.default,{onSuccess:(e,s)=>{(0,i.addToast)({intent:"success",message:h.formatMessage("templateUpdated")}),s||M("..")},onSubmit:e=>({...e,id:s}),mutation:C,loading:F,customers:l,resellers:t,onChange:(e,s)=>{j((l=>(0,o.setIn)(l,e,s)))},values:T,applyButton:!0})}},2552:(e,s,l)=>{l.r(s),l.d(s,{evictMassEmailCache:()=>t});const t=e=>{e.evict({id:e.identify({__typename:"Query"}),fieldName:"massEmail"})}}}]); //# sourceMappingURL=EditMassMailTemplatePage.js.map?3d55f99b2c63a6a5c1e3