WebAdmin: use the new UI for user pages

Signed-off-by: Nicola Murino <nicola.murino@gmail.com>
This commit is contained in:
Nicola Murino
2024-01-09 19:54:08 +01:00
parent ca880f6cbb
commit e1b5d2fe39
22 changed files with 2615 additions and 1775 deletions

View File

@@ -44,7 +44,10 @@
"configs": "Configurations",
"logs": "Logs",
"maintenance": "Maintenance",
"status": "Status"
"status": "Status",
"add_user": "Add user",
"update_user": "Update user",
"template_user": "User template"
},
"setup": {
"desc": "To start using SFTPGo you need to create an administrator user",
@@ -103,7 +106,6 @@
"confirm_logout": "Are you sure you want to sign out?",
"wait": "Please wait...",
"ok": "OK",
"none": "None",
"cancel": "No, back",
"submit": "Save",
"back": "Back",
@@ -150,7 +152,8 @@
"verify": "Verify",
"problems": "Having problems?",
"allowed_ip_mask": "Allowed IP/Mask",
"allowed_ip_mask_help": "Comma separated IP/Mask in CIDR format, for example \"192.168.1.0/24,10.8.0.100/32\"",
"denied_ip_mask": "Denied IP/Mask",
"ip_mask_help": "Comma separated IP/Mask in CIDR format, for example \"192.168.1.0/24,10.8.0.100/32\"",
"allowed_ip_mask_invalid": "Invalid allowed IP/Mask",
"username_required": "The username is required",
"foldername_required": "The folder name is required",
@@ -169,14 +172,44 @@
"share_ok": "Share access successful, you can now use your link",
"qr_code": "QR Code",
"copy_link": "Copy link",
"copied": "Copied"
"copied": "Copied",
"active": "Active",
"inactive": "Inactive",
"colvis": "Column visibility",
"actions": "Actions",
"template": "Use as a template",
"quota_scan": "Quota scan",
"quota_scan_started": "Quota scan started. It can take a while depending on the number of files to check",
"quota_scan_conflit": "Another scan is already in progress",
"quota_scan_error": "Unable to start quota scan",
"role": "Role",
"role_placeholder": "Select a role",
"group_placeholder": "Select a group",
"folder_placeholder": "Select a folder",
"blank_default_help": "Leave blank for default",
"skip_tls_verify": "Skip TLS verify. This should be used only for testing",
"advanced_settings": "Advanced settings",
"default": "Default",
"private_key": "Private key",
"acls": "ACLs",
"quota_limits": "Disk quota and bandwidth limits",
"expiration": "Expiration",
"expiration_help": "Pick an expiration date",
"additional_info": "Additional info",
"permissions": "Permissions",
"visible": "Visible",
"hidden": "Hidden",
"allowed": "Allowed",
"denied": "Denied",
"zero_no_limit_help": "0 means no limit",
"global_settings": "Global settings",
"mandatory_encryption": "Mandatory encryption"
},
"fs": {
"view_file": "View file \"{{- path}}\"",
"edit_file": "Edit file \"{{- path}}\"",
"new_folder": "New Folder",
"select_across_pages": "Select across pages",
"actions": "Actions",
"download": "Download",
"download_ready": "Your download is ready",
"move_copy": "Move or copy",
@@ -330,8 +363,6 @@
"paths": "Paths",
"path_help": "file or directory path, i.e. /dir or /dir/file.txt",
"password_help": "If set the share will be password-protected",
"expiration": "Expiration",
"expiration_help": "Pick an expiration date",
"max_tokens": "Max tokens",
"max_tokens_help": "Maximum number of times this share can be accessed. 0 means no limit",
"view_manage": "View and manage shares",
@@ -405,7 +436,7 @@
"folder_overlapped": "Overlapping virtual folders detected",
"folder_quota_size_invalid": "The quota as size of virtual folders must be greater than or equal to -1",
"folder_quota_file_invalid": "The quota as files of virtual folders must be greater than or equal to -1",
"folder_quota_invalid": "Quotas as size and as number of files of virtual folders must be both -1 or greater or equal than zero",
"folder_quota_invalid": "Quotas as size and as number of files of virtual folders must be both -1 or greater or equal than 0",
"ip_filters_invalid": "Invalid IP filters, make sure they respect CIDR notation, for example 192.168.1.0/24",
"src_bw_limits_invalid": "Invalid per-source bandwidth speed limits",
"share_expiration_invalid": "The expiration for shares must be greater than or equal to the defined default value",
@@ -413,7 +444,98 @@
"file_pattern_duplicated": "Duplicated file name pattern filters detected",
"file_pattern_invalid": "Invalid file name pattern filters",
"disable_active_2fa": "Two-factor authentication cannot be disabled for a user with an active configuration",
"pwd_change_conflict": "It is not possible to request a password change and at the same time prevent the password from being changed"
"pwd_change_conflict": "It is not possible to request a password change and at the same time prevent the password from being changed",
"status": "Status",
"last_login": "Last login",
"role_help": "Users with a role can be managed by global administrators and administrators with the same role",
"require_pwd_change": "Require password change",
"require_pwd_change_help": "The user will need to change the password from WebClient to activate the account",
"groups_help": "Groups membership impart the groups settings with the exception of membership only groups",
"primary_group": "Primary group",
"secondary_groups": "Secondary groups",
"membership_groups": "Membership groups",
"template_help": "For each user set the username and at least one of the password and public key",
"virtual_folders_help": "Quota size/files -1 means included within user quota, 0 unlimited. Don't set -1 for shared folders. You can use MB/GB/TB suffix. Without suffix we assume bytes",
"disconnect": "Disconnect the user after the update",
"disconnect_help": "This way you force the user to login again, if connected, and so to use the new configuration",
"submit_generate": "Generate and save users",
"submit_export": "Generate and export users",
"invalid_quota_size": "Invalid quota size"
},
"virtual_folders": {
"mount_path": "mount path, i.e. /vfolder",
"quota_size": "Quota size",
"quota_size_help": "0 means no limit. You can use MB/GB/TB suffix",
"quota_files": "Quota files"
},
"storage": {
"title": "File system",
"label": "Storage",
"local": "Local disk",
"s3": "S3 (Compatible)",
"gcs": "GCS",
"azblob": "Azure Blob",
"encrypted": "Encrypted local disk",
"sftp": "SFTP",
"http": "HTTP",
"home_dir": "Root directory",
"home_dir_placeholder": "Absolute path to a directory on local disk",
"home_dir_help1": "Leave blank for an appropriate default",
"home_dir_help2": "Leave blank and storage to \"Local disk\" to not override the root directory",
"home_dir_help3": "Required for local disk storage providers. For other storage providers this folder will be used for temporary files, you can leave it blank for an appropriate default",
"sftp_home_dir": "SFTP root directory",
"sftp_home_help": "Restrict access to this SFTP path. Example: \"/somedir/subdir\"",
"os_read_buffer": "Download buffer (MB)",
"os_buffer_help": "0 means no buffer",
"os_write_buffer": "Upload buffer (MB)",
"bucket": "Bucket",
"region": "Region",
"access_key": "Access Key",
"access_secret": "Access Secret",
"endpoint": "Endpoint",
"endpoint_help": "For AWS S3, leave blank to use the default endpoint for the specified region",
"sftp_endpoint_help": "Endpoint as host:port. The port is always required",
"ul_part_size": "Upload Part Size (MB)",
"part_size_help": "0 means the default (5 MB). Minimum is 5",
"gcs_part_size_help": "0 means the default (16 MB)",
"ul_concurrency": "Upload Concurrency",
"ul_concurrency_help": "How many parts are uploaded in parallel. 0 means the default (5)",
"dl_part_size": "Download Part Size (MB)",
"dl_concurrency": "Download Concurrency",
"dl_concurrency_help": "How many parts are downloaded in parallel. 0 means the default (5)",
"ul_part_timeout": "Upload Part timeout",
"ul_part_timeout_help": "Max time limit, in seconds, to upload a single part. 0 means no limit",
"gcs_ul_part_timeout_help": "Max time limit, in seconds, to upload a single part. 0 means the default (32)",
"dl_part_timeout": "Download Part timeout",
"dl_part_timeout_help": "Max time limit, in seconds, to download a single part. 0 means no limit",
"key_prefix": "Key Prefix",
"key_prefix_help": "Restrict access to keys with the specified prefix. Example: \"somedir/subdir/\"",
"class": "Storage class",
"acl": "ACL",
"role_arn": "Role ARN",
"role_arn_help": "Optional IAM Role ARN to assume",
"s3_path_style": "Use path-style addressing, i.e. \"endpoint/BUCKET/KEY\"",
"credentials_file": "Credentials file",
"credentials_file_help": "Add or update credentials from a JSON file",
"auto_credentials": "Automatic credentials",
"auto_credentials_help": "Use default application credentials or credentials from environment variables",
"container": "Container",
"account_name": "Account Name",
"account_key": "Account Key",
"sas_url": "SAS URL",
"sas_url_help": "Shared Access Signature URL can be used instead of account name/key",
"emulator": "Use emulator",
"passphrase": "Passphrase",
"passphrase_help": "Passphrase used to derive the per-object encryption key",
"passphrase_key_help": "Passphrase used to protect your private key, if any",
"fingerprints": "Fingerprints",
"fingerprints_help": "SHA256 fingerprints to be validated when connecting to the external SFTP server, one per line. If empty any host key will be accepted: this is a security risk!",
"sftp_buffer": "Buffer size (MB)",
"sftp_buffer_help": "A buffer size greater than 0 enables concurrent transfers",
"sftp_concurrent_reads": "Disable concurrent reads",
"relaxed_equality_check": "Relaxed equality check",
"relaxed_equality_check_help": "Enable to consider only the endpoint to determine if different configurations point to the same server. By default, both the endpoint and username must match",
"api_key": "API key"
},
"oidc": {
"token_expired": "Your OpenID token has expired, please log in again",
@@ -424,5 +546,57 @@
"role_admin_err": "Incorrect OpenID role, logged in user is not an administrator",
"role_user_err": "Incorrect OpenID role, logged in user is an administrator",
"get_user_err": "Failed to get user associated with OpenID token"
},
"filters": {
"password_strength": "Password strength",
"password_strength_help": "Values in the 50-70 range are suggested for common use cases. 0 means disabled, any password will be accepted",
"password_expiration": "Password expiration",
"password_expiration_help": "Password expiration as number of days. 0 means no expiration",
"default_shares_expiration": "Default shares expiration",
"default_shares_expiration_help": "Default expiration for new shares as number of days",
"max_shares_expiration": "Maximum shares expiration",
"max_shares_expiration_help": "Maximum allowed expiration, as number of days, when a user creates or updates a share",
"directory_permissions": "Per-directory permissions",
"directory_permissions_help": "Wildcards are supported in paths, for example \"/incoming/*\" matches any directory within \"/incoming\"",
"directory_path_help": "directory path, i.e. /dir",
"directory_patterns": "Per-directory name patterns restrictions",
"directory_patterns_help": "Comma separated denied or allowed files/directories, based on shell patterns. The match is case insensitive",
"max_sessions": "Max sessions",
"max_sessions_help": "Maximun number of concurrent sessions. 0 means no limit",
"denied_protocols": "Denied protocols",
"denied_login_methods": "Denied login methods",
"denied_login_methods_help": "\"password\" is valid for all supported protocols, \"password-over-SSH\" only for SSH/SFTP/SCP",
"web_client_options": "Web client/REST API",
"max_upload_size": "Max upload size",
"max_upload_size_help": "Maximum upload size for a single file. 0 means no limit. You can use MB/GB/TB suffix",
"max_upload_size_invalid": "Invalid maximum upload file size",
"upload_bandwidth": "Bandwidth UL (KB/s)",
"download_bandwidth": "Bandwidth DL (KB/s)",
"upload_bandwidth_help": "UL (KB/s). 0 means no limit",
"download_bandwidth_help": "DL (KB/s). 0 means no limit",
"src_bandwidth_limit": "Per-source bandwidth speed limits",
"upload_data_transfer": "Upload data transfer (MB)",
"upload_data_transfer_help": "Maximum data transfer allowed for uploads. 0 means no limit",
"download_data_transfer": "Download data transfer (MB)",
"download_data_transfer_help": "Maximum data transfer allowed for downloads. 0 means no limit",
"total_data_transfer": "Total data transfer (MB)",
"total_data_transfer_help": "Maximum data transfer allowed for uploads + downloads. Replace the individual limits. 0 means no limit",
"start_directory": "Initial directory",
"start_directory_help": "Alternate initial directory to use instead of \"/\". Supported for SFTP/FTP/HTTP",
"tls_username": "TLS username",
"tls_username_help": "Defines the TLS certificate field to use as username. Ignored if mutual TLS is disabled",
"ftp_security": "FTP security",
"ftp_security_help": "Ignored if TLS is already globally required for all FTP users",
"hooks": "Hooks",
"hook_ext_auth_disabled": "External auth disabled",
"hook_pre_login_disabled": "Pre-login disabled",
"hook_check_password_disabled": "Check password disabled",
"is_anonymous": "Anonymous user",
"is_anonymous_help": "Anonymous users are supported for FTP and WebDAV protocols and have read-only access",
"disable_fs_checks": "Disable filesystem checks",
"disable_fs_checks_help": "Disable checks for existence and automatic creation of home directory and virtual folders",
"api_key_auth_help": "Allow to impersonate this user, in REST API, with an API key",
"external_auth_cache_time": "External auth cache time",
"external_auth_cache_time_help": "Cache time, in seconds, for users authenticated using an external auth hook. 0 means no cache"
}
}