2023 lines
95 KiB
JSON
2023 lines
95 KiB
JSON
{
|
||
"apps": {
|
||
"title": "My Apps",
|
||
"noApps": {
|
||
"title": "No apps installed yet!",
|
||
"description": "How about installing some? Check out the <a href=\"{{ appStoreLink }}\">App Store</a>"
|
||
},
|
||
"noAccess": {
|
||
"title": "You don't have access to any apps yet.",
|
||
"description": "Once you do, they will show up here."
|
||
},
|
||
"configActionTooltip": "Config",
|
||
"logsActionTooltip": "Logs",
|
||
"infoActionTooltip": "Info",
|
||
"adminPageActionTooltip": "Admin Page",
|
||
"searchPlaceholder": "Search Apps",
|
||
"stateFilterHeader": "All States",
|
||
"tagsFilterHeader": "Tags: {{ tags }}",
|
||
"tagsFilterHeaderAll": "All Tags",
|
||
"domainsFilterHeader": "All Domains",
|
||
"groupsFilterHeader": "All Groups",
|
||
"auth": {
|
||
"sso": "Log in with Cloudron credentials",
|
||
"nosso": "Log in with dedicated account",
|
||
"email": "Log in with email address",
|
||
"openid": "Log in with Cloudron OpenID"
|
||
},
|
||
"addAppAction": "Add App",
|
||
"addAppproxyAction": "Add App Proxy",
|
||
"addApplinkAction": "Add App Link",
|
||
"filter": {
|
||
"clearAll": "Clear All"
|
||
},
|
||
"apps": {
|
||
"count": "Total apps: {{ count }}"
|
||
}
|
||
},
|
||
"main": {
|
||
"offline": "Cloudron is offline. Reconnecting…",
|
||
"logout": "Logout",
|
||
"dialog": {
|
||
"cancel": "Cancel",
|
||
"save": "Save",
|
||
"close": "Close",
|
||
"no": "No",
|
||
"yes": "Yes",
|
||
"delete": "Delete"
|
||
},
|
||
"username": "Username",
|
||
"displayName": "Display name",
|
||
"actions": "Actions",
|
||
"table": {
|
||
"date": "Date"
|
||
},
|
||
"pagination": {
|
||
"prev": "prev",
|
||
"next": "next",
|
||
"perPageSelector": "Show {{ n }} per page",
|
||
"itemCount": "Found {{ count }}"
|
||
},
|
||
"action": {
|
||
"reboot": "Reboot",
|
||
"logs": "Logs",
|
||
"showLogs": "Show Logs"
|
||
},
|
||
"clipboard": {
|
||
"copied": "Copied to clipboard",
|
||
"clickToCopy": "Click to copy",
|
||
"clickToCopyBackupId": "Click to copy backup id"
|
||
},
|
||
"rebootDialog": {
|
||
"title": "Really reboot server?",
|
||
"warning": "Rebooting the server will cause temporary downtime for all apps installed on this Cloudron!",
|
||
"description": "Use this to apply security updates or if you experience unexpected behavior. All apps and services currently running on this Cloudron will automatically start when the reboot is complete.",
|
||
"rebootAction": "Reboot now"
|
||
},
|
||
"searchPlaceholder": "Search",
|
||
"multiselect": {
|
||
"selected": "{{ n }} selected",
|
||
"select": "Select",
|
||
"filterPlaceholder": "Type to filter options"
|
||
},
|
||
"prettyDate": {
|
||
"justNow": "just now",
|
||
"yeserday": "Yesterday",
|
||
"minutesAgo": "{{ m }} minutes ago",
|
||
"hoursAgo": "{{ h }} hours ago",
|
||
"never": "Never"
|
||
},
|
||
"navbar": {
|
||
"users": "Users"
|
||
},
|
||
"disableAction": "Disable",
|
||
"enableAction": "Enable",
|
||
"statusEnabled": "Enabled",
|
||
"statusDisabled": "Disabled",
|
||
"loadingPlaceholder": "Loading",
|
||
"settings": "Settings",
|
||
"saveAction": "Save"
|
||
},
|
||
"appstore": {
|
||
"title": "App Store",
|
||
"category": {
|
||
"all": "All",
|
||
"popular": "Popular",
|
||
"newApps": "New Apps",
|
||
"analytics": "Analytics",
|
||
"chat": "Chat",
|
||
"blog": "Blog",
|
||
"document": "Documents",
|
||
"crm": "CRM",
|
||
"forum": "Forum",
|
||
"gallery": "Gallery",
|
||
"finance": "Finance",
|
||
"git": "Code Hosting",
|
||
"email": "Email",
|
||
"game": "Games",
|
||
"hosting": "Web Hosting",
|
||
"media": "Media",
|
||
"learning": "Learning",
|
||
"notes": "Notes",
|
||
"sync": "File Sync",
|
||
"project": "Project Management",
|
||
"wiki": "Wiki",
|
||
"vpn": "VPN",
|
||
"federated": "Federated"
|
||
},
|
||
"searchPlaceholder": "Search for alternatives like Github, Dropbox, Slack, Trello, …",
|
||
"noAppsFound": "No apps found.",
|
||
"appMissing": "Missing an app? Let us know.",
|
||
"unstable": "Unstable",
|
||
"installDialog": {
|
||
"lastUpdated": "Last updated {{ date }}",
|
||
"memoryRequirement": "Requires at least {{ size }} memory",
|
||
"location": "Location",
|
||
"locationPlaceholder": "Leave empty to use bare domain",
|
||
"manualWarning": "Add an A record manually for <b>{{ location }}</b> to this Cloudron's public IP",
|
||
"userManagement": "User management",
|
||
"userManagementNone": "This app has its own user management. This setting determines whether this app is visible in the user's dashboard.",
|
||
"userManagementMailbox": "All users with a mailbox on this Cloudron have access.",
|
||
"userManagementLeaveToApp": "Leave user management to the app",
|
||
"userManagementAllUsers": "Allow all users from this Cloudron",
|
||
"userManagementSelectUsers": "Only allow the following users and groups",
|
||
"errorUserManagementSelectAtLeastOne": "Select at least one user or group",
|
||
"users": "Users",
|
||
"groups": "Groups",
|
||
"configuredForCloudronEmail": "This app is pre-configured for use with <a href=\"{{ emailDocsLink }}\" target=\"_blank\">Cloudron Email</a>.",
|
||
"lowOnResources": "This Cloudron is running low on resources.",
|
||
"pleaseUpgradeServer": "Please upgrade to a server instance with more memory. Alternately, free up resources by uninstalling unused applications.",
|
||
"subscriptionRequired": "To install more apps, a paid subscription is required.",
|
||
"setupSubscriptionAction": "Set up Subscription",
|
||
"installAnywayAction": "Install anyway",
|
||
"installAction": "Install",
|
||
"doInstallAction": "Install {{ dnsOverwrite ? 'and overwrite DNS' : '' }}",
|
||
"cloudflarePortWarning": "Cloudflare proxying must be disabled for the app's domain to access this port",
|
||
"titleAndVersion": "This app packages {{ title }} {{ version }}",
|
||
"portReadOnly": "read-only"
|
||
},
|
||
"appNotFoundDialog": {
|
||
"title": "App not found",
|
||
"description": "There is no such app <b>{{ appId }}</b> with version <b>{{ version }}</b>."
|
||
},
|
||
"accountDialog": {
|
||
"titleSignUp": "Sign up with Cloudron.io",
|
||
"titleLogin": "Login to Cloudron.io",
|
||
"description": "This account is used to access the App Store and manage your subscription",
|
||
"email": "Email",
|
||
"password": "Password",
|
||
"2faToken": "2FA Token (if enabled)",
|
||
"intendedUse": "Intended Use",
|
||
"chooseAnOption": "Please choose an option…",
|
||
"licenseCheckbox": "I accept the Cloudron <a href=\"{{ licenseLink }}\" target=\"_blank\">license</a>",
|
||
"errorWrongPassword": "Wrong password",
|
||
"loginAction": "Login",
|
||
"createAccountAction": "Create Account",
|
||
"switchToSignUpAction": "Don't have an account yet? Sign up",
|
||
"switchToLoginAction": "Already have an account? Log in",
|
||
"setupWithTokenAction": "Setup",
|
||
"setupToken": "Setup Token",
|
||
"titleToken": "Sign up with Setup Token"
|
||
},
|
||
"categoryLabel": "Category",
|
||
"ssofilter": {
|
||
"all": "All Apps",
|
||
"label": "User Management"
|
||
}
|
||
},
|
||
"users": {
|
||
"title": "User Directory",
|
||
"newUserAction": "New User",
|
||
"users": {
|
||
"user": "User",
|
||
"groups": "Groups",
|
||
"empty": "No users found",
|
||
"superadminTooltip": "This user is a superadmin",
|
||
"adminTooltip": "This user is an admin",
|
||
"usermanagerTooltip": "This user can manage groups and other users",
|
||
"inactiveTooltip": "User is inactive",
|
||
"externalLdapTooltip": "From external LDAP directory",
|
||
"notActivatedYetTooltip": "User is not activated yet",
|
||
"resetPasswordTooltip": "Reset password",
|
||
"editUserTooltip": "Edit User",
|
||
"removeUserTooltip": "Remove User",
|
||
"transferOwnershipTooltip": "Transfer Ownership",
|
||
"invitationTooltip": "Invite User",
|
||
"setGhostTooltip": "Impersonate",
|
||
"mailmanagerTooltip": "This user can manage users and mailboxes",
|
||
"count": "Total users: {{ count }}"
|
||
},
|
||
"groups": {
|
||
"title": "Groups",
|
||
"newGroupAction": "New Group",
|
||
"name": "Name",
|
||
"users": "Users",
|
||
"externalLdapTooltip": "From external LDAP directory"
|
||
},
|
||
"settings": {
|
||
"title": "User Settings",
|
||
"allowProfileEditCheckbox": "Allow users to edit their name and email",
|
||
"require2FACheckbox": "Require users to set up 2FA",
|
||
"subscriptionRequired": "These features are only available in the paid plans.",
|
||
"subscriptionRequiredAction": "Set up Subscription Now",
|
||
"saveAction": "Save",
|
||
"require2FAWarning": "Setup 2FA for your account first to avoid getting locked out."
|
||
},
|
||
"externalLdap": {
|
||
"title": "Connect an External Directory",
|
||
"description": "This setting will synchronize and authenticate users and groups from an external LDAP or Active Directory server. The synchronization is run periodically but can also be triggered manually.",
|
||
"subscriptionRequiredAction": "Set up Subscription Now",
|
||
"noopInfo": "LDAP authentication is not configured.",
|
||
"provider": "Provider",
|
||
"server": "Server URL",
|
||
"acceptSelfSignedCert": "Accept Self-signed certificate",
|
||
"baseDn": "Base DN",
|
||
"filter": "Filter",
|
||
"usernameField": "Username Field",
|
||
"syncGroups": "Sync Groups",
|
||
"groupBaseDn": "Group Base DN",
|
||
"groupFilter": "Group Filter",
|
||
"groupnameField": "Groupname Field",
|
||
"auth": "Auth",
|
||
"autocreateUsersOnLogin": "Automatically create users on login",
|
||
"showLogsAction": "Show Logs",
|
||
"syncAction": "Sync",
|
||
"configureAction": "Configure",
|
||
"bindUsername": "Bind DN/Username (optional)",
|
||
"bindPassword": "Bind Password (optional)",
|
||
"errorSelfSignedCert": "Server is using an invalid or self-signed certificate.",
|
||
"providerOther": "Other",
|
||
"providerDisabled": "Disabled",
|
||
"disableWarning": "The authentication source of all existing users will be reset to authenticate against the local password database."
|
||
},
|
||
"subscriptionDialog": {
|
||
"title": "Subscription required",
|
||
"setupAction": "Set up Subscription"
|
||
},
|
||
"addUserDialog": {
|
||
"title": "Add User",
|
||
"sendInviteCheckbox": "Send an invitation email now",
|
||
"addUserAction": "Add User"
|
||
},
|
||
"user": {
|
||
"fullName": "Full Name",
|
||
"username": "Username",
|
||
"role": "Role",
|
||
"groups": "Groups",
|
||
"noGroups": "No groups available.",
|
||
"errorNotValidFullName": "This is not a valid name",
|
||
"errorEmailRequired": "An email is required",
|
||
"errorInvalidEmail": "This is not a valid email",
|
||
"errorInvalidUsername": "This is not a valid username",
|
||
"usernamePlaceholder": "Optional. If not provided, user can pick during sign up",
|
||
"displayName": "Display Name",
|
||
"email": "Email",
|
||
"primaryEmail": "Primary email",
|
||
"recoveryEmail": "Password recovery email",
|
||
"errorDisplayNameRequired": "Name is required",
|
||
"activeCheckbox": "User is active",
|
||
"displayNamePlaceholder": "Optional. If not provided, user can provide during sign up",
|
||
"fallbackEmailPlaceholder": "Optional. If not specified, primary email will be used",
|
||
"external2FA": "2FA setup is managed by external authentication source",
|
||
"ldapGroups": "LDAP Groups"
|
||
},
|
||
"deleteUserDialog": {
|
||
"title": "Delete user {{ username }}",
|
||
"description": "After deletion, the user will not be able to access the dashboard or login to any of the apps. Note that any user data inside the apps is not removed.",
|
||
"deleteAction": "Delete"
|
||
},
|
||
"editUserDialog": {
|
||
"title": "Edit user {{ username }}",
|
||
"externalLdapWarning": "This user is synced from the external LDAP directory."
|
||
},
|
||
"addGroupDialog": {
|
||
"title": "Add Group"
|
||
},
|
||
"group": {
|
||
"name": "Name",
|
||
"errorNameRequired": "A name is required",
|
||
"errorNameTooShort": "The name is too short",
|
||
"errorNameTooLong": "The name is too long",
|
||
"users": "Users",
|
||
"addGroupAction": "Add Group"
|
||
},
|
||
"editGroupDialog": {
|
||
"title": "Edit group {{ name }}",
|
||
"externalLdapWarning": "This group is synced from the external LDAP directory."
|
||
},
|
||
"deleteGroupDialog": {
|
||
"title": "Delete group {{ name }}",
|
||
"description": "This group still has {{ memberCount }} member(s). Are you sure this group is not used?",
|
||
"deleteAction": "Delete"
|
||
},
|
||
"passwordResetDialog": {
|
||
"title": "Reset password for {{ username }}",
|
||
"description": "The following password reset link was sent to {{ email }}:",
|
||
"sendEmailLinkAction": "Email link to user",
|
||
"emailSent": "Sent",
|
||
"no2FASetup": "This user has not set up 2FA.",
|
||
"2FAIsSetup": "Use this to disable user's 2FA. The user can set it up again from the Profile view.",
|
||
"newLinkAction": "Email reset link",
|
||
"resetLinkExplanation": "Use this to email a password reset link to the user's fallback email address - {{ email }}.",
|
||
"reset2FAAction": "Reset 2FA",
|
||
"sendAction": "Send Mail",
|
||
"descriptionLink": "Copy password reset link",
|
||
"descriptionEmail": "Send password reset link"
|
||
},
|
||
"externalLdapDialog": {
|
||
"title": "Configure LDAP"
|
||
},
|
||
"role": {
|
||
"user": "User",
|
||
"usermanager": "User Manager",
|
||
"admin": "Administrator",
|
||
"owner": "Superadmin",
|
||
"mailmanager": "User & Email Manager"
|
||
},
|
||
"transferOwnershipDialog": {
|
||
"title": "Really transfer ownership?",
|
||
"description": "This will make the selected user the owner and admin of this Cloudron and remove admin rights to the current owner.",
|
||
"transferAction": "Transfer Ownership",
|
||
"newOwner": "New Owner"
|
||
},
|
||
"invitationDialog": {
|
||
"title": "Invite {{ username }}",
|
||
"inviteLinkExplanation": "Use this to generate a new invite link. The link will also be sent to the user and will reset the password.",
|
||
"newLinkAction": "Invite user now",
|
||
"description": "The following invite link was sent to {{ email }}:",
|
||
"sendAction": "Send Mail",
|
||
"descriptionLink": "Copy invite link",
|
||
"descriptionEmail": "Send invite link"
|
||
},
|
||
"setGhostDialog": {
|
||
"title": "Create password to impersonate {{ username }}",
|
||
"description": "Set a temporary password to login on behalf of this user in apps or the dashboard. This password is valid for 6 hours.",
|
||
"password": "Password",
|
||
"setPassword": "Set Password",
|
||
"generatePassword": "Generate Password"
|
||
},
|
||
"setGhost": {
|
||
"password": "Password"
|
||
},
|
||
"invitationNotification": {
|
||
"title": "Invitation link sent",
|
||
"body": "Email sent to {{ email }}"
|
||
},
|
||
"exposedLdap": {
|
||
"title": "Directory Server",
|
||
"description": "Cloudron can act as a central user directory server for external applications.",
|
||
"enabled": "Enabled",
|
||
"ipRestriction": {
|
||
"description": "Limit Directory Server access to specific IPs or ranges. Lines starting with <code>#</code> are treated as comments.",
|
||
"placeholder": "Line separated IP address or Subnet",
|
||
"label": "Restrict Access"
|
||
},
|
||
"secret": {
|
||
"label": "Bind Password",
|
||
"description": "All LDAP queries have to be authenticated with this secret and the user DN <i>{{ userDN }}</i>",
|
||
"url": "Server URL"
|
||
},
|
||
"cloudflarePortWarning": "Cloudflare proxying must be disabled on the dashboard domain to access the LDAP server"
|
||
},
|
||
"userImportDialog": {
|
||
"title": "Import Users",
|
||
"fileInput": "Select JSON or CSV file",
|
||
"importAction": "Import",
|
||
"description": "Upload a JSON or CSV file with the schema described in our <a href=\"{{ docsLink }}\" target=\"_blank\">documentation</a>",
|
||
"usersFound": "Found {{ count }} user(s) to import.",
|
||
"success": "{{ count }} user(s) imported.",
|
||
"failed": "The following users were not imported:",
|
||
"sendInviteCheckbox": "Send invitation email to imported users"
|
||
},
|
||
"userExport": {
|
||
"csv": "Export as CSV",
|
||
"json": "Export as JSON",
|
||
"tooltip": "Export Users"
|
||
},
|
||
"userImport": {
|
||
"tooltip": "Import Users"
|
||
},
|
||
"stateFilter": {
|
||
"all": "All Users",
|
||
"active": "Active Users",
|
||
"inactive": "Inactive Users"
|
||
}
|
||
},
|
||
"profile": {
|
||
"title": "Profile",
|
||
"changeAvatar": {
|
||
"title": "Change Your Avatar",
|
||
"useGravatar": "Use <a target=\"_blank\" href=\"{{ gravatarLink }}\">Gravatar</a>",
|
||
"useCustomPicture": "Use Custom Picture",
|
||
"noAvatar": "No Profile Picture"
|
||
},
|
||
"primaryEmail": "Primary email",
|
||
"passwordRecoveryEmail": "Password recovery email",
|
||
"language": "Language",
|
||
"changePassword": {
|
||
"title": "Change your password",
|
||
"currentPassword": "Current password",
|
||
"newPassword": "New password",
|
||
"newPasswordRepeat": "Repeat new password",
|
||
"errorPasswordRequired": "A password is required",
|
||
"errorPasswordsDontMatch": "Passwords don't match",
|
||
"errorPasswordInvalid": "Password must be at least 8 and at most 265 characters"
|
||
},
|
||
"disable2FA": {
|
||
"title": "Disable Two-Factor Authentication",
|
||
"password": "Password",
|
||
"disable": "Disable"
|
||
},
|
||
"enable2FA": {
|
||
"title": "Enable Two-Factor Authentication",
|
||
"description": "Your Cloudron Administrator has required all members to enable two-factor authentication. You will be unable to access the dashboard until you enable 2FA.",
|
||
"authenticatorAppDescription": "Use Google Authenticator (<a href=\"{{ googleAuthenticatorPlayStoreLink }}\" target=\"_blank\">Android</a>, <a href=\"{{ googleAuthenticatorITunesLink }}\" target=\"_blank\">iOS</a>), FreeOTP authenticator (<a href=\"{{ freeOTPPlayStoreLink }}\" target=\"_blank\">Android</a>, <a href=\"{{ freeOTPITunesLink }}\" target=\"_blank\">iOS</a>) or a similar TOTP app to scan the secret.",
|
||
"token": "Token",
|
||
"enable": "Enable",
|
||
"setup2FA": "Set up Two-Factor"
|
||
},
|
||
"appPasswords": {
|
||
"title": "App Passwords",
|
||
"app": "App",
|
||
"name": "Name",
|
||
"noPasswordsPlaceholder": "No App Passwords created",
|
||
"description": "App passwords are a security measure to protect your Cloudron user account. If you need to access a Cloudron app from an untrusted mobile app or client, you can log in with your username and the alternate password generated here.",
|
||
"newPassword": "New Password",
|
||
"deletePasswordTooltip": "Delete Password"
|
||
},
|
||
"apiTokens": {
|
||
"title": "API Tokens",
|
||
"newApiToken": "New API Token",
|
||
"name": "Name",
|
||
"expiresAt": "Expires At",
|
||
"description": "Use these personal access tokens to authenticate to the <a target=\"_blank\" href=\"{{ apiDocsLink }}\">Cloudron API</a>",
|
||
"noTokensPlaceholder": "No API Tokens created",
|
||
"revokeTokenTooltip": "Revoke Token",
|
||
"lastUsed": "Last Used",
|
||
"neverUsed": "never",
|
||
"scope": "Scope",
|
||
"readonly": "Readonly",
|
||
"readwrite": "Read and Write"
|
||
},
|
||
"loginTokens": {
|
||
"title": "Login Tokens",
|
||
"description": "You have {{ webadminTokenCount}} active web token(s) and {{ cliTokenCount }} CLI token(s).",
|
||
"logoutAll": "Logout From All"
|
||
},
|
||
"changeEmail": {
|
||
"title": "Change primary email address",
|
||
"errorEmailInvalid": "The Email address is not valid",
|
||
"errorEmailRequired": "A valid email address is required",
|
||
"email": "New Email Address",
|
||
"password": "Password for confirmation",
|
||
"errorWrongPassword": "Wrong password"
|
||
},
|
||
"changeFallbackEmail": {
|
||
"title": "Change password recovery email address",
|
||
"errorEmailRequired": "A valid email address is required",
|
||
"errorEmailInvalid": "The Email address is not valid",
|
||
"email": "New password recovery email address",
|
||
"password": "Password for confirmation",
|
||
"errorWrongPassword": "Wrong password",
|
||
"errorPasswordRequired": "A password is required"
|
||
},
|
||
"changeDisplayName": {
|
||
"title": "Change your display name",
|
||
"errorNameInvalid": "This display name is not valid",
|
||
"errorDisplayNameRequired": "A valid display name is required"
|
||
},
|
||
"createAppPassword": {
|
||
"title": "Create App Password",
|
||
"name": "Password Name",
|
||
"errorNameRequired": "A name is required",
|
||
"app": "App",
|
||
"description": "Use the following password to authenticate against the app:",
|
||
"copyNow": "Please copy the password now. It won't be shown again for security purposes.",
|
||
"generatePassword": "Generate Password"
|
||
},
|
||
"createApiToken": {
|
||
"title": "Create API Token",
|
||
"name": "API Token Name",
|
||
"errorNameRequired": "A name is required",
|
||
"description": "New API token:",
|
||
"copyNow": "Please copy the API token now. It won't be shown again for security purposes.",
|
||
"generateToken": "Generate API Token",
|
||
"access": "API Access"
|
||
},
|
||
"changePasswordAction": "Change Password",
|
||
"disable2FAAction": "Disable 2FA",
|
||
"enable2FAAction": "Enable 2FA",
|
||
"passwordResetAction": "I forgot my password",
|
||
"passwordResetNotification": {
|
||
"title": "Password reset successful",
|
||
"body": "Email sent to {{ email }}"
|
||
},
|
||
"changeBackgroundImage": {
|
||
"title": "Set Background Image"
|
||
},
|
||
"enable2FANotAvailable": "Not available for users from external authentication source"
|
||
},
|
||
"backups": {
|
||
"title": "Backups",
|
||
"location": {
|
||
"title": "Location",
|
||
"description": "A complete backup of your system is saved to the storage location with the configured format.",
|
||
"disabledList": "The following apps have automatic backups disabled:",
|
||
"provider": "Provider",
|
||
"location": "Location",
|
||
"endpoint": "Endpoint",
|
||
"format": "Storage Format",
|
||
"configure": "Configure",
|
||
"remount": "Remount Storage"
|
||
},
|
||
"schedule": {
|
||
"title": "Schedule and Retention",
|
||
"description": "A complete backup of the system is created based on the specified Schedule in the <a href=\"/#/settings\">System Time Zone</a>. Old backups are removed based on the Retention Policy.",
|
||
"schedule": "Schedule",
|
||
"retentionPolicy": "Retention Policy",
|
||
"configure": "Configure"
|
||
},
|
||
"listing": {
|
||
"title": "Listing",
|
||
"noBackups": "No backups have been made yet.",
|
||
"contents": "Contents",
|
||
"version": "Version",
|
||
"noApps": "No apps",
|
||
"appCount": "{{ appCount }} apps",
|
||
"tooltipDownloadBackupConfig": "Download Backup Configuration",
|
||
"cleanupBackups": "Cleanup Backups",
|
||
"backupNow": "Backup now",
|
||
"stopTask": "Stop Backup",
|
||
"tooltipEditBackup": "Edit Backup",
|
||
"tooltipPreservedBackup": "This backup will be preserved"
|
||
},
|
||
"logs": {
|
||
"title": "Logs",
|
||
"description": "Please be careful when uploading these logs to a public server since they may contain sensitive information.",
|
||
"showLogs": "Show Logs"
|
||
},
|
||
"backupDetails": {
|
||
"title": "Backup Details",
|
||
"id": "Id",
|
||
"date": "Date",
|
||
"version": "Version",
|
||
"format": "Format",
|
||
"list": "References backups of {{ appCount }} apps"
|
||
},
|
||
"backupFailed": {
|
||
"title": "Unable to create backup"
|
||
},
|
||
"cleanupBackups": {
|
||
"title": "Cleanup Backups",
|
||
"description": "Backups are automatically cleaned up daily based on the retention policy. This action will trigger an immediate removal of backups.",
|
||
"cleanupNow": "Cleanup now"
|
||
},
|
||
"configureBackupSchedule": {
|
||
"title": "Configure Backup Schedule and Retention",
|
||
"schedule": "Schedule",
|
||
"scheduleDescription": "Select the days and hours during which Cloudron will backup. Please take care to not overlap this schedule with the <a href=\"/#/settings\">update schedule</a>.",
|
||
"days": "Days",
|
||
"hours": "Hours",
|
||
"retentionPolicy": "Retention Policy"
|
||
},
|
||
"configureBackupStorage": {
|
||
"title": "Configure Backup Storage",
|
||
"provider": "Storage provider",
|
||
"noopNote": "This option breaks the backup and restore functionality of Cloudron and should only be used for testing. Please make sure the server is completely backed up using alternate means.",
|
||
"mountPoint": "Mount point",
|
||
"mountPointDescription": "The mount point has to be set up manually. See <a href=\"{{ providerDocsLink }}\" target=\"_blank\">docs</a>.",
|
||
"localDirectory": "Local backup directory",
|
||
"ext4Label": "Backup directory is an external EXT4 Disk",
|
||
"hardlinksLabel": "Use hardlinks",
|
||
"s3Endpoint": "Endpoint",
|
||
"acceptSelfSignedCerts": "Accept Self-signed certificate",
|
||
"bucketName": "Bucket name",
|
||
"prefix": "Prefix",
|
||
"region": "Region",
|
||
"s3AccessKeyId": "Access key id",
|
||
"s3SecretAccessKey": "Secret access key",
|
||
"gcsServiceKey": "Service Account Key",
|
||
"format": "Storage Format",
|
||
"formatChangeNote": "Previous backups using the old storage format have to be removed manually.",
|
||
"s3LikeNote": "Please remove any object expiration lifecycle rules since it will corrupt rsync backups.",
|
||
"encryptionPassword": "Encryption Password (optional)",
|
||
"encryptionDescription": "Save this passphrase in a safe place. Cloudron does not store this password. Backups cannot be decrypted without the passphrase",
|
||
"advancedSettings": "Advanced settings…",
|
||
"memoryLimit": "Memory Limit",
|
||
"memoryLimitDescription": "Memory limit for the backup task. Adjust this if you increase the concurrency values from their defaults.",
|
||
"uploadPartSize": "Upload Part Size",
|
||
"uploadPartSizeDescription": "Multi-part upload part size. Up to 3 parts are uploaded in parallel and requires as much memory.",
|
||
"downloadConcurrency": "Download Concurrency",
|
||
"downloadConcurrencyDescription": "Number of files to download in parallel when restoring",
|
||
"uploadConcurrency": "Upload Concurrency",
|
||
"uploadConcurrencyDescription": "Number of files to upload in parallel when backing up",
|
||
"copyConcurrency": "Copy Concurrency",
|
||
"copyConcurrencyDescription": "Number of remote file copies in parallel when backing up.",
|
||
"copyConcurrencyDigitalOceanNote": "DigitalOcean Spaces rate limits at 20.",
|
||
"encryptionPasswordPlaceholder": "Passphrase used to encrypt the backups",
|
||
"encryptionPasswordRepeat": "Repeat Password",
|
||
"server": "Server IP or Hostname",
|
||
"remoteDirectory": "Remote Directory",
|
||
"username": "Username",
|
||
"password": "Password",
|
||
"configureMount": "Specify mount point configuration",
|
||
"setupMountDescription": "When checked, Cloudron will configure the mount point on the server",
|
||
"port": "Port",
|
||
"user": "User",
|
||
"privateKey": "Private Key",
|
||
"diskPath": "Disk Path",
|
||
"cifsSealSupport": "Use seal encryption. Requires at least SMB v3",
|
||
"chown": "Remote file system supports chown",
|
||
"encryptedFilenames": "Encrypted filenames",
|
||
"encryptFilenames": "Encrypt Filenames"
|
||
},
|
||
"check": {
|
||
"noop": "Cloudron backups are disabled. Please ensure this server is backed up using alternate means. See https://docs.cloudron.io/backups/#storage-providers for more information.",
|
||
"sameDisk": "Backups are currently on the same disk as Cloudron itself. If the disk fills up with these backups, Cloudron will not function. A disk failure can also lead to complete data loss. See https://docs.cloudron.io/backups/#storage-providers for storing backups in an external location."
|
||
},
|
||
"backupEdit": {
|
||
"title": "Edit Backup",
|
||
"label": "Label",
|
||
"preserved": {
|
||
"description": "Persist backup regardless of retention policy",
|
||
"tooltip": "This will also preserve the mail and {{ appsLength }} app backup(s)."
|
||
},
|
||
"remotePath": "Remote Path"
|
||
},
|
||
"archives": {
|
||
"title": "App Archive",
|
||
"location": "Location",
|
||
"info": "Info"
|
||
},
|
||
"archive": {
|
||
"description": "Deleted archives are cleaned up based on the backup policy."
|
||
},
|
||
"deleteArchiveDialog": {
|
||
"title": "Delete Archive of {{appTitle}} ({{fqdn}})",
|
||
"description": "After deletion, the archive will be cleaned up based on the backup policy."
|
||
},
|
||
"deleteArchive": {
|
||
"deleteAction": "Delete"
|
||
},
|
||
"restoreArchiveDialog": {
|
||
"title": "Restore from Archive",
|
||
"description": "This will install {{appId}} at the specified location with backup from {{creationTime}}.",
|
||
"restoreAction": "Restore {{ dnsOverwrite ? 'and overwrite DNS' : '' }}"
|
||
}
|
||
},
|
||
"branding": {
|
||
"title": "Branding",
|
||
"cloudronName": "Cloudron Name",
|
||
"logo": "Logo",
|
||
"footer": {
|
||
"title": "Footer",
|
||
"description": "Use markdown to style the footer.",
|
||
"subscriptionRequired": "Customizing the footer is only available in the paid plans.",
|
||
"setupSubscriptionNow": "Set up Subscription Now"
|
||
},
|
||
"changeLogo": {
|
||
"title": "Choose Cloudron Avatar"
|
||
},
|
||
"backgroundImage": "Login page background image",
|
||
"clearBackgroundImage": "Clear"
|
||
},
|
||
"emails": {
|
||
"title": "Email",
|
||
"domains": {
|
||
"title": "Domains",
|
||
"domain": "Domain",
|
||
"config": "Config",
|
||
"outbound": "Outbound only",
|
||
"disabled": "Disabled",
|
||
"stats": "{{ mailboxCount }} Mailbox(es) / Usage: {{ usage }}",
|
||
"testEmailTooltip": "Send Test Email"
|
||
},
|
||
"settings": {
|
||
"title": "Settings",
|
||
"info": "These settings are global and apply to all domains.",
|
||
"location": "Mail Server Location",
|
||
"maxMailSize": "Maximum email size",
|
||
"spamFilter": "Spam filtering",
|
||
"spamFilterOverview": "{{ blacklistCount }} address(es) on the blocklist.",
|
||
"changeDomainProgress": "Changing Email domain:",
|
||
"solrFts": "Full Text Search",
|
||
"solrEnabled": "Enabled",
|
||
"solrDisabled": "Disabled",
|
||
"solrRunning": "Running",
|
||
"solrNotRunning": "Not Running",
|
||
"acl": "Mail ACL",
|
||
"aclOverview": "{{ dnsblZonesCount }} DNSBL zone(s)",
|
||
"virtualAllMail": "\"All Mail\" Folder"
|
||
},
|
||
"eventlog": {
|
||
"title": "Email Event Log",
|
||
"time": "Time",
|
||
"details": "Details",
|
||
"empty": "Event Log is empty.",
|
||
"type": {
|
||
"outgoing": "Outgoing",
|
||
"deferred": "Deferred",
|
||
"incoming": "Incoming",
|
||
"queued": "Queued",
|
||
"denied": "Denied",
|
||
"bounce": "Bounce",
|
||
"spamFilterTrained": "Spam filter trained",
|
||
"bounceInfo": "Sending bounce",
|
||
"deferredInfo": "Delivery failure, will retry in {{ delay }}s.",
|
||
"inboundInfo": "Received",
|
||
"outboundInfo": "Queued for delivery",
|
||
"receivedInfo": "Saved",
|
||
"deliveredInfo": "Delivered mail",
|
||
"deniedInfo": "Connection denied",
|
||
"spamFilterTrainedInfo": "Spam filter trained using mailbox content",
|
||
"overQuotaInfo": "Mailbox {{ mailbox }} is {{ quotaPercent }}% full",
|
||
"underQuotaInfo": "Mailbox {{ mailbox }} has fallen below {{ quotaPercent }}% quota",
|
||
"quota": "Mailbox Quota"
|
||
},
|
||
"searchPlaceholder": "Search",
|
||
"from": "From",
|
||
"mailFrom": "From",
|
||
"rcptTo": "To"
|
||
},
|
||
"changeDomainDialog": {
|
||
"title": "Change Email Server Location",
|
||
"description": "This will move the IMAP and SMTP server to the specified location.",
|
||
"location": "Location",
|
||
"locationPlaceholder": "Leave empty to use bare domain",
|
||
"manualInfo": "Add an A record manually for {{ domain }} to this Cloudron's public IP"
|
||
},
|
||
"changeMailSizeDialog": {
|
||
"title": "Change Maximum Email Size",
|
||
"description": "Changing the maximum email message size requires a restart of the mail server.",
|
||
"size": "Maximum size in megabytes:"
|
||
},
|
||
"spamFilterDialog": {
|
||
"title": "Spam Filtering",
|
||
"blacklisteAddresses": "Addresses on the blocklist",
|
||
"blacklisteAddressesInfo": "Matched addresses will end up in the user's Spam folder. '*' and '?' glob patterns are supported.",
|
||
"customRules": "Custom Spamassassin Rules",
|
||
"blacklisteAddressesPlaceholder": "Line separated email address patterns",
|
||
"customRulesPlaceholder": "Custom Spamassassin Rules"
|
||
},
|
||
"testMailDialog": {
|
||
"title": "Send test email for {{ domain }}",
|
||
"description": "This will send a test email from <b>no-reply@{{ domain }}</b> to the address below.",
|
||
"mailTo": "Email to",
|
||
"mailToPlaceholder": "Email address",
|
||
"sendAction": "Send"
|
||
},
|
||
"solrConfig": {
|
||
"title": "Full Text Search",
|
||
"description": "Solr & Tika can be used to provide fast full-text search for emails and attachments. Solr is only run if the <a href=\"/#/services\" target=\"_blank\">mail service</a> has been allocated at least 3GB RAM.",
|
||
"enableSolrCheckbox": "Enable Full Text Search",
|
||
"notEnoughMemory": "Please allocate at least 3GB to the mail service to enable solr."
|
||
},
|
||
"typeFilterHeader": "All Events",
|
||
"aclDialog": {
|
||
"dnsblZones": "DNSBL Zones",
|
||
"dnsblZonesInfo": "Connecting IP address is looked up in these IP blocklists",
|
||
"dnsblZonesPlaceholder": "Line separated zone names",
|
||
"title": "Change Email ACL"
|
||
},
|
||
"mailboxSharing": {
|
||
"title": "Mailbox Sharing",
|
||
"description": "When enabled, users can share their IMAP folders with other users.",
|
||
"enabled": "Mailbox sharing is currently enabled.",
|
||
"disabled": "Mailbox sharing is currently disabled.",
|
||
"enableAction": "Enable"
|
||
},
|
||
"queue": {
|
||
"title": "Email Queue",
|
||
"mailFrom": "From",
|
||
"rcptTo": "To",
|
||
"details": "Details",
|
||
"empty": "Mail queue is empty",
|
||
"discardTooltip": "Discard",
|
||
"queueTime": "Queue Time",
|
||
"resendTooltip": "Resend now"
|
||
},
|
||
"action": {
|
||
"queue": "Queue"
|
||
},
|
||
"changeVirtualAllMailDialog": {
|
||
"title": "\"All Mail\" Folder",
|
||
"description": "The \"All Mail\" folder is a single folder that contains all the mails in your Inbox. The folder can be useful in mail clients that do not support recursive folder search."
|
||
}
|
||
},
|
||
"network": {
|
||
"title": "Network",
|
||
"ip": {
|
||
"title": "IPv4",
|
||
"description": "This IPv4 address is used to set up DNS A records.",
|
||
"provider": "Provider",
|
||
"interface": "Network Interface Name",
|
||
"configure": "Configure",
|
||
"interfaceDescription": "List available devices on the server with:",
|
||
"detected": "detected",
|
||
"address": "IP Address"
|
||
},
|
||
"firewall": {
|
||
"title": "Firewall",
|
||
"blockedIpRanges": "Blocked IPs & Ranges",
|
||
"blocklist": "{{ blockCount }} IP(s) blocked",
|
||
"configure": {
|
||
"title": "Firewall Configuration",
|
||
"description": "Matched addresses will be unable to connect to the server including the mail server, the dashboard and all apps. Be careful not to lock yourself out.",
|
||
"blocklistPlaceholder": "Line separated IP address or Subnet"
|
||
}
|
||
},
|
||
"dyndns": {
|
||
"title": "Dynamic DNS",
|
||
"description": "Enable this option to keep all your DNS records in sync with a changing IP address. This is useful when Cloudron runs in a network with a frequently changing public IP address like a home connection.",
|
||
"showLogsAction": "Show Logs"
|
||
},
|
||
"configureIp": {
|
||
"title": "Configure IPv4 Provider",
|
||
"providerGenericDescription": "The Public IP address of the server will be automatically detected."
|
||
},
|
||
"ipv4": {
|
||
"address": "IPv4 Address"
|
||
},
|
||
"ipv6": {
|
||
"address": "IPv6 Address",
|
||
"title": "IPv6",
|
||
"description": "This IPv6 address is used to set up DNS AAAA records."
|
||
},
|
||
"configureIpv6": {
|
||
"title": "Configure IPv6 Provider"
|
||
},
|
||
"trustedIps": {
|
||
"description": "HTTP headers from matching IP addresses will be trusted",
|
||
"title": "Configure Trusted IPs",
|
||
"summary": "{{ trustCount }} IPs trusted"
|
||
},
|
||
"trustedIpRanges": "Trusted IPs & Ranges "
|
||
},
|
||
"services": {
|
||
"title": "Services",
|
||
"description": "Services implement functionality such as databases, email and authentication.",
|
||
"service": "Service",
|
||
"memoryUsage": "Memory Usage",
|
||
"memoryLimit": "Memory Limit",
|
||
"configureActionTooltip": "Configure",
|
||
"restartActionTooltip": "Restart",
|
||
"configure": {
|
||
"title": "Configure {{ name }}",
|
||
"memoryLimitDescription": "Cloudron allocates 50% of this value as RAM and 50% as swap.",
|
||
"accessControl": "Access Control",
|
||
"accessControlDescription": "Allowing non-admins to access SFTP will let them read application config files and secret keys. For some apps like WordPress, they can also log the password.",
|
||
"requireAdminRoleLabel": "Require admin role to access SFTP",
|
||
"resetToDefaults": "Reset to default",
|
||
"enableRecoveryMode": "Enable Recovery Mode",
|
||
"recoveryModeDescription": "If the service is constantly restarting or not responding because of data corruption, place the service in recovery mode. Use the following <a href=\"{{ docsLink }}\" target=\"_blank\">instructions</a> to get the service running again."
|
||
},
|
||
"refresh": "Refresh"
|
||
},
|
||
"settings": {
|
||
"title": "Settings",
|
||
"appstoreAccount": {
|
||
"title": "Cloudron.io Account",
|
||
"description": "A Cloudron.io account is used to access the App Store and manage your subscription.",
|
||
"setupAction": "Set up Account",
|
||
"email": "Account Email",
|
||
"subscription": "Subscription",
|
||
"cloudronId": "Cloudron ID",
|
||
"subscriptionEndsAt": "Canceled and ends on",
|
||
"subscriptionSetupAction": "Upgrade to Premium",
|
||
"subscriptionChangeAction": "Manage Subscription",
|
||
"subscriptionReactivateAction": "Reactivate Subscription",
|
||
"emailNotVerified": "Email not yet verified"
|
||
},
|
||
"timezone": {
|
||
"title": "System Time Zone",
|
||
"description": "The current timezone setting is <b>{{ timeZone }}</b>. This setting is used for scheduling backup and update tasks. Timestamps in the UI are always displayed using the browser's timezone."
|
||
},
|
||
"updates": {
|
||
"title": "Updates",
|
||
"version": "Platform version",
|
||
"showLogsAction": "Show Logs",
|
||
"changeScheduleAction": "Change Schedule",
|
||
"checkForUpdatesAction": "Check for Updates",
|
||
"updateAvailableAction": "Update Available",
|
||
"stopUpdateAction": "Stop Update",
|
||
"disabled": "Disabled",
|
||
"schedule": "Schedule",
|
||
"description": "Platform and App Updates are automatically applied based on the Schedule in the <a href=\"/#/settings\">System Time Zone</a>."
|
||
},
|
||
"privateDockerRegistry": {
|
||
"title": "Private Docker Registry",
|
||
"description": "Cloudron can pull and install <a href=\"{{ customAppsLink }}\" target=\"_blank\">custom apps</a> from a private docker registry.",
|
||
"subscriptionRequired": "This feature is only available in the paid plans.",
|
||
"setupSubscriptionAction": "Set up Subscription Now",
|
||
"server": "Server address",
|
||
"username": "Username",
|
||
"usernameNotSet": "Not set",
|
||
"configureAction": "Configure Registry",
|
||
"serverNotSet": "Not set"
|
||
},
|
||
"privateDockerRegistryDialog": {
|
||
"title": "Private Registry Configuration",
|
||
"email": "Email (Optional)",
|
||
"passwordToken": "Password/Token"
|
||
},
|
||
"updateScheduleDialog": {
|
||
"title": "Configure Automatic Update Schedule",
|
||
"disableCheckbox": "Disable Automatic Updates",
|
||
"enableCheckbox": "Enable Automatic Updates",
|
||
"selectOne": "Select at least one day and time",
|
||
"days": "Days",
|
||
"hours": "Hours",
|
||
"description": "Select the days and hours during which Cloudron will apply automatic platform and app updates. Please take care to not overlap this schedule with the <a href=\"/#/backups\">backup schedule</a>."
|
||
},
|
||
"updateDialog": {
|
||
"title": "Update Cloudron to",
|
||
"blockingApps": "The apps below are blocking the update because they have pending actions:",
|
||
"blockingAppsInfo": "Please wait for the above operations to finish.",
|
||
"unstableWarning": "This update is a pre-release and not considered stable yet. Please update at your own risk.",
|
||
"changes": "Changes",
|
||
"skipBackupCheckbox": "Skip backup",
|
||
"updateAction": "Update"
|
||
},
|
||
"language": {
|
||
"title": "Language",
|
||
"description": "The default language of this Cloudron can be set here. This will be used also for transactional emails like user invitation and password reset. Each user can still change the preferred language for the dashboard individually in the profile."
|
||
},
|
||
"registryConfig": {
|
||
"provider": "Docker Registry Provider",
|
||
"providerOther": "Other",
|
||
"providerDisabled": "Disabled"
|
||
}
|
||
},
|
||
"support": {
|
||
"title": "Support",
|
||
"ticket": {
|
||
"title": "Ticket",
|
||
"subscriptionRequired": "Support tickets are only available in the paid plans.",
|
||
"subscriptionRequiredDescription": "You may find answers in our <a href=\"{{ supportViewLink }}\" target=\"_blank\">documentation</a> or ask on the <a href=\"{{ forumLink }}\" target=\"_blank\">Forum</a>.",
|
||
"type": "Type",
|
||
"typeApp": "App Error",
|
||
"typeBug": "Bug Report",
|
||
"typeEmail": "Email Error",
|
||
"selectApp": "Select App",
|
||
"topic": "Topic",
|
||
"report": "Report",
|
||
"email": "Email",
|
||
"emailInfo": "(Subscription email is {{ email }})",
|
||
"sshCheckbox": "Allow support engineers to connect to this server via SSH",
|
||
"submitAction": "Submit",
|
||
"reportPlaceholder": "Describe your issue",
|
||
"emailPlaceholder": "If needed, provide an email address different from above to reach you",
|
||
"emailVerifyAction": "Verify now",
|
||
"emailNotVerified": "Your cloudron.io account email {{ email }} is not verified. Please verify it to open support tickets.",
|
||
"typeBilling": "Billing Issue"
|
||
},
|
||
"remoteSupport": {
|
||
"title": "Remote Support",
|
||
"subscriptionRequired": "Remote support is only available in the paid plans.",
|
||
"description": "Enable this option to allow support engineers to connect to this server via SSH.",
|
||
"warning": "Do not enable this option unless requested by the Cloudron support team.",
|
||
"disableAction": "Disable SSH support access",
|
||
"enableAction": "Enable SSH support access"
|
||
},
|
||
"help": {
|
||
"title": "Help",
|
||
"description": "Please use the following resources for help and support:\n* [Cloudron Forum]({{ forumLink }}) - Please use the Support and App specific categories for questions.\n* [Cloudron Docs & Knowledge Base]({{ docsLink }})\n* [Custom App Packaging & API]({{ packagingLink }})\n"
|
||
}
|
||
},
|
||
"system": {
|
||
"title": "System Info",
|
||
"diskUsage": {
|
||
"title": "Disk Usage",
|
||
"mountedAt": "{{ filesystem }} <small>mounted at</small> {{ mountpoint }}",
|
||
"usageInfo": "{{ available | prettyDiskSize }}</b> of <b>{{ size | prettyDiskSize }}</b> available",
|
||
"diskContent": "This {{ type }} disk contains",
|
||
"notAvailableYet": "Not available yet",
|
||
"usedInfo": "{{ used }} used of {{ size }}",
|
||
"uninstalledApp": "Uninstalled app",
|
||
"volumeContent": "This disk is the volume <code>{{ name }}</code>",
|
||
"diskSpeed": "Speed: {{ speed }} MB/sec"
|
||
},
|
||
"systemMemory": {
|
||
"title": "System Memory",
|
||
"graphSubtext": "Only apps using more than {{ threshold }} of memory are shown"
|
||
},
|
||
"cpuUsage": {
|
||
"title": "CPU Usage",
|
||
"graphTitle": "Percentage",
|
||
"graphSubtext": "Only apps using more than {{ threshold }} of cpu are shown"
|
||
},
|
||
"selectPeriodLabel": "Select Period",
|
||
"info": {
|
||
"platformVersion": "Platform Version",
|
||
"title": "Info",
|
||
"vendor": "Vendor",
|
||
"product": "Product",
|
||
"memory": "Memory",
|
||
"uptime": "Uptime",
|
||
"activationTime": "Cloudron Creation Time"
|
||
},
|
||
"graphs": {
|
||
"title": "Graphs"
|
||
}
|
||
},
|
||
"eventlog": {
|
||
"title": "Event Log",
|
||
"time": "Time",
|
||
"source": "Source",
|
||
"details": "Details",
|
||
"searchPlaceholder": "Search",
|
||
"filterAllEvents": "All Events"
|
||
},
|
||
"domains": {
|
||
"title": "Domains & Certs",
|
||
"addDomain": "Add Domain",
|
||
"domain": "Domain",
|
||
"provider": "Provider",
|
||
"tooltipEdit": "Edit Domain",
|
||
"tooltipRemove": "Remove Domain",
|
||
"renewCerts": {
|
||
"title": "Renew certificates",
|
||
"description": "Let's Encrypt certificates are renewed automatically. Use this option to trigger a renewal immediately.",
|
||
"renewAllAction": "Renew All Certs",
|
||
"showLogsAction": "Show Logs"
|
||
},
|
||
"changeDashboardDomain": {
|
||
"title": "Change Dashboard Domain",
|
||
"description": "This will move the dashboard to the <code>my</code>subdomain of the selected domain.",
|
||
"changeAction": "Change Domain",
|
||
"cancelAction": "Cancel",
|
||
"showLogsAction": "Show Logs"
|
||
},
|
||
"subscriptionRequired": {
|
||
"title": "Subscription required",
|
||
"description": "To add more domains, please set up a paid plan.",
|
||
"setupAction": "Set up Subscription"
|
||
},
|
||
"domainDialog": {
|
||
"addTitle": "Add Domain",
|
||
"editTitle": "Configure {{ domain }}",
|
||
"addDescription": "Adding a domain lets you install apps on subdomains of this domain. Email settings for the domain can be configured in the Email view.",
|
||
"domain": "Domain",
|
||
"provider": "DNS Provider",
|
||
"route53AccessKeyId": "Access Key Id",
|
||
"route53SecretAccessKey": "Secret Access Key",
|
||
"gcdnsServiceAccountKey": "Service Account Key",
|
||
"digitalOceanToken": "DigitalOcean Token",
|
||
"gandiApiKey": "Gandi API Key",
|
||
"goDaddyApiKey": "API Key",
|
||
"goDaddyApiSecret": "API Secret",
|
||
"cloudflareTokenType": "Token Type",
|
||
"cloudflareTokenTypeGlobalApiKey": "Global API Key",
|
||
"cloudflareTokenTypeApiToken": "API Token",
|
||
"cloudflareEmail": "Cloudflare Email",
|
||
"linodeToken": "Linode Token",
|
||
"nameComUsername": "Name.com Username",
|
||
"nameComApiToken": "API Token",
|
||
"namecheapUsername": "Namecheap Username",
|
||
"namecheapApiKey": "API Key",
|
||
"namecheapInfo": "The server IP needs to be allowlisted for this API Key.",
|
||
"manualInfo": "All DNS records have to be set up manually before each app installation.",
|
||
"wildcardInfo": "Set up <i>A</i> records for <b>*.{{ domain }}.</b> and <b>{{ domain }}.</b> to this server's IP.",
|
||
"letsEncryptInfo": "Let's Encrypt requires your server to be reachable on port 80",
|
||
"advancedAction": "Advanced settings…",
|
||
"zoneName": "Zone Name (Optional)",
|
||
"certProvider": "Certificate Provider",
|
||
"fallbackCert": "Fallback Certificate (optional)",
|
||
"fallbackCertInfo": "Certificates are automatically obtained and renewed from <a href=\"https://letsencrypt.org/\" target=\"_blank\">Let’s Encrypt</a>. See the current rate limit <a href=\"https://letsencrypt.org/docs/rate-limits/\" target=\"_blank\">here</a>.\nThis wildcard certificate will be used should getting a Let’s Encrypt certificate fail. If not provided, an automatically generated self-signed certificate will be used as fallback.",
|
||
"fallbackCertCustomCert": "Custom Certificate",
|
||
"fallbackCertCustomCertInfo": "This <a href=\"{{ customCertLink }}\" target=\"_blank\">wildcard certificate</a> will be used for all apps on this domain. If not provided, a self-signed certificate will be automatically generated.",
|
||
"fallbackCertKeyPlaceholder": "Key",
|
||
"fallbackCertCertificatePlaceholder": "Certificate",
|
||
"matrixHostname": "Matrix Server Location",
|
||
"mastodonHostname": "Mastodon Server Location",
|
||
"netcupCustomerNumber": "Customer Number",
|
||
"netcupApiKey": "API Key",
|
||
"netcupApiPassword": "API Password",
|
||
"vultrToken": "Vultr Token",
|
||
"wellKnownDescription": "The values will be used by Cloudron to respond to <code>/.well-known/</code> URLs. Note that an app must be available on the bare domain <code>{{ domain }}</code> for this to work. See the <a href=\"{{docsLink}}\" target=\"_blank\">docs</a> for more information.",
|
||
"jitsiHostname": "Jitsi Location",
|
||
"hetznerToken": "Hetzner Token",
|
||
"cloudflareDefaultProxyStatus": "Enable proxying for new DNS records",
|
||
"porkbunApikey": "API Key",
|
||
"porkbunSecretapikey": "Secret API Key",
|
||
"bunnyAccessKey": "Bunny Access Key",
|
||
"dnsimpleAccessToken": "Access Token",
|
||
"ovhEndpoint": "Endpoint",
|
||
"ovhConsumerKey": "Consumer Key",
|
||
"ovhAppKey": "Application Key",
|
||
"ovhAppSecret": "Application Secret",
|
||
"deSecToken": "deSEC Token",
|
||
"gandiTokenType": "Token Type",
|
||
"gandiTokenTypeApiKey": "API Key (Deprecated)",
|
||
"gandiTokenTypePAT": "Personal Access Token (PAT)",
|
||
"inwxUsername": "Username",
|
||
"inwxPassword": "Password"
|
||
},
|
||
"removeDialog": {
|
||
"title": "Really remove {{ domain }}?",
|
||
"description": "This will delete the domain <code>{{ domain }}</code>.",
|
||
"removeAction": "Remove"
|
||
},
|
||
"syncDns": {
|
||
"title": "Sync DNS",
|
||
"description": "This will reprovision the app and email DNS records across all domains.",
|
||
"syncAction": "Sync DNS",
|
||
"showLogsAction": "Show Logs"
|
||
},
|
||
"domainWellKnown": {
|
||
"title": "Well-Known locations of {{ domain }}"
|
||
},
|
||
"tooltipWellKnown": "Set Well-Known Locations",
|
||
"count": "Total domains: {{ count }}"
|
||
},
|
||
"notifications": {
|
||
"title": "Notifications",
|
||
"nonePending": "All Caught Up!",
|
||
"dismissTooltip": "Dismiss",
|
||
"clearAll": "Clear All",
|
||
"markAllAsRead": "Mark All as Read",
|
||
"settings": {
|
||
"title": "Notification Settings",
|
||
"backupFailed": "Backup failed",
|
||
"certificateRenewalFailed": "Certificate renewal failed",
|
||
"appOutOfMemory": "App ran out of memory",
|
||
"appUp": "App is online",
|
||
"appDown": "App is down"
|
||
},
|
||
"settingsDialog": {
|
||
"description": "Manage your personal notification preferences here. Cloudron will send an email for the selected events to your primary email address."
|
||
}
|
||
},
|
||
"logs": {
|
||
"title": "Logs",
|
||
"clear": "Clear View",
|
||
"download": "Download Full Logs",
|
||
"notFoundError": "No such task or app",
|
||
"logsGoneError": "Log file(s) not found"
|
||
},
|
||
"terminal": {
|
||
"title": "Terminal",
|
||
"download": {
|
||
"title": "Download from {{ name }}",
|
||
"filePath": "Path to file or directory",
|
||
"download": "Download"
|
||
},
|
||
"upload": {
|
||
"title": "Uploading file to {{ name }}"
|
||
},
|
||
"scheduler": "Scheduler/Cron",
|
||
"restart": "Restart",
|
||
"uploadToTmp": "Upload to /tmp",
|
||
"uploading": "Uploading…",
|
||
"downloadAction": "Download",
|
||
"busy": {
|
||
"restarting": "Restarting app…",
|
||
"restartingInPausedMode": "Restarting app in paused mode…",
|
||
"resuming": "App is being resumed…",
|
||
"installing": "App is being installed…"
|
||
},
|
||
"contextmenu": {
|
||
"copy": "Copy",
|
||
"clear": "Clear",
|
||
"pasteInfo": "For Paste use Ctrl+v"
|
||
},
|
||
"uploadTo": "Upload to {{ path }}"
|
||
},
|
||
"filemanager": {
|
||
"title": "File Manager",
|
||
"removeDialog": {
|
||
"reallyDelete": "Really delete?"
|
||
},
|
||
"newDirectoryDialog": {
|
||
"title": "New Folder",
|
||
"create": "Create"
|
||
},
|
||
"newFileDialog": {
|
||
"title": "New File",
|
||
"create": "Create"
|
||
},
|
||
"renameDialog": {
|
||
"title": "Rename {{ fileName }}",
|
||
"newName": "New Name",
|
||
"rename": "Rename",
|
||
"reallyOverwrite": "A file with that name already exists. Overwrite existing file?"
|
||
},
|
||
"chownDialog": {
|
||
"title": "Change ownership",
|
||
"newOwner": "New Owner",
|
||
"change": "Change Owner",
|
||
"recursiveCheckbox": "Change ownership recursively"
|
||
},
|
||
"uploadingDialog": {
|
||
"title": "Uploading files ({{ countDone }}/{{ count }})",
|
||
"errorAlreadyExists": "One or more files already exist.",
|
||
"errorFailed": "Failed to upload one or more files. Please try again.",
|
||
"closeWarning": "Do not refresh the page until upload has finished.",
|
||
"retry": "Retry",
|
||
"overwrite": "Overwrite"
|
||
},
|
||
"extractDialog": {
|
||
"title": "Extracting {{ fileName }}",
|
||
"closeWarning": "Do not refresh the page until extract has finished."
|
||
},
|
||
"textEditorCloseDialog": {
|
||
"title": "File has unsaved changes",
|
||
"details": "Your changes will be lost if you don't save them",
|
||
"dontSave": "Don't Save"
|
||
},
|
||
"notFound": "Not found",
|
||
"toolbar": {
|
||
"new": "New",
|
||
"upload": "Upload",
|
||
"newFile": "New File",
|
||
"newFolder": "New Folder",
|
||
"uploadFolder": "Upload Folder",
|
||
"uploadFile": "Upload File",
|
||
"restartApp": "Restart App",
|
||
"openTerminal": "Open Terminal",
|
||
"openLogs": "Open Logs"
|
||
},
|
||
"list": {
|
||
"name": "Name",
|
||
"size": "Size",
|
||
"owner": "Owner",
|
||
"empty": "No files",
|
||
"symlink": "symlink to {{ target }}",
|
||
"menu": {
|
||
"rename": "Rename",
|
||
"chown": "Change Ownership",
|
||
"extract": "Extract Here",
|
||
"download": "Download",
|
||
"delete": "Delete",
|
||
"edit": "Edit",
|
||
"cut": "Cut",
|
||
"copy": "Copy",
|
||
"paste": "Paste",
|
||
"selectAll": "Select All",
|
||
"open": "Open"
|
||
},
|
||
"mtime": "Modified"
|
||
},
|
||
"extract": {
|
||
"error": "Failed to extract: {{ message }}"
|
||
},
|
||
"newDirectory": {
|
||
"errorAlreadyExists": "Already exists"
|
||
},
|
||
"newFile": {
|
||
"errorAlreadyExists": "Already exists"
|
||
},
|
||
"status": {
|
||
"restartingApp": "restarting app"
|
||
},
|
||
"uploader": {
|
||
"uploading": "Uploading",
|
||
"exitWarning": "Upload still in progress. Really close this page?"
|
||
},
|
||
"textEditor": {
|
||
"undo": "Undo",
|
||
"redo": "Redo",
|
||
"save": "Save"
|
||
},
|
||
"extractionInProgress": "Extraction in progress",
|
||
"pasteInProgress": "Pasting in progress",
|
||
"deleteInProgress": "Deletion in progress"
|
||
},
|
||
"email": {
|
||
"backAction": "Back to Email",
|
||
"config": {
|
||
"title": "Email configuration {{ domain }}",
|
||
"clientConfiguration": "Configuring Email Clients"
|
||
},
|
||
"incoming": {
|
||
"title": "Incoming Email",
|
||
"disableAction": "Disable",
|
||
"enableAction": "Enable",
|
||
"outgointServerInfo": "Outgoing Mail (SMTP)",
|
||
"sieveServerInfo": "ManageSieve",
|
||
"server": "Server",
|
||
"port": "Port",
|
||
"tabTitle": "Mailboxes",
|
||
"mailboxes": {
|
||
"title": "Mailboxes",
|
||
"addAction": "Add",
|
||
"disabledTooltip": "Email is disabled for this domain",
|
||
"name": "Name",
|
||
"owner": "Owner",
|
||
"aliases": "Aliases",
|
||
"usage": "Usage",
|
||
"importTooltip": "Import Mailboxes",
|
||
"exportTooltip": "Export Mailboxes",
|
||
"mailboxExport": {
|
||
"csv": "CSV",
|
||
"json": "JSON"
|
||
}
|
||
},
|
||
"mailinglists": {
|
||
"title": "Mailing Lists",
|
||
"description": "A Mailing list forwards all emails to its members.",
|
||
"name": "Name",
|
||
"members": "List Members",
|
||
"everyoneTooltip": "Posting allowed by non-members",
|
||
"membersOnlyTooltip": "Posting restricted to members only"
|
||
},
|
||
"catchall": {
|
||
"title": "Catch-all",
|
||
"description": "Emails sent to non existing addresses will be forwarded to the following mailboxes.",
|
||
"subscriptionRequired": "This feature is only available in the paid plans. <a href=\"\" class=\"pull-right\" ng-click=\"openSubscriptionSetup()\">Set up Subscription Now</a>",
|
||
"saveAction": "Save"
|
||
},
|
||
"incomingServerInfo": "Incoming Mail (IMAP)",
|
||
"enabled": "Cloudron Email Server is configured to receive incoming emails for this domain.",
|
||
"disabled": "Cloudron Email Server will not receive incoming emails for this domain.",
|
||
"howToConnectDescription": "Use the settings below to configure email clients.",
|
||
"incomingUserInfo": "Username",
|
||
"incomingPasswordInfo": "Password",
|
||
"incomingPasswordUsage": "Password of the owner of the mailbox"
|
||
},
|
||
"outbound": {
|
||
"tabTitle": "Outbound",
|
||
"title": "Email Relay",
|
||
"description": "This mail server (Smart host) will be used to send the outbound mails of apps installed under this domain.",
|
||
"noopAdminDomainWarning": "Cloudron cannot send user invites, password reset and other notifications when email is disabled on the primary domain",
|
||
"noopNonAdminDomainWarning": "Cloudron cannot provide email sending for apps hosted under this domain when email is disabled.",
|
||
"mailRelay": {
|
||
"host": "SMTP Host",
|
||
"port": "SMTP Port (STARTTLS)",
|
||
"selfsignedCheckbox": "Accept Self-signed certificate",
|
||
"apiTokenOrKey": "API Token/Key",
|
||
"username": "Username",
|
||
"password": "Password",
|
||
"saveSuccess": "Saved",
|
||
"saveAction": "Save",
|
||
"spfDocInfo": "Cloudron does not automatically set up SPF record. Set it up manually by following the <a href=\"{{ spfDocsLink }}\" target=\"_blank\">{{ name }} docs</a>."
|
||
}
|
||
},
|
||
"settings": {
|
||
"tabTitle": "Settings"
|
||
},
|
||
"masquerading": {
|
||
"title": "Masquerading",
|
||
"description": "Masquerading allows users and apps to send emails with an arbitrary username in the FROM address.",
|
||
"enableAction": "Enable",
|
||
"disableAction": "Disable"
|
||
},
|
||
"signature": {
|
||
"title": "Signature",
|
||
"description": "The text here will be attached to all emails going out from this domain.",
|
||
"subscriptionRequired": "This feature is only available in the paid plans. <a href=\"\" class=\"pull-right\" ng-click=\"openSubscriptionSetup()\">Set up Subscription Now</a>",
|
||
"plainTextFormat": "Text format",
|
||
"htmlFormat": "HTML format (Optional)",
|
||
"saveAction": "Save"
|
||
},
|
||
"status": {
|
||
"tabTitle": "Status"
|
||
},
|
||
"dnsStatus": {
|
||
"title": "DNS Status",
|
||
"reSetupAction": "Redo DNS setup",
|
||
"description": "Status of DNS Records may show an error while DNS is propagating (~5 minutes). See the <a href=\"{{ emailDnsDocsLink }}\" target=\"_blank\">troubleshooting</a> docs for help.",
|
||
"namecheapInfo": "Namecheap requires manual steps for MX records",
|
||
"ptrInfo": "The PTR record is set by your VPS provider and not by your DNS provider.",
|
||
"hostname": "Hostname",
|
||
"domain": "Domain",
|
||
"expected": "Expected value",
|
||
"current": "Current value",
|
||
"type": "Record type",
|
||
"recordNotSet": "not set"
|
||
},
|
||
"smtpStatus": {
|
||
"title": "SMTP Status",
|
||
"outboudDirect": "Outbound SMTP (Direct)",
|
||
"outboudRelay": "Outbound SMTP (Relay)",
|
||
"blacklistCheck": "IP Address Blocklist Check",
|
||
"blacklisted": "This server's IP {{ ip }} is on a blocklist.",
|
||
"notBlacklisted": "This server's IP {{ ip }} is <b>not</b> on a blocklist."
|
||
},
|
||
"subscriptionDialog": {
|
||
"title": "Subscription required",
|
||
"description": "To add more mailboxes, please set up a paid plain.",
|
||
"setupAction": "Set up Subscription"
|
||
},
|
||
"enableEmailDialog": {
|
||
"title": "Enable Email for {{ domain }}?",
|
||
"description": "This will configure Cloudron to receive emails for <b>{{ domain }}</b>. See the documentation for opening up the <a href=\"{{ requiredPortsDocsLink }}\" target=\"_blank\">required ports</a> for Cloudron Email.",
|
||
"noProviderInfo": "No DNS provider is set up. The DNS records listed in the Status tab have to be set up manually.",
|
||
"cloudflareInfo": "The mail server's domain <code>{{ adminDomain }}</code> is managed by Cloudflare. Please verify that Cloudflare proxying is disabled for <code>{{ mailFqdn }}</code> and set to <code>DNS only</code>. This is required because Cloudflare does not proxy email.",
|
||
"setupDnsCheckbox": "Set up Mail DNS records now",
|
||
"setupDnsInfo": "Use this option to automatically set up Email related DNS records. Leaving this option unchecked is useful for creating mail boxes and <a href=\"{{ importEmailDocsLink }}\">importing email</a> before going live.",
|
||
"enableAction": "Enable"
|
||
},
|
||
"disableEmailDialog": {
|
||
"title": "Disable Email Server for {{ domain }}?",
|
||
"description": "This will configure Cloudron to stop receiving emails for <b>{{ domain }}</b>. Mailboxes and lists associated with this domain will not be deleted.",
|
||
"disableAction": "Disable"
|
||
},
|
||
"addMailboxDialog": {
|
||
"title": "Add Mailbox",
|
||
"name": "Name",
|
||
"owner": "Mailbox Owner"
|
||
},
|
||
"editMailboxDialog": {
|
||
"title": "Edit mailbox {{ name }}@{{ domain }}",
|
||
"owner": "Mailbox Owner",
|
||
"aliases": "Aliases",
|
||
"noAliases": "No aliases are configured.",
|
||
"addAliasAction": "Add an alias",
|
||
"addAnotherAliasAction": "Add another alias",
|
||
"enableStorageQuota": "Enable Storage Quota"
|
||
},
|
||
"deleteMailboxDialog": {
|
||
"title": "Delete mailbox {{ name }}@{{ domain }}",
|
||
"description": "After deletion, emails to this mailbox will bounce. You can choose to not delete emails in this mailbox for archival purposes. Archived emails are located at <code>/home/yellowtent/boxdata/mail/vmail</code> on the server.",
|
||
"purgeMailboxCheckbox": "Delete all mails and filters inside this mailbox",
|
||
"deleteAction": "Delete"
|
||
},
|
||
"addMailinglistDialog": {
|
||
"title": "Add Mailing list",
|
||
"members": "List Members",
|
||
"membersInfo": "Separate email addresses with a newline",
|
||
"membersOnlyCheckbox": "Restrict posting to members only",
|
||
"name": "Name"
|
||
},
|
||
"editMailinglistDialog": {
|
||
"title": "Edit Mailing list {{ name }}@{{ domain }}"
|
||
},
|
||
"deleteMailinglistDialog": {
|
||
"title": "Delete mailing list {{ name }}@{{ domain }}",
|
||
"description": "Really delete mailinglist <b>{{ name }}@{{ domain }}</b>?",
|
||
"deleteAction": "Delete"
|
||
},
|
||
"mailboxboxDialog": {
|
||
"usersHeader": "Users",
|
||
"groupsHeader": "Groups",
|
||
"appsHeader": "Apps"
|
||
},
|
||
"updateMailinglistDialog": {
|
||
"activeCheckbox": "Mailing list is active"
|
||
},
|
||
"updateMailboxDialog": {
|
||
"activeCheckbox": "Mailbox is active",
|
||
"enablePop3": "Enable POP3 access"
|
||
},
|
||
"howToConnectInfoModal": "Configuring Email Clients",
|
||
"mailboxImportDialog": {
|
||
"title": "Import Mailboxes",
|
||
"description": "Upload a JSON or CSV file with the schema described in our <a href=\"{{ docsLink }}\" target=\"_blank\">documentation</a>.",
|
||
"fileInput": "Select JSON or CSV file",
|
||
"mailboxesFound": "Found {{ count }} mailbox(es) to import",
|
||
"success": "{{ count }} mailbox(es) imported.",
|
||
"failed": "The following mailboxes were not imported:",
|
||
"importAction": "Import"
|
||
}
|
||
},
|
||
"app": {
|
||
"backAction": "Back to My Apps",
|
||
"logsActionTooltip": "Logs",
|
||
"terminalActionTooltip": "Terminal",
|
||
"filemanagerActionTooltip": "File Manager",
|
||
"docsActionTooltip": "Documentation",
|
||
"firstTimeSetupAction": "First Time Setup",
|
||
"docsAction": "Documentation",
|
||
"adminPageAction": "Admin Page",
|
||
"projectWebsiteAction": "Project Website",
|
||
"displayTabTitle": "Display",
|
||
"locationTabTitle": "Location",
|
||
"accessControlTabTitle": "Access Control",
|
||
"resourcesTabTitle": "Resources",
|
||
"storageTabTitle": "Storage",
|
||
"graphsTabTitle": "Graphs",
|
||
"securityTabTitle": "Security",
|
||
"emailTabTitle": "Email",
|
||
"updatesTabTitle": "Updates",
|
||
"backupsTabTitle": "Backups",
|
||
"repairTabTitle": "Repair",
|
||
"uninstallTabTitle": "Uninstall",
|
||
"display": {
|
||
"label": "Label",
|
||
"tags": "Tags",
|
||
"icon": "Icon",
|
||
"tagsPlaceholder": "Use space to separate tags",
|
||
"tagsTooltip": "For grouping in the dashboard",
|
||
"iconResetAction": "Reset Icon",
|
||
"saveAction": "Save"
|
||
},
|
||
"location": {
|
||
"location": "Location",
|
||
"locationPlaceholder": "Leave empty to use bare domain",
|
||
"redirections": "Redirections",
|
||
"redirectionsPlaceholder": "Leave empty to use bare domain",
|
||
"noRedirections": "No redirect domains are configured.",
|
||
"addRedirectionAction": "Add a redirection",
|
||
"saveAction": "Save",
|
||
"aliases": "Aliases",
|
||
"addAliasAction": "Add an alias",
|
||
"noAliases": "No alias domains are configured.",
|
||
"aliasesPlaceholder": "Leave empty to use bare domain"
|
||
},
|
||
"accessControl": {
|
||
"userManagement": {
|
||
"title": "User management",
|
||
"description": "This app is configured to authenticate with the Cloudron User Directory. This setting controls who can log in and use the app.",
|
||
"descriptionSftp": "This setting also controls SFTP access.",
|
||
"dashboardVisibility": "Dashboard visibility",
|
||
"sftpAccessControl": "This setting also controls SFTP access.",
|
||
"visibleForAllUsers": "Visible to all users on this Cloudron",
|
||
"visibleForSelected": "Only visible to the following users and groups"
|
||
},
|
||
"sftp": {
|
||
"title": "SFTP",
|
||
"server": "Server",
|
||
"port": "Port",
|
||
"username": "Username"
|
||
},
|
||
"operators": {
|
||
"title": "Operators",
|
||
"description": "Operators can configure and maintain this app."
|
||
}
|
||
},
|
||
"resources": {
|
||
"memory": {
|
||
"title": "Memory Limit",
|
||
"description": "Maximum memory app can use",
|
||
"error": "Unable to set memory limit, try less.",
|
||
"resizeAction": "Resize"
|
||
},
|
||
"cpu": {
|
||
"setAction": "Scale",
|
||
"title": "CPU Limit",
|
||
"description": "Maximum percent of CPU app can use"
|
||
}
|
||
},
|
||
"storage": {
|
||
"appdata": {
|
||
"title": "Data Directory",
|
||
"description": "If the server is running out of disk space, use this to move the app's data to a <a href=\"/#/volumes\">volume</a>. Any data here is part of the app's backup.",
|
||
"dataDirPlaceholder": "Leave empty to use platform default",
|
||
"moveAction": "Move Data",
|
||
"diskUsage": "The app is currently using {{ size }} of storage (as of {{ date }}).",
|
||
"mountTypeWarning": "The destination file system must support file permissions and ownership for the move to work"
|
||
},
|
||
"mounts": {
|
||
"title": "Mounts",
|
||
"readOnly": "Read Only",
|
||
"volume": "Volume",
|
||
"noMounts": "No volumes are mounted.",
|
||
"addMountAction": "Add a volume mount",
|
||
"saveAction": "Save",
|
||
"permissions": {
|
||
"readOnly": "Read Only",
|
||
"readWrite": "Read and Write",
|
||
"label": "Permissions"
|
||
}
|
||
}
|
||
},
|
||
"graphs": {
|
||
"period": {
|
||
"12h": "12 hours",
|
||
"24h": "24 hours",
|
||
"7d": "7 days",
|
||
"30d": "30 days",
|
||
"6h": "6 hours"
|
||
},
|
||
"memoryTitle": "Memory (RAM + Swap) in MB",
|
||
"diskTitle": "Disk Usage",
|
||
"diskIOTotal": "total: read {{ read }} / write {{ write }}",
|
||
"networkIOTotal": "total: inbound {{ inbound }} / outbound {{ outbound }}"
|
||
},
|
||
"email": {
|
||
"from": {
|
||
"title": "Mail FROM Address",
|
||
"description": "This sets the address from which this app sends email. This app is already configured to send mail using {{ domain }}'s <a href=\\\"{{ domainConfigLink }}\\\">Outbound Email</a> settings.",
|
||
"mailboxPlaceholder": "Mailbox Name",
|
||
"saveAction": "Save",
|
||
"enable": "Use Cloudron Mail to send emails",
|
||
"description2": "When enabled, the app is configured to send emails via the internal mail server using this address. The internal mail server will use the {{ domain }}'s <a href=\"{{ domainConfigLink }}\">Outbound Email</a> settings to send mail. When disabled, you can configure the email settings within the app.",
|
||
"disable": "Do not configure app's mail delivery settings",
|
||
"enableDescription": "The app is configured to send mails using the address below and {{ domain }}'s <a href=\"{{ domainConfigLink }}\">Outbound Email</a> settings.",
|
||
"disableDescription": "The app's mail delivery settings is left alone. You can configure it inside the app.",
|
||
"displayName": "From Name"
|
||
},
|
||
"csp": {
|
||
"title": "Content Security Policy"
|
||
},
|
||
"inbox": {
|
||
"disable": "Do not configure inbox",
|
||
"disableDescription": "The app's incoming mail settings is left alone. You can configure it inside the app. Select this if the domain's email is not hosted on Cloudron.",
|
||
"title": "Incoming mail",
|
||
"enable": "Use Cloudron Mail to receive emails",
|
||
"enableDescription": "The app is configured to receive mails using the address below. Select this option if {{ domain }}'s email is hosted on this server."
|
||
}
|
||
},
|
||
"security": {
|
||
"csp": {
|
||
"description": "Setting this option will override any CSP headers sent by the app itself",
|
||
"title": "Content Security Policy",
|
||
"saveAction": "Save"
|
||
},
|
||
"robots": {
|
||
"title": "Robots.txt",
|
||
"txtPlaceholder": "Leave empty to allow all bots to index this app",
|
||
"disableIndexingAction": "Disable indexing"
|
||
},
|
||
"hstsPreload": "Enable HSTS preload for this site and all subdomains"
|
||
},
|
||
"updates": {
|
||
"info": {
|
||
"title": "App Info",
|
||
"description": "App Title and Version",
|
||
"appId": "App ID",
|
||
"packageVersion": "Package Version",
|
||
"lastUpdated": "Last Updated",
|
||
"checkForUpdatesAction": "Check for Updates",
|
||
"customAppUpdateInfo": "Auto-update is not available for custom apps.",
|
||
"updateAvailableAction": "Update Available",
|
||
"repository": "Package Repository",
|
||
"installedAt": "Installed At"
|
||
},
|
||
"auto": {
|
||
"title": "Automatic Updates",
|
||
"description": "Cloudron periodically checks the <a href=\"{{ appStoreLink }}\" target=\"_blank\">App Store</a> for updates.",
|
||
"enabled": "Automatic Updates is currently enabled.",
|
||
"disabled": "Automatic Updates is currently disabled.",
|
||
"disableAction": "Disable Auto-update",
|
||
"enableAction": "Enable Auto-update"
|
||
},
|
||
"noUpdates": "No new updates available"
|
||
},
|
||
"backups": {
|
||
"backups": {
|
||
"title": "Backups",
|
||
"description": "Backups are complete snapshots of the app. You can use app backups to restore or clone this app.",
|
||
"packageVersion": "Package Version",
|
||
"time": "Created At",
|
||
"downloadConfigTooltip": "Download Backup Configuration",
|
||
"cloneTooltip": "Clone from this Backup",
|
||
"restoreTooltip": "Restore to this Backup",
|
||
"createBackupAction": "Create Backup",
|
||
"importAction": "Import Backup",
|
||
"downloadBackupTooltip": "Download Backup"
|
||
},
|
||
"import": {
|
||
"title": "Import From External Backup",
|
||
"description": "Use this to migrate an app from another Cloudron. The other app must have the same package version and access control setting as this one."
|
||
},
|
||
"auto": {
|
||
"title": "Automatic Backups",
|
||
"description": "Backups are periodically created based on the <a href=\"{{ backupLink }}\">Backup Schedule</a>.",
|
||
"enabled": "Automatic Backups is currently enabled.",
|
||
"disabled": "Automatic Backups is currently disabled.",
|
||
"disableAction": "Disable Automatic Backups",
|
||
"enableAction": "Enable Automatic Backups"
|
||
}
|
||
},
|
||
"repair": {
|
||
"recovery": {
|
||
"title": "Crash Recovery",
|
||
"description": "If the app is not responding, try restarting the app. If the app is constantly restarting because of a broken plugin or misconfiguration, place the app in recovery mode in order to access the console.\nUse the following <a href=\"{{ docsLink }}\" target=\"_blank\">instructions</a> to get the app running again.",
|
||
"restartAction": "Restart",
|
||
"enableRecoveryModeAction": "Enable Recovery Mode",
|
||
"disableRecoveryModeAction": "Disable Recovery Mode"
|
||
},
|
||
"taskError": {
|
||
"title": "Task Error",
|
||
"description": "If a configuration, update, restore or backup action resulted in an error, you can retry the task.",
|
||
"retryAction": "Retry {{ task }} task"
|
||
},
|
||
"appIsBusyTooltip": "App is busy"
|
||
},
|
||
"uninstall": {
|
||
"startStop": {
|
||
"title": "Start / Stop",
|
||
"description": "Apps can be stopped to conserve server resources instead of uninstalling. Future app backups will not include any app changes between now and the most recent app backup. For this reason, it is recommended to trigger a backup before stopping the app.",
|
||
"startAction": "Start",
|
||
"stopAction": "Stop"
|
||
},
|
||
"uninstall": {
|
||
"title": "Uninstall",
|
||
"description": "This will uninstall the app and remove the app's data. Backups will be cleaned up based on the backup policy.",
|
||
"uninstallAction": "Uninstall"
|
||
}
|
||
},
|
||
"appInfo": {
|
||
"ssoEmail": "This app is set up to allow all users with a mailbox on this Cloudron. Login with the email and Cloudron password to access the mailbox.",
|
||
"sso": "This app is set up to authenticate with the Cloudron User Directory. Cloudron users can login and use it immediately.",
|
||
"appDocsUrl": "Please see the <a target=\"_blank\" href=\"{{ docsUrl }}\">{{ title }} documentation</a> for helpful information and common topics on this app. If you need further help, refer to Cloudron's <a target=\"_blank\" href=\"{{ forumUrl }}\">{{ title }} forum section</a>.",
|
||
"package": "Package",
|
||
"postInstallConfirmCheckbox": "Acknowledge instructions",
|
||
"openAction": "Open {{ app }}",
|
||
"firstTimeTitle": "First Time Usage",
|
||
"firstTimeCollapseHeader": "First time setup instructions",
|
||
"customAppUpdateWarning": "This is a custom app and not installed from the App Store and will not receive updates. See the <a target=\"_blank\" href=\"{{ docsLink }}\">Documentation</a> on how to update a custom app.",
|
||
"checklist": "Admin Checklist"
|
||
},
|
||
"uninstallDialog": {
|
||
"title": "Uninstall {{ app }}",
|
||
"description": "This will uninstall <b>{{ app }}</b> and remove all its data.",
|
||
"uninstallAction": "Uninstall"
|
||
},
|
||
"domainCollisionDialog": {
|
||
"title": "Domain Collision",
|
||
"description": "As a precautionary measure, Cloudron does not overwrite existing DNS records. Please confirm that the above domains are not in use for services external to Cloudron.",
|
||
"collisionListTitle": "The following domains already exist in your DNS:",
|
||
"overwriteAction": "Overwrite existing DNS Records"
|
||
},
|
||
"repairDialog": {
|
||
"title": "Repair {{ app }}",
|
||
"description": "Cloudron will re-install the app in-place with existing configuration. Existing data will be retained.",
|
||
"domainDescription": "Cloudron will repair the app to use the following domains:",
|
||
"location": "Location",
|
||
"taskError": "The <b>{{ task }}</b> operation failed with the following error:",
|
||
"fromBackup": "Restore from Backup:",
|
||
"retryAction": "Retry {{ task }}"
|
||
},
|
||
"importBackupDialog": {
|
||
"title": "Import Backup",
|
||
"description": "Any data generated between now and the last known backup will be irrevocably lost. It is recommended to create a backup of the current data before attempting an import.",
|
||
"uploadAction": "Upload Backup Config",
|
||
"importAction": "Import",
|
||
"remotePath": "Backup Path"
|
||
},
|
||
"updateDialog": {
|
||
"title": "Update {{ app }}",
|
||
"unstableWarning": "This update is a pre-release and not considered stable yet. Please update at your own risk.",
|
||
"changelogHeader": "Changes for new package version {{ version}}:",
|
||
"subscriptionExpired": "Your Cloudron subscription has expired. Please set up a subscription to update the app.",
|
||
"skipBackupCheckbox": "Skip backup",
|
||
"setupSubscriptionAction": "Set up Subscription",
|
||
"updateAction": "Update"
|
||
},
|
||
"restoreDialog": {
|
||
"title": "Restore {{ app }}",
|
||
"description": "This will restore this app to the data from {{ creationTime }}.",
|
||
"warning": "Any data generated between now and the last known backup will be irrevocably lost. It is recommended to create a backup of the current data before attempting a restore.",
|
||
"restoreAction": "Restore"
|
||
},
|
||
"cloneDialog": {
|
||
"title": "Clone {{ app }}",
|
||
"description": "Using backup from <b>{{ creationTime }}</b> and version <b>v{{ packageVersion }}</b>",
|
||
"location": "Location",
|
||
"cloneAction": "Clone {{ dnsOverwrite ? 'and overwrite DNS' : '' }}"
|
||
},
|
||
"states": {
|
||
"running": "Running",
|
||
"stopped": "Stopped",
|
||
"notResponding": "Not Responding",
|
||
"updateAvailable": "Update Available"
|
||
},
|
||
"stopDialog": {
|
||
"title": "Really stop app {{ app }}?"
|
||
},
|
||
"eventlogTabTitle": "Event Log",
|
||
"sftpInfoAction": "SFTP Access",
|
||
"cronTabTitle": "Cron",
|
||
"cron": {
|
||
"title": "Crontab",
|
||
"saveAction": "Save",
|
||
"addCommonPattern": "Add common pattern",
|
||
"commonPattern": {
|
||
"everyMinute": "Every Minute",
|
||
"everyHour": "Every Hour",
|
||
"twicePerHour": "Twice per Hour",
|
||
"everyDay": "Every Day",
|
||
"twicePerDay": "Twice per Day",
|
||
"everySunday": "Every Sunday",
|
||
"daily": "Daily",
|
||
"hourly": "Hourly",
|
||
"service": "Service (runs once)"
|
||
},
|
||
"description": "Custom app-specific cron jobs can be added here. Note that cron jobs required for the app to function are already integrated into the app package and don't need to be configured here."
|
||
},
|
||
"forumUrlAction": "Need help? Ask in the forum",
|
||
"addApplinkDialog": {
|
||
"title": "Add external app link"
|
||
},
|
||
"editApplinkDialog": {
|
||
"title": "Edit App Link",
|
||
"deleteAction": "Delete"
|
||
},
|
||
"applinks": {
|
||
"upstreamUri": "External URL",
|
||
"label": "Label",
|
||
"clearIconAction": "Clear Icon",
|
||
"clearIconDescription": "This will try to fetch the app's favicon on save."
|
||
},
|
||
"servicesTabTitle": "Services",
|
||
"turn": {
|
||
"title": "TURN Setup",
|
||
"enable": "Configure the app to use the built-in TURN server",
|
||
"disable": "Do not configure the app's TURN settings. The app's TURN settings are left alone. You can configure it inside the app."
|
||
},
|
||
"redis": {
|
||
"title": "Redis Configuration",
|
||
"enable": "Configure the app to use Redis",
|
||
"disable": "Disable Redis"
|
||
},
|
||
"infoTabTitle": "Info",
|
||
"info": {
|
||
"notes": {
|
||
"title": "Admin Notes"
|
||
}
|
||
},
|
||
"archive": {
|
||
"title": "Archive",
|
||
"description": "The latest app backup will be added to the <a href=\"/#backups\">App Archive</a>. The app will be uninstalled, but can be restored from the Backups View. Other backups will be cleaned up based on the backup policy.",
|
||
"action": "Archive",
|
||
"latestBackupInfo": "The last backup was created at {{date}}.",
|
||
"noBackup": "This app has no backup. Archiving requires at least one backup."
|
||
},
|
||
"archiveDialog": {
|
||
"title": "Archive {{app}}",
|
||
"description": "This will uninstall the app and put the app's latest backup created at {{date}} in the App Archive."
|
||
}
|
||
},
|
||
"login": {
|
||
"loginTo": "Login to",
|
||
"errorIncorrectCredentials": "Incorrect username or password",
|
||
"username": "Username",
|
||
"password": "Password",
|
||
"2faToken": "2FA Token (if enabled)",
|
||
"signInAction": "Sign in",
|
||
"resetPasswordAction": "Reset password",
|
||
"errorIncorrect2FAToken": "2FA token is invalid",
|
||
"errorInternal": "Internal error, try again later",
|
||
"loginWith": "Login with Cloudron"
|
||
},
|
||
"passwordReset": {
|
||
"title": "Password reset",
|
||
"usernameOrEmail": "Username or Email",
|
||
"resetAction": "Reset",
|
||
"backToLoginAction": "Back to login",
|
||
"emailSent": {
|
||
"title": "Password reset email sent"
|
||
},
|
||
"newPassword": {
|
||
"title": "Set new password",
|
||
"password": "New Password",
|
||
"errorLength": "Password must be at least 8 and at most 265 characters",
|
||
"passwordRepeat": "Repeat Password",
|
||
"errorMismatch": "Passwords don't match"
|
||
},
|
||
"passwordChanged": {
|
||
"submitAction": "Submit"
|
||
},
|
||
"success": {
|
||
"title": "Password changed",
|
||
"openDashboardAction": "Open Dashboard"
|
||
}
|
||
},
|
||
"setupAccount": {
|
||
"welcomeTo": "Welcome to",
|
||
"description": "Please set up your account",
|
||
"username": "Username",
|
||
"errorUsernameTooShort": "The username is too short",
|
||
"errorUsernameTooLong": "The username is too long",
|
||
"errorUsernameInvalid": "Not a valid username",
|
||
"fullName": "Full Name",
|
||
"password": "New Password",
|
||
"passwordRepeat": "Repeat Password",
|
||
"errorPassword": "Password must be at least 8 characters",
|
||
"errorPasswordNoMatch": "Passwords don't match",
|
||
"setupAction": "Set up",
|
||
"invalidToken": {
|
||
"title": "Invalid or Expired Invite Link",
|
||
"description": "Contact your server admin to get a new invite link."
|
||
},
|
||
"success": {
|
||
"title": "Your Account is ready",
|
||
"openDashboardAction": "Open Dashboard"
|
||
},
|
||
"noUsername": {
|
||
"title": "Cannot setup account",
|
||
"description": "Account cannot be setup without a username."
|
||
}
|
||
},
|
||
"welcomeEmail": {
|
||
"welcomeTo": "Welcome to <%= cloudronName %>!",
|
||
"salutation": "Hi <%= user %>,",
|
||
"inviteLinkAction": "Get started",
|
||
"invitor": "You are receiving this email because you were invited by <%= invitor %>.",
|
||
"expireNote": "Please note that the invite link will expire in 7 days.",
|
||
"inviteLinkActionText": "Follow the link to get started: <%- inviteLink %>",
|
||
"subject": "Welcome to <%= cloudron %>"
|
||
},
|
||
"passwordResetEmail": {
|
||
"salutation": "Hi <%= user %>,",
|
||
"description": "Someone, hopefully you, has requested your account's password be reset. If you did not request this reset, please ignore this message.",
|
||
"resetAction": "Click to reset your password",
|
||
"expireNote": "Please note that the password reset link will expire in 24 hours.",
|
||
"resetActionText": "To reset your password, please visit the following page: <%- resetLink %>",
|
||
"subject": "[<%= cloudron %>] Password Reset"
|
||
},
|
||
"lang": {
|
||
"en": "English",
|
||
"de": "German",
|
||
"fr": "French",
|
||
"it": "Italian",
|
||
"ja": "Japanese",
|
||
"nl": "Dutch",
|
||
"pl": "Polish",
|
||
"vi": "Vietnamese",
|
||
"zh_Hans": "Chinese (Simplified)",
|
||
"es": "Spanish",
|
||
"ru": "Russian",
|
||
"pt": "Portuguese",
|
||
"da": "Danish",
|
||
"id": "Indonesian"
|
||
},
|
||
"volumes": {
|
||
"title": "Volumes",
|
||
"addVolumeAction": "Add Volume",
|
||
"hostPath": "Target",
|
||
"name": "Name",
|
||
"openFileManagerActionTooltip": "Open FileManager",
|
||
"removeVolumeActionTooltip": "Remove Volume",
|
||
"addVolumeDialog": {
|
||
"title": "Add Volume",
|
||
"addAction": "Add",
|
||
"server": "Server IP or Hostname",
|
||
"remoteDirectory": "Remote Directory",
|
||
"username": "Username",
|
||
"password": "Password",
|
||
"diskPath": "Disk Path",
|
||
"mountTypeInfo": "Cloudron will configure the server to automatically mount this volume",
|
||
"port": "Port",
|
||
"user": "User",
|
||
"privateKey": "Private SSH Key",
|
||
"mountpointWarning": "Cloudron will not configure the server to automatically mount this volume"
|
||
},
|
||
"removeVolumeDialog": {
|
||
"title": "Really remove {{ volume }} ?",
|
||
"description": "This will delete the volume <code>{{ volume }}</code>. Data inside the host path will not be removed.",
|
||
"removeAction": "Remove"
|
||
},
|
||
"description": "Volumes are local or remote file systems. They can be used as an app's main data storage or as a shared storage location between apps.",
|
||
"mountType": "Mount Type",
|
||
"updateVolumeDialog": {
|
||
"title": "Update Volume {{ volume }}"
|
||
},
|
||
"tooltipEdit": "Edit Volume",
|
||
"mountStatus": "Mount Status",
|
||
"type": "Type",
|
||
"localDirectory": "Local Directory",
|
||
"remountActionTooltip": "Remount Volume",
|
||
"editVolumeDialog": {
|
||
"title": "Edit volume {{ name }}"
|
||
},
|
||
"editActionTooltip": "Edit Volume"
|
||
},
|
||
"newLoginEmail": {
|
||
"subject": "[<%= cloudron %>] New login on your account",
|
||
"topic": "We've noticed a new login on your Cloudron account.",
|
||
"salutation": "Hi <%= user %>,",
|
||
"notice": "We noticed a login on your Cloudron account from a new device.",
|
||
"action": "If this was you, you can safely disregard this email. If this wasn't you, you should change your password immediately."
|
||
},
|
||
"supportConfig": {
|
||
"emailNotVerified": "Please verify the cloudron.io account email first to ensure we are able to contact you."
|
||
},
|
||
"storage": {
|
||
"mounts": {
|
||
"description": "Apps can access mounted <a href=\"/#/volumes\">volumes</a> via <code>/media/{volume name}</code> directory. This data is not included in the app's backup."
|
||
}
|
||
},
|
||
"oidc": {
|
||
"newClientDialog": {
|
||
"title": "Add OIDC Client",
|
||
"description": "Enter new OIDC client settings",
|
||
"createAction": "Add"
|
||
},
|
||
"client": {
|
||
"name": "Name",
|
||
"id": "Client ID",
|
||
"secret": "Client Secret",
|
||
"signingAlgorithm": "Signing Algorithm",
|
||
"loginRedirectUri": "Login callback URLs (comma separated)",
|
||
"logoutRedirectUri": "Logout callback Url (optional)"
|
||
},
|
||
"title": "OpenID Connect Provider",
|
||
"description": "Cloudron can act as an OpenID Connect provider for internal apps and external services.",
|
||
"editClientDialog": {
|
||
"title": "Edit Client {{ client }}"
|
||
},
|
||
"deleteClientDialog": {
|
||
"title": "Really delete client {{ client }}?",
|
||
"description": "Deleting this OIDC Client will invalidate any access tokens. Apps using this OIDC Client will not be able to authenticate anymore."
|
||
},
|
||
"env": {
|
||
"discoveryUrl": "Discovery URL",
|
||
"logoutUrl": "Logout URL",
|
||
"profileEndpoint": "Profile Endpoint",
|
||
"keysEndpoint": "Keys Endpoint",
|
||
"tokenEndpoint": "Token Endpoint",
|
||
"authEndpoint": "Auth Endpoint"
|
||
},
|
||
"clients": {
|
||
"title": "Clients",
|
||
"newClient": "New Client",
|
||
"empty": "No clients yet"
|
||
}
|
||
},
|
||
"automation": "Automation"
|
||
}
|