diff --git a/lang/af_ZA/admin/addressPools/addresses.php b/lang/af_ZA/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/af_ZA/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/af_ZA/admin/addressPools/index.php b/lang/af_ZA/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/af_ZA/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/en/admin/locations.php b/lang/af_ZA/admin/locations.php similarity index 72% rename from lang/en/admin/locations.php rename to lang/af_ZA/admin/locations.php index 35101b5579b..003ac84f5b8 100644 --- a/lang/en/admin/locations.php +++ b/lang/af_ZA/admin/locations.php @@ -2,8 +2,8 @@ return [ 'short_code' => 'Short Code', - 'new_location' => 'New Location', + 'create_location' => 'Create Location', 'create_modal' => [ 'title' => 'Create a Location', ], -]; \ No newline at end of file +]; diff --git a/lang/af_ZA/admin/nodes/addressPools.php b/lang/af_ZA/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/af_ZA/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/en/admin/nodes.php b/lang/af_ZA/admin/nodes/index.php similarity index 89% rename from lang/en/admin/nodes.php rename to lang/af_ZA/admin/nodes/index.php index e670f325cca..a5578d9aae9 100644 --- a/lang/en/admin/nodes.php +++ b/lang/af_ZA/admin/nodes/index.php @@ -1,7 +1,7 @@ 'New Node', + 'create_node' => 'Create Node', 'create_modal' => [ 'title' => 'Create a Node', ], @@ -9,9 +9,9 @@ 'location_group' => 'Location Group', 'pve_name' => 'Node Name In Proxmox', 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', 'token_id' => 'Token ID', 'secret' => 'Secret', - 'port' => 'Port', 'memory_allocation' => 'Memory Allocation', 'memory_overallocation' => 'Memory Overallocation', 'disk_allocation' => 'Disk Allocation', @@ -36,5 +36,5 @@ 'title' => 'Delete Node', 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', - ] -]; \ No newline at end of file + ], +]; diff --git a/lang/af_ZA/admin/nodes/isos.php b/lang/af_ZA/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/af_ZA/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/af_ZA/admin/nodes/settings.php b/lang/af_ZA/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/af_ZA/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/en/admin/servers.php b/lang/af_ZA/admin/servers/index.php similarity index 64% rename from lang/en/admin/servers.php rename to lang/af_ZA/admin/servers/index.php index c931972d585..f6f70933669 100644 --- a/lang/en/admin/servers.php +++ b/lang/af_ZA/admin/servers/index.php @@ -1,11 +1,15 @@ 'New Server', + 'create_server' => 'Create Server', 'backup_limit' => 'Backup Limit', 'bandwidth_limit' => 'Bandwidth Limit', - 'snapshots_limit' => 'Snapshots Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', 'create_modal' => [ 'title' => 'Create a Server', ], @@ -14,7 +18,7 @@ 'title' => 'Server Build', ], 'server_info' => [ - 'title' => 'Server Information' + 'title' => 'Server Information', ], 'suspension' => [ 'title' => 'Suspension', @@ -25,6 +29,7 @@ 'delete_server' => [ 'title' => 'Delete Server', 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', - 'dont_purge' => 'Do not purge VM and related files' - ] -]; \ No newline at end of file + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/af_ZA/admin/servers/overview.php b/lang/af_ZA/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/af_ZA/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/af_ZA/admin/servers/settings.php b/lang/af_ZA/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/af_ZA/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/en/admin/tokens.php b/lang/af_ZA/admin/tokens.php similarity index 75% rename from lang/en/admin/tokens.php rename to lang/af_ZA/admin/tokens.php index a3bf7187fa0..cb593cb9823 100644 --- a/lang/en/admin/tokens.php +++ b/lang/af_ZA/admin/tokens.php @@ -2,11 +2,11 @@ return [ 'create_modal' => [ - 'title' => 'Create a Token' + 'title' => 'Create a Token', ], 'created_modal' => [ 'title' => 'Token Created', 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', - 'button' => 'Okay, I copied it' - ] -]; \ No newline at end of file + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/en/admin/users.php b/lang/af_ZA/admin/users.php similarity index 79% rename from lang/en/admin/users.php rename to lang/af_ZA/admin/users.php index 493f25fbf07..99229783270 100644 --- a/lang/en/admin/users.php +++ b/lang/af_ZA/admin/users.php @@ -4,15 +4,15 @@ 'new_user' => 'New User', 'create_modal' => [ 'title' => 'Create a User', - 'is_admin_warning' => 'You are giving this user administrative privileges.' + 'is_admin_warning' => 'You are giving this user administrative privileges.', ], 'user_info' => [ 'title' => 'User Information', - 'override_pass' => 'Override password' + 'override_pass' => 'Override password', ], 'delete_user' => [ 'title' => 'Delete User', 'description' => 'The user and its associated data will be deleted.', - 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.' - ] -]; \ No newline at end of file + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/en/auth.php b/lang/af_ZA/auth.php similarity index 100% rename from lang/en/auth.php rename to lang/af_ZA/auth.php diff --git a/lang/en/dashboard/index.php b/lang/af_ZA/dashboard/index.php similarity index 67% rename from lang/en/dashboard/index.php rename to lang/af_ZA/dashboard/index.php index 5cda3a35f52..63d3b525616 100644 --- a/lang/en/dashboard/index.php +++ b/lang/af_ZA/dashboard/index.php @@ -3,5 +3,5 @@ return [ 'show_all_servers' => 'Show all servers', 'no_servers_admin_empty_state' => 'There are no servers.', - 'no_servers_empty_state' => 'You have no servers.' -]; \ No newline at end of file + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/af_ZA/exceptions.php b/lang/af_ZA/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/af_ZA/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/en/pagination.php b/lang/af_ZA/pagination.php similarity index 100% rename from lang/en/pagination.php rename to lang/af_ZA/pagination.php diff --git a/lang/en/passwords.php b/lang/af_ZA/passwords.php similarity index 100% rename from lang/en/passwords.php rename to lang/af_ZA/passwords.php diff --git a/lang/en/server/backups.php b/lang/af_ZA/server/backups.php similarity index 83% rename from lang/en/server/backups.php rename to lang/af_ZA/server/backups.php index d83b0e8ad74..1d23c65bbe8 100644 --- a/lang/en/server/backups.php +++ b/lang/af_ZA/server/backups.php @@ -1,7 +1,7 @@ 'New Backup', + 'create_backup' => 'Create Backup', 'empty_state' => 'There are no backups', 'counter_tooltip' => 'You\'ve made :count out of :max backups', 'create_modal' => [ @@ -12,19 +12,19 @@ 'modes' => [ 'snapshot' => 'Snapshot', 'suspend' => 'Suspend', - 'kill' => 'Kill' - ] + 'kill' => 'Kill', + ], ], 'delete_modal' => [ - 'title' => 'Delete :name', + 'title' => 'Delete :name?', 'description' => 'Are you sure you want to delete this backup?', ], 'restore_modal' => [ - 'title' => 'Restore From :name', + 'title' => 'Restore From :name?', 'description' => 'Are you sure you want to restore from this backup?', ], 'notices' => [ 'backup_deleted' => 'Deleted :name', 'backup_restored' => 'Began restoring server from :name', - ] -]; \ No newline at end of file + ], +]; diff --git a/lang/en/server/overview.php b/lang/af_ZA/server/overview.php similarity index 86% rename from lang/en/server/overview.php rename to lang/af_ZA/server/overview.php index 8255f5fc49e..5973139941d 100644 --- a/lang/en/server/overview.php +++ b/lang/af_ZA/server/overview.php @@ -2,10 +2,10 @@ return [ 'power_actions' => [ - 'start' => 'Start', - 'restart' => 'Restart', - 'kill' => 'Kill', - 'shutdown' => 'Shutdown', + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', ], 'notices' => [ 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', @@ -33,6 +33,6 @@ 'server_config' => [ 'title' => 'Configure This Server', 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', - 'configure_server' => 'Configure Server' + 'configure_server' => 'Configure Server', ], -]; \ No newline at end of file +]; diff --git a/lang/en/server/settings.php b/lang/af_ZA/server/settings.php similarity index 90% rename from lang/en/server/settings.php rename to lang/af_ZA/server/settings.php index 98285b4e519..1564707efc3 100644 --- a/lang/en/server/settings.php +++ b/lang/af_ZA/server/settings.php @@ -2,7 +2,7 @@ return [ 'ip_allocation' => [ - 'empty_state' => 'There are no addresses associated with this server.' + 'empty_state' => 'There are no addresses associated with this server.', ], 'display_info' => [ 'title' => 'Server Name', @@ -10,10 +10,11 @@ 'reinstall' => [ 'title' => 'Reinstall Server', 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', 'modal' => [ 'title' => 'Confirm Reinstallation', 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', - ] + ], ], 'isos' => [ 'title' => 'Mountable ISOs', @@ -37,5 +38,5 @@ 'hardware' => [ 'bandwidth_used' => 'Bandwidth Used', 'bandwidth_alloted' => 'Bandwidth Alloted', - ] -]; \ No newline at end of file + ], +]; diff --git a/lang/en/strings.php b/lang/af_ZA/strings.php similarity index 66% rename from lang/en/strings.php rename to lang/af_ZA/strings.php index 5ce662e2b35..bff79ba100d 100644 --- a/lang/en/strings.php +++ b/lang/af_ZA/strings.php @@ -4,19 +4,31 @@ 'email' => 'Email', 'password' => 'Password', 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', 'name' => 'Name', 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', 'memory' => 'Memory', 'cpu' => 'CPU', 'disk' => 'Disk', 'general' => 'General', 'overview' => 'Overview', 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', 'owner' => 'Owner', 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', 'backup_one' => 'Backup', 'backup_other' => 'Backups', + 'setting' => 'Setting', 'setting_one' => 'Setting', 'setting_other' => 'Settings', 'search' => 'Search', @@ -25,7 +37,10 @@ 'suspended' => 'Suspended', 'network' => 'Network', 'ip' => 'IP Address', - 'address' => 'Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', 'gateway' => 'Gateway', 'mac_address' => 'Mac Address', 'none' => 'None', @@ -37,6 +52,8 @@ 'hostname' => 'Hostname', 'reinstall' => 'Reinstall', 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', 'template_group' => 'Template Group', 'system_os_password' => 'System OS Password', 'mount' => 'Mount', @@ -44,6 +61,7 @@ 'primary' => 'Primary', 'media' => 'Media', 'save' => 'Save', + 'ssh_key' => 'SSH Key', 'ssh_key_one' => 'SSH Key', 'ssh_key_other' => 'SSH Keys', 'version' => 'Version :version', @@ -55,7 +73,6 @@ 'delete' => 'Delete', 'hardware' => 'Hardware', 'status' => 'Status', - 'start_server_after_installing' => 'Start Server After Completing Installation', 'bandwidth_usage' => 'Bandwidth Usage', 'administrator' => 'Administrator', 'last_used' => 'Last Used', @@ -67,9 +84,27 @@ 'saving' => 'Saving...', 'saved' => 'Saved', 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', 'nameserver_one' => 'Nameserver', 'nameserver_other' => 'Nameservers', 'new' => 'New', 'add' => 'Add', 'authentication' => 'Authentication', -]; \ No newline at end of file + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/en/validation.php b/lang/af_ZA/validation.php similarity index 94% rename from lang/en/validation.php rename to lang/af_ZA/validation.php index 1f42585574b..09bf66a4d48 100644 --- a/lang/en/validation.php +++ b/lang/af_ZA/validation.php @@ -45,12 +45,16 @@ 'distinct' => 'The :attribute field has a duplicate value.', 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', 'email' => 'The :attribute must be a valid email address.', - 'hostname' => 'The :attribute must be a valid hostname.', 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', 'enum' => 'The selected :attribute is invalid.', 'exists' => 'The selected :attribute is invalid.', 'file' => 'The :attribute must be a file.', 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], 'gt' => [ 'array' => 'The :attribute must have more than :value items.', 'file' => 'The :attribute must be greater than :value kilobytes.', @@ -63,6 +67,7 @@ 'numeric' => 'The :attribute must be greater than or equal to :value.', 'string' => 'The :attribute must be greater than or equal to :value characters.', ], + 'hostname' => 'The :attribute must be a valid hostname.', 'image' => 'The :attribute must be an image.', 'in' => 'The selected :attribute is invalid.', 'in_array' => 'The :attribute field does not exist in :other.', @@ -103,6 +108,7 @@ 'not_regex' => 'The :attribute format is invalid.', 'numeric' => 'The :attribute must be a number.', 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', 'letters' => 'The :attribute must contain at least one letter.', 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', 'numbers' => 'The :attribute must contain at least one number.', @@ -134,6 +140,7 @@ 'string' => 'The :attribute must be a string.', 'timezone' => 'The :attribute must be a valid timezone.', 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', 'uploaded' => 'The :attribute failed to upload.', 'url' => 'The :attribute must be a valid URL.', 'uuid' => 'The :attribute must be a valid UUID.', diff --git a/lang/en/zod.php b/lang/af_ZA/zod.php similarity index 90% rename from lang/en/zod.php rename to lang/af_ZA/zod.php index 1f0f6965bed..1147122aa1e 100644 --- a/lang/en/zod.php +++ b/lang/af_ZA/zod.php @@ -1,8 +1,7 @@ - [ + 'errors' => [ 'invalid_type' => 'Expected {{expected}}, received {{received}}', 'invalid_type_received_undefined' => 'Required', 'invalid_literal' => 'Invalid literal value, expected {{expected}}', @@ -17,8 +16,7 @@ 'invalid_intersection_types' => 'Intersection results could not be merged', 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', 'not_finite' => 'Number must be finite', - 'invalid_string' => - [ + 'invalid_string' => [ 'email' => 'Invalid {{validation}}', 'url' => 'Invalid {{validation}}', 'uuid' => 'Invalid {{validation}}', @@ -31,76 +29,64 @@ 'english_keyboard_characters' => 'Invalid {{validation}}', 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', ], - 'too_small' => - [ - 'array' => - [ + 'too_small' => [ + 'array' => [ 'exact' => 'Array must contain exactly {{minimum}} element(s)', 'inclusive' => 'Array must contain at least {{minimum}} element(s)', 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', ], - 'string' => - [ + 'string' => [ 'exact' => 'String must contain exactly {{minimum}} character(s)', 'inclusive' => 'String must contain at least {{minimum}} character(s)', 'not_inclusive' => 'String must contain over {{minimum}} character(s)', ], - 'number' => - [ + 'number' => [ 'exact' => 'Number must be exactly {{minimum}}', 'inclusive' => 'Number must be greater than or equal to {{minimum}}', 'not_inclusive' => 'Number must be greater than {{minimum}}', ], - 'set' => - [ + 'set' => [ 'exact' => 'Invalid input', 'inclusive' => 'Invalid input', 'not_inclusive' => 'Invalid input', ], - 'date' => - [ + 'date' => [ 'exact' => 'Date must be exactly {{- minimum, datetime}}', 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', ], ], - 'too_big' => - [ - 'array' => - [ + 'too_big' => [ + 'array' => [ 'exact' => 'Array must contain exactly {{maximum}} element(s)', 'inclusive' => 'Array must contain at most {{maximum}} element(s)', 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', ], - 'string' => - [ + 'string' => [ 'exact' => 'String must contain exactly {{maximum}} character(s)', 'inclusive' => 'String must contain at most {{maximum}} character(s)', 'not_inclusive' => 'String must contain under {{maximum}} character(s)', ], - 'number' => - [ + 'number' => [ 'exact' => 'Number must be exactly {{maximum}}', 'inclusive' => 'Number must be less than or equal to {{maximum}}', 'not_inclusive' => 'Number must be less than {{maximum}}', ], - 'set' => - [ + 'set' => [ 'exact' => 'Invalid input', 'inclusive' => 'Invalid input', 'not_inclusive' => 'Invalid input', ], - 'date' => - [ + 'date' => [ 'exact' => 'Date must be exactly {{- maximum, datetime}}', 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', ], ], ], - 'validations' => - [ + 'validations' => [ 'email' => 'email', 'url' => 'url', 'uuid' => 'uuid', @@ -108,8 +94,7 @@ 'regex' => 'regex', 'datetime' => 'datetime', ], - 'types' => - [ + 'types' => [ 'function' => 'function', 'number' => 'number', 'string' => 'string', diff --git a/lang/ar_SA/admin/addressPools/addresses.php b/lang/ar_SA/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/ar_SA/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/ar_SA/admin/addressPools/index.php b/lang/ar_SA/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/ar_SA/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/ar_SA/admin/locations.php b/lang/ar_SA/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/ar_SA/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/ar_SA/admin/nodes/addressPools.php b/lang/ar_SA/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/ar_SA/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/ar_SA/admin/nodes/index.php b/lang/ar_SA/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/ar_SA/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/ar_SA/admin/nodes/isos.php b/lang/ar_SA/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/ar_SA/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/ar_SA/admin/nodes/settings.php b/lang/ar_SA/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/ar_SA/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/ar_SA/admin/servers/index.php b/lang/ar_SA/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/ar_SA/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/ar_SA/admin/servers/overview.php b/lang/ar_SA/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/ar_SA/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/ar_SA/admin/servers/settings.php b/lang/ar_SA/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/ar_SA/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/ar_SA/admin/tokens.php b/lang/ar_SA/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/ar_SA/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/ar_SA/admin/users.php b/lang/ar_SA/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/ar_SA/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/ar_SA/auth.php b/lang/ar_SA/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/ar_SA/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/ar_SA/dashboard/index.php b/lang/ar_SA/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/ar_SA/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/ar_SA/exceptions.php b/lang/ar_SA/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/ar_SA/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/ar_SA/pagination.php b/lang/ar_SA/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/ar_SA/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/ar_SA/passwords.php b/lang/ar_SA/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/ar_SA/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/ar_SA/server/backups.php b/lang/ar_SA/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/ar_SA/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/ar_SA/server/overview.php b/lang/ar_SA/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/ar_SA/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/ar_SA/server/settings.php b/lang/ar_SA/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/ar_SA/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/ar_SA/strings.php b/lang/ar_SA/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/ar_SA/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/ar_SA/validation.php b/lang/ar_SA/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/ar_SA/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/ar_SA/zod.php b/lang/ar_SA/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/ar_SA/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/ca_ES/admin/addressPools/addresses.php b/lang/ca_ES/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/ca_ES/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/ca_ES/admin/addressPools/index.php b/lang/ca_ES/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/ca_ES/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/ca_ES/admin/locations.php b/lang/ca_ES/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/ca_ES/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/ca_ES/admin/nodes/addressPools.php b/lang/ca_ES/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/ca_ES/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/ca_ES/admin/nodes/index.php b/lang/ca_ES/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/ca_ES/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/ca_ES/admin/nodes/isos.php b/lang/ca_ES/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/ca_ES/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/ca_ES/admin/nodes/settings.php b/lang/ca_ES/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/ca_ES/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/ca_ES/admin/servers/index.php b/lang/ca_ES/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/ca_ES/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/ca_ES/admin/servers/overview.php b/lang/ca_ES/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/ca_ES/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/ca_ES/admin/servers/settings.php b/lang/ca_ES/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/ca_ES/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/ca_ES/admin/tokens.php b/lang/ca_ES/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/ca_ES/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/ca_ES/admin/users.php b/lang/ca_ES/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/ca_ES/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/ca_ES/auth.php b/lang/ca_ES/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/ca_ES/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/ca_ES/dashboard/index.php b/lang/ca_ES/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/ca_ES/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/ca_ES/exceptions.php b/lang/ca_ES/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/ca_ES/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/ca_ES/pagination.php b/lang/ca_ES/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/ca_ES/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/ca_ES/passwords.php b/lang/ca_ES/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/ca_ES/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/ca_ES/server/backups.php b/lang/ca_ES/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/ca_ES/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/ca_ES/server/overview.php b/lang/ca_ES/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/ca_ES/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/ca_ES/server/settings.php b/lang/ca_ES/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/ca_ES/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/ca_ES/strings.php b/lang/ca_ES/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/ca_ES/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/ca_ES/validation.php b/lang/ca_ES/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/ca_ES/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/ca_ES/zod.php b/lang/ca_ES/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/ca_ES/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/cs_CZ/admin/addressPools/addresses.php b/lang/cs_CZ/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/cs_CZ/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/cs_CZ/admin/addressPools/index.php b/lang/cs_CZ/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/cs_CZ/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/cs_CZ/admin/locations.php b/lang/cs_CZ/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/cs_CZ/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/cs_CZ/admin/nodes/addressPools.php b/lang/cs_CZ/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/cs_CZ/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/cs_CZ/admin/nodes/index.php b/lang/cs_CZ/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/cs_CZ/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/cs_CZ/admin/nodes/isos.php b/lang/cs_CZ/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/cs_CZ/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/cs_CZ/admin/nodes/settings.php b/lang/cs_CZ/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/cs_CZ/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/cs_CZ/admin/servers/index.php b/lang/cs_CZ/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/cs_CZ/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/cs_CZ/admin/servers/overview.php b/lang/cs_CZ/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/cs_CZ/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/cs_CZ/admin/servers/settings.php b/lang/cs_CZ/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/cs_CZ/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/cs_CZ/admin/tokens.php b/lang/cs_CZ/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/cs_CZ/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/cs_CZ/admin/users.php b/lang/cs_CZ/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/cs_CZ/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/cs_CZ/auth.php b/lang/cs_CZ/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/cs_CZ/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/cs_CZ/dashboard/index.php b/lang/cs_CZ/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/cs_CZ/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/cs_CZ/exceptions.php b/lang/cs_CZ/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/cs_CZ/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/cs_CZ/pagination.php b/lang/cs_CZ/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/cs_CZ/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/cs_CZ/passwords.php b/lang/cs_CZ/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/cs_CZ/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/cs_CZ/server/backups.php b/lang/cs_CZ/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/cs_CZ/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/cs_CZ/server/overview.php b/lang/cs_CZ/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/cs_CZ/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/cs_CZ/server/settings.php b/lang/cs_CZ/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/cs_CZ/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/cs_CZ/strings.php b/lang/cs_CZ/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/cs_CZ/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/cs_CZ/validation.php b/lang/cs_CZ/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/cs_CZ/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/cs_CZ/zod.php b/lang/cs_CZ/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/cs_CZ/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/da_DK/admin/addressPools/addresses.php b/lang/da_DK/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/da_DK/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/da_DK/admin/addressPools/index.php b/lang/da_DK/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/da_DK/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/da_DK/admin/locations.php b/lang/da_DK/admin/locations.php new file mode 100644 index 00000000000..9a51e120720 --- /dev/null +++ b/lang/da_DK/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Opret en placeringer', + 'create_modal' => [ + 'title' => 'Opret en placeringer', + ], +]; diff --git a/lang/da_DK/admin/nodes/addressPools.php b/lang/da_DK/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/da_DK/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/da_DK/admin/nodes/index.php b/lang/da_DK/admin/nodes/index.php new file mode 100644 index 00000000000..ae9ebf8ab38 --- /dev/null +++ b/lang/da_DK/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Opret en node', + 'create_modal' => [ + 'title' => 'Opret en node', + ], + + 'location_group' => 'Placerings gruppe', + 'pve_name' => 'Node navn i Proxmox', + 'override_creds' => 'Overskriv legitimationsoplysninger', + 'creds_warning' => 'Deaktiver venligst privilegieadskillelse og giv root privilegier.', + 'token_id' => 'Token ID', + 'secret' => 'Hemmelighed', + 'memory_allocation' => 'Hukommelse allokering', + 'memory_overallocation' => 'Overallokering af hukommelse', + 'disk_allocation' => 'Disk allokering', + 'disk_overallocation' => 'Overallokering af disk', + 'vm_storage' => 'VM lager', + 'backup_storage' => 'Backup lager', + 'iso_storage' => 'ISO lager', + + 'create_template_modal' => [ + 'title' => 'Opret en skabelon', + ], + 'new_template' => 'Ny skabelon', + 'create_template_group_modal' => [ + 'title' => 'Opret en skabelon gruppe', + ], + 'new_template_group' => 'Opret en ny skabelon gruppe', + + 'node_info' => [ + 'title' => 'Node information', + ], + 'delete_node' => [ + 'title' => 'Fjern node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/da_DK/admin/nodes/isos.php b/lang/da_DK/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/da_DK/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/da_DK/admin/nodes/settings.php b/lang/da_DK/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/da_DK/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/da_DK/admin/servers/index.php b/lang/da_DK/admin/servers/index.php new file mode 100644 index 00000000000..cd60752333a --- /dev/null +++ b/lang/da_DK/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Opret server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Båndbredde brugt', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Opret en server', + ], + 'manage_server' => 'Administrer server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Fjern server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'Ingen servers fundet', +]; diff --git a/lang/da_DK/admin/servers/overview.php b/lang/da_DK/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/da_DK/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/da_DK/admin/servers/settings.php b/lang/da_DK/admin/servers/settings.php new file mode 100644 index 00000000000..954d89f6ebd --- /dev/null +++ b/lang/da_DK/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server information', + 'statuses' => [ + 'ready' => 'Klar', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/da_DK/admin/tokens.php b/lang/da_DK/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/da_DK/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/da_DK/admin/users.php b/lang/da_DK/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/da_DK/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/da_DK/auth.php b/lang/da_DK/auth.php new file mode 100644 index 00000000000..3d0e6af58fd --- /dev/null +++ b/lang/da_DK/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Log in', + 'sign_out' => 'Log ud', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/da_DK/dashboard/index.php b/lang/da_DK/dashboard/index.php new file mode 100644 index 00000000000..a0969fa8fbf --- /dev/null +++ b/lang/da_DK/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'Du har ingen servers.', +]; diff --git a/lang/da_DK/exceptions.php b/lang/da_DK/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/da_DK/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/da_DK/pagination.php b/lang/da_DK/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/da_DK/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/da_DK/passwords.php b/lang/da_DK/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/da_DK/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/da_DK/server/backups.php b/lang/da_DK/server/backups.php new file mode 100644 index 00000000000..b6364fafca1 --- /dev/null +++ b/lang/da_DK/server/backups.php @@ -0,0 +1,30 @@ + 'Opret backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Opret en backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/da_DK/server/overview.php b/lang/da_DK/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/da_DK/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/da_DK/server/settings.php b/lang/da_DK/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/da_DK/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/da_DK/strings.php b/lang/da_DK/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/da_DK/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/da_DK/validation.php b/lang/da_DK/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/da_DK/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/da_DK/zod.php b/lang/da_DK/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/da_DK/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/de_DE/admin/addressPools/addresses.php b/lang/de_DE/admin/addressPools/addresses.php new file mode 100644 index 00000000000..c1aa89ad3d8 --- /dev/null +++ b/lang/de_DE/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Adresse erstellen', + 'create_modal' => [ + 'title' => 'Adresse erstellen', + 'starting_address' => 'Startadresse', + 'ending_address' => 'Endadresse', + ], + 'assigned_server' => 'Zugewiesener Server', + 'edit_modal' => [ + 'title' => 'Bearbeite Adresse', + ], + 'delete_modal' => [ + 'title' => 'Adresse löschen?', + 'description' => 'Bist Du sicher, dass Du :address löschen möchtest?', + ], +]; \ No newline at end of file diff --git a/lang/de_DE/admin/addressPools/index.php b/lang/de_DE/admin/addressPools/index.php new file mode 100644 index 00000000000..9348c5b86a6 --- /dev/null +++ b/lang/de_DE/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Pool erstellen', + 'delete_modal' => [ + 'title' => ':name Löschen?', + 'description' => 'Bist Du sicher, dass Du diesen Pool löschen möchtest?', + 'nodes_linked_error' => 'Dieser Pool kann nicht gelöscht werden, bis alle Nodes getrennt werden.' + ], + 'edit_modal' => [ + 'title' => 'Bearbeite :name', + ], + 'nodes_nothing_found' => 'Keine Nodes gefunden', +]; \ No newline at end of file diff --git a/lang/de_DE/admin/locations.php b/lang/de_DE/admin/locations.php new file mode 100644 index 00000000000..600307fac6d --- /dev/null +++ b/lang/de_DE/admin/locations.php @@ -0,0 +1,9 @@ + 'Abkürzung', + 'create_location' => 'Standort erstellen', + 'create_modal' => [ + 'title' => 'Standort erstellen', + ], +]; diff --git a/lang/de_DE/admin/nodes/addressPools.php b/lang/de_DE/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/de_DE/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/de_DE/admin/nodes/index.php b/lang/de_DE/admin/nodes/index.php new file mode 100644 index 00000000000..cfed3698160 --- /dev/null +++ b/lang/de_DE/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Node erstellen', + 'create_modal' => [ + 'title' => 'Node erstellen', + ], + + 'location_group' => 'Standortgruppe', + 'pve_name' => 'Nodename in Proxmox', + 'override_creds' => 'Zugangsdaten überschreiben', + 'creds_warning' => 'Bitte deaktiviere die Einstellung "privilege separation" und gewähre root-Rechte.', + 'token_id' => 'Token ID', + 'secret' => 'Geheimschlüssel', + 'memory_allocation' => 'Speicherzuweisung', + 'memory_overallocation' => 'Arbeitsspeicher Überzuteilung', + 'disk_allocation' => 'Festplattenzuweisung', + 'disk_overallocation' => 'Speicher Überzuteilung', + 'vm_storage' => 'VM Speicher', + 'backup_storage' => 'Backupspeicher', + 'iso_storage' => 'ISO Speicher', + + 'create_template_modal' => [ + 'title' => 'Template erstellen', + ], + 'new_template' => 'Neues Template', + 'create_template_group_modal' => [ + 'title' => 'Templategruppe erstellen', + ], + 'new_template_group' => 'Neue Templategruppe', + + 'node_info' => [ + 'title' => 'Nodeinformation', + ], + 'delete_node' => [ + 'title' => 'Node löschen', + 'description' => 'Diese Node wird permanent aus Convoy gelöscht. Dieser Vorgang ist irreversibel und kann nicht rückgängig gemacht werden.', + 'has_servers_error' => 'Du kannst keine Node löschen, die Server zugewiesen hat.', + ], +]; diff --git a/lang/de_DE/admin/nodes/isos.php b/lang/de_DE/admin/nodes/isos.php new file mode 100644 index 00000000000..8ed355bcd15 --- /dev/null +++ b/lang/de_DE/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'ISO erstellen', + 'checksum_algorithm' => 'Prüfsummen-Algorithmus', + 'checksum' => 'Prüfsumme', + 'create_modal' => [ + 'title' => 'Erstelle eine ISO', + 'non_iso_file_name_error' => 'Die Dateiendung muss ".iso" sein', + 'fail_to_query_remote_file_error' => 'Abfrage der Remote-Datei fehlgeschlagen.', + ], +]; \ No newline at end of file diff --git a/lang/de_DE/admin/nodes/settings.php b/lang/de_DE/admin/nodes/settings.php new file mode 100644 index 00000000000..905a4739a77 --- /dev/null +++ b/lang/de_DE/admin/nodes/settings.php @@ -0,0 +1,23 @@ + [ + 'title' => 'Nodeinformation', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Mit Coterm kannst Du die IP deiner Node vor Benutzern verbergen, während diese auf die Webkonsole zugreifen.', + 'enable' => 'Coterm aktivieren', + 'tls' => 'SSL/TLS aktiviert', + 'token_created' => [ + 'title' => 'Token erstellt', + 'description' => 'Hier ist Dein neu erstellter Token. Bitte notiere ihn Dir, da dieser nie wieder angezeigt werden kann.', + 'action' => 'Okay, ich habe es verstanden' + ], + 'reset' => [ + 'title' => 'Token zurücksetzen?', + 'description' => 'Bist Du sicher, dass Du den Coterm-Token dieser Node zurücksetzen möchtest? Alle Coterm-Instanzen, die diesen Token verwenden, werden nicht mehr funktionieren.', + 'action' => 'Token zurücksetzen', + ] + ] +]; diff --git a/lang/de_DE/admin/servers/index.php b/lang/de_DE/admin/servers/index.php new file mode 100644 index 00000000000..b18cf0b8e82 --- /dev/null +++ b/lang/de_DE/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Server erstellen', + 'backup_limit' => 'Backuplimit', + 'bandwidth_limit' => 'Bandbreitenlimit', + 'bandwidth_usage' => 'Bandbreitenverbrauch', + 'snapshot_limit' => 'Snapshotlimit', + 'limit_placeholder' => 'Leer lassen für kein Limit', + 'should_create_vm' => 'Sollte VM erstellen', + 'start_server_after_installing' => 'Server nach der Installation starten', + 'vmid_placeholder' => 'Leer lassen für zufällige VMID', + 'create_modal' => [ + 'title' => 'Server erstellen', + ], + 'manage_server' => 'Server verwalten', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Serverinformation', + ], + 'suspension' => [ + 'title' => 'Sperrung', + 'description' => 'Sperrungsstatus des Servers umschalten.', + 'not_suspended' => 'Dieser Server ist nicht gesperrt', + 'suspended' => 'Dieser Server ist gesperrt', + ], + 'delete_server' => [ + 'title' => 'Server löschen', + 'description' => 'Dieser Server wird aus Convoy gelöscht. Backups und andere zugewiesene Daten werden vernichtet. Du kannst jedoch den Haken unten setzen, um die virtuelle Maschine und Daten auf der Proxmox-Node zu behalten.', + 'dont_purge' => 'VM und zugewiesene Dateien nicht löschen', + ], + 'no_servers_found_one' => 'Keine Server gefunden', +]; diff --git a/lang/de_DE/admin/servers/overview.php b/lang/de_DE/admin/servers/overview.php new file mode 100644 index 00000000000..b362b6d8ed8 --- /dev/null +++ b/lang/de_DE/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Serverkonsole öffnen', +]; \ No newline at end of file diff --git a/lang/de_DE/admin/servers/settings.php b/lang/de_DE/admin/servers/settings.php new file mode 100644 index 00000000000..9e8e6d03867 --- /dev/null +++ b/lang/de_DE/admin/servers/settings.php @@ -0,0 +1,39 @@ + [ + 'title' => 'Serverinformation', + 'statuses' => [ + 'ready' => 'Bereit', + 'installing' => 'Installation in Arbeit', + 'install_failed' => 'Aktuelle Installation Fehlgeschlagen', + 'suspended' => 'Gesperrt', + 'restoring_backup' => 'Wiederherstellung aus Backup', + 'restoring_snapshot' => 'Wiederherstellung aus Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Sperrung', + 'description' => 'Schalte den Sperrungsstatus um.', + 'statuses' => [ + 'suspended' => 'Dieser Server ist gesperrt.', + 'not_suspended' => 'Dieser Server ist nicht gesperrt.' + ], + 'suspend' => 'Sperren', + 'unsuspend' => 'Entsperren', + ], + 'deletion' => [ + 'title' => 'Server löschen', + 'description' => 'Dieser Server wird aus Convoy gelöscht. Backups und andere zugewiesene Daten werden vernichtet. Du kannst jedoch den Haken unten setzen, um die virtuelle Maschine und Daten auf der Proxmox-Node zu behalten.', + 'deleting_status' => 'Dieser Server wird aktuell gelöscht.', + 'no_purge' => 'VM und zugewiesene Dateien nicht löschen', + 'confirmation' => [ + 'title' => ':name Löschen', + 'description' => 'Bist Du sicher, dass Du :name löschen möchtest?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/de_DE/admin/tokens.php b/lang/de_DE/admin/tokens.php new file mode 100644 index 00000000000..6255180c0c6 --- /dev/null +++ b/lang/de_DE/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Token erstellen', + ], + 'created_modal' => [ + 'title' => 'Token erstellt', + 'description' => 'Hier ist Dein neu erstellter API-Token. Bitte notiere ihn Dir, da dieser nie wieder angezeigt werden kann.', + 'button' => 'Okay, ich habe es kopiert', + ], +]; diff --git a/lang/de_DE/admin/users.php b/lang/de_DE/admin/users.php new file mode 100644 index 00000000000..52b6509afed --- /dev/null +++ b/lang/de_DE/admin/users.php @@ -0,0 +1,18 @@ + 'Neuer Benutzer', + 'create_modal' => [ + 'title' => 'User erstellen', + 'is_admin_warning' => 'Du gibst diesem Benutzer administrative Rechte.', + ], + 'user_info' => [ + 'title' => 'Benutzerinformation', + 'override_pass' => 'Passwort überschreiben', + ], + 'delete_user' => [ + 'title' => 'Benutzer löschen', + 'description' => 'Der Benutzer und die ihm zugewiesenen Daten werden gelöscht.', + 'has_servers_error' => 'Dieser Benutzer kann nicht gelöscht werden, da noch Server zugewiesen sind.', + ], +]; diff --git a/lang/de_DE/auth.php b/lang/de_DE/auth.php new file mode 100644 index 00000000000..d47042cef7c --- /dev/null +++ b/lang/de_DE/auth.php @@ -0,0 +1,23 @@ + 'Die Zugangsdaten stimmen nicht mit unserer Datenbank überein.', + 'password' => 'Das angegebene Passwort ist falsch.', + 'throttle' => 'Zu viele Login-Versucht. Bitte versuche es in :seconds Sekunden erneut.', + + 'sign_in' => 'Anmelden', + 'sign_out' => 'Abmelden', + 'sign_in_description' => 'Bei Deinem Konto anmelden', +]; diff --git a/lang/de_DE/dashboard/index.php b/lang/de_DE/dashboard/index.php new file mode 100644 index 00000000000..e360734f38b --- /dev/null +++ b/lang/de_DE/dashboard/index.php @@ -0,0 +1,7 @@ + 'Alle Server anzeigen', + 'no_servers_admin_empty_state' => 'Es gibt keine Server.', + 'no_servers_empty_state' => 'Du hast keine Server.', +]; diff --git a/lang/de_DE/exceptions.php b/lang/de_DE/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/de_DE/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/de_DE/pagination.php b/lang/de_DE/pagination.php new file mode 100644 index 00000000000..ce092b8b4b5 --- /dev/null +++ b/lang/de_DE/pagination.php @@ -0,0 +1,19 @@ + '« Vorherige', + 'next' => 'Nächste »', + +]; diff --git a/lang/de_DE/passwords.php b/lang/de_DE/passwords.php new file mode 100644 index 00000000000..1ffe0d132a7 --- /dev/null +++ b/lang/de_DE/passwords.php @@ -0,0 +1,22 @@ + 'Dein Passwort wurde zurückgesetzt!', + 'sent' => 'Wir haben die einen Link zum Zurücksetzen Deines Passworts per Email geschickt!', + 'throttled' => 'Bitte warte bevor Du es erneut versuchst.', + 'token' => 'Dieser Passwort-Token ist nicht gültig.', + 'user' => "Wir konnten keinen Benutzer mit dieser Email-Adresse finden.", + +]; diff --git a/lang/de_DE/server/backups.php b/lang/de_DE/server/backups.php new file mode 100644 index 00000000000..54bb2b55a90 --- /dev/null +++ b/lang/de_DE/server/backups.php @@ -0,0 +1,30 @@ + 'Backup erstellen', + 'empty_state' => 'Es gibt keine Backups', + 'counter_tooltip' => 'Du hast :count von :max Backups erstellt', + 'create_modal' => [ + 'title' => 'Ein Backup erstellen', + 'description' => 'Das Erstellen eines Backups wird eine Kopie deines Servers erstellen. Dies kann, je nach Servergröße, eine Weile dauern.', + 'compression_type' => 'Kompressionstyp', + 'mode' => 'Typ', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Sperren', + 'kill' => 'Ausschalten', + ], + ], + 'delete_modal' => [ + 'title' => ':name Löschen?', + 'description' => 'Bist Du sicher, dass Du dieses Backup löschen möchtest?', + ], + 'restore_modal' => [ + 'title' => 'Wiederherstellen von :name?', + 'description' => 'Bist Du sicher, dass Du dieses Backup wiederherstellen möchtest?', + ], + 'notices' => [ + 'backup_deleted' => ':name wurde gelöscht ', + 'backup_restored' => 'Beginne Wiederherstellung aus :name', + ], +]; diff --git a/lang/de_DE/server/overview.php b/lang/de_DE/server/overview.php new file mode 100644 index 00000000000..0ec7e4a9356 --- /dev/null +++ b/lang/de_DE/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Starten', + 'restart' => 'Neustarten', + 'kill' => 'Aus', + 'shutdown' => 'Herunterfahren', + ], + 'notices' => [ + 'power_action_sent_success' => 'Der Befehl wurde erfolgreich gesendet. Es kann einen Moment dauern, bis er verarbeitet ist.', + 'power_action_sent_fail' => 'Befehl fehlgeschlagen.', + ], + + 'state' => 'Status', + 'states' => [ + 'stopped' => 'Gestoppt', + 'running' => 'Läuft', + 'stopping' => 'Stoppt', + 'starting' => 'Startet', + 'shutting_down' => 'Fährt herunter', + ], + 'uptime' => 'Betriebszeit', + 'poll_status_error' => 'Der Serverstatus konnte nicht abgefragt werden. Versuche in 5 Sekunden erneut...', + + 'terminal' => [ + 'title' => 'Konsole', + 'description' => 'Verwalte Deinen Server per Fernzugriff.', + 'novnc_description' => 'Am besten für Kompatibilität geeignet, aber Funktionen und Leistung sind eventuell eingeschränkt.', + 'xtermjs_description' => 'Am besten für Leistung geeignet, aber nicht von jedem Betriebssystem unterstützt.', + ], + + 'server_config' => [ + 'title' => 'Server konfigurieren', + 'description' => 'Du bist ein Administrator! Du kannst mit einem Klick unten die Konfiguration des Servers ansehen und bearbeiten.', + 'configure_server' => 'Server konfigurieren', + ], +]; diff --git a/lang/de_DE/server/settings.php b/lang/de_DE/server/settings.php new file mode 100644 index 00000000000..de986478128 --- /dev/null +++ b/lang/de_DE/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'Es sind keine Adressen mit diesem Server verknüpft.', + ], + 'display_info' => [ + 'title' => 'Servername', + ], + 'reinstall' => [ + 'title' => 'Server neu installieren', + 'description' => 'Setze deinen Server neu auf.', + 'start_server_after_installing' => 'Server nach der Installation starten', + 'modal' => [ + 'title' => 'Neuinstallation bestätigen', + 'description' => 'Bist Du sicher, dass Du diesen Server neu installieren möchtest? Alle Daten werden gelöscht.', + ], + ], + 'isos' => [ + 'title' => 'Mountbare ISOs', + 'empty' => 'Es gibt keine ISOs', + ], + 'device_config' => [ + 'title' => 'Gerätekonfiguration', + 'current' => 'Aktuelle Bootreihenfolge (der oberste Eintrag wird zuerst verwendet)', + 'unused' => 'Ungenutzte Geräte', + 'unused_empty' => 'Es gibt keine ungenutzten Geräte.', + 'no_boot_device_warning' => 'Es wurde kein Boot-Gerät konfiguriert. Deine VM wird nicht gestartet.', + ], + 'nameservers' => [ + 'title' => 'Nameserver', + 'nameserver' => 'Nameserver :index', + 'add' => 'Neuer Nameserver', + ], + 'auth' => [ + 'title' => 'Authentifizierung', + ], + 'hardware' => [ + 'bandwidth_used' => 'Verwendete Bandbreite', + 'bandwidth_alloted' => 'Zugewiesene Bandbreite', + ], +]; diff --git a/lang/de_DE/strings.php b/lang/de_DE/strings.php new file mode 100644 index 00000000000..e930c1b7ca5 --- /dev/null +++ b/lang/de_DE/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Passwort', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Server', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Speicher', + 'cpu' => 'CPU', + 'disk' => 'Festplatte', + 'general' => 'Allgemein', + 'overview' => 'Übersicht', + 'location' => 'Standort', + 'location_one' => 'Standort', + 'location_other' => 'Standorte', + 'owner' => 'Besitzer', + 'user' => 'Benutzer', + 'user_one' => 'Benutzer', + 'user_other' => 'Benutzer', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Einstellung', + 'setting_one' => 'Einstellung', + 'setting_other' => 'Einstellungen', + 'search' => 'Suchen', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Admin Control Panel verlassen', + 'suspended' => 'Gesperrt', + 'network' => 'Netzwerk', + 'ip' => 'IP Adresse', + 'address_one' => 'Adresse', + 'address_other' => 'Adressen', + 'addressWithCount_one' => ':count Adresse', + 'addressWithCount_other' => ':count Adressen', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Adresse', + 'none' => 'Keine', + 'unlimited' => 'Unlimitiert', + 'launch' => 'Starten', + 'create' => 'Erstellen', + 'cancel' => 'Abbrechen', + 'display_name' => 'Anzeigename', + 'hostname' => 'Hostname', + 'reinstall' => 'Neuinstallieren', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Template', + 'template_group' => 'Templategruppe', + 'system_os_password' => 'System Passwort', + 'mount' => 'Mount', + 'unmount' => 'Unmounten', + 'primary' => 'Primär', + 'media' => 'Medien', + 'save' => 'Speichern', + 'ssh_key' => 'SSH Schlüssel', + 'ssh_key_one' => 'SSH Schlüssel', + 'ssh_key_other' => 'SSH Schlüssel', + 'version' => 'Version :version', + 'description' => 'Beschreibung', + 'visibility' => 'Sichtbarkeit', + 'hidden' => 'Versteckt', + 'size' => 'Größe', + 'type' => 'Typ', + 'delete' => 'Löschen', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Verwendete Bandbreite', + 'administrator' => 'Administrator', + 'last_used' => 'Zuletzt verwendet', + 'success' => 'Erfolgreich', + 'error' => 'Fehler', + 'restore' => 'Wiederherstellen', + 'english_chars' => 'Englische Tastaturzeichen', + 'confirm' => 'Bestätigen', + 'saving' => 'Wird gespeichert...', + 'saved' => 'Gespeichert', + 'primary_disk' => 'Primäre Festplatte', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameserver', + 'new' => 'Neu', + 'add' => 'Hinzufügen', + 'authentication' => 'Authentifizierung', + 'edit' => 'Bearbeiten', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'Dateiname', + 'query' => 'Query', + 'import' => 'Importieren', + 'download' => 'Herunterladen', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Einzel', + 'multiple' => 'Mehrfach', +]; diff --git a/lang/de_DE/validation.php b/lang/de_DE/validation.php new file mode 100644 index 00000000000..24199534a16 --- /dev/null +++ b/lang/de_DE/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.zeptiert werden wenn :other ist :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'Das :attribute muss größer als :value Zeichen sein.', + ], + 'gte' => [ + 'array' => 'Das :attribute muss :value Artikel oder mehr enthalten.', + 'file' => 'Das :attribute muss größer oder gleich :value Kilobyte sein.', + 'numeric' => 'Das :attribute muss größer oder gleich :value sein.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => ':attribute existiert bereits.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/de_DE/zod.php b/lang/de_DE/zod.php new file mode 100644 index 00000000000..f038f9aeea3 --- /dev/null +++ b/lang/de_DE/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => '{{expected}} erwartet, {{received}} erhalten', + 'invalid_type_received_undefined' => 'Erforderlich', + 'invalid_literal' => 'Ungültiges Wort, {{expected}} erwartet', + 'unrecognized_keys' => 'Nicht erkannte(r) Schlüssel im Objekt: {{- keys}}', + 'invalid_union' => 'Ungültige Eingabe', + 'invalid_union_discriminator' => 'Ungültiges Trennzeichen. {{- options}} erwartet', + 'invalid_enum_value' => 'Ungültiger enum-Wert. {{- options}} erwartet, {{received}} erwartet', + 'invalid_arguments' => 'Ungültige Funktionsargumente', + 'invalid_return_type' => 'Ungültiger Funktionsrückgabetyp', + 'invalid_date' => 'Ungültiges Datum', + 'custom' => 'Ungültige Eingabe', + 'invalid_intersection_types' => 'Schnittmengenergebnisse konnten nicht zusammengeführt werden', + 'not_multiple_of' => 'Zahl muss ein Vielfaches von {{multipleOf}} sein', + 'not_finite' => 'Nummer muss endlich sein', + 'invalid_string' => [ + 'email' => '{{validation}} ungültig', + 'url' => '{{validation}} ungültig', + 'uuid' => '{{validation}} ungültig', + 'cuid' => '{{validation}} ungültig', + 'regex' => 'Ungültig', + 'datetime' => '{{validation}} ungültig', + 'startsWith' => 'Ungültige Eingabe: Muss beginnen mit: "{{startsWith}}"', + 'endsWith' => 'Ungültige Eingabe: Muss enden mit: "{{endsWith}}"', + 'hostname' => '{{validation}} ungültig', + 'english_keyboard_characters' => '{{validation}} ungültig', + 'password' => 'Muss 8 Zeichen erhalten. Ein Groß-, ein Kleinbuchstaben, eine Nummer und ein Sonderzeichen', + 'ip_address' => 'Ungültige IP-Adresse', + 'mac_address' => 'Ungültige MAC-Adresse', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array muss genau {{minimum}} Element(e) enthalten', + 'inclusive' => 'Array muss mindestens {{minimum}} Element(e) enthalten', + 'not_inclusive' => 'Array muss mehr als {{minimum}} Element(e) enthalten', + ], + 'string' => [ + 'exact' => 'String muss genau {{minimum}} Zeichen enthalten', + 'inclusive' => 'String muss mindestens {{minimum}} Zeichen enthalten', + 'not_inclusive' => 'String muss mehr als {{minimum}} Zeichen enthalten', + ], + 'number' => [ + 'exact' => 'Nummer muss genau {{minimum}} sein', + 'inclusive' => 'Nummer muss größer oder gleich {{minimum}} sein', + 'not_inclusive' => 'Nummer muss größer als {{minimum}} sein', + ], + 'set' => [ + 'exact' => 'Ungültige Eingabe', + 'inclusive' => 'Ungültige Eingabe', + 'not_inclusive' => 'Ungültige Eingabe', + ], + 'date' => [ + 'exact' => 'Datum muss genau {{- minimum, datetime}} sein', + 'inclusive' => 'Datum muss größer oder gleich {{- minimum, datetime}} sein', + 'not_inclusive' => 'Datum muss größer als {{- minimum, datetime}} sein', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array muss genau {{maximum}} Element(e) enthalten', + 'inclusive' => 'Array darf höchstens {{maximum}} Element(e) enthalten', + 'not_inclusive' => 'Array muss weniger als {{maximum}} Element(e) enthalten', + ], + 'string' => [ + 'exact' => 'String muss genau {{maximum}} Zeichen enthalten', + 'inclusive' => 'String darf maximal {{maximum}} Zeichen enthalten', + 'not_inclusive' => 'String muss weniger als {{maximum}} Zeichen enthalten', + ], + 'number' => [ + 'exact' => 'Nummer muss genau {{maximum}} sein', + 'inclusive' => 'Nummer muss kleiner oder gleich {{maximum}} sein', + 'not_inclusive' => 'Zahl muss kleiner als {{maximum}} sein', + ], + 'set' => [ + 'exact' => 'Ungültige Eingabe', + 'inclusive' => 'Ungültige Eingabe', + 'not_inclusive' => 'Ungültige Eingabe', + ], + 'date' => [ + 'exact' => 'Datum muss genau {{- maximum, datetime}} sein', + 'inclusive' => 'Datum muss kleiner oder gleich {{- maximum, datetime}} sein', + 'not_inclusive' => 'Datum muss kleiner als {{- maximum, datetime}} sein', + ], + ], + ], + 'validations' => [ + 'email' => 'Email', + 'url' => 'URL', + 'uuid' => 'UUID', + 'cuid' => 'CUID', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/el_GR/admin/addressPools/addresses.php b/lang/el_GR/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/el_GR/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/el_GR/admin/addressPools/index.php b/lang/el_GR/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/el_GR/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/el_GR/admin/locations.php b/lang/el_GR/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/el_GR/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/el_GR/admin/nodes/addressPools.php b/lang/el_GR/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/el_GR/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/el_GR/admin/nodes/index.php b/lang/el_GR/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/el_GR/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/el_GR/admin/nodes/isos.php b/lang/el_GR/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/el_GR/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/el_GR/admin/nodes/settings.php b/lang/el_GR/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/el_GR/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/el_GR/admin/servers/index.php b/lang/el_GR/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/el_GR/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/el_GR/admin/servers/overview.php b/lang/el_GR/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/el_GR/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/el_GR/admin/servers/settings.php b/lang/el_GR/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/el_GR/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/el_GR/admin/tokens.php b/lang/el_GR/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/el_GR/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/el_GR/admin/users.php b/lang/el_GR/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/el_GR/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/el_GR/auth.php b/lang/el_GR/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/el_GR/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/el_GR/dashboard/index.php b/lang/el_GR/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/el_GR/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/el_GR/exceptions.php b/lang/el_GR/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/el_GR/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/el_GR/pagination.php b/lang/el_GR/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/el_GR/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/el_GR/passwords.php b/lang/el_GR/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/el_GR/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/el_GR/server/backups.php b/lang/el_GR/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/el_GR/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/el_GR/server/overview.php b/lang/el_GR/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/el_GR/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/el_GR/server/settings.php b/lang/el_GR/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/el_GR/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/el_GR/strings.php b/lang/el_GR/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/el_GR/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/el_GR/validation.php b/lang/el_GR/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/el_GR/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/el_GR/zod.php b/lang/el_GR/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/el_GR/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/en_US/admin/addressPools/addresses.php b/lang/en_US/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/en_US/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/en_US/admin/addressPools/index.php b/lang/en_US/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/en_US/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/en_US/admin/locations.php b/lang/en_US/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/en_US/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/en_US/admin/nodes/addressPools.php b/lang/en_US/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/en_US/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/en_US/admin/nodes/index.php b/lang/en_US/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/en_US/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/en_US/admin/nodes/isos.php b/lang/en_US/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/en_US/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/en_US/admin/nodes/settings.php b/lang/en_US/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/en_US/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/en_US/admin/servers/index.php b/lang/en_US/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/en_US/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/en_US/admin/servers/overview.php b/lang/en_US/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/en_US/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/en_US/admin/servers/settings.php b/lang/en_US/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/en_US/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/en_US/admin/tokens.php b/lang/en_US/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/en_US/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/en_US/admin/users.php b/lang/en_US/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/en_US/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/en_US/auth.php b/lang/en_US/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/en_US/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/en_US/dashboard/index.php b/lang/en_US/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/en_US/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/en_US/exceptions.php b/lang/en_US/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/en_US/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/en_US/pagination.php b/lang/en_US/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/en_US/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/en_US/passwords.php b/lang/en_US/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/en_US/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/en_US/server/backups.php b/lang/en_US/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/en_US/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/en_US/server/overview.php b/lang/en_US/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/en_US/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/en_US/server/settings.php b/lang/en_US/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/en_US/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/en_US/strings.php b/lang/en_US/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/en_US/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/en_US/validation.php b/lang/en_US/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/en_US/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/en_US/zod.php b/lang/en_US/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/en_US/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/es_ES/admin/addressPools/addresses.php b/lang/es_ES/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/es_ES/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/es_ES/admin/addressPools/index.php b/lang/es_ES/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/es_ES/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/es_ES/admin/locations.php b/lang/es_ES/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/es_ES/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/es_ES/admin/nodes/addressPools.php b/lang/es_ES/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/es_ES/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/es_ES/admin/nodes/index.php b/lang/es_ES/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/es_ES/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/es_ES/admin/nodes/isos.php b/lang/es_ES/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/es_ES/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/es_ES/admin/nodes/settings.php b/lang/es_ES/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/es_ES/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/es_ES/admin/servers/index.php b/lang/es_ES/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/es_ES/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/es_ES/admin/servers/overview.php b/lang/es_ES/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/es_ES/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/es_ES/admin/servers/settings.php b/lang/es_ES/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/es_ES/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/es_ES/admin/tokens.php b/lang/es_ES/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/es_ES/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/es_ES/admin/users.php b/lang/es_ES/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/es_ES/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/es_ES/auth.php b/lang/es_ES/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/es_ES/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/es_ES/dashboard/index.php b/lang/es_ES/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/es_ES/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/es_ES/exceptions.php b/lang/es_ES/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/es_ES/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/es_ES/pagination.php b/lang/es_ES/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/es_ES/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/es_ES/passwords.php b/lang/es_ES/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/es_ES/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/es_ES/server/backups.php b/lang/es_ES/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/es_ES/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/es_ES/server/overview.php b/lang/es_ES/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/es_ES/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/es_ES/server/settings.php b/lang/es_ES/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/es_ES/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/es_ES/strings.php b/lang/es_ES/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/es_ES/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/es_ES/validation.php b/lang/es_ES/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/es_ES/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/es_ES/zod.php b/lang/es_ES/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/es_ES/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/fi_FI/admin/addressPools/addresses.php b/lang/fi_FI/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/fi_FI/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/fi_FI/admin/addressPools/index.php b/lang/fi_FI/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/fi_FI/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/fi_FI/admin/locations.php b/lang/fi_FI/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/fi_FI/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/fi_FI/admin/nodes/addressPools.php b/lang/fi_FI/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/fi_FI/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/fi_FI/admin/nodes/index.php b/lang/fi_FI/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/fi_FI/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/fi_FI/admin/nodes/isos.php b/lang/fi_FI/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/fi_FI/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/fi_FI/admin/nodes/settings.php b/lang/fi_FI/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/fi_FI/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/fi_FI/admin/servers/index.php b/lang/fi_FI/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/fi_FI/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/fi_FI/admin/servers/overview.php b/lang/fi_FI/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/fi_FI/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/fi_FI/admin/servers/settings.php b/lang/fi_FI/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/fi_FI/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/fi_FI/admin/tokens.php b/lang/fi_FI/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/fi_FI/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/fi_FI/admin/users.php b/lang/fi_FI/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/fi_FI/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/fi_FI/auth.php b/lang/fi_FI/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/fi_FI/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/fi_FI/dashboard/index.php b/lang/fi_FI/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/fi_FI/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/fi_FI/exceptions.php b/lang/fi_FI/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/fi_FI/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/fi_FI/pagination.php b/lang/fi_FI/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/fi_FI/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/fi_FI/passwords.php b/lang/fi_FI/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/fi_FI/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/fi_FI/server/backups.php b/lang/fi_FI/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/fi_FI/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/fi_FI/server/overview.php b/lang/fi_FI/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/fi_FI/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/fi_FI/server/settings.php b/lang/fi_FI/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/fi_FI/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/fi_FI/strings.php b/lang/fi_FI/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/fi_FI/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/fi_FI/validation.php b/lang/fi_FI/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/fi_FI/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/fi_FI/zod.php b/lang/fi_FI/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/fi_FI/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/fr_FR/admin/addressPools/addresses.php b/lang/fr_FR/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/fr_FR/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/fr_FR/admin/addressPools/index.php b/lang/fr_FR/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/fr_FR/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/fr_FR/admin/locations.php b/lang/fr_FR/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/fr_FR/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/fr_FR/admin/nodes/addressPools.php b/lang/fr_FR/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/fr_FR/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/fr_FR/admin/nodes/index.php b/lang/fr_FR/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/fr_FR/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/fr_FR/admin/nodes/isos.php b/lang/fr_FR/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/fr_FR/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/fr_FR/admin/nodes/settings.php b/lang/fr_FR/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/fr_FR/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/fr_FR/admin/servers/index.php b/lang/fr_FR/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/fr_FR/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/fr_FR/admin/servers/overview.php b/lang/fr_FR/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/fr_FR/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/fr_FR/admin/servers/settings.php b/lang/fr_FR/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/fr_FR/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/fr_FR/admin/tokens.php b/lang/fr_FR/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/fr_FR/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/fr_FR/admin/users.php b/lang/fr_FR/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/fr_FR/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/fr_FR/auth.php b/lang/fr_FR/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/fr_FR/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/fr_FR/dashboard/index.php b/lang/fr_FR/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/fr_FR/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/fr_FR/exceptions.php b/lang/fr_FR/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/fr_FR/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/fr_FR/pagination.php b/lang/fr_FR/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/fr_FR/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/fr_FR/passwords.php b/lang/fr_FR/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/fr_FR/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/fr_FR/server/backups.php b/lang/fr_FR/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/fr_FR/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/fr_FR/server/overview.php b/lang/fr_FR/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/fr_FR/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/fr_FR/server/settings.php b/lang/fr_FR/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/fr_FR/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/fr_FR/strings.php b/lang/fr_FR/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/fr_FR/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/fr_FR/validation.php b/lang/fr_FR/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/fr_FR/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/fr_FR/zod.php b/lang/fr_FR/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/fr_FR/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/he_IL/admin/addressPools/addresses.php b/lang/he_IL/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/he_IL/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/he_IL/admin/addressPools/index.php b/lang/he_IL/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/he_IL/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/he_IL/admin/locations.php b/lang/he_IL/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/he_IL/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/he_IL/admin/nodes/addressPools.php b/lang/he_IL/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/he_IL/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/he_IL/admin/nodes/index.php b/lang/he_IL/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/he_IL/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/he_IL/admin/nodes/isos.php b/lang/he_IL/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/he_IL/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/he_IL/admin/nodes/settings.php b/lang/he_IL/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/he_IL/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/he_IL/admin/servers/index.php b/lang/he_IL/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/he_IL/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/he_IL/admin/servers/overview.php b/lang/he_IL/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/he_IL/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/he_IL/admin/servers/settings.php b/lang/he_IL/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/he_IL/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/he_IL/admin/tokens.php b/lang/he_IL/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/he_IL/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/he_IL/admin/users.php b/lang/he_IL/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/he_IL/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/he_IL/auth.php b/lang/he_IL/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/he_IL/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/he_IL/dashboard/index.php b/lang/he_IL/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/he_IL/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/he_IL/exceptions.php b/lang/he_IL/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/he_IL/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/he_IL/pagination.php b/lang/he_IL/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/he_IL/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/he_IL/passwords.php b/lang/he_IL/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/he_IL/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/he_IL/server/backups.php b/lang/he_IL/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/he_IL/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/he_IL/server/overview.php b/lang/he_IL/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/he_IL/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/he_IL/server/settings.php b/lang/he_IL/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/he_IL/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/he_IL/strings.php b/lang/he_IL/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/he_IL/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/he_IL/validation.php b/lang/he_IL/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/he_IL/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/he_IL/zod.php b/lang/he_IL/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/he_IL/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/hi_IN/admin/addressPools/addresses.php b/lang/hi_IN/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/hi_IN/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/hi_IN/admin/addressPools/index.php b/lang/hi_IN/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/hi_IN/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/hi_IN/admin/locations.php b/lang/hi_IN/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/hi_IN/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/hi_IN/admin/nodes/addressPools.php b/lang/hi_IN/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/hi_IN/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/hi_IN/admin/nodes/index.php b/lang/hi_IN/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/hi_IN/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/hi_IN/admin/nodes/isos.php b/lang/hi_IN/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/hi_IN/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/hi_IN/admin/nodes/settings.php b/lang/hi_IN/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/hi_IN/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/hi_IN/admin/servers/index.php b/lang/hi_IN/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/hi_IN/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/hi_IN/admin/servers/overview.php b/lang/hi_IN/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/hi_IN/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/hi_IN/admin/servers/settings.php b/lang/hi_IN/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/hi_IN/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/hi_IN/admin/tokens.php b/lang/hi_IN/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/hi_IN/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/hi_IN/admin/users.php b/lang/hi_IN/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/hi_IN/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/hi_IN/auth.php b/lang/hi_IN/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/hi_IN/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/hi_IN/dashboard/index.php b/lang/hi_IN/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/hi_IN/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/hi_IN/exceptions.php b/lang/hi_IN/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/hi_IN/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/hi_IN/pagination.php b/lang/hi_IN/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/hi_IN/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/hi_IN/passwords.php b/lang/hi_IN/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/hi_IN/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/hi_IN/server/backups.php b/lang/hi_IN/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/hi_IN/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/hi_IN/server/overview.php b/lang/hi_IN/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/hi_IN/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/hi_IN/server/settings.php b/lang/hi_IN/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/hi_IN/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/hi_IN/strings.php b/lang/hi_IN/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/hi_IN/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/hi_IN/validation.php b/lang/hi_IN/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/hi_IN/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/hi_IN/zod.php b/lang/hi_IN/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/hi_IN/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/hu_HU/admin/addressPools/addresses.php b/lang/hu_HU/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/hu_HU/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/hu_HU/admin/addressPools/index.php b/lang/hu_HU/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/hu_HU/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/hu_HU/admin/locations.php b/lang/hu_HU/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/hu_HU/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/hu_HU/admin/nodes/addressPools.php b/lang/hu_HU/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/hu_HU/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/hu_HU/admin/nodes/index.php b/lang/hu_HU/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/hu_HU/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/hu_HU/admin/nodes/isos.php b/lang/hu_HU/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/hu_HU/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/hu_HU/admin/nodes/settings.php b/lang/hu_HU/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/hu_HU/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/hu_HU/admin/servers/index.php b/lang/hu_HU/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/hu_HU/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/hu_HU/admin/servers/overview.php b/lang/hu_HU/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/hu_HU/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/hu_HU/admin/servers/settings.php b/lang/hu_HU/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/hu_HU/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/hu_HU/admin/tokens.php b/lang/hu_HU/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/hu_HU/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/hu_HU/admin/users.php b/lang/hu_HU/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/hu_HU/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/hu_HU/auth.php b/lang/hu_HU/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/hu_HU/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/hu_HU/dashboard/index.php b/lang/hu_HU/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/hu_HU/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/hu_HU/exceptions.php b/lang/hu_HU/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/hu_HU/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/hu_HU/pagination.php b/lang/hu_HU/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/hu_HU/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/hu_HU/passwords.php b/lang/hu_HU/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/hu_HU/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/hu_HU/server/backups.php b/lang/hu_HU/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/hu_HU/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/hu_HU/server/overview.php b/lang/hu_HU/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/hu_HU/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/hu_HU/server/settings.php b/lang/hu_HU/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/hu_HU/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/hu_HU/strings.php b/lang/hu_HU/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/hu_HU/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/hu_HU/validation.php b/lang/hu_HU/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/hu_HU/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/hu_HU/zod.php b/lang/hu_HU/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/hu_HU/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/is_IS/admin/addressPools/addresses.php b/lang/is_IS/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/is_IS/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/is_IS/admin/addressPools/index.php b/lang/is_IS/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/is_IS/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/is_IS/admin/locations.php b/lang/is_IS/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/is_IS/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/is_IS/admin/nodes/addressPools.php b/lang/is_IS/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/is_IS/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/is_IS/admin/nodes/index.php b/lang/is_IS/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/is_IS/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/is_IS/admin/nodes/isos.php b/lang/is_IS/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/is_IS/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/is_IS/admin/nodes/settings.php b/lang/is_IS/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/is_IS/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/is_IS/admin/servers/index.php b/lang/is_IS/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/is_IS/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/is_IS/admin/servers/overview.php b/lang/is_IS/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/is_IS/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/is_IS/admin/servers/settings.php b/lang/is_IS/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/is_IS/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/is_IS/admin/tokens.php b/lang/is_IS/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/is_IS/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/is_IS/admin/users.php b/lang/is_IS/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/is_IS/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/is_IS/auth.php b/lang/is_IS/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/is_IS/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/is_IS/dashboard/index.php b/lang/is_IS/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/is_IS/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/is_IS/exceptions.php b/lang/is_IS/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/is_IS/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/is_IS/pagination.php b/lang/is_IS/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/is_IS/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/is_IS/passwords.php b/lang/is_IS/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/is_IS/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/is_IS/server/backups.php b/lang/is_IS/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/is_IS/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/is_IS/server/overview.php b/lang/is_IS/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/is_IS/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/is_IS/server/settings.php b/lang/is_IS/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/is_IS/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/is_IS/strings.php b/lang/is_IS/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/is_IS/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/is_IS/validation.php b/lang/is_IS/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/is_IS/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/is_IS/zod.php b/lang/is_IS/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/is_IS/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/it_IT/admin/addressPools/addresses.php b/lang/it_IT/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/it_IT/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/it_IT/admin/addressPools/index.php b/lang/it_IT/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/it_IT/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/it_IT/admin/locations.php b/lang/it_IT/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/it_IT/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/it_IT/admin/nodes/addressPools.php b/lang/it_IT/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/it_IT/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/it_IT/admin/nodes/index.php b/lang/it_IT/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/it_IT/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/it_IT/admin/nodes/isos.php b/lang/it_IT/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/it_IT/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/it_IT/admin/nodes/settings.php b/lang/it_IT/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/it_IT/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/it_IT/admin/servers/index.php b/lang/it_IT/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/it_IT/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/it_IT/admin/servers/overview.php b/lang/it_IT/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/it_IT/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/it_IT/admin/servers/settings.php b/lang/it_IT/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/it_IT/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/it_IT/admin/tokens.php b/lang/it_IT/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/it_IT/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/it_IT/admin/users.php b/lang/it_IT/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/it_IT/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/it_IT/auth.php b/lang/it_IT/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/it_IT/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/it_IT/dashboard/index.php b/lang/it_IT/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/it_IT/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/it_IT/exceptions.php b/lang/it_IT/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/it_IT/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/it_IT/pagination.php b/lang/it_IT/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/it_IT/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/it_IT/passwords.php b/lang/it_IT/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/it_IT/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/it_IT/server/backups.php b/lang/it_IT/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/it_IT/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/it_IT/server/overview.php b/lang/it_IT/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/it_IT/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/it_IT/server/settings.php b/lang/it_IT/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/it_IT/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/it_IT/strings.php b/lang/it_IT/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/it_IT/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/it_IT/validation.php b/lang/it_IT/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/it_IT/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/it_IT/zod.php b/lang/it_IT/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/it_IT/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/ja_JP/admin/addressPools/addresses.php b/lang/ja_JP/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/ja_JP/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/ja_JP/admin/addressPools/index.php b/lang/ja_JP/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/ja_JP/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/ja_JP/admin/locations.php b/lang/ja_JP/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/ja_JP/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/ja_JP/admin/nodes/addressPools.php b/lang/ja_JP/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/ja_JP/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/ja_JP/admin/nodes/index.php b/lang/ja_JP/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/ja_JP/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/ja_JP/admin/nodes/isos.php b/lang/ja_JP/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/ja_JP/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/ja_JP/admin/nodes/settings.php b/lang/ja_JP/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/ja_JP/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/ja_JP/admin/servers/index.php b/lang/ja_JP/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/ja_JP/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/ja_JP/admin/servers/overview.php b/lang/ja_JP/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/ja_JP/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/ja_JP/admin/servers/settings.php b/lang/ja_JP/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/ja_JP/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/ja_JP/admin/tokens.php b/lang/ja_JP/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/ja_JP/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/ja_JP/admin/users.php b/lang/ja_JP/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/ja_JP/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/ja_JP/auth.php b/lang/ja_JP/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/ja_JP/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/ja_JP/dashboard/index.php b/lang/ja_JP/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/ja_JP/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/ja_JP/exceptions.php b/lang/ja_JP/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/ja_JP/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/ja_JP/pagination.php b/lang/ja_JP/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/ja_JP/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/ja_JP/passwords.php b/lang/ja_JP/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/ja_JP/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/ja_JP/server/backups.php b/lang/ja_JP/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/ja_JP/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/ja_JP/server/overview.php b/lang/ja_JP/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/ja_JP/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/ja_JP/server/settings.php b/lang/ja_JP/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/ja_JP/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/ja_JP/strings.php b/lang/ja_JP/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/ja_JP/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/ja_JP/validation.php b/lang/ja_JP/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/ja_JP/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/ja_JP/zod.php b/lang/ja_JP/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/ja_JP/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/ko_KR/admin/addressPools/addresses.php b/lang/ko_KR/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/ko_KR/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/ko_KR/admin/addressPools/index.php b/lang/ko_KR/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/ko_KR/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/ko_KR/admin/locations.php b/lang/ko_KR/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/ko_KR/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/ko_KR/admin/nodes/addressPools.php b/lang/ko_KR/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/ko_KR/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/ko_KR/admin/nodes/index.php b/lang/ko_KR/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/ko_KR/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/ko_KR/admin/nodes/isos.php b/lang/ko_KR/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/ko_KR/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/ko_KR/admin/nodes/settings.php b/lang/ko_KR/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/ko_KR/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/ko_KR/admin/servers/index.php b/lang/ko_KR/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/ko_KR/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/ko_KR/admin/servers/overview.php b/lang/ko_KR/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/ko_KR/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/ko_KR/admin/servers/settings.php b/lang/ko_KR/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/ko_KR/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/ko_KR/admin/tokens.php b/lang/ko_KR/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/ko_KR/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/ko_KR/admin/users.php b/lang/ko_KR/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/ko_KR/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/ko_KR/auth.php b/lang/ko_KR/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/ko_KR/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/ko_KR/dashboard/index.php b/lang/ko_KR/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/ko_KR/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/ko_KR/exceptions.php b/lang/ko_KR/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/ko_KR/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/ko_KR/pagination.php b/lang/ko_KR/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/ko_KR/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/ko_KR/passwords.php b/lang/ko_KR/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/ko_KR/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/ko_KR/server/backups.php b/lang/ko_KR/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/ko_KR/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/ko_KR/server/overview.php b/lang/ko_KR/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/ko_KR/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/ko_KR/server/settings.php b/lang/ko_KR/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/ko_KR/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/ko_KR/strings.php b/lang/ko_KR/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/ko_KR/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/ko_KR/validation.php b/lang/ko_KR/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/ko_KR/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/ko_KR/zod.php b/lang/ko_KR/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/ko_KR/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/nl_NL/admin/addressPools/addresses.php b/lang/nl_NL/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/nl_NL/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/nl_NL/admin/addressPools/index.php b/lang/nl_NL/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/nl_NL/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/nl_NL/admin/locations.php b/lang/nl_NL/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/nl_NL/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/nl_NL/admin/nodes/addressPools.php b/lang/nl_NL/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/nl_NL/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/nl_NL/admin/nodes/index.php b/lang/nl_NL/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/nl_NL/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/nl_NL/admin/nodes/isos.php b/lang/nl_NL/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/nl_NL/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/nl_NL/admin/nodes/settings.php b/lang/nl_NL/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/nl_NL/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/nl_NL/admin/servers/index.php b/lang/nl_NL/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/nl_NL/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/nl_NL/admin/servers/overview.php b/lang/nl_NL/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/nl_NL/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/nl_NL/admin/servers/settings.php b/lang/nl_NL/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/nl_NL/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/nl_NL/admin/tokens.php b/lang/nl_NL/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/nl_NL/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/nl_NL/admin/users.php b/lang/nl_NL/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/nl_NL/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/nl_NL/auth.php b/lang/nl_NL/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/nl_NL/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/nl_NL/dashboard/index.php b/lang/nl_NL/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/nl_NL/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/nl_NL/exceptions.php b/lang/nl_NL/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/nl_NL/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/nl_NL/pagination.php b/lang/nl_NL/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/nl_NL/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/nl_NL/passwords.php b/lang/nl_NL/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/nl_NL/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/nl_NL/server/backups.php b/lang/nl_NL/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/nl_NL/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/nl_NL/server/overview.php b/lang/nl_NL/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/nl_NL/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/nl_NL/server/settings.php b/lang/nl_NL/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/nl_NL/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/nl_NL/strings.php b/lang/nl_NL/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/nl_NL/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/nl_NL/validation.php b/lang/nl_NL/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/nl_NL/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/nl_NL/zod.php b/lang/nl_NL/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/nl_NL/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/no_NO/admin/addressPools/addresses.php b/lang/no_NO/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/no_NO/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/no_NO/admin/addressPools/index.php b/lang/no_NO/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/no_NO/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/no_NO/admin/locations.php b/lang/no_NO/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/no_NO/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/no_NO/admin/nodes/addressPools.php b/lang/no_NO/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/no_NO/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/no_NO/admin/nodes/index.php b/lang/no_NO/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/no_NO/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/no_NO/admin/nodes/isos.php b/lang/no_NO/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/no_NO/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/no_NO/admin/nodes/settings.php b/lang/no_NO/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/no_NO/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/no_NO/admin/servers/index.php b/lang/no_NO/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/no_NO/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/no_NO/admin/servers/overview.php b/lang/no_NO/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/no_NO/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/no_NO/admin/servers/settings.php b/lang/no_NO/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/no_NO/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/no_NO/admin/tokens.php b/lang/no_NO/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/no_NO/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/no_NO/admin/users.php b/lang/no_NO/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/no_NO/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/no_NO/auth.php b/lang/no_NO/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/no_NO/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/no_NO/dashboard/index.php b/lang/no_NO/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/no_NO/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/no_NO/exceptions.php b/lang/no_NO/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/no_NO/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/no_NO/pagination.php b/lang/no_NO/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/no_NO/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/no_NO/passwords.php b/lang/no_NO/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/no_NO/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/no_NO/server/backups.php b/lang/no_NO/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/no_NO/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/no_NO/server/overview.php b/lang/no_NO/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/no_NO/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/no_NO/server/settings.php b/lang/no_NO/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/no_NO/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/no_NO/strings.php b/lang/no_NO/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/no_NO/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/no_NO/validation.php b/lang/no_NO/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/no_NO/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/no_NO/zod.php b/lang/no_NO/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/no_NO/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/pl_PL/admin/addressPools/addresses.php b/lang/pl_PL/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/pl_PL/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/pl_PL/admin/addressPools/index.php b/lang/pl_PL/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/pl_PL/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/pl_PL/admin/locations.php b/lang/pl_PL/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/pl_PL/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/pl_PL/admin/nodes/addressPools.php b/lang/pl_PL/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/pl_PL/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/pl_PL/admin/nodes/index.php b/lang/pl_PL/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/pl_PL/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/pl_PL/admin/nodes/isos.php b/lang/pl_PL/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/pl_PL/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/pl_PL/admin/nodes/settings.php b/lang/pl_PL/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/pl_PL/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/pl_PL/admin/servers/index.php b/lang/pl_PL/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/pl_PL/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/pl_PL/admin/servers/overview.php b/lang/pl_PL/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/pl_PL/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/pl_PL/admin/servers/settings.php b/lang/pl_PL/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/pl_PL/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/pl_PL/admin/tokens.php b/lang/pl_PL/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/pl_PL/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/pl_PL/admin/users.php b/lang/pl_PL/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/pl_PL/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/pl_PL/auth.php b/lang/pl_PL/auth.php new file mode 100644 index 00000000000..3a29eafd362 --- /dev/null +++ b/lang/pl_PL/auth.php @@ -0,0 +1,23 @@ + 'Podane dane nie są zgodne z naszymi danymi.', + 'password' => 'Wprowadzone hasło jest nieprawidłowe.', + 'throttle' => 'Zbyt wiele prób logowania. Spróbuj ponownie za :sekund sekund.', + + 'sign_in' => 'Zaloguj się', + 'sign_out' => 'Wyloguj się', + 'sign_in_description' => 'Zaloguj się na swoje konto', +]; diff --git a/lang/pl_PL/dashboard/index.php b/lang/pl_PL/dashboard/index.php new file mode 100644 index 00000000000..93149b27ef6 --- /dev/null +++ b/lang/pl_PL/dashboard/index.php @@ -0,0 +1,7 @@ + 'Pokaż wszystkie serwery', + 'no_servers_admin_empty_state' => 'Nie ma żadnych serwerów.', + 'no_servers_empty_state' => 'Nie posiadasz żadnych serwerów.', +]; diff --git a/lang/pl_PL/exceptions.php b/lang/pl_PL/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/pl_PL/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/pl_PL/pagination.php b/lang/pl_PL/pagination.php new file mode 100644 index 00000000000..07f9e5b468d --- /dev/null +++ b/lang/pl_PL/pagination.php @@ -0,0 +1,19 @@ + '« Wstecz', + 'next' => 'Następna »', + +]; diff --git a/lang/pl_PL/passwords.php b/lang/pl_PL/passwords.php new file mode 100644 index 00000000000..f742fec2e15 --- /dev/null +++ b/lang/pl_PL/passwords.php @@ -0,0 +1,22 @@ + 'Hasło zostało zresetowane!', + 'sent' => 'Link do resetowania hasła został wysłany na adres e-mail!', + 'throttled' => 'Poczekaj przed ponowną próbą.', + 'token' => 'Token resetowania hasła jest nieprawidłowy.', + 'user' => "Nie możemy znaleźć użytkownika z tym adresem e-mail.", + +]; diff --git a/lang/pl_PL/server/backups.php b/lang/pl_PL/server/backups.php new file mode 100644 index 00000000000..bd31bb2a773 --- /dev/null +++ b/lang/pl_PL/server/backups.php @@ -0,0 +1,30 @@ + 'Stwórz kopię', + 'empty_state' => 'Nie ma żadnych kopii', + 'counter_tooltip' => 'Wykonałeś :count z :max kopii zapasowych', + 'create_modal' => [ + 'title' => 'Tworzenie kopii zapasowej', + 'description' => 'Utworzenie kopii zapasowej spowoduje wykonanie kopii plików serwera. Może to trochę potrwać w zależności od wielkości serwera.', + 'compression_type' => 'Typ kompresji', + 'mode' => 'Tryb', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Wyłączony', + 'kill' => 'Wymuszony', + ], + ], + 'delete_modal' => [ + 'title' => 'Usunąć :name?', + 'description' => 'Czy na pewno chcesz usunąć kopię zapasową?', + ], + 'restore_modal' => [ + 'title' => 'Przywrócić z :name?', + 'description' => 'Czy na pewno chcesz przywrócić tę kopię zapasową?', + ], + 'notices' => [ + 'backup_deleted' => 'Usunięto :name', + 'backup_restored' => 'Rozpoczęto przywracanie serwera z :name', + ], +]; diff --git a/lang/pl_PL/server/overview.php b/lang/pl_PL/server/overview.php new file mode 100644 index 00000000000..e7a1bd378fb --- /dev/null +++ b/lang/pl_PL/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Uruchom ponownie', + 'kill' => 'Wymuś zatrzymanie', + 'shutdown' => 'Wyłącz', + ], + 'notices' => [ + 'power_action_sent_success' => 'Pomyślnie wysłano akcje. Przetwarzanie może chwilę potrwać.', + 'power_action_sent_fail' => 'Nie udało się wysłać zapytania.', + ], + + 'state' => 'Stan', + 'states' => [ + 'stopped' => 'Wyłączony', + 'running' => 'Włączony', + 'stopping' => 'Zatrzymywanie', + 'starting' => 'Uruchamianie', + 'shutting_down' => 'Wyłączanie', + ], + 'uptime' => 'Czas działania', + 'poll_status_error' => 'Nie udało się sprawdzić stanu serwera. Ponowna próba za 5 sekund...', + + 'terminal' => [ + 'title' => 'Zdalna konsola', + 'description' => 'Zdalne zarządzanie serwerem z poziomu strony.', + 'novnc_description' => 'Najlepsza pod względem kompatybilności, ale brakuje jej funkcji i wydajności.', + 'xtermjs_description' => 'Najlepsza pod względem wydajności, ale nie działa z każdym systemem.', + ], + + 'server_config' => [ + 'title' => 'Konfiguracja tego serwera', + 'description' => 'Jesteś administratorem! Możesz kliknąć poniżej, aby odwiedzić konfigurację tego serwera i wprowadzić zmiany.', + 'configure_server' => 'Skonfiguruj serwer', + ], +]; diff --git a/lang/pl_PL/server/settings.php b/lang/pl_PL/server/settings.php new file mode 100644 index 00000000000..9c2dbb092c5 --- /dev/null +++ b/lang/pl_PL/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'Z tym serwerem nie są powiązane żadne adresy.', + ], + 'display_info' => [ + 'title' => 'Nazwa serwera', + ], + 'reinstall' => [ + 'title' => 'Przeinstaluj serwer', + 'description' => 'Uruchom swój serwer na świeżo.', + 'start_server_after_installing' => 'Uruchom serwer po ukończeniu instalacji', + 'modal' => [ + 'title' => 'Potwierdź ponowną instalację', + 'description' => 'Czy na pewno chcesz ponownie przeinstalować ten serwer? Wszystkie dane zostaną utracone.', + ], + ], + 'isos' => [ + 'title' => 'Montowalne ISO', + 'empty' => 'Nie ma żadnych ISO', + ], + 'device_config' => [ + 'title' => 'Konfiguracja urządzenia', + 'current' => 'Bieżąca kolejność rozruchu (najwyższa zostanie użyta jako pierwsza)', + 'unused' => 'Nieużywane urządzenia', + 'unused_empty' => 'Nie ma nieużywanych urządzeń.', + 'no_boot_device_warning' => 'Brak opcji rozruchu. Maszyna się nie uruchomi.', + ], + 'nameservers' => [ + 'title' => 'Serwery DNS', + 'nameserver' => 'Serwer :index', + 'add' => 'Nowy serwer', + ], + 'auth' => [ + 'title' => 'Uwierzytelnianie', + ], + 'hardware' => [ + 'bandwidth_used' => 'Wykorzystana sieć', + 'bandwidth_alloted' => 'Przydzielona sieć', + ], +]; diff --git a/lang/pl_PL/strings.php b/lang/pl_PL/strings.php new file mode 100644 index 00000000000..0c9315655d4 --- /dev/null +++ b/lang/pl_PL/strings.php @@ -0,0 +1,110 @@ + 'E-mail', + 'password' => 'Hasło', + 'server' => 'Serwer', + 'server_one' => 'Serwer', + 'server_other' => 'Serwery', + 'name' => 'Nazwa', + 'node' => 'Węzeł', + 'node_one' => 'Węzeł', + 'node_other' => 'Węzły', + 'memory' => 'Pamięć', + 'cpu' => 'Procesor', + 'disk' => 'Dysk', + 'general' => 'Ogólne', + 'overview' => 'Zestawienie', + 'location' => 'Lokalizacja', + 'location_one' => 'Lokalizacja', + 'location_other' => 'Lokalizacje', + 'owner' => 'Właściciel', + 'user' => 'Użytkownik', + 'user_one' => 'Użytkownik', + 'user_other' => 'Użytkownicy', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokeny', + 'backup' => 'Kopia zapasowa', + 'backup_one' => 'Kopia zapasowa', + 'backup_other' => 'Kopie zapasowe', + 'setting' => 'Ustawienie', + 'setting_one' => 'Ustawienie', + 'setting_other' => 'Ustawienia', + 'search' => 'Wyszukaj', + 'admin_cp' => 'Panel administracyjny', + 'exit_admin_cp' => 'Opuść panel administracyjny', + 'suspended' => 'Zawieś', + 'network' => 'Sieć', + 'ip' => 'Adres IP', + 'address_one' => 'Adres', + 'address_other' => 'Adresy', + 'addressWithCount_one' => ':count adres', + 'addressWithCount_other' => ':count adresów', + 'gateway' => 'Bramka', + 'mac_address' => 'Adres MAC', + 'none' => 'Brak', + 'unlimited' => 'Nielimitowany', + 'launch' => 'Uruchom', + 'create' => 'Stwórz', + 'cancel' => 'Anuluj', + 'display_name' => 'Wyświetlana nazwa', + 'hostname' => 'Nazwa hosta', + 'reinstall' => 'Re instalacja', + 'template' => 'Szablon', + 'template_one' => 'Szablon', + 'template_other' => 'Szablony', + 'template_group' => 'Grupa szablonów', + 'system_os_password' => 'Hasło systemowe', + 'mount' => 'Zamontuj', + 'unmount' => 'Od montuj', + 'primary' => 'Główny', + 'media' => 'Media', + 'save' => 'Zapisz', + 'ssh_key' => 'Klucz SSH', + 'ssh_key_one' => 'Klucz SSH', + 'ssh_key_other' => 'Klucze SSH', + 'version' => 'Wersja :version', + 'description' => 'Opis', + 'visibility' => 'Widoczność', + 'hidden' => 'Ukryty', + 'size' => 'Rozmiar', + 'type' => 'Typ', + 'delete' => 'Usuń', + 'hardware' => 'Sprzęt', + 'status' => 'Status', + 'bandwidth_usage' => 'Wykorzystanie sieci', + 'administrator' => 'Administrator', + 'last_used' => 'Ostatnie użycie', + 'success' => 'Sukces', + 'error' => 'Błąd', + 'restore' => 'Przywróć', + 'english_chars' => 'Znaki klawiatury angielskiej', + 'confirm' => 'Potwierdź', + 'saving' => 'Zapisywanie...', + 'saved' => 'Zapisano', + 'primary_disk' => 'Główny dysk', + 'nameserver' => 'Serwer DNS', + 'nameserver_one' => 'Serwer DNS', + 'nameserver_other' => 'Serwery DNS', + 'new' => 'Nowy', + 'add' => 'Dodaj', + 'authentication' => 'Uwierzytelnianie', + 'edit' => 'Edytuj', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISA', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'Nazwa pliku', + 'query' => 'Zapytanie do linku', + 'import' => 'Import', + 'download' => 'Pobierz', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Pojedyńczy', + 'multiple' => 'Wiele', +]; diff --git a/lang/pl_PL/validation.php b/lang/pl_PL/validation.php new file mode 100644 index 00000000000..09c2ddaed1b --- /dev/null +++ b/lang/pl_PL/validation.php @@ -0,0 +1,178 @@ + 'Należy zaakceptować :attribute.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/pl_PL/zod.php b/lang/pl_PL/zod.php new file mode 100644 index 00000000000..ef6f5db1099 --- /dev/null +++ b/lang/pl_PL/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Oczekiwano {{expected}}, otrzymano {{received}}', + 'invalid_type_received_undefined' => 'Wymagane', + 'invalid_literal' => 'Nieprawidłowa wartość, oczekiwana {{expected}}', + 'unrecognized_keys' => 'Nierozpoznane klucze w obiekcie: {{- keys}}', + 'invalid_union' => 'Nieprawidłowe dane', + 'invalid_union_discriminator' => 'Nieprawidłowa wartość, oczekiwana {{- options}}', + 'invalid_enum_value' => 'Nieprawidłowa wartość. Oczekiwano {{- options}}, otrzymano \'{{received}}\'', + 'invalid_arguments' => 'Nieprawidłowe argumenty', + 'invalid_return_type' => 'Nieprawidłowy typ zwróconej funkcji', + 'invalid_date' => 'Nieprawidłowa data', + 'custom' => 'Nieprawidłowe dane', + 'invalid_intersection_types' => 'Nie można połączyć wyników', + 'not_multiple_of' => 'Liczba musi być wielokrotnością liczby {{multipleOf}}', + 'not_finite' => 'Liczba musi być skończona', + 'invalid_string' => [ + 'email' => 'Nieprawidłowe {{validation}}', + 'url' => 'Nieprawidłowe {{validation}}', + 'uuid' => 'Nieprawidłowe {{validation}}', + 'cuid' => 'Nieprawidłowe {{validation}}', + 'regex' => 'Nieprawidłowe', + 'datetime' => 'Nieprawidłowe {{validation}}', + 'startsWith' => 'Nieprawidłowe dane: muszą się zacząć z "{{startsWith}}"', + 'endsWith' => 'Nieprawidłowe dane: muszą się kończyć z "{{endsWith}}"', + 'hostname' => 'Nieprawidłowe {{validation}}', + 'english_keyboard_characters' => 'Nieprawidłowe {{validation}}', + 'password' => 'Musi zawierać 8 znaków, jedną wielką literę, jedną małą literę, jedną cyfrę i jeden znak specjalny', + 'ip_address' => 'Nieprawidłowy adres IP', + 'mac_address' => 'Nieprawidłowy adres MAC', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Lista musi zawierać dokładnie {{minimum}} elementów', + 'inclusive' => 'Lista musi zawierać co najmniej {{minimum}} elementów', + 'not_inclusive' => 'Lista musi zawierać więcej niż {{minimum}} elementów', + ], + 'string' => [ + 'exact' => 'Tekst musi zawierać dokładnie {{minimum}} znaków', + 'inclusive' => 'Tekst musi zawierać co najmniej {{minimum}} znaków', + 'not_inclusive' => 'Tekst musi zawierać więcej niż {{minimum}} znaków', + ], + 'number' => [ + 'exact' => 'Liczba musi wynosić dokładnie {{minimum}}', + 'inclusive' => 'Liczba musi być większa lub równa {{minimum}}', + 'not_inclusive' => 'Liczba musi być większa od {{minimum}}', + ], + 'set' => [ + 'exact' => 'Nieprawidłowe dane', + 'inclusive' => 'Nieprawidłowe dane', + 'not_inclusive' => 'Nieprawidłowe dane', + ], + 'date' => [ + 'exact' => 'Data musi być dokładna {{- minimum, datetime}}', + 'inclusive' => 'Data musi być większa lub równa od {{- minimum, datetime}}', + 'not_inclusive' => 'Data musi być większa od {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Lista musi zawierać dokładnie {{maximum}} elementów', + 'inclusive' => 'Lista musi zawierać co najwyżej {{maximum}} elementów', + 'not_inclusive' => 'Lista musi zawierać mniej niż {{maximum}} elementów', + ], + 'string' => [ + 'exact' => 'Tekst musi zawierać dokładnie {{maximum}} znaków', + 'inclusive' => 'Tekst musi zawierać co najwyżej {{maximum}} znaków', + 'not_inclusive' => 'Tekst musi zawierać mniej niż {{maximum}} znaków', + ], + 'number' => [ + 'exact' => 'Liczba musi wynosić dokładnie {{maximum}}', + 'inclusive' => 'Liczba musi być mniejsza lub równa {{maximum}}', + 'not_inclusive' => 'Liczba musi być mniejsza od {{maximum}}', + ], + 'set' => [ + 'exact' => 'Nieprawidłowe dane', + 'inclusive' => 'Nieprawidłowe dane', + 'not_inclusive' => 'Nieprawidłowe dane', + ], + 'date' => [ + 'exact' => 'Data musi być dokładna {{- maximum, datetime}}', + 'inclusive' => 'Data musi być mniejsza lub równa od {{- maximum, datetime}}', + 'not_inclusive' => 'Data musi być mniejsza od {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/pt_BR/admin/addressPools/addresses.php b/lang/pt_BR/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/pt_BR/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/pt_BR/admin/addressPools/index.php b/lang/pt_BR/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/pt_BR/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/pt_BR/admin/locations.php b/lang/pt_BR/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/pt_BR/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/pt_BR/admin/nodes/addressPools.php b/lang/pt_BR/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/pt_BR/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/pt_BR/admin/nodes/index.php b/lang/pt_BR/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/pt_BR/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/pt_BR/admin/nodes/isos.php b/lang/pt_BR/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/pt_BR/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/pt_BR/admin/nodes/settings.php b/lang/pt_BR/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/pt_BR/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/pt_BR/admin/servers/index.php b/lang/pt_BR/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/pt_BR/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/pt_BR/admin/servers/overview.php b/lang/pt_BR/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/pt_BR/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/pt_BR/admin/servers/settings.php b/lang/pt_BR/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/pt_BR/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/pt_BR/admin/tokens.php b/lang/pt_BR/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/pt_BR/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/pt_BR/admin/users.php b/lang/pt_BR/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/pt_BR/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/pt_BR/auth.php b/lang/pt_BR/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/pt_BR/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/pt_BR/dashboard/index.php b/lang/pt_BR/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/pt_BR/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/pt_BR/exceptions.php b/lang/pt_BR/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/pt_BR/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/pt_BR/pagination.php b/lang/pt_BR/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/pt_BR/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/pt_BR/passwords.php b/lang/pt_BR/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/pt_BR/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/pt_BR/server/backups.php b/lang/pt_BR/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/pt_BR/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/pt_BR/server/overview.php b/lang/pt_BR/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/pt_BR/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/pt_BR/server/settings.php b/lang/pt_BR/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/pt_BR/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/pt_BR/strings.php b/lang/pt_BR/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/pt_BR/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/pt_BR/validation.php b/lang/pt_BR/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/pt_BR/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/pt_BR/zod.php b/lang/pt_BR/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/pt_BR/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/pt_PT/admin/addressPools/addresses.php b/lang/pt_PT/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/pt_PT/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/pt_PT/admin/addressPools/index.php b/lang/pt_PT/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/pt_PT/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/pt_PT/admin/locations.php b/lang/pt_PT/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/pt_PT/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/pt_PT/admin/nodes/addressPools.php b/lang/pt_PT/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/pt_PT/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/pt_PT/admin/nodes/index.php b/lang/pt_PT/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/pt_PT/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/pt_PT/admin/nodes/isos.php b/lang/pt_PT/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/pt_PT/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/pt_PT/admin/nodes/settings.php b/lang/pt_PT/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/pt_PT/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/pt_PT/admin/servers/index.php b/lang/pt_PT/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/pt_PT/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/pt_PT/admin/servers/overview.php b/lang/pt_PT/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/pt_PT/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/pt_PT/admin/servers/settings.php b/lang/pt_PT/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/pt_PT/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/pt_PT/admin/tokens.php b/lang/pt_PT/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/pt_PT/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/pt_PT/admin/users.php b/lang/pt_PT/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/pt_PT/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/pt_PT/auth.php b/lang/pt_PT/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/pt_PT/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/pt_PT/dashboard/index.php b/lang/pt_PT/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/pt_PT/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/pt_PT/exceptions.php b/lang/pt_PT/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/pt_PT/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/pt_PT/pagination.php b/lang/pt_PT/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/pt_PT/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/pt_PT/passwords.php b/lang/pt_PT/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/pt_PT/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/pt_PT/server/backups.php b/lang/pt_PT/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/pt_PT/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/pt_PT/server/overview.php b/lang/pt_PT/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/pt_PT/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/pt_PT/server/settings.php b/lang/pt_PT/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/pt_PT/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/pt_PT/strings.php b/lang/pt_PT/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/pt_PT/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/pt_PT/validation.php b/lang/pt_PT/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/pt_PT/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/pt_PT/zod.php b/lang/pt_PT/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/pt_PT/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/ro_RO/admin/addressPools/addresses.php b/lang/ro_RO/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/ro_RO/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/ro_RO/admin/addressPools/index.php b/lang/ro_RO/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/ro_RO/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/ro_RO/admin/locations.php b/lang/ro_RO/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/ro_RO/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/ro_RO/admin/nodes/addressPools.php b/lang/ro_RO/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/ro_RO/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/ro_RO/admin/nodes/index.php b/lang/ro_RO/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/ro_RO/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/ro_RO/admin/nodes/isos.php b/lang/ro_RO/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/ro_RO/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/ro_RO/admin/nodes/settings.php b/lang/ro_RO/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/ro_RO/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/ro_RO/admin/servers/index.php b/lang/ro_RO/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/ro_RO/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/ro_RO/admin/servers/overview.php b/lang/ro_RO/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/ro_RO/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/ro_RO/admin/servers/settings.php b/lang/ro_RO/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/ro_RO/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/ro_RO/admin/tokens.php b/lang/ro_RO/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/ro_RO/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/ro_RO/admin/users.php b/lang/ro_RO/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/ro_RO/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/ro_RO/auth.php b/lang/ro_RO/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/ro_RO/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/ro_RO/dashboard/index.php b/lang/ro_RO/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/ro_RO/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/ro_RO/exceptions.php b/lang/ro_RO/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/ro_RO/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/ro_RO/pagination.php b/lang/ro_RO/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/ro_RO/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/ro_RO/passwords.php b/lang/ro_RO/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/ro_RO/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/ro_RO/server/backups.php b/lang/ro_RO/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/ro_RO/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/ro_RO/server/overview.php b/lang/ro_RO/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/ro_RO/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/ro_RO/server/settings.php b/lang/ro_RO/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/ro_RO/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/ro_RO/strings.php b/lang/ro_RO/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/ro_RO/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/ro_RO/validation.php b/lang/ro_RO/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/ro_RO/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/ro_RO/zod.php b/lang/ro_RO/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/ro_RO/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/ru_RU/admin/addressPools/addresses.php b/lang/ru_RU/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/ru_RU/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/ru_RU/admin/addressPools/index.php b/lang/ru_RU/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/ru_RU/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/ru_RU/admin/locations.php b/lang/ru_RU/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/ru_RU/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/ru_RU/admin/nodes/addressPools.php b/lang/ru_RU/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/ru_RU/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/ru_RU/admin/nodes/index.php b/lang/ru_RU/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/ru_RU/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/ru_RU/admin/nodes/isos.php b/lang/ru_RU/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/ru_RU/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/ru_RU/admin/nodes/settings.php b/lang/ru_RU/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/ru_RU/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/ru_RU/admin/servers/index.php b/lang/ru_RU/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/ru_RU/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/ru_RU/admin/servers/overview.php b/lang/ru_RU/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/ru_RU/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/ru_RU/admin/servers/settings.php b/lang/ru_RU/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/ru_RU/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/ru_RU/admin/tokens.php b/lang/ru_RU/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/ru_RU/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/ru_RU/admin/users.php b/lang/ru_RU/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/ru_RU/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/ru_RU/auth.php b/lang/ru_RU/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/ru_RU/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/ru_RU/dashboard/index.php b/lang/ru_RU/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/ru_RU/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/ru_RU/exceptions.php b/lang/ru_RU/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/ru_RU/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/ru_RU/pagination.php b/lang/ru_RU/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/ru_RU/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/ru_RU/passwords.php b/lang/ru_RU/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/ru_RU/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/ru_RU/server/backups.php b/lang/ru_RU/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/ru_RU/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/ru_RU/server/overview.php b/lang/ru_RU/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/ru_RU/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/ru_RU/server/settings.php b/lang/ru_RU/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/ru_RU/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/ru_RU/strings.php b/lang/ru_RU/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/ru_RU/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/ru_RU/validation.php b/lang/ru_RU/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/ru_RU/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/ru_RU/zod.php b/lang/ru_RU/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/ru_RU/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/sr_SP/admin/addressPools/addresses.php b/lang/sr_SP/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/sr_SP/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/sr_SP/admin/addressPools/index.php b/lang/sr_SP/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/sr_SP/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/sr_SP/admin/locations.php b/lang/sr_SP/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/sr_SP/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/sr_SP/admin/nodes/addressPools.php b/lang/sr_SP/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/sr_SP/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/sr_SP/admin/nodes/index.php b/lang/sr_SP/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/sr_SP/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/sr_SP/admin/nodes/isos.php b/lang/sr_SP/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/sr_SP/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/sr_SP/admin/nodes/settings.php b/lang/sr_SP/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/sr_SP/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/sr_SP/admin/servers/index.php b/lang/sr_SP/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/sr_SP/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/sr_SP/admin/servers/overview.php b/lang/sr_SP/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/sr_SP/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/sr_SP/admin/servers/settings.php b/lang/sr_SP/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/sr_SP/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/sr_SP/admin/tokens.php b/lang/sr_SP/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/sr_SP/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/sr_SP/admin/users.php b/lang/sr_SP/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/sr_SP/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/sr_SP/auth.php b/lang/sr_SP/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/sr_SP/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/sr_SP/dashboard/index.php b/lang/sr_SP/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/sr_SP/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/sr_SP/exceptions.php b/lang/sr_SP/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/sr_SP/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/sr_SP/pagination.php b/lang/sr_SP/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/sr_SP/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/sr_SP/passwords.php b/lang/sr_SP/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/sr_SP/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/sr_SP/server/backups.php b/lang/sr_SP/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/sr_SP/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/sr_SP/server/overview.php b/lang/sr_SP/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/sr_SP/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/sr_SP/server/settings.php b/lang/sr_SP/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/sr_SP/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/sr_SP/strings.php b/lang/sr_SP/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/sr_SP/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/sr_SP/validation.php b/lang/sr_SP/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/sr_SP/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/sr_SP/zod.php b/lang/sr_SP/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/sr_SP/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/sv_SE/admin/addressPools/addresses.php b/lang/sv_SE/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/sv_SE/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/sv_SE/admin/addressPools/index.php b/lang/sv_SE/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/sv_SE/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/sv_SE/admin/locations.php b/lang/sv_SE/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/sv_SE/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/sv_SE/admin/nodes/addressPools.php b/lang/sv_SE/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/sv_SE/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/sv_SE/admin/nodes/index.php b/lang/sv_SE/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/sv_SE/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/sv_SE/admin/nodes/isos.php b/lang/sv_SE/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/sv_SE/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/sv_SE/admin/nodes/settings.php b/lang/sv_SE/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/sv_SE/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/sv_SE/admin/servers/index.php b/lang/sv_SE/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/sv_SE/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/sv_SE/admin/servers/overview.php b/lang/sv_SE/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/sv_SE/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/sv_SE/admin/servers/settings.php b/lang/sv_SE/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/sv_SE/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/sv_SE/admin/tokens.php b/lang/sv_SE/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/sv_SE/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/sv_SE/admin/users.php b/lang/sv_SE/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/sv_SE/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/sv_SE/auth.php b/lang/sv_SE/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/sv_SE/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/sv_SE/dashboard/index.php b/lang/sv_SE/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/sv_SE/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/sv_SE/exceptions.php b/lang/sv_SE/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/sv_SE/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/sv_SE/pagination.php b/lang/sv_SE/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/sv_SE/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/sv_SE/passwords.php b/lang/sv_SE/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/sv_SE/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/sv_SE/server/backups.php b/lang/sv_SE/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/sv_SE/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/sv_SE/server/overview.php b/lang/sv_SE/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/sv_SE/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/sv_SE/server/settings.php b/lang/sv_SE/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/sv_SE/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/sv_SE/strings.php b/lang/sv_SE/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/sv_SE/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/sv_SE/validation.php b/lang/sv_SE/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/sv_SE/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/sv_SE/zod.php b/lang/sv_SE/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/sv_SE/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/tr_TR/admin/addressPools/addresses.php b/lang/tr_TR/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/tr_TR/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/tr_TR/admin/addressPools/index.php b/lang/tr_TR/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/tr_TR/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/tr_TR/admin/locations.php b/lang/tr_TR/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/tr_TR/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/tr_TR/admin/nodes/addressPools.php b/lang/tr_TR/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/tr_TR/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/tr_TR/admin/nodes/index.php b/lang/tr_TR/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/tr_TR/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/tr_TR/admin/nodes/isos.php b/lang/tr_TR/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/tr_TR/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/tr_TR/admin/nodes/settings.php b/lang/tr_TR/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/tr_TR/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/tr_TR/admin/servers/index.php b/lang/tr_TR/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/tr_TR/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/tr_TR/admin/servers/overview.php b/lang/tr_TR/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/tr_TR/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/tr_TR/admin/servers/settings.php b/lang/tr_TR/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/tr_TR/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/tr_TR/admin/tokens.php b/lang/tr_TR/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/tr_TR/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/tr_TR/admin/users.php b/lang/tr_TR/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/tr_TR/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/tr_TR/auth.php b/lang/tr_TR/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/tr_TR/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/tr_TR/dashboard/index.php b/lang/tr_TR/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/tr_TR/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/tr_TR/exceptions.php b/lang/tr_TR/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/tr_TR/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/tr_TR/pagination.php b/lang/tr_TR/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/tr_TR/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/tr_TR/passwords.php b/lang/tr_TR/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/tr_TR/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/tr_TR/server/backups.php b/lang/tr_TR/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/tr_TR/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/tr_TR/server/overview.php b/lang/tr_TR/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/tr_TR/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/tr_TR/server/settings.php b/lang/tr_TR/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/tr_TR/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/tr_TR/strings.php b/lang/tr_TR/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/tr_TR/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/tr_TR/validation.php b/lang/tr_TR/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/tr_TR/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/tr_TR/zod.php b/lang/tr_TR/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/tr_TR/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/uk_UA/admin/addressPools/addresses.php b/lang/uk_UA/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/uk_UA/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/uk_UA/admin/addressPools/index.php b/lang/uk_UA/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/uk_UA/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/uk_UA/admin/locations.php b/lang/uk_UA/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/uk_UA/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/uk_UA/admin/nodes/addressPools.php b/lang/uk_UA/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/uk_UA/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/uk_UA/admin/nodes/index.php b/lang/uk_UA/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/uk_UA/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/uk_UA/admin/nodes/isos.php b/lang/uk_UA/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/uk_UA/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/uk_UA/admin/nodes/settings.php b/lang/uk_UA/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/uk_UA/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/uk_UA/admin/servers/index.php b/lang/uk_UA/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/uk_UA/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/uk_UA/admin/servers/overview.php b/lang/uk_UA/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/uk_UA/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/uk_UA/admin/servers/settings.php b/lang/uk_UA/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/uk_UA/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/uk_UA/admin/tokens.php b/lang/uk_UA/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/uk_UA/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/uk_UA/admin/users.php b/lang/uk_UA/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/uk_UA/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/uk_UA/auth.php b/lang/uk_UA/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/uk_UA/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/uk_UA/dashboard/index.php b/lang/uk_UA/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/uk_UA/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/uk_UA/exceptions.php b/lang/uk_UA/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/uk_UA/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/uk_UA/pagination.php b/lang/uk_UA/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/uk_UA/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/uk_UA/passwords.php b/lang/uk_UA/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/uk_UA/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/uk_UA/server/backups.php b/lang/uk_UA/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/uk_UA/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/uk_UA/server/overview.php b/lang/uk_UA/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/uk_UA/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/uk_UA/server/settings.php b/lang/uk_UA/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/uk_UA/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/uk_UA/strings.php b/lang/uk_UA/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/uk_UA/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/uk_UA/validation.php b/lang/uk_UA/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/uk_UA/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/uk_UA/zod.php b/lang/uk_UA/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/uk_UA/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/vi_VN/admin/addressPools/addresses.php b/lang/vi_VN/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92d939fa902 --- /dev/null +++ b/lang/vi_VN/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Tạo địa chỉ', + 'create_modal' => [ + 'title' => 'Tạo địa chỉ', + 'starting_address' => 'Địa chỉ bắt đầu của dãy', + 'ending_address' => 'Địa chỉ kết thúc của dãy', + ], + 'assigned_server' => 'Máy chủ được chỉ định để sử dụng', + 'edit_modal' => [ + 'title' => 'Chỉnh sửa địa chỉ', + ], + 'delete_modal' => [ + 'title' => 'Xóa địa chỉ?', + 'description' => 'Bạn có chắc muốn xóa: địa chỉ?', + ], +]; \ No newline at end of file diff --git a/lang/vi_VN/admin/addressPools/index.php b/lang/vi_VN/admin/addressPools/index.php new file mode 100644 index 00000000000..6cfeea1e8fe --- /dev/null +++ b/lang/vi_VN/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Tạo bể', + 'delete_modal' => [ + 'title' => 'Xóa: name?', + 'description' => 'Bạn có chắc muốn xóa bể địa chỉ?', + 'nodes_linked_error' => 'Bể này không thể xóa cho đến khi các node được ngắt liên kết.' + ], + 'edit_modal' => [ + 'title' => 'Đang chỉnh sửa: name', + ], + 'nodes_nothing_found' => 'Không tìm thấy node nào', +]; \ No newline at end of file diff --git a/lang/vi_VN/admin/locations.php b/lang/vi_VN/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/vi_VN/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/vi_VN/admin/nodes/addressPools.php b/lang/vi_VN/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/vi_VN/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/vi_VN/admin/nodes/index.php b/lang/vi_VN/admin/nodes/index.php new file mode 100644 index 00000000000..14a46b06666 --- /dev/null +++ b/lang/vi_VN/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Tạo Node', + 'create_modal' => [ + 'title' => 'Tạo một node', + ], + + 'location_group' => 'Nhóm vị trí', + 'pve_name' => 'Tên Node trong Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/vi_VN/admin/nodes/isos.php b/lang/vi_VN/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/vi_VN/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/vi_VN/admin/nodes/settings.php b/lang/vi_VN/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/vi_VN/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/vi_VN/admin/servers/index.php b/lang/vi_VN/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/vi_VN/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/vi_VN/admin/servers/overview.php b/lang/vi_VN/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/vi_VN/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/vi_VN/admin/servers/settings.php b/lang/vi_VN/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/vi_VN/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/vi_VN/admin/tokens.php b/lang/vi_VN/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/vi_VN/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/vi_VN/admin/users.php b/lang/vi_VN/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/vi_VN/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/vi_VN/auth.php b/lang/vi_VN/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/vi_VN/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/vi_VN/dashboard/index.php b/lang/vi_VN/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/vi_VN/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/vi_VN/exceptions.php b/lang/vi_VN/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/vi_VN/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/vi_VN/pagination.php b/lang/vi_VN/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/vi_VN/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/vi_VN/passwords.php b/lang/vi_VN/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/vi_VN/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/vi_VN/server/backups.php b/lang/vi_VN/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/vi_VN/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/vi_VN/server/overview.php b/lang/vi_VN/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/vi_VN/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/vi_VN/server/settings.php b/lang/vi_VN/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/vi_VN/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/vi_VN/strings.php b/lang/vi_VN/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/vi_VN/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/vi_VN/validation.php b/lang/vi_VN/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/vi_VN/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/vi_VN/zod.php b/lang/vi_VN/zod.php new file mode 100644 index 00000000000..c7d89fdefd9 --- /dev/null +++ b/lang/vi_VN/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Cần {{expected}} nhưng nhận được {{received}}', + 'invalid_type_received_undefined' => 'Bắt buộc', + 'invalid_literal' => 'Dữ liệu sai định dạng, cần {{expected}}', + 'unrecognized_keys' => 'Key(s) sai định dạng ở object {{- keys}}', + 'invalid_union' => 'Dữ liệu đầu vào không hợp lệ', + 'invalid_union_discriminator' => 'Giá trị của discriminator không hợp lệ, Cần {{- options}}', + 'invalid_enum_value' => 'Giá trị của enum không hợp lệ, Cần {{- options}} nhưng nhận được{{received}}', + 'invalid_arguments' => 'Dữ liệu đầu vào của hàm không hợp lệ', + 'invalid_return_type' => 'Kiểu dữ liệu đầu ra của hàm không hợp lệ', + 'invalid_date' => 'Ngày sai định dạng', + 'custom' => 'Dữ liệu đầu vào không hợp lệ', + 'invalid_intersection_types' => 'Kết quả của phần giao không thể được gộp', + 'not_multiple_of' => 'Số phải là kết quả của {{multipleOf}}', + 'not_finite' => 'Số phải là số hữu hạn', + 'invalid_string' => [ + 'email' => '{{validation}} không hợp lệ', + 'url' => '{{validation}} không hợp lệ', + 'uuid' => '{{validation}} không hợp lệ', + 'cuid' => '{{validation}} không hợp lệ', + 'regex' => 'Không hợp lệ', + 'datetime' => '{{validation}} không hợp lệ', + 'startsWith' => 'Dữ liệu đầu vào không hợp lệ, phải bắt đầu với "{{startsWith}}"', + 'endsWith' => 'Dữ liệu đầu vào không hợp lệ, phải kết thúc bằng "{{endsWith}}"', + 'hostname' => '{{validation}} không hợp lệ', + 'english_keyboard_characters' => '{{validation}} không hợp lệ', + 'password' => 'Phải gồm 8 chữ cái, một chữ cái in hoa, một chữ cái viết thường, một số và một ký tự đặc biệt', + 'ip_address' => 'Địa chỉ IP không hợp lệ', + 'mac_address' => 'Địa chỉ Mac không hợp lệ', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Dãy cần {{minimum}} phần tử', + 'inclusive' => 'Dãy cần bao gồm ít nhất {{minimum}} phần tử', + 'not_inclusive' => 'Dãy cần bao gồm nhiều nhất {{minimum}} phần tử', + ], + 'string' => [ + 'exact' => 'Dãy ký tự cần {{minimum}} ký tự', + 'inclusive' => 'Dãy ký tự cần ít nhất {{minimum}} ký tự', + 'not_inclusive' => 'Dãy ký tự cần nhiều nhất {{minimum}} ký tự', + ], + 'number' => [ + 'exact' => 'Số phải bằng với {{minimum}}', + 'inclusive' => 'Số phải lớn hơn hoặc bằng với {{minimum}}', + 'not_inclusive' => 'Số phải lớn hơn {{minimum}}', + ], + 'set' => [ + 'exact' => 'Dữ liệu đầu vào không hợp lệ', + 'inclusive' => 'Dữ liệu đầu vào không hợp lệ', + 'not_inclusive' => 'Dữ liệu đầu vào không hợp lệ', + ], + 'date' => [ + 'exact' => 'Ngày phải trùng với {{- minimum, datetime}}', + 'inclusive' => 'Ngày phải lớn hơn hoặc bằng với {{- minimum, datetime}}', + 'not_inclusive' => 'Ngày phải lớn hơn {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Dãy cần {{maximum}} phần tử', + 'inclusive' => 'Dãy cần ít nhất {{maximum}} phần tử', + 'not_inclusive' => 'Dãy cần ít hơn {{maximum}} phần tử', + ], + 'string' => [ + 'exact' => 'Dãy ký tự cần phải dài bằng với {{maximum}} ký tự', + 'inclusive' => 'Dãy ký tự cần nhiều nhất {{maximum}} ký tự', + 'not_inclusive' => 'Dãy ký tự cần phải dưới {{maximum}} ký tự', + ], + 'number' => [ + 'exact' => 'Số phải bằng với {{maximum}}', + 'inclusive' => 'Số phải bé hơn hoặc bằng với {{maximum}}', + 'not_inclusive' => 'Số phải bé hơn {{maximum}}', + ], + 'set' => [ + 'exact' => 'Dữ liệu đầu vào không hợp lệ', + 'inclusive' => 'Dữ liệu đầu vào không hợp lệ', + 'not_inclusive' => 'Dữ liệu đầu vào không hợp lệ', + ], + 'date' => [ + 'exact' => 'Ngày phải trùng với {{- maximum, datetime}}', + 'inclusive' => 'Ngày phải bé hơn hoặc bằng với {{- maximum, datetime}}', + 'not_inclusive' => 'Ngày phải bé hơn {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'biểu thức', + 'datetime' => 'ngày giờ', + ], + 'types' => [ + 'function' => 'hàm', + 'number' => 'số', + 'string' => 'dãy kí tự', + 'nan' => 'nan', + 'integer' => 'số tự nhiên', + 'float' => 'số thực', + 'boolean' => 'kiểu logic', + 'date' => 'ngày', + 'bigint' => 'số tự nhiên lớn', + 'undefined' => 'không xác định', + 'symbol' => 'kí hiệu', + 'null' => 'null', + 'array' => 'dãy', + 'object' => 'object', + 'unknown' => 'không xác định', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'không bao giờ', + 'map' => 'map', + 'set' => 'đặt', + ], +]; diff --git a/lang/zh_CN/admin/addressPools/addresses.php b/lang/zh_CN/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/zh_CN/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/zh_CN/admin/addressPools/index.php b/lang/zh_CN/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/zh_CN/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/zh_CN/admin/locations.php b/lang/zh_CN/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/zh_CN/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/zh_CN/admin/nodes/addressPools.php b/lang/zh_CN/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/zh_CN/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/zh_CN/admin/nodes/index.php b/lang/zh_CN/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/zh_CN/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/zh_CN/admin/nodes/isos.php b/lang/zh_CN/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/zh_CN/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/zh_CN/admin/nodes/settings.php b/lang/zh_CN/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/zh_CN/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/zh_CN/admin/servers/index.php b/lang/zh_CN/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/zh_CN/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/zh_CN/admin/servers/overview.php b/lang/zh_CN/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/zh_CN/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/zh_CN/admin/servers/settings.php b/lang/zh_CN/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/zh_CN/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/zh_CN/admin/tokens.php b/lang/zh_CN/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/zh_CN/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/zh_CN/admin/users.php b/lang/zh_CN/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/zh_CN/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/zh_CN/auth.php b/lang/zh_CN/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/zh_CN/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/zh_CN/dashboard/index.php b/lang/zh_CN/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/zh_CN/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/zh_CN/exceptions.php b/lang/zh_CN/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/zh_CN/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/zh_CN/pagination.php b/lang/zh_CN/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/zh_CN/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/zh_CN/passwords.php b/lang/zh_CN/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/zh_CN/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/zh_CN/server/backups.php b/lang/zh_CN/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/zh_CN/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/zh_CN/server/overview.php b/lang/zh_CN/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/zh_CN/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/zh_CN/server/settings.php b/lang/zh_CN/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/zh_CN/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/zh_CN/strings.php b/lang/zh_CN/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/zh_CN/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/zh_CN/validation.php b/lang/zh_CN/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/zh_CN/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/zh_CN/zod.php b/lang/zh_CN/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/zh_CN/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +]; diff --git a/lang/zh_TW/admin/addressPools/addresses.php b/lang/zh_TW/admin/addressPools/addresses.php new file mode 100644 index 00000000000..92f12d2eef0 --- /dev/null +++ b/lang/zh_TW/admin/addressPools/addresses.php @@ -0,0 +1,18 @@ + 'Create Address', + 'create_modal' => [ + 'title' => 'Create Address', + 'starting_address' => 'Starting Address', + 'ending_address' => 'Ending Address', + ], + 'assigned_server' => 'Assigned Server', + 'edit_modal' => [ + 'title' => 'Editing Address', + ], + 'delete_modal' => [ + 'title' => 'Delete Address?', + 'description' => 'Are you sure you want to delete :address?', + ], +]; \ No newline at end of file diff --git a/lang/zh_TW/admin/addressPools/index.php b/lang/zh_TW/admin/addressPools/index.php new file mode 100644 index 00000000000..ae7551b3cad --- /dev/null +++ b/lang/zh_TW/admin/addressPools/index.php @@ -0,0 +1,14 @@ + 'Create Pool', + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this pool?', + 'nodes_linked_error' => 'This pool cannot be deleted until all nodes are unlinked.' + ], + 'edit_modal' => [ + 'title' => 'Editing :name', + ], + 'nodes_nothing_found' => 'No nodes found', +]; \ No newline at end of file diff --git a/lang/zh_TW/admin/locations.php b/lang/zh_TW/admin/locations.php new file mode 100644 index 00000000000..003ac84f5b8 --- /dev/null +++ b/lang/zh_TW/admin/locations.php @@ -0,0 +1,9 @@ + 'Short Code', + 'create_location' => 'Create Location', + 'create_modal' => [ + 'title' => 'Create a Location', + ], +]; diff --git a/lang/zh_TW/admin/nodes/addressPools.php b/lang/zh_TW/admin/nodes/addressPools.php new file mode 100644 index 00000000000..a6ca9f750de --- /dev/null +++ b/lang/zh_TW/admin/nodes/addressPools.php @@ -0,0 +1,5 @@ + 'Create Pool', +]; \ No newline at end of file diff --git a/lang/zh_TW/admin/nodes/index.php b/lang/zh_TW/admin/nodes/index.php new file mode 100644 index 00000000000..a5578d9aae9 --- /dev/null +++ b/lang/zh_TW/admin/nodes/index.php @@ -0,0 +1,40 @@ + 'Create Node', + 'create_modal' => [ + 'title' => 'Create a Node', + ], + + 'location_group' => 'Location Group', + 'pve_name' => 'Node Name In Proxmox', + 'override_creds' => 'Override credentials', + 'creds_warning' => 'Please disable privilege separation and grant root privileges.', + 'token_id' => 'Token ID', + 'secret' => 'Secret', + 'memory_allocation' => 'Memory Allocation', + 'memory_overallocation' => 'Memory Overallocation', + 'disk_allocation' => 'Disk Allocation', + 'disk_overallocation' => 'Disk Overallocation', + 'vm_storage' => 'VM Storage', + 'backup_storage' => 'Backup Storage', + 'iso_storage' => 'ISO Storage', + + 'create_template_modal' => [ + 'title' => 'Create a Template', + ], + 'new_template' => 'New Template', + 'create_template_group_modal' => [ + 'title' => 'Create a Template Group', + ], + 'new_template_group' => 'New Template Group', + + 'node_info' => [ + 'title' => 'Node Information', + ], + 'delete_node' => [ + 'title' => 'Delete Node', + 'description' => 'The node will be permanently deleted from Convoy. This action is irreversible and can not be undone.', + 'has_servers_error' => 'You cannot delete a node that has servers assigned to it.', + ], +]; diff --git a/lang/zh_TW/admin/nodes/isos.php b/lang/zh_TW/admin/nodes/isos.php new file mode 100644 index 00000000000..101ca304dc3 --- /dev/null +++ b/lang/zh_TW/admin/nodes/isos.php @@ -0,0 +1,12 @@ + 'Create ISO', + 'checksum_algorithm' => 'Checksum Algorithm', + 'checksum' => 'Checksum', + 'create_modal' => [ + 'title' => 'Create an ISO', + 'non_iso_file_name_error' => 'The file extension must end in .iso', + 'fail_to_query_remote_file_error' => 'Failed to query remote file.', + ], +]; \ No newline at end of file diff --git a/lang/zh_TW/admin/nodes/settings.php b/lang/zh_TW/admin/nodes/settings.php new file mode 100644 index 00000000000..9a45677e177 --- /dev/null +++ b/lang/zh_TW/admin/nodes/settings.php @@ -0,0 +1,24 @@ + [ + 'title' => 'Node Information', + ], + 'coterm' => [ + 'title' => 'Coterm', + 'description' => 'Coterm lets you hide your node\'s origin from your users while they are accessing the web console.', + 'enable' => 'Enable Coterm', + 'tls' => 'TLS/SSL Enabled', + 'token_created' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created token. Please take note of the token\'s value as this is the only and + last time you will see it.', + 'action' => 'Okay, I got it' + ], + 'reset' => [ + 'title' => 'Reset Token?', + 'description' => 'Are you sure you want to reset this node\'s Coterm token? Any Coterm instances that are relying on this token will fail.', + 'action' => 'Reset Token', + ] + ] +]; diff --git a/lang/zh_TW/admin/servers/index.php b/lang/zh_TW/admin/servers/index.php new file mode 100644 index 00000000000..f6f70933669 --- /dev/null +++ b/lang/zh_TW/admin/servers/index.php @@ -0,0 +1,35 @@ + 'Create Server', + 'backup_limit' => 'Backup Limit', + 'bandwidth_limit' => 'Bandwidth Limit', + 'bandwidth_usage' => 'Bandwidth Usage', + 'snapshot_limit' => 'Snapshots Limit', + 'limit_placeholder' => 'Leave blank for no limit', + 'should_create_vm' => 'Should Create VM', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'vmid_placeholder' => 'Leave blank for random VMID', + 'create_modal' => [ + 'title' => 'Create a Server', + ], + 'manage_server' => 'Manage Server', + 'server_build' => [ + 'title' => 'Server Build', + ], + 'server_info' => [ + 'title' => 'Server Information', + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'not_suspended' => 'This server isn\'t suspended', + 'suspended' => 'This server is suspended', + ], + 'delete_server' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be destroyed. However, you can tick the checkbox below to keep the virtual machine and data on the Proxmox node.', + 'dont_purge' => 'Do not purge VM and related files', + ], + 'no_servers_found_one' => 'No servers found', +]; diff --git a/lang/zh_TW/admin/servers/overview.php b/lang/zh_TW/admin/servers/overview.php new file mode 100644 index 00000000000..b46b9bc3009 --- /dev/null +++ b/lang/zh_TW/admin/servers/overview.php @@ -0,0 +1,5 @@ + 'Enter Server Console', +]; \ No newline at end of file diff --git a/lang/zh_TW/admin/servers/settings.php b/lang/zh_TW/admin/servers/settings.php new file mode 100644 index 00000000000..57e0420e064 --- /dev/null +++ b/lang/zh_TW/admin/servers/settings.php @@ -0,0 +1,41 @@ + [ + 'title' => 'Server Information', + 'statuses' => [ + 'ready' => 'Ready', + 'installing' => 'Installation In Progress', + 'install_failed' => 'Recent Installation Failed', + 'suspended' => 'Suspended', + 'restoring_backup' => 'Restoring From a Backup', + 'restoring_snapshot' => 'Restoring From a Snapshot', + ] + ], + 'suspension' => [ + 'title' => 'Suspension', + 'description' => 'Toggle the suspension status of the server.', + 'statuses' => [ + 'suspended' => 'This server is suspended.', + 'not_suspended' => 'This server isn\'t suspended.' + ], + 'suspend' => 'Suspend', + 'unsuspend' => 'Unsuspend', + ], + 'deletion' => [ + 'title' => 'Delete Server', + 'description' => 'The server will be deleted from Convoy. Backups and other associated data will be + destroyed. However, you can tick the checkbox below to keep the virtual machine and data + on the Proxmox node.', + 'deleting_status' => 'This server is currently being deleted.', + 'no_purge' => 'Do not purge VM and related files', + 'confirmation' => [ + 'title' => 'Delete :name', + 'description' => 'Are you sure you want to delete :name?' + ] + ], + 'build' => [ + 'title' => 'Server Build', + + ] +]; \ No newline at end of file diff --git a/lang/zh_TW/admin/tokens.php b/lang/zh_TW/admin/tokens.php new file mode 100644 index 00000000000..cb593cb9823 --- /dev/null +++ b/lang/zh_TW/admin/tokens.php @@ -0,0 +1,12 @@ + [ + 'title' => 'Create a Token', + ], + 'created_modal' => [ + 'title' => 'Token Created', + 'description' => 'Here is your newly created API token. Please take note of the token\'s value as this is the only and last time you will see it.', + 'button' => 'Okay, I copied it', + ], +]; diff --git a/lang/zh_TW/admin/users.php b/lang/zh_TW/admin/users.php new file mode 100644 index 00000000000..99229783270 --- /dev/null +++ b/lang/zh_TW/admin/users.php @@ -0,0 +1,18 @@ + 'New User', + 'create_modal' => [ + 'title' => 'Create a User', + 'is_admin_warning' => 'You are giving this user administrative privileges.', + ], + 'user_info' => [ + 'title' => 'User Information', + 'override_pass' => 'Override password', + ], + 'delete_user' => [ + 'title' => 'Delete User', + 'description' => 'The user and its associated data will be deleted.', + 'has_servers_error' => 'This user cannot be deleted with servers still associated with it.', + ], +]; diff --git a/lang/zh_TW/auth.php b/lang/zh_TW/auth.php new file mode 100644 index 00000000000..5b8cdf9eff3 --- /dev/null +++ b/lang/zh_TW/auth.php @@ -0,0 +1,23 @@ + 'These credentials do not match our records.', + 'password' => 'The provided password is incorrect.', + 'throttle' => 'Too many login attempts. Please try again in :seconds seconds.', + + 'sign_in' => 'Sign in', + 'sign_out' => 'Sign out', + 'sign_in_description' => 'Sign in to your account', +]; diff --git a/lang/zh_TW/dashboard/index.php b/lang/zh_TW/dashboard/index.php new file mode 100644 index 00000000000..63d3b525616 --- /dev/null +++ b/lang/zh_TW/dashboard/index.php @@ -0,0 +1,7 @@ + 'Show all servers', + 'no_servers_admin_empty_state' => 'There are no servers.', + 'no_servers_empty_state' => 'You have no servers.', +]; diff --git a/lang/zh_TW/exceptions.php b/lang/zh_TW/exceptions.php new file mode 100644 index 00000000000..c87620d361e --- /dev/null +++ b/lang/zh_TW/exceptions.php @@ -0,0 +1,7 @@ + [ + 'resource_not_found' => 'The requested resource was not found on this server.', + ], +]; \ No newline at end of file diff --git a/lang/zh_TW/pagination.php b/lang/zh_TW/pagination.php new file mode 100644 index 00000000000..d4814118778 --- /dev/null +++ b/lang/zh_TW/pagination.php @@ -0,0 +1,19 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/lang/zh_TW/passwords.php b/lang/zh_TW/passwords.php new file mode 100644 index 00000000000..2345a56b5a6 --- /dev/null +++ b/lang/zh_TW/passwords.php @@ -0,0 +1,22 @@ + 'Your password has been reset!', + 'sent' => 'We have emailed your password reset link!', + 'throttled' => 'Please wait before retrying.', + 'token' => 'This password reset token is invalid.', + 'user' => "We can't find a user with that email address.", + +]; diff --git a/lang/zh_TW/server/backups.php b/lang/zh_TW/server/backups.php new file mode 100644 index 00000000000..1d23c65bbe8 --- /dev/null +++ b/lang/zh_TW/server/backups.php @@ -0,0 +1,30 @@ + 'Create Backup', + 'empty_state' => 'There are no backups', + 'counter_tooltip' => 'You\'ve made :count out of :max backups', + 'create_modal' => [ + 'title' => 'Create a Backup', + 'description' => 'Creating a backup will take a copy of your server files. This can take a while depending on the size of your server.', + 'compression_type' => 'Compression Type', + 'mode' => 'Mode', + 'modes' => [ + 'snapshot' => 'Snapshot', + 'suspend' => 'Suspend', + 'kill' => 'Kill', + ], + ], + 'delete_modal' => [ + 'title' => 'Delete :name?', + 'description' => 'Are you sure you want to delete this backup?', + ], + 'restore_modal' => [ + 'title' => 'Restore From :name?', + 'description' => 'Are you sure you want to restore from this backup?', + ], + 'notices' => [ + 'backup_deleted' => 'Deleted :name', + 'backup_restored' => 'Began restoring server from :name', + ], +]; diff --git a/lang/zh_TW/server/overview.php b/lang/zh_TW/server/overview.php new file mode 100644 index 00000000000..5973139941d --- /dev/null +++ b/lang/zh_TW/server/overview.php @@ -0,0 +1,38 @@ + [ + 'start' => 'Start', + 'restart' => 'Restart', + 'kill' => 'Kill', + 'shutdown' => 'Shutdown', + ], + 'notices' => [ + 'power_action_sent_success' => 'Successfully sent power action. It may take a moment to process.', + 'power_action_sent_fail' => 'Failed to send power action.', + ], + + 'state' => 'State', + 'states' => [ + 'stopped' => 'Stopped', + 'running' => 'Running', + 'stopping' => 'Stopping', + 'starting' => 'Starting', + 'shutting_down' => 'Shutting Down', + ], + 'uptime' => 'Uptime', + 'poll_status_error' => 'Failed to poll server status. Retrying in 5 seconds...', + + 'terminal' => [ + 'title' => 'Terminal', + 'description' => 'Remotely manage your server from the web.', + 'novnc_description' => 'Best for compatibility but lacks features and performance.', + 'xtermjs_description' => 'Best for performance but doesn\'t work for every operating system.', + ], + + 'server_config' => [ + 'title' => 'Configure This Server', + 'description' => 'You are an administrator! You can click below to visit this server\'s build configuration and make edits.', + 'configure_server' => 'Configure Server', + ], +]; diff --git a/lang/zh_TW/server/settings.php b/lang/zh_TW/server/settings.php new file mode 100644 index 00000000000..1564707efc3 --- /dev/null +++ b/lang/zh_TW/server/settings.php @@ -0,0 +1,42 @@ + [ + 'empty_state' => 'There are no addresses associated with this server.', + ], + 'display_info' => [ + 'title' => 'Server Name', + ], + 'reinstall' => [ + 'title' => 'Reinstall Server', + 'description' => 'Start your server on a fresh slate.', + 'start_server_after_installing' => 'Start Server After Completing Installation', + 'modal' => [ + 'title' => 'Confirm Reinstallation', + 'description' => 'Are you sure you want to reinstall this server? All data will be lost.', + ], + ], + 'isos' => [ + 'title' => 'Mountable ISOs', + 'empty' => 'There are no ISOs', + ], + 'device_config' => [ + 'title' => 'Device Configuration', + 'current' => 'Current Boot Order (the highest will be used first)', + 'unused' => 'Unused Devices', + 'unused_empty' => 'There are no unused devices.', + 'no_boot_device_warning' => 'No boot device has been configured. Your VM will not start.', + ], + 'nameservers' => [ + 'title' => 'Nameservers', + 'nameserver' => 'Nameserver :index', + 'add' => 'New Nameserver', + ], + 'auth' => [ + 'title' => 'Authentication', + ], + 'hardware' => [ + 'bandwidth_used' => 'Bandwidth Used', + 'bandwidth_alloted' => 'Bandwidth Alloted', + ], +]; diff --git a/lang/zh_TW/strings.php b/lang/zh_TW/strings.php new file mode 100644 index 00000000000..bff79ba100d --- /dev/null +++ b/lang/zh_TW/strings.php @@ -0,0 +1,110 @@ + 'Email', + 'password' => 'Password', + 'server' => 'Server', + 'server_one' => 'Server', + 'server_other' => 'Servers', + 'name' => 'Name', + 'node' => 'Node', + 'node_one' => 'Node', + 'node_other' => 'Nodes', + 'memory' => 'Memory', + 'cpu' => 'CPU', + 'disk' => 'Disk', + 'general' => 'General', + 'overview' => 'Overview', + 'location' => 'Location', + 'location_one' => 'Location', + 'location_other' => 'Locations', + 'owner' => 'Owner', + 'user' => 'User', + 'user_one' => 'User', + 'user_other' => 'Users', + 'token' => 'Token', + 'token_one' => 'Token', + 'token_other' => 'Tokens', + 'backup' => 'Backup', + 'backup_one' => 'Backup', + 'backup_other' => 'Backups', + 'setting' => 'Setting', + 'setting_one' => 'Setting', + 'setting_other' => 'Settings', + 'search' => 'Search', + 'admin_cp' => 'Admin Control Panel', + 'exit_admin_cp' => 'Exit Admin Control Panel', + 'suspended' => 'Suspended', + 'network' => 'Network', + 'ip' => 'IP Address', + 'address_one' => 'Address', + 'address_other' => 'Addresses', + 'addressWithCount_one' => ':count address', + 'addressWithCount_other' => ':count addresses', + 'gateway' => 'Gateway', + 'mac_address' => 'Mac Address', + 'none' => 'None', + 'unlimited' => 'Unlimited', + 'launch' => 'Launch', + 'create' => 'Create', + 'cancel' => 'Cancel', + 'display_name' => 'Display Name', + 'hostname' => 'Hostname', + 'reinstall' => 'Reinstall', + 'template' => 'Template', + 'template_one' => 'Template', + 'template_other' => 'Templates', + 'template_group' => 'Template Group', + 'system_os_password' => 'System OS Password', + 'mount' => 'Mount', + 'unmount' => 'Unmount', + 'primary' => 'Primary', + 'media' => 'Media', + 'save' => 'Save', + 'ssh_key' => 'SSH Key', + 'ssh_key_one' => 'SSH Key', + 'ssh_key_other' => 'SSH Keys', + 'version' => 'Version :version', + 'description' => 'Description', + 'visibility' => 'Visibility', + 'hidden' => 'Hidden', + 'size' => 'Size', + 'type' => 'Type', + 'delete' => 'Delete', + 'hardware' => 'Hardware', + 'status' => 'Status', + 'bandwidth_usage' => 'Bandwidth Usage', + 'administrator' => 'Administrator', + 'last_used' => 'Last Used', + 'success' => 'Success', + 'error' => 'Error', + 'restore' => 'Restore', + 'english_chars' => 'English keyboard characters', + 'confirm' => 'Confirm', + 'saving' => 'Saving...', + 'saved' => 'Saved', + 'primary_disk' => 'Primary Disk', + 'nameserver' => 'Nameserver', + 'nameserver_one' => 'Nameserver', + 'nameserver_other' => 'Nameservers', + 'new' => 'New', + 'add' => 'Add', + 'authentication' => 'Authentication', + 'edit' => 'Edit', + 'fqdn' => 'FQDN', + 'port' => 'Port', + 'iso' => 'ISO', + 'iso_one' => 'ISO', + 'iso_other' => 'ISOs', + 'ipam' => 'IPAM', + 'link' => 'Link', + 'file_name' => 'File Name', + 'query' => 'Query', + 'import' => 'Import', + 'download' => 'Download', + 'cidr' => 'CIDR', + 'ipv4' => 'IPv4', + 'ipv6' => 'IPv6', + 'single' => 'Single', + 'multiple' => 'Multiple', +]; diff --git a/lang/zh_TW/validation.php b/lang/zh_TW/validation.php new file mode 100644 index 00000000000..09bf66a4d48 --- /dev/null +++ b/lang/zh_TW/validation.php @@ -0,0 +1,178 @@ + 'The :attribute must be accepted.', + 'accepted_if' => 'The :attribute must be accepted when :other is :value.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'after_or_equal' => 'The :attribute must be a date after or equal to :date.', + 'alpha' => 'The :attribute must only contain letters.', + 'alpha_dash' => 'The :attribute must only contain letters, numbers, dashes and underscores.', + 'alpha_num' => 'The :attribute must only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'before_or_equal' => 'The :attribute must be a date before or equal to :date.', + 'between' => [ + 'array' => 'The :attribute must have between :min and :max items.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'numeric' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max characters.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'current_password' => 'The password is incorrect.', + 'date' => 'The :attribute is not a valid date.', + 'date_equals' => 'The :attribute must be a date equal to :date.', + 'date_format' => 'The :attribute does not match the format :format.', + 'declined' => 'The :attribute must be declined.', + 'declined_if' => 'The :attribute must be declined when :other is :value.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'The :attribute must be :digits digits.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'dimensions' => 'The :attribute has invalid image dimensions.', + 'distinct' => 'The :attribute field has a duplicate value.', + 'doesnt_start_with' => 'The :attribute may not start with one of the following: :values.', + 'email' => 'The :attribute must be a valid email address.', + 'ends_with' => 'The :attribute must end with one of the following: :values.', + 'english_keyboard_characters' => 'The :attribute must contain characters from the English keyboard.', + 'enum' => 'The selected :attribute is invalid.', + 'exists' => 'The selected :attribute is invalid.', + 'file' => 'The :attribute must be a file.', + 'filled' => 'The :attribute field must have a value.', + 'fqdn' => [ + 'https_and_ip' => 'The :attribute must not be an IP address when HTTPS is enabled.', + 'unresolvable' => 'The :attribute could not be resolved to a valid IP address.', + ], + 'gt' => [ + 'array' => 'The :attribute must have more than :value items.', + 'file' => 'The :attribute must be greater than :value kilobytes.', + 'numeric' => 'The :attribute must be greater than :value.', + 'string' => 'The :attribute must be greater than :value characters.', + ], + 'gte' => [ + 'array' => 'The :attribute must have :value items or more.', + 'file' => 'The :attribute must be greater than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be greater than or equal to :value.', + 'string' => 'The :attribute must be greater than or equal to :value characters.', + ], + 'hostname' => 'The :attribute must be a valid hostname.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'in_array' => 'The :attribute field does not exist in :other.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'ipv4' => 'The :attribute must be a valid IPv4 address.', + 'ipv6' => 'The :attribute must be a valid IPv6 address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'lt' => [ + 'array' => 'The :attribute must have less than :value items.', + 'file' => 'The :attribute must be less than :value kilobytes.', + 'numeric' => 'The :attribute must be less than :value.', + 'string' => 'The :attribute must be less than :value characters.', + ], + 'lte' => [ + 'array' => 'The :attribute must not have more than :value items.', + 'file' => 'The :attribute must be less than or equal to :value kilobytes.', + 'numeric' => 'The :attribute must be less than or equal to :value.', + 'string' => 'The :attribute must be less than or equal to :value characters.', + ], + 'mac_address' => 'The :attribute must be a valid MAC address.', + 'max' => [ + 'array' => 'The :attribute must not have more than :max items.', + 'file' => 'The :attribute must not be greater than :max kilobytes.', + 'numeric' => 'The :attribute must not be greater than :max.', + 'string' => 'The :attribute must not be greater than :max characters.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimetypes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'array' => 'The :attribute must have at least :min items.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'numeric' => 'The :attribute must be at least :min.', + 'string' => 'The :attribute must be at least :min characters.', + ], + 'multiple_of' => 'The :attribute must be a multiple of :value.', + 'not_in' => 'The selected :attribute is invalid.', + 'not_regex' => 'The :attribute format is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'password' => [ + 'default' => 'The :attribute must contain 8 - 50 characters, 1 uppercase, 1 lowercase, 1 number and 1 special character.', + 'letters' => 'The :attribute must contain at least one letter.', + 'mixed' => 'The :attribute must contain at least one uppercase and one lowercase letter.', + 'numbers' => 'The :attribute must contain at least one number.', + 'symbols' => 'The :attribute must contain at least one symbol.', + 'uncompromised' => 'The given :attribute has appeared in a data leak. Please choose a different :attribute.', + ], + 'present' => 'The :attribute field must be present.', + 'prohibited' => 'The :attribute field is prohibited.', + 'prohibited_if' => 'The :attribute field is prohibited when :other is :value.', + 'prohibited_unless' => 'The :attribute field is prohibited unless :other is in :values.', + 'prohibits' => 'The :attribute field prohibits :other from being present.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + 'required_array_keys' => 'The :attribute field must contain entries for: :values.', + 'required_if' => 'The :attribute field is required when :other is :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'The :attribute field is required when :values is present.', + 'required_with_all' => 'The :attribute field is required when :values are present.', + 'required_without' => 'The :attribute field is required when :values is not present.', + 'required_without_all' => 'The :attribute field is required when none of :values are present.', + 'same' => 'The :attribute and :other must match.', + 'size' => [ + 'array' => 'The :attribute must contain :size items.', + 'file' => 'The :attribute must be :size kilobytes.', + 'numeric' => 'The :attribute must be :size.', + 'string' => 'The :attribute must be :size characters.', + ], + 'starts_with' => 'The :attribute must start with one of the following: :values.', + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid timezone.', + 'unique' => 'The :attribute has already been taken.', + 'unique_exists' => 'The :attribute already exists.', + 'uploaded' => 'The :attribute failed to upload.', + 'url' => 'The :attribute must be a valid URL.', + 'uuid' => 'The :attribute must be a valid UUID.', + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => [ + 'attribute-name' => [ + 'rule-name' => 'custom-message', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap our attribute placeholder + | with something more reader friendly such as "E-Mail Address" instead + | of "email". This simply helps us make our message more expressive. + | + */ + + 'attributes' => [], + +]; diff --git a/lang/zh_TW/zod.php b/lang/zh_TW/zod.php new file mode 100644 index 00000000000..1147122aa1e --- /dev/null +++ b/lang/zh_TW/zod.php @@ -0,0 +1,119 @@ + [ + 'invalid_type' => 'Expected {{expected}}, received {{received}}', + 'invalid_type_received_undefined' => 'Required', + 'invalid_literal' => 'Invalid literal value, expected {{expected}}', + 'unrecognized_keys' => 'Unrecognized key(s) in object: {{- keys}}', + 'invalid_union' => 'Invalid input', + 'invalid_union_discriminator' => 'Invalid discriminator value. Expected {{- options}}', + 'invalid_enum_value' => 'Invalid enum value. Expected {{- options}}, received \'{{received}}\'', + 'invalid_arguments' => 'Invalid function arguments', + 'invalid_return_type' => 'Invalid function return type', + 'invalid_date' => 'Invalid date', + 'custom' => 'Invalid input', + 'invalid_intersection_types' => 'Intersection results could not be merged', + 'not_multiple_of' => 'Number must be a multiple of {{multipleOf}}', + 'not_finite' => 'Number must be finite', + 'invalid_string' => [ + 'email' => 'Invalid {{validation}}', + 'url' => 'Invalid {{validation}}', + 'uuid' => 'Invalid {{validation}}', + 'cuid' => 'Invalid {{validation}}', + 'regex' => 'Invalid', + 'datetime' => 'Invalid {{validation}}', + 'startsWith' => 'Invalid input: must start with "{{startsWith}}"', + 'endsWith' => 'Invalid input: must end with "{{endsWith}}"', + 'hostname' => 'Invalid {{validation}}', + 'english_keyboard_characters' => 'Invalid {{validation}}', + 'password' => 'Must contain 8 characters, one uppercase, one lowercase, one number and one special case character', + 'ip_address' => 'Invalid IP Address', + 'mac_address' => 'Invalid Mac Address', + ], + 'too_small' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{minimum}} element(s)', + 'inclusive' => 'Array must contain at least {{minimum}} element(s)', + 'not_inclusive' => 'Array must contain more than {{minimum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{minimum}} character(s)', + 'inclusive' => 'String must contain at least {{minimum}} character(s)', + 'not_inclusive' => 'String must contain over {{minimum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{minimum}}', + 'inclusive' => 'Number must be greater than or equal to {{minimum}}', + 'not_inclusive' => 'Number must be greater than {{minimum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- minimum, datetime}}', + 'inclusive' => 'Date must be greater than or equal to {{- minimum, datetime}}', + 'not_inclusive' => 'Date must be greater than {{- minimum, datetime}}', + ], + ], + 'too_big' => [ + 'array' => [ + 'exact' => 'Array must contain exactly {{maximum}} element(s)', + 'inclusive' => 'Array must contain at most {{maximum}} element(s)', + 'not_inclusive' => 'Array must contain less than {{maximum}} element(s)', + ], + 'string' => [ + 'exact' => 'String must contain exactly {{maximum}} character(s)', + 'inclusive' => 'String must contain at most {{maximum}} character(s)', + 'not_inclusive' => 'String must contain under {{maximum}} character(s)', + ], + 'number' => [ + 'exact' => 'Number must be exactly {{maximum}}', + 'inclusive' => 'Number must be less than or equal to {{maximum}}', + 'not_inclusive' => 'Number must be less than {{maximum}}', + ], + 'set' => [ + 'exact' => 'Invalid input', + 'inclusive' => 'Invalid input', + 'not_inclusive' => 'Invalid input', + ], + 'date' => [ + 'exact' => 'Date must be exactly {{- maximum, datetime}}', + 'inclusive' => 'Date must be smaller than or equal to {{- maximum, datetime}}', + 'not_inclusive' => 'Date must be smaller than {{- maximum, datetime}}', + ], + ], + ], + 'validations' => [ + 'email' => 'email', + 'url' => 'url', + 'uuid' => 'uuid', + 'cuid' => 'cuid', + 'regex' => 'regex', + 'datetime' => 'datetime', + ], + 'types' => [ + 'function' => 'function', + 'number' => 'number', + 'string' => 'string', + 'nan' => 'nan', + 'integer' => 'integer', + 'float' => 'float', + 'boolean' => 'boolean', + 'date' => 'date', + 'bigint' => 'bigint', + 'undefined' => 'undefined', + 'symbol' => 'symbol', + 'null' => 'null', + 'array' => 'array', + 'object' => 'object', + 'unknown' => 'unknown', + 'promise' => 'promise', + 'void' => 'void', + 'never' => 'never', + 'map' => 'map', + 'set' => 'set', + ], +];