D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
psa
/
admin
/
cp
/
public
/
javascript
/
components
/
pages
/
VirtualDirectoryPage
/
Filename :
PermissionsPage.js
back
Copy
"use strict";(self.webpackChunkPlesk=self.webpackChunkPlesk||[]).push([["components/pages/VirtualDirectoryPage/PermissionsPage"],{1747:(e,t,n)=>{n.r(t),n.d(t,{default:()=>a});var s=n(596),l=n.n(s),o=n(89),i=n(1745),d=n(285);const c=o.Locale.getTranslate("windows-permissions"),r=({permissions:e,inheritFromParent:t,replaceOnChildren:n,fstat:s,onPermissionChange:l,onApplyTo:o})=>(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(i.default,{name:"inheritFromParent",label:(0,d.jsx)(c,{content:"inheritFromParent"}),...t}),(0,d.jsx)(i.default,{name:"replaceOnChildren",label:(0,d.jsx)(c,{content:"replaceOnChildren"}),...n}),(0,d.jsx)("fieldset",{children:(0,d.jsx)("table",{width:"100%",cellSpacing:"0",cellPadding:"0",border:"0",children:(0,d.jsxs)("tbody",{children:[" ",(0,d.jsx)("tr",{children:(0,d.jsxs)("td",{children:[(0,d.jsx)("table",{className:"formFields",cellSpacing:"0",width:"100%",children:(0,d.jsxs)("tbody",{children:[(0,d.jsx)("tr",{children:(0,d.jsx)("td",{colSpan:"2",children:(0,d.jsx)("div",{id:"permissions_userlist"})})}),(0,d.jsxs)("tr",{children:[(0,d.jsx)("td",{width:"60%",children:(0,d.jsx)("table",{className:"list",cellSpacing:"0",width:"100%",children:(0,d.jsxs)("tbody",{children:[(0,d.jsxs)("tr",{children:[(0,d.jsxs)("th",{width:"80%",children:[(0,d.jsx)(c,{content:"permissionsFor"})," ",(0,d.jsx)("span",{id:"perm_title"})]}),(0,d.jsx)("th",{children:(0,d.jsx)(c,{content:"allow"})}),(0,d.jsx)("th",{children:(0,d.jsx)(c,{content:"deny"})})]}),e.map((({PERMISSION_TEXT:e,PERMISSION_NAME:t,PERMISSION_DISABLED:n})=>(0,d.jsxs)("tr",{children:[(0,d.jsx)("td",{children:e}),(0,d.jsx)("td",{align:"center",children:(0,d.jsx)("input",{type:"checkbox",className:"checkbox",name:`Allow${t}`,value:"true",onClick:()=>l(`Allow${t}`),disabled:n})}),(0,d.jsx)("td",{align:"center",children:(0,d.jsx)("input",{type:"checkbox",className:"checkbox",name:`Deny${t}`,value:"true",onClick:()=>l(`Deny${t}`),disabled:n})})]},t)))]})})}),s.is_dir&&(0,d.jsx)("td",{width:"40%",children:(0,d.jsx)("table",{className:"list",cellSpacing:"0",width:"100%",children:(0,d.jsxs)("tbody",{children:[(0,d.jsxs)("tr",{children:[(0,d.jsx)("td",{width:"30%",children:(0,d.jsx)("b",{children:(0,d.jsx)(c,{content:"applyTo"})})}),(0,d.jsxs)("td",{children:[(0,d.jsx)("input",{type:"checkbox",className:"checkbox",name:"applyonto_thisobject",id:"fid-applyonto_thisobject",value:"true",onClick:()=>o("applyonto_thisobject")})," ",(0,d.jsx)("label",{htmlFor:"fid-applyonto_thisobject",children:(0,d.jsx)(c,{content:"folderOnly"})})]})]}),(0,d.jsxs)("tr",{children:[(0,d.jsx)("td",{}),(0,d.jsxs)("td",{children:[(0,d.jsx)("input",{type:"checkbox",className:"checkbox",name:"applyonto_subfolders",id:"fid-applyonto_subfolders",value:"true",onClick:()=>o("applyonto_subfolders")})," ",(0,d.jsx)("label",{htmlFor:"fid-applyonto_subfolders",children:(0,d.jsx)(c,{content:"subfolderOnly"})})]})]}),(0,d.jsxs)("tr",{children:[(0,d.jsx)("td",{}),(0,d.jsxs)("td",{children:[(0,d.jsx)("input",{type:"checkbox",className:"checkbox",name:"applyonto_files",id:"fid-applyonto_files",value:"true",onClick:()=>o("applyonto_files")})," ",(0,d.jsx)("label",{htmlFor:"fid-applyonto_files",children:(0,d.jsx)(c,{content:"filesOnly"})})]})]})]})})})]})]})}),(0,d.jsx)("input",{type:"hidden",name:"data",value:""})]})})]})})})]});r.propTypes={permissions:l().array.isRequired,onPermissionChange:l().func.isRequired,onApplyTo:l().func.isRequired,inheritFromParent:l().shape({checked:l().bool.isRequired,disabled:l().bool.isRequired}).isRequired,replaceOnChildren:l().shape({checked:l().bool.isRequired,disabled:l().bool.isRequired}).isRequired,fstat:l().shape({is_dir:l().bool.isRequired}).isRequired};const a=r},1746:(e,t,n)=>{n.r(t),n.d(t,{default:()=>u});var s=n(89),l=n(1743),o=n(1747);const i=s.Locale.getSection("smb.components.forms.file-manager.windows-permissions");let d;const c=()=>["",i.lmsg("applyOnto1"),i.lmsg("applyOnto2"),i.lmsg("applyOnto3"),i.lmsg("applyOnto4"),i.lmsg("applyOnto5"),i.lmsg("applyOnto6"),i.lmsg("applyOnto7")],r=e=>{switch(e){case"User":case"Unknown":default:return d.skin.ICON_WIN_PERM_USER;case"Group":case"poolgrp":return d.skin.ICON_WIN_PERM_GROUP;case"Computer":case"Domain":return d.skin.ICON_WIN_PERM_COMPUTER}};function a(e,t){const n=document.getElementById("permissions-form").elements,s=e.getAdditionalData(t);s[1]=void 0;let l=2;if(Object.keys(d.permissions_list).forEach((e=>{null==s[1]?n[`Deny${e}`].checked?(s[1]=!1,s[l]=!0):n[`Allow${e}`].checked?(s[1]=!0,s[l]=!0):s[l]=!1:s[l]=n[(s[1]?"Allow":"Deny")+e].checked,l++})),null==s[1]&&(s[1]=!0),e.setAdditionalData(t,s),d.fstat.is_dir){let s=0;s|=n.applyonto_thisobject.checked?d.PERMISSIONS__APPLY_ONTO_THISOBJECT:0,s|=n.applyonto_subfolders.checked?d.PERMISSIONS__APPLY_ONTO_SUBFOLDERS:0,s|=n.applyonto_files.checked?d.PERMISSIONS__APPLY_ONTO_FILES:0;const l=c();e.setData(t,3,[s,l[s]])}}function h(e,t){const{perm_change:n}=d.fstat,s=e.getAdditionalData(t);if(0==s)return;const l=e.getAdditionalData(t),o=document.getElementById("permissions-form").elements;let i=2;if(Object.keys(d.permissions_list).forEach((e=>{o[(s[1]?"Allow":"Deny")+e].checked=s[i++],o[(s[1]?"Deny":"Allow")+e].checked=!1,o[`Allow${e}`].disabled=!n||l[0],o[`Deny${e}`].disabled=!n||l[0]})),d.fstat.is_dir){const s=e.getData(t,3)[0];o.applyonto_thisobject.checked=s&d.PERMISSIONS__APPLY_ONTO_THISOBJECT,o.applyonto_thisobject.disabled=!n||l[0],o.applyonto_subfolders.checked=s&d.PERMISSIONS__APPLY_ONTO_SUBFOLDERS,o.applyonto_subfolders.disabled=!n||l[0],o.applyonto_files.checked=s&d.PERMISSIONS__APPLY_ONTO_FILES,o.applyonto_files.disabled=!n||l[0]}}const u=(0,l.default)({onSelect:function(e,t,n){-1!=n&&a(e,n);let s=e.getData(t,1);s=s.replace(`${d.fstat.LocalDomain}\\`,""),s=s.replace(`${d.fstat.BuiltinDomain}\\`,""),s=s.replace(`${d.fstat.NTAuthorityDomain}\\`,""),document.getElementById("perm_title").innerHTML=s,h(e,t)},onNewElement:function(e,t){e.setAdditionalData(t,[!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1])},onDeleteElement:function(e){const t=e.getSelection();-1!=t&&h(e,t)},setProps:e=>{d=e},onEditListInit:function(){const e=window.permissions_userlistEditListObj,t=e.getSelection();-1!=t&&a(e,t);const n=document.getElementById("inheritFromParent").checked,l=e.getAllData(),o=e.getAllCanDelete(),c=e.getAllAdditionalData(),h=[],u=[],p=[];Object.keys(d.fstat.accounts).forEach((e=>{const t=d.fstat.accounts[e];let a;Array.isArray(t.ParentAdvancedAcl)&&t.ParentAdvancedAcl.forEach((e=>{a=-1;for(let n=0;n<l.length;n++)if(""===l[n][2][0]&&l[n][1]===(t.domain?`${t.domain}\\${t.user}`:t.user)&&(!d.fstat.is_dir||l[n][3][0]===e.ApplyOnto)){let t=!0;t=t&&c[n][1]==e.Allow;let s=2;if(Object.keys(d.permissions_list).forEach((l=>{t=t&&c[n][s++]===!!e[l]})),t){a=n;break}}if(n||-1==a){const l=[[t.type,`<img src="${r(t.type)}" width="${d.skin.ICON_WIDTH}" height="${d.skin.ICON_HEIGHT}" />`],t.domain?`${t.domain}\\${t.user}`:t.user,n?[e.InheritedFrom,e.InheritedFrom?e.InheritedFrom:(0,s.escapeHtml)(i.lmsg("notInherited"))]:["",(0,s.escapeHtml)(i.lmsg("notInherited"))]];d.fstat.is_dir&&l.push([e.ApplyOnto,i.lmsg(`applyOnto${e.ApplyOnto}`)]),h.push(l),u.push(!n&&!t.permanent);const o=[!!t.permanent,!!e.Allow];Object.keys(d.permissions_list).forEach((t=>{o.push(!!e[t])})),p.push(o)}n||-1==a||(o[a]=!t.permanent),n&&(o[a]=!0)}))}));for(let e=0;e<l.length;e++)(n||""==l[e][2][0])&&(h.push(l[e]),u.push(o[e]),p.push(c[e]));e.setAllData(h,u),e.setAllAdditionalData(p),e._selectedId=-1,e.refresh(),e.setSelection(0)},onBeforeSubmit:function(e){const t=Object.keys(d.permissions_list).length,n=window.permissions_userlistEditListObj,s=n.getSelection();-1!=s&&a(n,s);const l=n.getAllData(),o=n.getColumns(),i=n.getAllAdditionalData();let c="";for(let e=0;e<l.length;e++){for(let t=1;t<o.length;t++)c+=`${"const"==o[t].type?l[e][t][0]:l[e][t]}:P:`;for(let n=1;n<t+2;n++)c+=`${i[e][n]}:P:`}e.data.value=c},onUsernameChange:function(e){let t="",n="";if(""!==e.value){t=Object.keys(d.fstat.accounts).reduce(((e,t)=>{const n=d.fstat.accounts[t];return e[t]=n.type,e}),{})[e.value]||"Unknown",n=`<img src="${r(t)}" width="${d.skin.ICON_WIDTH}" height="${d.skin.ICON_HEIGHT}">`}window.permissions_userlistEditListObj._columns[0].value=[t,n],document.getElementById("typeCell_Input").innerHTML=`${n}<input type="hidden" name="type_input" value="${t}">`},onPermissionChange:function(e){const t=document.getElementById("permissions-form").elements,n="A"==e.substring(0,1),s=e.substring(n?5:4);Object.keys(d.permissions_list).forEach((e=>{t[(n?"Deny":"Allow")+e].checked=!1})),t[e].checked?(t[(n?"Allow":"Deny")+"Full"].checked&&(t[(n?"Allow":"Deny")+"Read"].checked=!0,t[(n?"Allow":"Deny")+"Write"].checked=!0,t[(n?"Allow":"Deny")+"Execute"].checked=!0,d.fstat.is_dir&&(t[(n?"Allow":"Deny")+"DeleteSubfoldersandFiles"].checked=!0),t[(n?"Allow":"Deny")+"Delete"].checked=!0,t[(n?"Allow":"Deny")+"ChangePermissions"].checked=!0,t[(n?"Allow":"Deny")+"TakeOwnership"].checked=!0),t[(n?"Allow":"Deny")+"Read"].checked&&(t[(n?"Allow":"Deny")+"ListFolderOrRead"].checked=!0),t[(n?"Allow":"Deny")+"Write"].checked&&(t[(n?"Allow":"Deny")+"CreateFilesOrWrite"].checked=!0,t[(n?"Allow":"Deny")+"CreateFoldersOrAppend"].checked=!0),t[(n?"Allow":"Deny")+"Execute"].checked&&(t[(n?"Allow":"Deny")+"TraverseFolderOrExecuteFile"].checked=!0)):("Execute"!=s&&(t[(n?"Allow":"Deny")+"Execute"].checked=t[(n?"Allow":"Deny")+"TraverseFolderOrExecuteFile"].checked),"Write"!=s&&(t[(n?"Allow":"Deny")+"Write"].checked=t[(n?"Allow":"Deny")+"CreateFilesOrWrite"].checked&&t[(n?"Allow":"Deny")+"CreateFoldersOrAppend"].checked),"Read"!=s&&(t[(n?"Allow":"Deny")+"Read"].checked=t[(n?"Allow":"Deny")+"ListFolderOrRead"].checked),"Full"!=s&&(t[(n?"Allow":"Deny")+"Full"].checked=t[(n?"Allow":"Deny")+"Read"].checked&&t[(n?"Allow":"Deny")+"Write"].checked&&t[(n?"Allow":"Deny")+"Execute"].checked&&(!d.fstat.is_dir||t[(n?"Allow":"Deny")+"DeleteSubfoldersandFiles"].checked)&&t[(n?"Allow":"Deny")+"Delete"].checked&&t[(n?"Allow":"Deny")+"ChangePermissions"].checked&&t[(n?"Allow":"Deny")+"TakeOwnership"].checked))},onApplyTo:function(e){const t=document.getElementById("permissions-form").elements;t.applyonto_thisobject.checked||t.applyonto_subfolders.checked||t.applyonto_files.checked||(t[e].checked=!0);let n=0;n|=t.applyonto_thisobject.checked?d.PERMISSIONS__APPLY_ONTO_THISOBJECT:0,n|=t.applyonto_subfolders.checked?d.PERMISSIONS__APPLY_ONTO_SUBFOLDERS:0,n|=t.applyonto_files.checked?d.PERMISSIONS__APPLY_ONTO_FILES:0;const s=window.permissions_userlistEditListObj.getSelection(),l=document.getElementById(`apply_toCell_${s}`),o=c();l.innerHTML=`${o[n]}<input type="hidden" name="apply_to[]" value="${n}">`}})(o.default)},1745:(e,t,n)=>{n.r(t),n.d(t,{default:()=>d});var s=n(596),l=n.n(s),o=n(285);const i=({name:e,label:t,checked:n,disabled:s})=>(0,o.jsx)("div",{className:"form-row",children:(0,o.jsx)("div",{className:"single-row",children:(0,o.jsxs)("div",{className:"indent-box",children:[(0,o.jsx)("input",{type:"hidden",name:e,value:"0"}),(0,o.jsx)("input",{type:"checkbox",name:e,id:e,value:"1",defaultChecked:n,disabled:s,className:"checkbox"}),(0,o.jsx)("div",{className:"indent-box-content",children:(0,o.jsx)("label",{htmlFor:e,children:t})})]})})});i.propTypes={name:l().string.isRequired,label:l().element.isRequired,checked:l().bool.isRequired,disabled:l().bool.isRequired};const d=i},1740:(e,t,n)=>{n.r(t),n.d(t,{default:()=>A});var s=n(285),l=n(596),o=n.n(l),i=n(286),d=n(89),c=n(653),r=n(536),a=n(1741),h=n(1742),u=n(1746),p=n(620);n(1748);const y=e=>d.api.get(e),m=d.Locale.getTranslate("permissions"),k=({file:e,currentDir:t,domainId:n,icon:l,isDirectory:o,isUnix:k,onComplete:b=()=>{},isOpen:A,onClose:w,commonToaster:f=!1})=>{const[D,x]=(0,s.useState)(!1),[C,_]=(0,s.useState)(),[j,R]=(0,s.useState)(),g=(0,p.useCollector)(),E=(0,s.useRef)(),F=(0,s.useRef)(!1),O=(({domainId:e,currentDir:t,file:n,advanced:s})=>{const l=new URLSearchParams;return l.set("currentDir",t),l.set("file",n),s&&l.set("advanced",s),`/smb/file-manager/permissions/domainId/${e}/?${l}`})({domainId:n,currentDir:t,file:e,advanced:D});(0,s.useEffect)((()=>{let e=R;return A?(R(void 0),y(O).then((t=>{e(t)}))):x(!1),()=>{e=()=>{}}}),[O,A]);const L=k?a.default:D?u.default:h.default,I=()=>{w(),F.current&&b()};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(i.Drawer,{"data-type":"permissions",isOpen:A,title:(0,s.jsx)(m,{content:o?"directoryPermissions":"filePermissions"}),subtitle:(0,s.jsxs)("div",{className:"permissions__subtitle",children:[(0,s.jsxs)("span",{children:[(0,s.jsx)(i.Icon,{src:l,size:"24"})," ",e]}),!k&&!D&&(0,s.jsx)(i.Action,{icon:"sliders",outerProps:{className:"permissions__subtitle-toggle"},onClick:()=>{R(void 0),x(!D)},children:(0,s.jsx)(m,{content:"buttonAdvanced"})})]}),size:k?"xs":"md",form:{state:C,submitButton:{children:(0,s.jsx)(m,{content:"buttonSubmit"})},applyButton:{children:(0,s.jsx)(m,{content:"buttonApply"}),intent:void 0},cancelButton:{children:(0,s.jsx)(m,{content:"buttonCancel"})},id:"permissions-form",onSubmit:async(e,t)=>{_(t?"apply":"submit");const n=g.collect(),s=await((e,t)=>d.api.post(e,(0,c.toFormData)(t)))(O,n);var l;if(l={intent:"success"===s.status?s.status:"danger",message:s.message??s.statusMessages.reduce(((e,t)=>e+t.content),"")},f?(0,r.addToast)(l):E.current.add(l),!k&&t){const e=await y(O);e.key=Date.now(),R(e)}_(void 0),F.current=!0,t||I()}},onClose:I,children:A&&j?(0,s.jsx)(L,{...j,collector:g}):(0,s.jsx)(i.ContentLoader,{})}),!f&&(0,s.jsx)(i.Toaster,{ref:E,"data-type":"toaster"})]})};k.propTypes={file:o().string.isRequired,currentDir:o().string.isRequired,domainId:o().number.isRequired,icon:o().string.isRequired,isDirectory:o().bool.isRequired,isUnix:o().bool.isRequired,onComplete:o().func,commonToaster:o().bool,isOpen:o().bool.isRequired,onClose:o().func.isRequired};const b={permissions:d.Locale.getSection("smb.components.forms.file-manager.permissions").messages,"unix-file-permissions":d.Locale.getSection("smb.components.forms.file-manager.unix-file-permissions").messages,"windows-permissions":d.Locale.getSection("smb.components.forms.file-manager.windows-permissions").messages},A=e=>(0,s.jsx)(i.LocaleProvider,{messages:b,children:(0,s.jsx)(k,{...e})})},1741:(e,t,n)=>{n.r(t),n.d(t,{default:()=>r});var s=n(285),l=n(596),o=n.n(l),i=n(286);const d=n(89).Locale.getTranslate("unix-file-permissions"),c=({permissions:e,collector:t,isDir:n})=>{const[l,o]=(0,s.useState)(e),[c,r]=(0,s.useState)(!1);t.setCallback((()=>({permissions:l,changeRecursive:c})));const a=e=>t=>{const n=t[e];return(0,s.jsx)(i.Checkbox,{name:n,checked:l[n],onChange:e=>{o({...l,[n]:e})}})},h=[{key:"name",title:""},{key:"r",title:(0,s.jsx)(d,{content:"readMode"}),render:a("r")},{key:"w",title:(0,s.jsx)(d,{content:"writeMode"}),render:a("w")},{key:"x",title:(0,s.jsx)(d,{content:"execMode"}),render:a("x")}],u=[{key:"owner",name:(0,s.jsx)(d,{content:"owner"}),r:"ownerRead",w:"ownerWrite",x:"ownerExecute"},{key:"group",name:(0,s.jsx)(d,{content:"group"}),r:"groupRead",w:"groupWrite",x:"groupExecute"},{key:"others",name:(0,s.jsx)(d,{content:"others"}),r:"othersRead",w:"othersWrite",x:"othersExecute"}];return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(i.List,{columns:h,data:u,name:"permissions-list"}),n?(0,s.jsx)(i.Checkbox,{name:"changeRecursive",checked:c,onChange:e=>r(e),children:(0,s.jsx)(d,{content:"changeRecursive"})}):null]})};c.propTypes={permissions:o().object.isRequired,collector:o().shape({setCallback:o().func.isRequired}).isRequired,isDir:o().bool.isRequired};const r=c},1744:(e,t,n)=>{n.r(t),n.d(t,{default:()=>h});var s=n(596),l=n.n(s),o=n(89),i=n(1745),d=n(286),c=n(285);const r=o.Locale.getTranslate("windows-permissions"),a=({permissions:e,inheritFromParent:t,replaceOnChildren:n,onPermissionChange:s})=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(i.default,{name:"inheritFromParent",label:(0,c.jsx)(r,{content:"inheritFromParent"}),...t}),(0,c.jsx)(i.default,{name:"replaceOnChildren",label:(0,c.jsx)(r,{content:"replaceOnChildren"}),...n}),(0,c.jsxs)(d.Columns,{gap:"lg",style:{flexWrap:"wrap"},children:[(0,c.jsx)(d.Column,{ratio:1,style:{minWidth:"auto"},children:(0,c.jsx)("div",{id:"permissions_userlist"})}),(0,c.jsx)(d.Column,{ratio:1,style:{minWidth:"auto"},children:(0,c.jsx)("table",{className:"list",cellSpacing:"0",width:"100%",children:(0,c.jsxs)("tbody",{children:[(0,c.jsxs)("tr",{children:[(0,c.jsxs)("th",{width:"80%",children:[(0,c.jsx)(r,{content:"permissionsFor"})," ",(0,c.jsx)("span",{id:"perm_title"})]}),(0,c.jsx)("th",{children:(0,c.jsx)(r,{content:"allow"})}),(0,c.jsx)("th",{children:(0,c.jsx)(r,{content:"deny"})})]}),e.map((({PERMISSION_TEXT:e,PERMISSION_NAME:t,PERMISSION_DISABLED:n})=>(0,c.jsxs)("tr",{children:[(0,c.jsx)("td",{children:e}),(0,c.jsx)("td",{align:"center",children:(0,c.jsx)("input",{type:"checkbox",className:"checkbox",name:`Allow${t}`,value:"true",onClick:()=>s(`Allow${t}`),disabled:n})}),(0,c.jsx)("td",{align:"center",children:(0,c.jsx)("input",{type:"checkbox",className:"checkbox",name:`Deny${t}`,value:"true",onClick:()=>s(`Deny${t}`),disabled:n})})]},t)))]})})})]}),(0,c.jsx)("input",{type:"hidden",name:"data",value:""})]});a.propTypes={permissions:l().array.isRequired,onPermissionChange:l().func.isRequired,inheritFromParent:l().shape({checked:l().bool.isRequired,disabled:l().bool.isRequired}).isRequired,replaceOnChildren:l().shape({checked:l().bool.isRequired,disabled:l().bool.isRequired}).isRequired};const h=a},1742:(e,t,n)=>{n.r(t),n.d(t,{default:()=>c});var s=n(1743),l=n(1744);let o;function i(e,t){const n=document.getElementById("permissions-form").elements,s=e.getAdditionalData(t);let l=1;Object.keys(o.permissions_list).forEach((e=>{s[l++]=n[`Allow${e}`].checked})),Object.keys(o.permissions_list).forEach((e=>{s[l++]=n[`Deny${e}`].checked})),e.setAdditionalData(t,s)}function d(e,t){const n=Object.keys(o.permissions_list).length,s=o.fstat.perm_change,l=e.getAdditionalData(t);if(0==l)return;const i=e.getAdditionalData(t),d=document.getElementById("permissions-form").elements,c=document.getElementById("inheritFromParent").checked;let r=1;Object.keys(o.permissions_list).forEach((e=>{d[`Allow${e}`].checked=l[r++]})),Object.keys(o.permissions_list).forEach((e=>{d[`Deny${e}`].checked=l[r++]})),Object.keys(o.permissions_list).forEach((e=>{d[`Allow${e}`].disabled=!s||i[0],d[`Deny${e}`].disabled=!s||i[0]})),s&&c&&(r=2*n+1,Object.keys(o.permissions_list).forEach((e=>{l[r]&&(d[`Allow${e}`].checked=!0,d[`Allow${e}`].disabled=!0,d[`Deny${e}`].disabled=i[0]),l[n+r]&&(d[`Deny${e}`].checked=!0,d[`Allow${e}`].disabled=!0,d[`Deny${e}`].disabled=!0),r++})))}const c=(0,s.default)({onSelect:function(e,t,n){-1!=n&&i(e,n);let s=e.getData(t,1);s=s.replace(`${o.fstat.LocalDomain}\\`,""),s=s.replace(`${o.fstat.BuiltinDomain}\\`,""),s=s.replace(`${o.fstat.NTAuthorityDomain}\\`,""),document.getElementById("perm_title").innerHTML=s,d(e,t)},onNewElement:function(e,t){const n=[!1];Object.keys(o.permissions_list).forEach((e=>{n.push("ReadAndExecute"===e||"ListFolderContents"===e||"Read"===e)})),n.push(!1,!1,!1),e.setAdditionalData(t,n)},onDeleteElement:function(e){const t=e.getSelection();-1!=t&&d(e,t)},setProps:e=>{o=e},onBeforeSubmit:function(e){const t=Object.keys(o.permissions_list).length,n=window.permissions_userlistEditListObj,s=n.getSelection();-1!=s&&i(n,s);const l=n.getAllData(),d=n.getAllAdditionalData();let c="";for(let e=0;e<l.length;e++){c+=`${l[e][1]}:P:`;for(let n=1;n<2*t+1;n++)c+=`${d[e][n]}:P:`}e.data.value=c},onUsernameChange:function(e){let t="",n="";if(""!==e.value){let s;switch(t=Object.keys(o.fstat.accounts).reduce(((e,t)=>{const n=o.fstat.accounts[t];return e[`${n.domain}\\${n.user}`]=n.type,e}),{})[e.value]||"Unknown",t){case"User":case"Unknown":default:s=o.skin.ICON_WIN_PERM_USER;break;case"Group":case"poolgrp":s=o.skin.ICON_WIN_PERM_GROUP;break;case"Computer":case"Domain":s=o.skin.ICON_WIN_PERM_COMPUTER}n=`<img src="${s}" width="${o.skin.ICON_WIDTH}" height="${o.skin.ICON_HEIGHT}">`}window.permissions_userlistEditListObj._columns[0].value=[t,n],document.getElementById("typeCell_Input").innerHTML=`${n}<input type="hidden" name="type_input" value="${t}">`},onPermissionChange:function(e){const t=document.getElementById("permissions-form").elements;switch(e){case"AllowFullControl":t.AllowFullControl.checked&&(t.AllowModify.checked=!0,t.AllowReadAndExecute.checked=!0,"ListFolderContents"in o.permissions_list&&(t.AllowListFolderContents.checked=!0),t.AllowRead.checked=!0,t.AllowWrite.checked=!0,t.DenyFullControl.disabled||(t.DenyFullControl.checked=!1),t.DenyModify.disabled||(t.DenyModify.checked=!1),t.DenyReadAndExecute.disabled||(t.DenyReadAndExecute.checked=!1),"ListFolderContents"in o.permissions_list&&(t.DenyListFolderContents.disabled||(t.DenyListFolderContents.checked=!1)),t.DenyRead.disabled||(t.DenyRead.checked=!1),t.DenyWrite.disabled||(t.DenyWrite.checked=!1));break;case"DenyFullControl":t.DenyFullControl.checked&&(t.AllowFullControl.disabled||(t.AllowFullControl.checked=!1),t.AllowModify.disabled||(t.AllowModify.checked=!1),t.AllowReadAndExecute.disabled||(t.AllowReadAndExecute.checked=!1),"ListFolderContents"in o.permissions_list&&(t.AllowListFolderContents.disabled||(t.AllowListFolderContents.checked=!1)),t.AllowRead.disabled||(t.AllowRead.checked=!1),t.AllowWrite.disabled||(t.AllowWrite.checked=!1),t.DenyModify.checked=!0,t.DenyReadAndExecute.checked=!0,"ListFolderContents"in o.permissions_list&&(t.DenyListFolderContents.checked=!0),t.DenyRead.checked=!0,t.DenyWrite.checked=!0);break;case"AllowModify":t.AllowModify.checked?(t.AllowReadAndExecute.checked=!0,"ListFolderContents"in o.permissions_list&&(t.AllowListFolderContents.checked=!0),t.AllowRead.checked=!0,t.AllowWrite.checked=!0,t.DenyFullControl.disabled||(t.DenyFullControl.checked=!1),t.DenyModify.disabled||(t.DenyModify.checked=!1),t.DenyReadAndExecute.disabled||(t.DenyReadAndExecute.checked=!1),"ListFolderContents"in o.permissions_list&&(t.DenyListFolderContents.disabled||(t.DenyListFolderContents.checked=!1)),t.DenyRead.disabled||(t.DenyRead.checked=!1),t.DenyWrite.disabled||(t.DenyWrite.checked=!1)):t.AllowFullControl.checked=!1;break;case"DenyModify":t.DenyModify.checked?(t.AllowFullControl.disabled||(t.AllowFullControl.checked=!1),t.AllowModify.disabled||(t.AllowModify.checked=!1),t.AllowReadAndExecute.disabled||(t.AllowReadAndExecute.checked=!1),"ListFolderContents"in o.permissions_list&&(t.AllowListFolderContents.disabled||(t.AllowListFolderContents.checked=!1)),t.AllowRead.disabled||(t.AllowRead.checked=!1),t.AllowWrite.disabled||(t.AllowWrite.checked=!1),t.DenyReadAndExecute.checked=!0,"ListFolderContents"in o.permissions_list&&(t.DenyListFolderContents.checked=!0),t.DenyRead.checked=!0,t.DenyWrite.checked=!0):t.DenyFullControl.checked=!1;break;case"AllowReadAndExecute":t.AllowReadAndExecute.checked?("ListFolderContents"in o.permissions_list&&(t.AllowListFolderContents.checked=!0),t.AllowRead.checked=!0,t.DenyFullControl.disabled||(t.DenyFullControl.checked=!1),t.DenyModify.disabled||(t.DenyModify.checked=!1),t.DenyReadAndExecute.disabled||(t.DenyReadAndExecute.checked=!1),"ListFolderContents"in o.permissions_list&&(t.DenyListFolderContents.disabled||(t.DenyListFolderContents.checked=!1)),t.DenyRead.disabled||(t.DenyRead.checked=!1)):(t.AllowFullControl.checked=!1,t.AllowModify.checked=!1);break;case"DenyReadAndExecute":t.DenyReadAndExecute.checked?(t.AllowFullControl.disabled||(t.AllowFullControl.checked=!1),t.AllowModify.disabled||(t.AllowModify.checked=!1),t.AllowReadAndExecute.disabled||(t.AllowReadAndExecute.checked=!1),"ListFolderContents"in o.permissions_list&&(t.AllowListFolderContents.disabled||(t.AllowListFolderContents.checked=!1)),t.AllowRead.disabled||(t.AllowRead.checked=!1),"ListFolderContents"in o.permissions_list&&(t.DenyListFolderContents.checked=!0),t.DenyRead.checked=!0):(t.DenyFullControl.checked=!1,t.DenyModify.checked=!1);break;case"AllowListFolderContents":"ListFolderContents"in o.permissions_list&&(t.AllowListFolderContents.checked?(t.DenyFullControl.disabled||(t.DenyFullControl.checked=!1),t.DenyModify.disabled||(t.DenyModify.checked=!1),t.DenyReadAndExecute.disabled||(t.DenyReadAndExecute.checked=!1),t.DenyListFolderContents.disabled||(t.DenyListFolderContents.checked=!1),t.DenyRead.disabled||(t.DenyRead.checked=!1)):(t.AllowFullControl.checked=!1,t.AllowModify.checked=!1,t.AllowReadAndExecute.checked=!1));break;case"DenyListFolderContents":"ListFolderContents"in o.permissions_list&&(t.DenyListFolderContents.checked?(t.AllowFullControl.disabled||(t.AllowFullControl.checked=!1),t.AllowModify.disabled||(t.AllowModify.checked=!1),t.AllowReadAndExecute.disabled||(t.AllowReadAndExecute.checked=!1),t.AllowListFolderContents.disabled||(t.AllowListFolderContents.checked=!1),t.AllowRead.disabled||(t.AllowRead.checked=!1)):(t.DenyFullControl.checked=!1,t.DenyModify.checked=!1,t.DenyReadAndExecute.checked=!1));break;case"AllowRead":t.AllowRead.checked?(t.DenyFullControl.disabled||(t.DenyFullControl.checked=!1),t.DenyModify.disabled||(t.DenyModify.checked=!1),t.DenyReadAndExecute.disabled||(t.DenyReadAndExecute.checked=!1),"ListFolderContents"in o.permissions_list&&(t.DenyListFolderContents.disabled||(t.DenyListFolderContents.checked=!1)),t.DenyRead.disabled||(t.DenyRead.checked=!1)):(t.AllowFullControl.checked=!1,t.AllowModify.checked=!1,t.AllowReadAndExecute.checked=!1);break;case"DenyRead":t.DenyRead.checked?(t.AllowFullControl.disabled||(t.AllowFullControl.checked=!1),t.AllowModify.disabled||(t.AllowModify.checked=!1),t.AllowReadAndExecute.disabled||(t.AllowReadAndExecute.checked=!1),"ListFolderContents"in o.permissions_list&&(t.AllowListFolderContents.disabled||(t.AllowListFolderContents.checked=!1)),t.AllowRead.disabled||(t.AllowRead.checked=!1)):(t.DenyFullControl.checked=!1,t.DenyModify.checked=!1,t.DenyReadAndExecute.checked=!1);break;case"AllowWrite":t.AllowWrite.checked?(t.DenyFullControl.disabled||(t.DenyFullControl.checked=!1),t.DenyModify.disabled||(t.DenyModify.checked=!1),t.DenyReadAndExecute.disabled||(t.DenyWrite.checked=!1)):(t.AllowFullControl.checked=!1,t.AllowModify.checked=!1);break;case"DenyWrite":t.DenyWrite.checked?(t.AllowFullControl.disabled||(t.AllowFullControl.checked=!1),t.AllowModify.disabled||(t.AllowModify.checked=!1),t.AllowReadAndExecute.disabled||(t.AllowWrite.checked=!1)):(t.DenyFullControl.checked=!1,t.DenyModify.checked=!1)}}})(l.default)},1739:(e,t,n)=>{n.r(t),n.d(t,{default:()=>s.default});var s=n(1740)},1743:(e,t,n)=>{n.r(t),n.d(t,{default:()=>o});var s=n(285),l=n(596);const o=({onSelect:e,onNewElement:t,onDeleteElement:n,onUsernameChange:o,onBeforeSubmit:i,setProps:d,onPermissionChange:c,onApplyTo:r,onEditListInit:a=()=>{}})=>h=>{class u extends s.Component{componentDidMount(){d(this.props),Plesk.require("app/editlist",(s=>{const{usersList:l}=this.props;l.columns=l.columns.map((e=>("oC_user_name"===e.onChange&&(e.onChange=o),"select"===e.type?e.value=Object.keys(e.value).reduce(((t,n,s)=>(t.push([n,e.value[n],!e.additable||e.additable[s]]),t)),[]):"const"===e.type&&(e.value=[e.value[0],e.value[1]]),e))),l.onSelect=e,l.onNewElement=t,l.onDeleteElement=n,window.permissions_userlistEditListObj=new s(l),window.permissions_userlistEditListObj.render("permissions_userlist"),a(),window.permissions_userlistEditListObj.setSelection(0)}))}shouldComponentUpdate(){return!1}render(){const{collector:e,...t}=this.props;return e.setCallback((()=>{const e=document.getElementById("permissions-form");return i(e),new FormData(e)})),(0,s.jsx)(h,{...t,onPermissionChange:c,onApplyTo:r})}}return u.propTypes={collector:l.PropTypes.shape({setCallback:l.PropTypes.func.isRequired}).isRequired,usersList:l.PropTypes.object.isRequired},u}},2780:(e,t,n)=>{n.r(t),n.d(t,{default:()=>p});var s=n(596),l=n(1739),o=n(586),i=n(547),d=n(580),c=n(579),r=n(1174),a=n.n(r),h=n(285);const u=({params:{domainId:e}})=>{const t=(0,d.useNavigate)(),[n]=(0,c.useSearchParams)(),s=n.get("path")||"/",{data:{domain:{hosting:{virtualDirectory:{baseName:r,dirName:u}}}}}=(0,o.useQuery)(a(),{variables:{domainId:btoa(`Domain:${e}`),path:s}}),p=n.get("currentDir")??u,y=n.get("file")??r,m=n.get("isDirectory")??!0,k=n.get("fileType");return(0,h.jsx)(l.default,{isOpen:!0,currentDir:p,file:y,isDirectory:!!m,domainId:+e,icon:(0,i.getTypeIcon)({type:k,isDirectory:m,name:y}),onClose:()=>t({pathname:"..",search:`path=${s}`}),isUnix:!1,commonToaster:!0})};u.propTypes={params:s.PropTypes.object.isRequired};const p=u},1748:(e,t,n)=>{n.r(t)}}]); //# sourceMappingURL=PermissionsPage.js.map?9893bb84026a0d72b04e