Submit
Path:
~
/
/
usr
/
local
/
psa
/
admin
/
cp
/
public
/
javascript
/
components
/
pages
/
VirtualDirectoryPage
/
File Content:
PermissionsPage.js.map
{"version":3,"file":"javascript/components/pages/VirtualDirectoryPage/PermissionsPage.js?2a356751e1b25b5d8bea","mappings":"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","sources":["webpack:///./components/common/FilePermissions/AdvancedWindowsPermissions/AdvancedWindowsPermissions.js","webpack:///./components/common/FilePermissions/AdvancedWindowsPermissions/index.js","webpack:///./components/common/FilePermissions/Checkbox.js","webpack:///./components/common/FilePermissions/FilePermissions.js","webpack:///./components/common/FilePermissions/UnixPermissions.js","webpack:///./components/common/FilePermissions/WindowsPermissions/WindowsPermissions.js","webpack:///./components/common/FilePermissions/WindowsPermissions/index.js","webpack:///./components/common/FilePermissions/withEditList.js","webpack:///./components/pages/VirtualDirectoryPage/PermissionsPage.js"],"sourcesContent":["// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\n/* eslint-disable react/jsx-max-depth */\n\nimport PropTypes from 'prop-types';\nimport { Locale } from 'jsw';\nimport Checkbox from '../Checkbox';\n\nconst Translate = Locale.getTranslate('windows-permissions');\n\nconst AdvancedWindowsPermissions = ({\n permissions,\n inheritFromParent,\n replaceOnChildren,\n fstat,\n onPermissionChange,\n onApplyTo,\n}) => (\n <>\n <Checkbox\n name=\"inheritFromParent\"\n label={<Translate content=\"inheritFromParent\" />}\n {...inheritFromParent}\n />\n <Checkbox\n name=\"replaceOnChildren\"\n label={<Translate content=\"replaceOnChildren\" />}\n {...replaceOnChildren}\n />\n <fieldset>\n <table width=\"100%\" cellSpacing=\"0\" cellPadding=\"0\" border=\"0\">\n <tbody>\n {' '}\n <tr>\n <td>\n <table className=\"formFields\" cellSpacing=\"0\" width=\"100%\">\n <tbody>\n <tr>\n <td colSpan=\"2\">\n <div id=\"permissions_userlist\" />\n </td>\n </tr>\n <tr>\n <td width=\"60%\">\n <table className=\"list\" cellSpacing=\"0\" width=\"100%\">\n <tbody>\n <tr>\n <th width=\"80%\">\n <Translate content=\"permissionsFor\" />{' '}\n <span id=\"perm_title\" />\n </th>\n <th>\n <Translate content=\"allow\" />\n </th>\n <th>\n <Translate content=\"deny\" />\n </th>\n </tr>\n {permissions.map(\n ({\n PERMISSION_TEXT,\n PERMISSION_NAME,\n PERMISSION_DISABLED,\n }) => (\n <tr key={PERMISSION_NAME}>\n <td>{PERMISSION_TEXT}</td>\n <td align=\"center\">\n <input\n type=\"checkbox\"\n className=\"checkbox\"\n name={`Allow${PERMISSION_NAME}`}\n value=\"true\"\n onClick={() => onPermissionChange(`Allow${PERMISSION_NAME}`)}\n disabled={PERMISSION_DISABLED}\n />\n </td>\n <td align=\"center\">\n <input\n type=\"checkbox\"\n className=\"checkbox\"\n name={`Deny${PERMISSION_NAME}`}\n value=\"true\"\n onClick={() => onPermissionChange(`Deny${PERMISSION_NAME}`)}\n disabled={PERMISSION_DISABLED}\n />\n </td>\n </tr>\n ),\n )}\n </tbody>\n </table>\n </td>\n {fstat.is_dir && (\n <td width=\"40%\">\n <table\n className=\"list\"\n cellSpacing=\"0\"\n width=\"100%\"\n >\n <tbody>\n <tr>\n <td width=\"30%\">\n <b>\n <Translate content=\"applyTo\" />\n </b>\n </td>\n <td>\n <input\n type=\"checkbox\"\n className=\"checkbox\"\n name=\"applyonto_thisobject\"\n id=\"fid-applyonto_thisobject\"\n value=\"true\"\n onClick={() => onApplyTo('applyonto_thisobject')}\n />{' '}\n <label htmlFor=\"fid-applyonto_thisobject\">\n <Translate content=\"folderOnly\" />\n </label>\n </td>\n </tr>\n <tr>\n <td />\n <td>\n <input\n type=\"checkbox\"\n className=\"checkbox\"\n name=\"applyonto_subfolders\"\n id=\"fid-applyonto_subfolders\"\n value=\"true\"\n onClick={() => onApplyTo('applyonto_subfolders')}\n />{' '}\n <label htmlFor=\"fid-applyonto_subfolders\">\n <Translate content=\"subfolderOnly\" />\n </label>\n </td>\n </tr>\n <tr>\n <td />\n <td>\n <input\n type=\"checkbox\"\n className=\"checkbox\"\n name=\"applyonto_files\"\n id=\"fid-applyonto_files\"\n value=\"true\"\n onClick={() => onApplyTo('applyonto_files')}\n />{' '}\n <label htmlFor=\"fid-applyonto_files\">\n <Translate content=\"filesOnly\" />\n </label>\n </td>\n </tr>\n </tbody>\n </table>\n </td>\n )}\n </tr>\n </tbody>\n </table>\n <input type=\"hidden\" name=\"data\" value=\"\" />\n </td>\n </tr>\n </tbody>\n </table>\n </fieldset>\n </>\n);\n\nAdvancedWindowsPermissions.propTypes = {\n permissions: PropTypes.array.isRequired,\n onPermissionChange: PropTypes.func.isRequired,\n onApplyTo: PropTypes.func.isRequired,\n inheritFromParent: PropTypes.shape({\n checked: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n }).isRequired,\n replaceOnChildren: PropTypes.shape({\n checked: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n }).isRequired,\n fstat: PropTypes.shape({\n is_dir: PropTypes.bool.isRequired,\n }).isRequired,\n};\n\nexport default AdvancedWindowsPermissions;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { Locale, escapeHtml } from 'jsw';\nimport withEditList from '../withEditList';\nimport AdvancedWindowsPermissions from './AdvancedWindowsPermissions';\n\n/* eslint-disable func-style */\n/* eslint-disable camelcase */\n\nconst locale = Locale.getSection('smb.components.forms.file-manager.windows-permissions');\n\nlet props;\nconst setProps = v => {\n props = v;\n};\n\nconst getApplyontostr = () => [\n '',\n locale.lmsg('applyOnto1'),\n locale.lmsg('applyOnto2'),\n locale.lmsg('applyOnto3'),\n locale.lmsg('applyOnto4'),\n locale.lmsg('applyOnto5'),\n locale.lmsg('applyOnto6'),\n locale.lmsg('applyOnto7'),\n];\n\nconst getWinPermissionsIcon = type => {\n switch (type) {\n case 'User':\n return props.skin.ICON_WIN_PERM_USER;\n case 'Group':\n return props.skin.ICON_WIN_PERM_GROUP;\n case 'poolgrp':\n return props.skin.ICON_WIN_PERM_GROUP;\n case 'Computer':\n return props.skin.ICON_WIN_PERM_COMPUTER;\n case 'Domain':\n return props.skin.ICON_WIN_PERM_COMPUTER;\n case 'Unknown':\n default:\n return props.skin.ICON_WIN_PERM_USER;\n }\n};\n\nfunction update_oC(f) {\n const php_size = Object.keys(props.permissions_list).length;\n const obj = window.permissions_userlistEditListObj;\n const selection = obj.getSelection();\n if (selection != -1) {\n screenToData(obj, selection);\n }\n\n const data = obj.getAllData();\n const columns = obj.getColumns();\n const additional_data = obj.getAllAdditionalData();\n let res = '';\n for (let i = 0; i < data.length; i++) {\n for (let j = 1; j < columns.length; j++) {\n res += `${columns[j].type == 'const' ? data[i][j][0] : data[i][j]}:P:`;\n }\n for (let j = 1; j < php_size + 2; j++) {\n res += `${additional_data[i][j]}:P:`;\n }\n }\n f.data.value = res;\n}\n\nfunction oC_InheritFromParent() {\n const obj = window.permissions_userlistEditListObj;\n const selection = obj.getSelection();\n if (selection != -1) {\n screenToData(obj, selection);\n }\n const inherit_from_parent = document.getElementById('inheritFromParent').checked;\n const data = obj.getAllData();\n const can_delete = obj.getAllCanDelete();\n const additional_data = obj.getAllAdditionalData();\n const new_data = [];\n const new_can_delete = [];\n const new_additional_data = [];\n\n Object.keys(props.fstat.accounts).forEach(k => {\n const account = props.fstat.accounts[k];\n let found;\n if (Array.isArray(account.ParentAdvancedAcl)) {\n account.ParentAdvancedAcl.forEach(acl => {\n found = -1;\n for (let i = 0; i < data.length; i++) {\n if (\n data[i][2][0] === ''\n && data[i][1] === (account.domain ? `${account.domain}\\\\${account.user}` : account.user)\n && (props.fstat.is_dir ? data[i][3][0] === acl.ApplyOnto : true)\n ) {\n let f = true;\n f = f && additional_data[i][1] == acl.Allow;\n let n = 2;\n Object.keys(props.permissions_list).forEach(perm => {\n f = f && additional_data[i][n++] === (acl[perm] ? true : false);\n });\n if (f) {\n found = i;\n break;\n }\n }\n }\n if (inherit_from_parent || found == -1) {\n const new_data_item = [\n [\n account.type,\n `<img src=\"${getWinPermissionsIcon(account.type)}\" width=\"${\n props.skin.ICON_WIDTH\n }\" height=\"${props.skin.ICON_HEIGHT}\" />`,\n ],\n account.domain ? `${account.domain}\\\\${account.user}` : account.user,\n !inherit_from_parent\n ? ['', escapeHtml(locale.lmsg('notInherited'))]\n : [acl.InheritedFrom, acl.InheritedFrom ? acl.InheritedFrom : escapeHtml(locale.lmsg('notInherited'))],\n ];\n if (props.fstat.is_dir) {\n new_data_item.push([\n acl.ApplyOnto,\n locale.lmsg(`applyOnto${acl.ApplyOnto}`),\n ]);\n }\n new_data.push(new_data_item);\n new_can_delete.push(\n inherit_from_parent ? false : account.permanent ? false : true,\n );\n\n const new_additional_data_item = [\n account.permanent ? true : false,\n acl.Allow ? true : false,\n ];\n Object.keys(props.permissions_list).forEach(perm => {\n new_additional_data_item.push(acl[perm] ? true : false);\n });\n new_additional_data.push(new_additional_data_item);\n }\n\n if (!inherit_from_parent && found != -1) {\n can_delete[found] = account.permanent ? false : true;\n }\n\n if (inherit_from_parent) {\n can_delete[found] = true;\n }\n });\n }\n });\n\n for (let i = 0; i < data.length; i++) {\n if (inherit_from_parent || data[i][2][0] == '') {\n new_data.push(data[i]);\n new_can_delete.push(can_delete[i]);\n new_additional_data.push(additional_data[i]);\n }\n }\n obj.setAllData(new_data, new_can_delete);\n obj.setAllAdditionalData(new_additional_data);\n obj._selectedId = -1;\n obj.refresh();\n obj.setSelection(0);\n}\n\nfunction onChangeSelection(owner, newid, oldid) {\n if (oldid != -1) {\n screenToData(owner, oldid);\n }\n\n let data = owner.getData(newid, 1);\n data = data.replace(`${props.fstat.LocalDomain}\\\\`, '');\n data = data.replace(`${props.fstat.BuiltinDomain}\\\\`, '');\n data = data.replace(`${props.fstat.NTAuthorityDomain}\\\\`, '');\n const titleEl = document.getElementById('perm_title');\n titleEl.innerHTML = data;\n\n dataToScreen(owner, newid);\n}\n\nfunction screenToData(owner, id) {\n const el = document.getElementById('permissions-form').elements;\n const data = owner.getAdditionalData(id);\n data[1] = undefined;\n\n let n = 2;\n Object.keys(props.permissions_list).forEach(perm => {\n if (data[1] == undefined) {\n if (el[`Deny${perm}`].checked) {\n data[1] = false;\n data[n] = true;\n } else if (el[`Allow${perm}`].checked) {\n data[1] = true;\n data[n] = true;\n } else {\n data[n] = false;\n }\n } else {\n data[n] = el[(data[1] ? 'Allow' : 'Deny') + perm].checked;\n }\n n++;\n });\n\n if (data[1] == undefined) {\n data[1] = true;\n }\n owner.setAdditionalData(id, data);\n\n if (props.fstat.is_dir) {\n let applyonto = 0;\n applyonto |= el.applyonto_thisobject.checked ? props.PERMISSIONS__APPLY_ONTO_THISOBJECT : 0;\n applyonto |= el.applyonto_subfolders.checked ? props.PERMISSIONS__APPLY_ONTO_SUBFOLDERS : 0;\n applyonto |= el.applyonto_files.checked ? props.PERMISSIONS__APPLY_ONTO_FILES : 0;\n const applyontostr = getApplyontostr();\n owner.setData(id, 3, [applyonto, applyontostr[applyonto]]);\n }\n}\n\nfunction dataToScreen(owner, id) {\n const { perm_change } = props.fstat;\n const data = owner.getAdditionalData(id);\n if (data == false) {\n return;\n }\n const additional_data = owner.getAdditionalData(id);\n const el = document.getElementById('permissions-form').elements;\n\n let i = 2;\n Object.keys(props.permissions_list).forEach(perm => {\n el[(data[1] ? 'Allow' : 'Deny') + perm].checked = data[i++];\n el[(data[1] ? 'Deny' : 'Allow') + perm].checked = false;\n el[`Allow${perm}`].disabled = perm_change ? additional_data[0] : true;\n el[`Deny${perm}`].disabled = perm_change ? additional_data[0] : true;\n });\n\n if (props.fstat.is_dir) {\n const applyonto = owner.getData(id, 3)[0];\n el.applyonto_thisobject.checked = applyonto & props.PERMISSIONS__APPLY_ONTO_THISOBJECT;\n el.applyonto_thisobject.disabled = perm_change ? additional_data[0] : true;\n el.applyonto_subfolders.checked = applyonto & props.PERMISSIONS__APPLY_ONTO_SUBFOLDERS;\n el.applyonto_subfolders.disabled = perm_change ? additional_data[0] : true;\n el.applyonto_files.checked = applyonto & props.PERMISSIONS__APPLY_ONTO_FILES;\n el.applyonto_files.disabled = perm_change ? additional_data[0] : true;\n }\n}\n\nfunction onNewElement(owner, newid) {\n const data = [\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n false,\n ];\n owner.setAdditionalData(newid, data);\n}\n\nfunction onDeleteElement(owner) {\n const selection = owner.getSelection();\n if (selection != -1) {\n dataToScreen(owner, selection);\n }\n}\n\nfunction oC_perm(t) {\n const el = document.getElementById('permissions-form').elements;\n const allow = t.substring(0, 1) == 'A';\n const name = t.substring(allow ? 5 : 4);\n\n Object.keys(props.permissions_list).forEach(perm => {\n el[(allow ? 'Deny' : 'Allow') + perm].checked = false;\n });\n\n if (el[t].checked) {\n if (el[`${allow ? 'Allow' : 'Deny'}Full`].checked) {\n el[`${allow ? 'Allow' : 'Deny'}Read`].checked = true;\n el[`${allow ? 'Allow' : 'Deny'}Write`].checked = true;\n el[`${allow ? 'Allow' : 'Deny'}Execute`].checked = true;\n if (props.fstat.is_dir) {\n el[`${allow ? 'Allow' : 'Deny'}DeleteSubfoldersandFiles`].checked = true;\n }\n el[`${allow ? 'Allow' : 'Deny'}Delete`].checked = true;\n el[`${allow ? 'Allow' : 'Deny'}ChangePermissions`].checked = true;\n el[`${allow ? 'Allow' : 'Deny'}TakeOwnership`].checked = true;\n }\n if (el[`${allow ? 'Allow' : 'Deny'}Read`].checked) {\n el[`${allow ? 'Allow' : 'Deny'}ListFolderOrRead`].checked = true;\n }\n if (el[`${allow ? 'Allow' : 'Deny'}Write`].checked) {\n el[`${allow ? 'Allow' : 'Deny'}CreateFilesOrWrite`].checked = true;\n el[`${allow ? 'Allow' : 'Deny'}CreateFoldersOrAppend`].checked = true;\n }\n if (el[`${allow ? 'Allow' : 'Deny'}Execute`].checked) {\n el[`${allow ? 'Allow' : 'Deny'}TraverseFolderOrExecuteFile`].checked = true;\n }\n } else {\n if (name != 'Execute') {\n el[`${allow ? 'Allow' : 'Deny'}Execute`].checked =\n el[`${allow ? 'Allow' : 'Deny'}TraverseFolderOrExecuteFile`].checked;\n }\n if (name != 'Write') {\n el[`${allow ? 'Allow' : 'Deny'}Write`].checked =\n el[`${allow ? 'Allow' : 'Deny'}CreateFilesOrWrite`].checked &&\n el[`${allow ? 'Allow' : 'Deny'}CreateFoldersOrAppend`].checked;\n }\n if (name != 'Read') {\n el[`${allow ? 'Allow' : 'Deny'}Read`].checked =\n el[`${allow ? 'Allow' : 'Deny'}ListFolderOrRead`].checked;\n }\n if (name != 'Full') {\n el[`${allow ? 'Allow' : 'Deny'}Full`].checked =\n el[`${allow ? 'Allow' : 'Deny'}Read`].checked &&\n el[`${allow ? 'Allow' : 'Deny'}Write`].checked &&\n el[`${allow ? 'Allow' : 'Deny'}Execute`].checked &&\n (props.fstat.is_dir\n ? el[`${allow ? 'Allow' : 'Deny'}DeleteSubfoldersandFiles`].checked\n : true) &&\n el[`${allow ? 'Allow' : 'Deny'}Delete`].checked &&\n el[`${allow ? 'Allow' : 'Deny'}ChangePermissions`].checked &&\n el[`${allow ? 'Allow' : 'Deny'}TakeOwnership`].checked;\n }\n }\n}\n\nfunction apply_onto_oC(name) {\n const el = document.getElementById('permissions-form').elements;\n if (\n !el.applyonto_thisobject.checked &&\n !el.applyonto_subfolders.checked &&\n !el.applyonto_files.checked\n ) {\n el[name].checked = true;\n }\n\n let applyonto = 0;\n applyonto |= el.applyonto_thisobject.checked ? props.PERMISSIONS__APPLY_ONTO_THISOBJECT : 0;\n applyonto |= el.applyonto_subfolders.checked ? props.PERMISSIONS__APPLY_ONTO_SUBFOLDERS : 0;\n applyonto |= el.applyonto_files.checked ? props.PERMISSIONS__APPLY_ONTO_FILES : 0;\n\n const obj = window.permissions_userlistEditListObj;\n const selection = obj.getSelection();\n const td = document.getElementById(`apply_toCell_${selection}`);\n const applyontostr = getApplyontostr();\n td.innerHTML = `${applyontostr[applyonto]}<input type=\"hidden\" name=\"apply_to[]\" value=\"${applyonto}\">`;\n}\n\nfunction oC_user_name(owner) {\n let type = '';\n let iconstr = '';\n if (owner.value !== '') {\n const accounts = Object.keys(props.fstat.accounts).reduce((acc, k) => {\n const account = props.fstat.accounts[k];\n acc[k] = account.type;\n return acc;\n }, {});\n type = accounts[owner.value] || 'Unknown';\n iconstr = `<img src=\"${getWinPermissionsIcon(type)}\" width=\"${props.skin.ICON_WIDTH}\" height=\"${props.skin.ICON_HEIGHT}\">`;\n }\n const obj = window.permissions_userlistEditListObj;\n obj._columns[0].value = [type, iconstr];\n const td = document.getElementById('typeCell_Input');\n td.innerHTML = `${iconstr}<input type=\"hidden\" name=\"type_input\" value=\"${type}\">`;\n}\n\nexport default withEditList({\n onSelect: onChangeSelection,\n onNewElement,\n onDeleteElement,\n setProps,\n onEditListInit: oC_InheritFromParent,\n onBeforeSubmit: update_oC,\n onUsernameChange: oC_user_name,\n onPermissionChange: oC_perm,\n onApplyTo: apply_onto_oC,\n})(AdvancedWindowsPermissions);\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport PropTypes from 'prop-types';\n\nconst Checkbox = ({ name, label, checked, disabled }) => (\n <div className=\"form-row\">\n <div className=\"single-row\">\n <div className=\"indent-box\">\n <input type=\"hidden\" name={name} value=\"0\" />\n <input\n type=\"checkbox\"\n name={name}\n id={name}\n value=\"1\"\n defaultChecked={checked}\n disabled={disabled}\n className=\"checkbox\"\n />\n <div className=\"indent-box-content\">\n <label htmlFor={name}>\n {label}\n </label>\n </div>\n </div>\n </div>\n </div>\n);\n\nCheckbox.propTypes = {\n name: PropTypes.string.isRequired,\n label: PropTypes.element.isRequired,\n checked: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n};\n\nexport default Checkbox;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { useEffect, useState, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { Icon, Drawer, ContentLoader, Action, Toaster, LocaleProvider } from '@plesk/ui-library';\nimport { api, Locale } from 'jsw';\nimport { toFormData } from 'helpers/form';\nimport { addToast } from 'helpers/toasts';\nimport UnixPermissions from './UnixPermissions';\nimport WindowsPermissions from './WindowsPermissions';\nimport AdvancedWindowsPermissions from './AdvancedWindowsPermissions';\nimport { useCollector } from 'hooks';\n\nimport './FilePermissions.less';\n\nconst load = url => api.get(url);\n\nconst save = (url, values) => api.post(url, toFormData(values));\n\nconst getUrl = ({ domainId, currentDir, file, advanced }) => {\n const params = new URLSearchParams();\n params.set('currentDir', currentDir);\n params.set('file', file);\n if (advanced) {\n params.set('advanced', advanced);\n }\n return `/smb/file-manager/permissions/domainId/${domainId}/?${params}`;\n};\n\nconst Translate = Locale.getTranslate('permissions');\n\nconst FilePermissions = ({\n file,\n currentDir,\n domainId,\n icon,\n isDirectory,\n isUnix,\n onComplete = () => {},\n isOpen,\n onClose,\n commonToaster = false,\n}) => {\n const [isAdvanced, setIsAdvanced] = useState(false);\n const [formState, setFormState] = useState();\n const [platformProps, setPlatformProps] = useState();\n const collector = useCollector();\n const toasterRef = useRef();\n const completed = useRef(false);\n\n const url = getUrl({ domainId, currentDir, file, advanced: isAdvanced });\n useEffect(() => {\n let safeSetPlatformProps = setPlatformProps;\n if (isOpen) {\n setPlatformProps(undefined);\n load(url).then(p => {\n safeSetPlatformProps(p);\n });\n } else {\n setIsAdvanced(false);\n }\n return () => {\n safeSetPlatformProps = () => {};\n };\n }, [url, isOpen]);\n\n const handleToggle = () => {\n setPlatformProps(undefined);\n setIsAdvanced(!isAdvanced);\n };\n\n const handleAddToast = toast => commonToaster ? addToast(toast) : toasterRef.current.add(toast);\n\n const getPlatformPermissionsComponent = () => {\n if (isUnix) {\n return UnixPermissions;\n }\n if (isAdvanced) {\n return AdvancedWindowsPermissions;\n }\n return WindowsPermissions;\n };\n\n const PlatformPermissions = getPlatformPermissionsComponent();\n const handleClose = () => {\n onClose();\n if (completed.current) {\n onComplete();\n }\n };\n\n return (\n <>\n <Drawer\n data-type=\"permissions\"\n isOpen={isOpen}\n title={\n <Translate content={isDirectory ? 'directoryPermissions' : 'filePermissions'} />\n }\n subtitle={\n <div className=\"permissions__subtitle\">\n <span>\n <Icon src={icon} size=\"24\" /> {file}\n </span>\n {!isUnix && !isAdvanced && (\n <Action\n icon=\"sliders\"\n outerProps={{\n className: 'permissions__subtitle-toggle',\n }}\n onClick={handleToggle}\n >\n <Translate content=\"buttonAdvanced\" />\n </Action>\n )}\n </div>\n }\n size={isUnix ? 'xs' : 'md'}\n form={{\n state: formState,\n submitButton: {\n children: <Translate content=\"buttonSubmit\" />,\n },\n applyButton: {\n children: <Translate content=\"buttonApply\" />,\n intent: undefined,\n },\n cancelButton: {\n children: <Translate content=\"buttonCancel\" />,\n },\n id: 'permissions-form',\n onSubmit: async (_, isApply) => {\n setFormState(isApply ? 'apply' : 'submit');\n const values = collector.collect();\n const result = await save(url, values);\n handleAddToast({\n intent: 'success' === result.status ? result.status : 'danger',\n message: result.message ?? result.statusMessages.reduce((acc, s) => acc + s.content, ''),\n });\n if (!isUnix && isApply) {\n // redraw windows permissions\n const nextPlatformProps = await load(url);\n nextPlatformProps.key = Date.now();\n setPlatformProps(nextPlatformProps);\n }\n setFormState(undefined);\n completed.current = true;\n if (!isApply) {\n handleClose();\n }\n },\n }}\n onClose={handleClose}\n >\n {isOpen && platformProps ? (\n <PlatformPermissions {...platformProps} collector={collector} />\n ) : (\n <ContentLoader />\n )}\n </Drawer>\n {!commonToaster && (<Toaster ref={toasterRef} data-type=\"toaster\" />)}\n </>\n );\n};\n\nFilePermissions.propTypes = {\n file: PropTypes.string.isRequired,\n currentDir: PropTypes.string.isRequired,\n domainId: PropTypes.number.isRequired,\n icon: PropTypes.string.isRequired,\n isDirectory: PropTypes.bool.isRequired,\n isUnix: PropTypes.bool.isRequired,\n onComplete: PropTypes.func,\n commonToaster: PropTypes.bool,\n isOpen: PropTypes.bool.isRequired,\n onClose: PropTypes.func.isRequired,\n};\n\nconst messages = {\n permissions: Locale.getSection('smb.components.forms.file-manager.permissions').messages,\n 'unix-file-permissions': Locale.getSection(\n 'smb.components.forms.file-manager.unix-file-permissions',\n ).messages,\n 'windows-permissions': Locale.getSection(\n 'smb.components.forms.file-manager.windows-permissions',\n ).messages,\n};\n\nconst Wrapper = props => (\n <LocaleProvider messages={messages}>\n <FilePermissions {...props} />\n </LocaleProvider>\n);\n\nexport default Wrapper;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Checkbox, List } from '@plesk/ui-library';\nimport { Locale } from 'jsw';\n\nconst Translate = Locale.getTranslate('unix-file-permissions');\n\nconst UnixPermissions = ({ permissions, collector, isDir }) => {\n const [values, setValues] = useState(permissions);\n const [isRecursive, setRecursive] = useState(false);\n collector.setCallback(() => ({\n permissions: values,\n changeRecursive: isRecursive,\n }));\n\n // eslint-disable-next-line react/display-name,react/no-unstable-nested-components\n const createRender = type => row => {\n const name = row[type];\n return (\n <Checkbox\n name={name}\n checked={values[name]}\n onChange={value => {\n setValues({\n ...values,\n [name]: value,\n });\n }}\n />\n );\n };\n\n const columns = [\n { key: 'name', title: '' },\n { key: 'r', title: <Translate content=\"readMode\" />, render: createRender('r') },\n { key: 'w', title: <Translate content=\"writeMode\" />, render: createRender('w') },\n { key: 'x', title: <Translate content=\"execMode\" />, render: createRender('x') },\n ];\n const data = [\n {\n key: 'owner',\n name: <Translate content=\"owner\" />,\n r: 'ownerRead',\n w: 'ownerWrite',\n x: 'ownerExecute',\n },\n {\n key: 'group',\n name: <Translate content=\"group\" />,\n r: 'groupRead',\n w: 'groupWrite',\n x: 'groupExecute',\n },\n {\n key: 'others',\n name: <Translate content=\"others\" />,\n r: 'othersRead',\n w: 'othersWrite',\n x: 'othersExecute',\n },\n ];\n return (\n <>\n <List columns={columns} data={data} name=\"permissions-list\" />\n {isDir ? (\n <Checkbox\n name=\"changeRecursive\"\n checked={isRecursive}\n onChange={value => setRecursive(value)}\n >\n <Translate content=\"changeRecursive\" />\n </Checkbox>\n ) : null}\n </>\n );\n};\n\nUnixPermissions.propTypes = {\n permissions: PropTypes.object.isRequired,\n collector: PropTypes.shape({\n setCallback: PropTypes.func.isRequired,\n }).isRequired,\n isDir: PropTypes.bool.isRequired,\n};\n\nexport default UnixPermissions;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\n/* eslint-disable react/jsx-max-depth */\n\nimport PropTypes from 'prop-types';\nimport { Locale } from 'jsw';\nimport Checkbox from '../Checkbox';\nimport { Columns, Column } from '@plesk/ui-library';\n\nconst Translate = Locale.getTranslate('windows-permissions');\n\nconst WindowsPermissions = ({\n permissions,\n inheritFromParent,\n replaceOnChildren,\n onPermissionChange,\n}) => (\n <>\n <Checkbox\n name=\"inheritFromParent\"\n label={<Translate content=\"inheritFromParent\" />}\n {...inheritFromParent}\n />\n <Checkbox\n name=\"replaceOnChildren\"\n label={<Translate content=\"replaceOnChildren\" />}\n {...replaceOnChildren}\n />\n <Columns gap=\"lg\" style={{ flexWrap: 'wrap' }}>\n <Column ratio={1} style={{ minWidth: 'auto' }}>\n <div id=\"permissions_userlist\" />\n </Column>\n <Column ratio={1} style={{ minWidth: 'auto' }}>\n <table className=\"list\" cellSpacing=\"0\" width=\"100%\">\n <tbody>\n <tr>\n <th width=\"80%\">\n <Translate content=\"permissionsFor\" />{' '}\n <span id=\"perm_title\" />\n </th>\n <th>\n <Translate content=\"allow\" />\n </th>\n <th>\n <Translate content=\"deny\" />\n </th>\n </tr>\n {permissions.map(\n ({\n PERMISSION_TEXT,\n PERMISSION_NAME,\n PERMISSION_DISABLED,\n }) => (\n <tr key={PERMISSION_NAME}>\n <td>{PERMISSION_TEXT}</td>\n <td align=\"center\">\n <input\n type=\"checkbox\"\n className=\"checkbox\"\n name={`Allow${PERMISSION_NAME}`}\n value=\"true\"\n onClick={() => onPermissionChange(\n `Allow${PERMISSION_NAME}`,\n )}\n disabled={PERMISSION_DISABLED}\n />\n </td>\n <td align=\"center\">\n <input\n type=\"checkbox\"\n className=\"checkbox\"\n name={`Deny${PERMISSION_NAME}`}\n value=\"true\"\n onClick={() => onPermissionChange(\n `Deny${PERMISSION_NAME}`,\n )}\n disabled={PERMISSION_DISABLED}\n />\n </td>\n </tr>\n ),\n )}\n </tbody>\n </table>\n </Column>\n </Columns>\n <input type=\"hidden\" name=\"data\" value=\"\" />\n </>\n);\n\nWindowsPermissions.propTypes = {\n permissions: PropTypes.array.isRequired,\n onPermissionChange: PropTypes.func.isRequired,\n inheritFromParent: PropTypes.shape({\n checked: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n }).isRequired,\n replaceOnChildren: PropTypes.shape({\n checked: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n }).isRequired,\n};\n\nexport default WindowsPermissions;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\n/* eslint-disable camelcase */\n/* eslint-disable func-style */\n\nimport withEditList from '../withEditList';\nimport WindowsPermissions from './WindowsPermissions';\n\nlet props;\nconst setProps = v => {\n props = v;\n};\n\nfunction update_oC(f) {\n const php_size = Object.keys(props.permissions_list).length;\n const obj = window.permissions_userlistEditListObj;\n const selection = obj.getSelection();\n if (selection != -1) {\n screenToData(obj, selection);\n }\n\n const data = obj.getAllData();\n const additional_data = obj.getAllAdditionalData();\n let res = '';\n for (let i = 0; i < data.length; i++) {\n res += `${data[i][1]}:P:`;\n for (let j = 1; j < (2 * php_size) + 1; j++) {\n res += `${additional_data[i][j]}:P:`;\n }\n }\n f.data.value = res;\n}\n\nfunction onChangeSelection(owner, newid, oldid) {\n if (oldid != -1) {\n screenToData(owner, oldid);\n }\n\n let data = owner.getData(newid, 1);\n data = data.replace(`${props.fstat.LocalDomain}\\\\`, '');\n data = data.replace(`${props.fstat.BuiltinDomain}\\\\`, '');\n data = data.replace(`${props.fstat.NTAuthorityDomain}\\\\`, '');\n const titleEl = document.getElementById('perm_title');\n titleEl.innerHTML = data;\n\n dataToScreen(owner, newid);\n}\n\nfunction screenToData(owner, id) {\n const el = document.getElementById('permissions-form').elements;\n const data = owner.getAdditionalData(id);\n let php_n = 1;\n Object.keys(props.permissions_list).forEach(perm => {\n data[php_n++] = el[`Allow${perm}`].checked;\n });\n Object.keys(props.permissions_list).forEach(perm => {\n data[php_n++] = el[`Deny${perm}`].checked;\n });\n owner.setAdditionalData(id, data);\n}\n\nfunction dataToScreen(owner, id) {\n const php_size = Object.keys(props.permissions_list).length;\n const php_perm_change = props.fstat.perm_change;\n const data = owner.getAdditionalData(id);\n if (data == false) {\n return;\n }\n const additional_data = owner.getAdditionalData(id);\n const el = document.getElementById('permissions-form').elements;\n const inherit_from_parent = document.getElementById('inheritFromParent').checked;\n\n let php_n = 1;\n Object.keys(props.permissions_list).forEach(perm => {\n el[`Allow${perm}`].checked = data[php_n++];\n });\n Object.keys(props.permissions_list).forEach(perm => {\n el[`Deny${perm}`].checked = data[php_n++];\n });\n Object.keys(props.permissions_list).forEach(perm => {\n el[`Allow${perm}`].disabled = php_perm_change ? additional_data[0] : true;\n el[`Deny${perm}`].disabled = php_perm_change ? additional_data[0] : true;\n });\n if (php_perm_change) {\n if (inherit_from_parent) {\n php_n = (2 * php_size) + 1;\n Object.keys(props.permissions_list).forEach(perm => {\n if (data[php_n]) {\n el[`Allow${perm}`].checked = true;\n el[`Allow${perm}`].disabled = true;\n el[`Deny${perm}`].disabled = additional_data[0];\n }\n if (data[php_size + php_n]) {\n el[`Deny${perm}`].checked = true;\n el[`Allow${perm}`].disabled = true;\n el[`Deny${perm}`].disabled = true;\n }\n php_n++;\n });\n }\n }\n}\n\nfunction onNewElement(owner, newid) {\n const data = [false];\n Object.keys(props.permissions_list).forEach(perm => {\n data.push(\n perm === 'ReadAndExecute' || perm === 'ListFolderContents' || perm === 'Read'\n ? true\n : false,\n );\n });\n data.push(false, false, false);\n owner.setAdditionalData(newid, data);\n}\n\nfunction onDeleteElement(owner) {\n const selection = owner.getSelection();\n if (selection != -1) {\n dataToScreen(owner, selection);\n }\n}\n\nfunction oC_perm(t) {\n const el = document.getElementById('permissions-form').elements;\n switch (t) {\n case 'AllowFullControl':\n if (el.AllowFullControl.checked) {\n el.AllowModify.checked = true;\n el.AllowReadAndExecute.checked = true;\n if ('ListFolderContents' in props.permissions_list) {\n el.AllowListFolderContents.checked = true;\n }\n el.AllowRead.checked = true;\n el.AllowWrite.checked = true;\n if (!el.DenyFullControl.disabled) {\n el.DenyFullControl.checked = false;\n }\n if (!el.DenyModify.disabled) {\n el.DenyModify.checked = false;\n }\n if (!el.DenyReadAndExecute.disabled) {\n el.DenyReadAndExecute.checked = false;\n }\n if ('ListFolderContents' in props.permissions_list) {\n if (!el.DenyListFolderContents.disabled) {\n el.DenyListFolderContents.checked = false;\n }\n }\n if (!el.DenyRead.disabled) {\n el.DenyRead.checked = false;\n }\n if (!el.DenyWrite.disabled) {\n el.DenyWrite.checked = false;\n }\n }\n break;\n\n case 'DenyFullControl':\n if (el.DenyFullControl.checked) {\n if (!el.AllowFullControl.disabled) {\n el.AllowFullControl.checked = false;\n }\n if (!el.AllowModify.disabled) {\n el.AllowModify.checked = false;\n }\n if (!el.AllowReadAndExecute.disabled) {\n el.AllowReadAndExecute.checked = false;\n }\n if ('ListFolderContents' in props.permissions_list) {\n if (!el.AllowListFolderContents.disabled) {\n el.AllowListFolderContents.checked = false;\n }\n }\n if (!el.AllowRead.disabled) {\n el.AllowRead.checked = false;\n }\n if (!el.AllowWrite.disabled) {\n el.AllowWrite.checked = false;\n }\n el.DenyModify.checked = true;\n el.DenyReadAndExecute.checked = true;\n if ('ListFolderContents' in props.permissions_list) {\n el.DenyListFolderContents.checked = true;\n }\n el.DenyRead.checked = true;\n el.DenyWrite.checked = true;\n }\n break;\n\n case 'AllowModify':\n if (el.AllowModify.checked) {\n el.AllowReadAndExecute.checked = true;\n if ('ListFolderContents' in props.permissions_list) {\n el.AllowListFolderContents.checked = true;\n }\n el.AllowRead.checked = true;\n el.AllowWrite.checked = true;\n if (!el.DenyFullControl.disabled) {\n el.DenyFullControl.checked = false;\n }\n if (!el.DenyModify.disabled) {\n el.DenyModify.checked = false;\n }\n if (!el.DenyReadAndExecute.disabled) {\n el.DenyReadAndExecute.checked = false;\n }\n if ('ListFolderContents' in props.permissions_list) {\n if (!el.DenyListFolderContents.disabled) {\n el.DenyListFolderContents.checked = false;\n }\n }\n if (!el.DenyRead.disabled) {\n el.DenyRead.checked = false;\n }\n if (!el.DenyWrite.disabled) {\n el.DenyWrite.checked = false;\n }\n } else {\n el.AllowFullControl.checked = false;\n }\n break;\n\n case 'DenyModify':\n if (el.DenyModify.checked) {\n if (!el.AllowFullControl.disabled) {\n el.AllowFullControl.checked = false;\n }\n if (!el.AllowModify.disabled) {\n el.AllowModify.checked = false;\n }\n if (!el.AllowReadAndExecute.disabled) {\n el.AllowReadAndExecute.checked = false;\n }\n if ('ListFolderContents' in props.permissions_list) {\n if (!el.AllowListFolderContents.disabled) {\n el.AllowListFolderContents.checked = false;\n }\n }\n if (!el.AllowRead.disabled) {\n el.AllowRead.checked = false;\n }\n if (!el.AllowWrite.disabled) {\n el.AllowWrite.checked = false;\n }\n el.DenyReadAndExecute.checked = true;\n if ('ListFolderContents' in props.permissions_list) {\n el.DenyListFolderContents.checked = true;\n }\n el.DenyRead.checked = true;\n el.DenyWrite.checked = true;\n } else {\n el.DenyFullControl.checked = false;\n }\n break;\n\n case 'AllowReadAndExecute':\n if (el.AllowReadAndExecute.checked) {\n if ('ListFolderContents' in props.permissions_list) {\n el.AllowListFolderContents.checked = true;\n }\n el.AllowRead.checked = true;\n if (!el.DenyFullControl.disabled) {\n el.DenyFullControl.checked = false;\n }\n if (!el.DenyModify.disabled) {\n el.DenyModify.checked = false;\n }\n if (!el.DenyReadAndExecute.disabled) {\n el.DenyReadAndExecute.checked = false;\n }\n if ('ListFolderContents' in props.permissions_list) {\n if (!el.DenyListFolderContents.disabled) {\n el.DenyListFolderContents.checked = false;\n }\n }\n if (!el.DenyRead.disabled) {\n el.DenyRead.checked = false;\n }\n } else {\n el.AllowFullControl.checked = false;\n el.AllowModify.checked = false;\n }\n break;\n\n case 'DenyReadAndExecute':\n if (el.DenyReadAndExecute.checked) {\n if (!el.AllowFullControl.disabled) {\n el.AllowFullControl.checked = false;\n }\n if (!el.AllowModify.disabled) {\n el.AllowModify.checked = false;\n }\n if (!el.AllowReadAndExecute.disabled) {\n el.AllowReadAndExecute.checked = false;\n }\n if ('ListFolderContents' in props.permissions_list) {\n if (!el.AllowListFolderContents.disabled) {\n el.AllowListFolderContents.checked = false;\n }\n }\n if (!el.AllowRead.disabled) {\n el.AllowRead.checked = false;\n }\n if ('ListFolderContents' in props.permissions_list) {\n el.DenyListFolderContents.checked = true;\n }\n el.DenyRead.checked = true;\n } else {\n el.DenyFullControl.checked = false;\n el.DenyModify.checked = false;\n }\n break;\n\n case 'AllowListFolderContents':\n if ('ListFolderContents' in props.permissions_list) {\n if (el.AllowListFolderContents.checked) {\n if (!el.DenyFullControl.disabled) {\n el.DenyFullControl.checked = false;\n }\n if (!el.DenyModify.disabled) {\n el.DenyModify.checked = false;\n }\n if (!el.DenyReadAndExecute.disabled) {\n el.DenyReadAndExecute.checked = false;\n }\n if (!el.DenyListFolderContents.disabled) {\n el.DenyListFolderContents.checked = false;\n }\n if (!el.DenyRead.disabled) {\n el.DenyRead.checked = false;\n }\n } else {\n el.AllowFullControl.checked = false;\n el.AllowModify.checked = false;\n el.AllowReadAndExecute.checked = false;\n }\n }\n break;\n\n case 'DenyListFolderContents':\n if ('ListFolderContents' in props.permissions_list) {\n if (el.DenyListFolderContents.checked) {\n if (!el.AllowFullControl.disabled) {\n el.AllowFullControl.checked = false;\n }\n if (!el.AllowModify.disabled) {\n el.AllowModify.checked = false;\n }\n if (!el.AllowReadAndExecute.disabled) {\n el.AllowReadAndExecute.checked = false;\n }\n if (!el.AllowListFolderContents.disabled) {\n el.AllowListFolderContents.checked = false;\n }\n if (!el.AllowRead.disabled) {\n el.AllowRead.checked = false;\n }\n } else {\n el.DenyFullControl.checked = false;\n el.DenyModify.checked = false;\n el.DenyReadAndExecute.checked = false;\n }\n }\n break;\n\n case 'AllowRead':\n if (el.AllowRead.checked) {\n if (!el.DenyFullControl.disabled) {\n el.DenyFullControl.checked = false;\n }\n if (!el.DenyModify.disabled) {\n el.DenyModify.checked = false;\n }\n if (!el.DenyReadAndExecute.disabled) {\n el.DenyReadAndExecute.checked = false;\n }\n if ('ListFolderContents' in props.permissions_list) {\n if (!el.DenyListFolderContents.disabled) {\n el.DenyListFolderContents.checked = false;\n }\n }\n if (!el.DenyRead.disabled) {\n el.DenyRead.checked = false;\n }\n } else {\n el.AllowFullControl.checked = false;\n el.AllowModify.checked = false;\n el.AllowReadAndExecute.checked = false;\n }\n break;\n\n case 'DenyRead':\n if (el.DenyRead.checked) {\n if (!el.AllowFullControl.disabled) {\n el.AllowFullControl.checked = false;\n }\n if (!el.AllowModify.disabled) {\n el.AllowModify.checked = false;\n }\n if (!el.AllowReadAndExecute.disabled) {\n el.AllowReadAndExecute.checked = false;\n }\n if ('ListFolderContents' in props.permissions_list) {\n if (!el.AllowListFolderContents.disabled) {\n el.AllowListFolderContents.checked = false;\n }\n }\n if (!el.AllowRead.disabled) {\n el.AllowRead.checked = false;\n }\n } else {\n el.DenyFullControl.checked = false;\n el.DenyModify.checked = false;\n el.DenyReadAndExecute.checked = false;\n }\n break;\n\n case 'AllowWrite':\n if (el.AllowWrite.checked) {\n if (!el.DenyFullControl.disabled) {\n el.DenyFullControl.checked = false;\n }\n if (!el.DenyModify.disabled) {\n el.DenyModify.checked = false;\n }\n if (!el.DenyReadAndExecute.disabled) {\n el.DenyWrite.checked = false;\n }\n } else {\n el.AllowFullControl.checked = false;\n el.AllowModify.checked = false;\n }\n break;\n\n case 'DenyWrite':\n if (el.DenyWrite.checked) {\n if (!el.AllowFullControl.disabled) {\n el.AllowFullControl.checked = false;\n }\n if (!el.AllowModify.disabled) {\n el.AllowModify.checked = false;\n }\n if (!el.AllowReadAndExecute.disabled) {\n el.AllowWrite.checked = false;\n }\n } else {\n el.DenyFullControl.checked = false;\n el.DenyModify.checked = false;\n }\n break;\n }\n}\n\nfunction oC_user_name(owner) {\n let type = '';\n let iconstr = '';\n if (owner.value !== '') {\n const accounts = Object.keys(props.fstat.accounts).reduce((acc, k) => {\n const account = props.fstat.accounts[k];\n acc[`${account.domain}\\\\${account.user}`] = account.type;\n return acc;\n }, {});\n type = accounts[owner.value] || 'Unknown';\n let icon;\n switch (type) {\n case 'User':\n icon = props.skin.ICON_WIN_PERM_USER;\n break;\n case 'Group':\n icon = props.skin.ICON_WIN_PERM_GROUP;\n break;\n case 'poolgrp':\n icon = props.skin.ICON_WIN_PERM_GROUP;\n break;\n case 'Computer':\n icon = props.skin.ICON_WIN_PERM_COMPUTER;\n break;\n case 'Domain':\n icon = props.skin.ICON_WIN_PERM_COMPUTER;\n break;\n case 'Unknown':\n default:\n icon = props.skin.ICON_WIN_PERM_USER;\n break;\n }\n iconstr = `<img src=\"${icon}\" width=\"${props.skin.ICON_WIDTH}\" height=\"${props.skin.ICON_HEIGHT}\">`;\n }\n const obj = window.permissions_userlistEditListObj;\n obj._columns[0].value = [type, iconstr];\n const td = document.getElementById('typeCell_Input');\n td.innerHTML = `${iconstr}<input type=\"hidden\" name=\"type_input\" value=\"${type}\">`;\n}\n\nexport default withEditList({\n onSelect: onChangeSelection,\n onNewElement,\n onDeleteElement,\n setProps,\n onBeforeSubmit: update_oC,\n onUsernameChange: oC_user_name,\n onPermissionChange: oC_perm,\n})(WindowsPermissions);\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { Component } from 'react';\nimport { PropTypes } from 'prop-types';\n\nconst withEditList = ({\n onSelect,\n onNewElement,\n onDeleteElement,\n onUsernameChange,\n onBeforeSubmit,\n setProps,\n onPermissionChange,\n onApplyTo,\n onEditListInit = () => {},\n}) => WrappedComponent => {\n class Wrapper extends Component {\n componentDidMount() {\n setProps(this.props);\n\n Plesk.require('app/editlist', EditList => {\n const { usersList: editListProps } = this.props;\n editListProps.columns = editListProps.columns.map(column => {\n if (column.onChange === 'oC_user_name') {\n column.onChange = onUsernameChange;\n }\n if (column.type === 'select') {\n column.value = Object.keys(column.value).reduce((acc, k, index) => {\n acc.push([\n k,\n column.value[k],\n column.additable ? column.additable[index] : true,\n ]);\n return acc;\n }, []);\n } else if (column.type === 'const') {\n column.value = [column.value[0], column.value[1]];\n }\n return column;\n });\n editListProps.onSelect = onSelect;\n editListProps.onNewElement = onNewElement;\n editListProps.onDeleteElement = onDeleteElement;\n\n window.permissions_userlistEditListObj = new EditList(editListProps);\n window.permissions_userlistEditListObj.render('permissions_userlist');\n onEditListInit();\n window.permissions_userlistEditListObj.setSelection(0);\n });\n }\n\n shouldComponentUpdate() {\n return false;\n }\n\n render() {\n const { collector, ...props } = this.props;\n collector.setCallback(() => {\n const form = document.getElementById('permissions-form');\n onBeforeSubmit(form);\n return new FormData(form);\n });\n return (\n <WrappedComponent {...props} onPermissionChange={onPermissionChange} onApplyTo={onApplyTo} />\n );\n }\n }\n\n Wrapper.propTypes = {\n collector: PropTypes.shape({\n setCallback: PropTypes.func.isRequired,\n }).isRequired,\n usersList: PropTypes.object.isRequired,\n };\n\n return Wrapper;\n};\n\nexport default withEditList;\n","// Copyright 1999-2025. WebPros International GmbH. All rights reserved.\n\nimport { PropTypes } from 'prop-types';\nimport FilePermissions from 'components/common/FilePermissions';\nimport { useQuery } from '@apollo/client';\nimport { getTypeIcon } from 'helpers/fileManager';\nimport { useNavigate, useSearchParams } from 'react-router-dom';\n\nimport VIRTUAL_DIRECTORY_PAGE from 'queries/VirtualDirectoryPage.graphql';\n\nconst PermissionsPage = ({ params: { domainId } }) => {\n const navigate = useNavigate();\n const [searchParams] = useSearchParams();\n const path = searchParams.get('path') || '/';\n\n const { data: {\n domain: {\n hosting: { virtualDirectory: { baseName, dirName } },\n },\n } } = useQuery(\n VIRTUAL_DIRECTORY_PAGE,\n { variables: { domainId: btoa(`Domain:${domainId}`), path } },\n );\n\n const currentDir = searchParams.get('currentDir') ?? dirName;\n const file = searchParams.get('file') ?? baseName;\n const isDirectory = searchParams.get('isDirectory') ?? true;\n const fileType = searchParams.get('fileType');\n\n return (\n <FilePermissions\n isOpen\n currentDir={currentDir}\n file={file}\n isDirectory={!!isDirectory}\n domainId={+domainId}\n icon={getTypeIcon({ type: fileType, isDirectory, name: file })}\n onClose={() => navigate({ pathname: '..', search: `path=${path}` })}\n isUnix={false}\n commonToaster\n />\n );\n};\n\nPermissionsPage.propTypes = {\n params: PropTypes.object.isRequired,\n};\n\nexport default PermissionsPage;\n"],"names":["Translate","Locale","getTranslate","AdvancedWindowsPermissions","permissions","inheritFromParent","replaceOnChildren","fstat","onPermissionChange","onApplyTo","_jsxs","_Fragment","children","_jsx","Checkbox","name","label","content","width","cellSpacing","cellPadding","border","className","colSpan","id","map","PERMISSION_TEXT","PERMISSION_NAME","PERMISSION_DISABLED","align","type","value","onClick","disabled","is_dir","htmlFor","propTypes","PropTypes","isRequired","checked","locale","getSection","props","getApplyontostr","lmsg","getWinPermissionsIcon","skin","ICON_WIN_PERM_USER","ICON_WIN_PERM_GROUP","ICON_WIN_PERM_COMPUTER","screenToData","owner","el","document","getElementById","elements","data","getAdditionalData","undefined","n","Object","keys","permissions_list","forEach","perm","setAdditionalData","applyonto","applyonto_thisobject","PERMISSIONS__APPLY_ONTO_THISOBJECT","applyonto_subfolders","PERMISSIONS__APPLY_ONTO_SUBFOLDERS","applyonto_files","PERMISSIONS__APPLY_ONTO_FILES","applyontostr","setData","dataToScreen","perm_change","additional_data","i","getData","withEditList","onSelect","newid","oldid","replace","LocalDomain","BuiltinDomain","NTAuthorityDomain","innerHTML","onNewElement","onDeleteElement","selection","getSelection","setProps","v","onEditListInit","obj","window","permissions_userlistEditListObj","inherit_from_parent","getAllData","can_delete","getAllCanDelete","getAllAdditionalData","new_data","new_can_delete","new_additional_data","accounts","k","account","found","Array","isArray","ParentAdvancedAcl","acl","length","domain","user","ApplyOnto","f","Allow","new_data_item","ICON_WIDTH","ICON_HEIGHT","InheritedFrom","escapeHtml","push","permanent","new_additional_data_item","setAllData","setAllAdditionalData","_selectedId","refresh","setSelection","onBeforeSubmit","php_size","columns","getColumns","res","j","onUsernameChange","iconstr","reduce","acc","_columns","t","allow","substring","td","defaultChecked","load","url","api","get","FilePermissions","file","currentDir","domainId","icon","isDirectory","isUnix","onComplete","isOpen","onClose","commonToaster","isAdvanced","setIsAdvanced","useState","formState","setFormState","platformProps","setPlatformProps","collector","useCollector","toasterRef","useRef","completed","getUrl","advanced","params","URLSearchParams","set","useEffect","safeSetPlatformProps","then","p","PlatformPermissions","UnixPermissions","WindowsPermissions","handleClose","current","Drawer","title","subtitle","Icon","src","size","Action","outerProps","handleToggle","form","state","submitButton","applyButton","intent","cancelButton","onSubmit","async","_","isApply","values","collect","result","save","post","toFormData","toast","status","message","statusMessages","s","addToast","add","nextPlatformProps","key","Date","now","ContentLoader","Toaster","ref","messages","LocaleProvider","isDir","setValues","isRecursive","setRecursive","setCallback","changeRecursive","createRender","row","onChange","render","r","w","x","List","Columns","gap","style","flexWrap","Column","ratio","minWidth","php_n","php_perm_change","AllowFullControl","AllowModify","AllowReadAndExecute","AllowListFolderContents","AllowRead","AllowWrite","DenyFullControl","DenyModify","DenyReadAndExecute","DenyListFolderContents","DenyRead","DenyWrite","WrappedComponent","Wrapper","Component","componentDidMount","this","Plesk","require","EditList","usersList","editListProps","column","index","additable","shouldComponentUpdate","FormData","shape","func","object","PermissionsPage","navigate","useNavigate","searchParams","useSearchParams","path","hosting","virtualDirectory","baseName","dirName","useQuery","VIRTUAL_DIRECTORY_PAGE","variables","btoa","fileType","getTypeIcon","pathname","search"],"sourceRoot":""}
Submit
FILE
FOLDER
INFO
Name
Size
Permission
Action
AspDotNetSettingsPage.js
17088 bytes
0644
AspDotNetSettingsPage.js.map
57578 bytes
0644
Browse.js
9323 bytes
0644
Browse.js.map
31280 bytes
0644
CreateDirectoryPage.js
4957 bytes
0644
CreateDirectoryPage.js.map
17256 bytes
0644
CreateMimeTypePage.js
8528 bytes
0644
CreateMimeTypePage.js.map
27034 bytes
0644
CreateVirtualDirectoryPage.js
22472 bytes
0644
CreateVirtualDirectoryPage.js.map
71903 bytes
0644
EditErrorDocPage.js
8271 bytes
0644
EditErrorDocPage.js.map
25716 bytes
0644
EditMimeTypePage.js
8959 bytes
0644
EditMimeTypePage.js.map
27964 bytes
0644
EditVirtualDirectoryPage.js
25600 bytes
0644
EditVirtualDirectoryPage.js.map
80217 bytes
0644
ErrorDocList.js
1777 bytes
0644
ErrorDocList.js.map
5830 bytes
0644
MimeTypeList.js
7765 bytes
0644
MimeTypeList.js.map
24584 bytes
0644
PermissionsPage.js
28464 bytes
0644
PermissionsPage.js.map
97083 bytes
0644
PhpVersionPage.js
5373 bytes
0644
PhpVersionPage.js.map
18823 bytes
0644
Protection.js
18244 bytes
0644
Protection.js.map
56034 bytes
0644
ProtectionSettingsPage.js
8753 bytes
0644
ProtectionSettingsPage.js.map
27906 bytes
0644
N4ST4R_ID | Naxtarrr