Files
yakpanel-core/YakPanel-server/frontend/dist/assets/ConfigPage-eLTvRUp2.js

2 lines
7.8 KiB
JavaScript
Raw Normal View History

2026-04-07 09:46:22 +05:30
import{r as l,a,j as e,R as K,S as Q}from"./index-CRR9sQ49.js";import{A as j}from"./AdminAlert-DW1IRWce.js";import{A as b}from"./AdminButton-Bd2cLTu3.js";import{A as p}from"./AdminCard-DNA70pGd.js";import{P as N}from"./PageHeader-BcjNf7GG.js";function Y(){const[r,E]=l.useState(null),[m,I]=l.useState({}),[q,A]=l.useState(!0),[i,v]=l.useState(""),[J,y]=l.useState(!1),[R,w]=l.useState(!1),[g,o]=l.useState(""),[u,h]=l.useState(null);l.useEffect(()=>{Promise.all([a("/config/panel"),a("/config/keys")]).then(([t,s])=>{E(t),I(s||{})}).catch(t=>v(t.message)).finally(()=>A(!1))},[]);const L=t=>{t.preventDefault(),w(!1),o("");const s=t.currentTarget,c=s.elements.namedItem("old_password").value,n=s.elements.namedItem("new_password").value,x=s.elements.namedItem("confirm_password").value;if(!c||!n){o("All fields required");return}if(n!==x){o("New passwords do not match");return}if(n.length<6){o("Password must be at least 6 characters");return}Q(c,n).then(()=>{w(!0),s.reset()}).catch(f=>o(f.message))},V=()=>{h(null),K().then(()=>h("Test email sent!")).catch(t=>h(`Failed: ${t.message}`))},M=t=>{var P,k,O,T,C;t.preventDefault(),y(!1);const s=t.currentTarget,c=s.elements.namedItem("panel_port").value,n=s.elements.namedItem("www_root").value,x=s.elements.namedItem("setup_path").value,f=s.elements.namedItem("webserver_type").value,S=s.elements.namedItem("mysql_root").value,F=((P=s.elements.namedItem("email_to"))==null?void 0:P.value)||"",W=((k=s.elements.namedItem("smtp_server"))==null?void 0:k.value)||"",U=((O=s.elements.namedItem("smtp_port"))==null?void 0:O.value)||"587",D=((T=s.elements.namedItem("smtp_user"))==null?void 0:T.value)||"",_=((C=s.elements.namedItem("smtp_password"))==null?void 0:C.value)||"",d=[a("/config/set",{method:"POST",body:JSON.stringify({key:"panel_port",value:c})}),a("/config/set",{method:"POST",body:JSON.stringify({key:"www_root",value:n})}),a("/config/set",{method:"POST",body:JSON.stringify({key:"setup_path",value:x})}),a("/config/set",{method:"POST",body:JSON.stringify({key:"webserver_type",value:f})})];S&&d.push(a("/config/set",{method:"POST",body:JSON.stringify({key:"mysql_root",value:S})})),d.push(a("/config/set",{method:"POST",body:JSON.stringify({key:"email_to",value:F})}),a("/config/set",{method:"POST",body:JSON.stringify({key:"smtp_server",value:W})}),a("/config/set",{method:"POST",body:JSON.stringify({key:"smtp_port",value:U})}),a("/config/set",{method:"POST",body:JSON.stringify({key:"smtp_user",value:D})})),_&&d.push(a("/config/set",{method:"POST",body:JSON.stringify({key:"smtp_password",value:_})})),Promise.all(d).then(()=>y(!0)).catch(B=>v(B.message))};return q?e.jsxs(e.Fragment,{children:[e.jsx(N,{title:"Settings"}),e.jsx("p",{className:"text-secondary",children:"Loading…"})]}):r?e.jsxs(e.Fragment,{children:[e.jsx(N,{title:"Settings"}),i?e.jsx(j,{className:"mb-3",children:i}):null,e.jsxs("form",{onSubmit:M,className:"row g-3",children:[e.jsx("div",{className:"col-12 col-xl-6",children:e.jsxs(p,{title:"Panel",iconClass:"ti ti-adjustments-horizontal",children:[e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{className:"form-label",children:"Panel Port"}),e.jsx("input",{name:"panel_port",type:"number",defaultValue:r.panel_port,className:"form-control"})]}),e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{className:"form-label",children:"WWW Root"}),e.jsx("input",{name:"www_root",type:"text",defaultValue:r.www_root,className:"form-control"})]}),e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{className:"form-label",children:"Setup Path"}),e.jsx("input",{name:"setup_path",type:"text",defaultValue:r.setup_path,className:"form-control"})]}),e.jsxs("div",{className:"mb-0",children:[e.jsx("label",{className:"form-label",children:"Webserver"}),e.jsxs("select",{name:"webserver_type",defaultValue:r.webserver_type,className:"form-select",children:[e.jsx("option",{value:"nginx",children:"Nginx"}),e.jsx("option",{value:"apache",children:"Apache"}),e.jsx("option",{value:"openlitespeed",children:"OpenLiteSpeed"})]})]})]})}),e.jsx("div",{className:"col-12 col-xl-6",children:e.jsxs(p,{title:"N