From 21fac303503c16fb88d8cf08a9b905740d872401 Mon Sep 17 00:00:00 2001 From: James Brooks Date: Fri, 29 Jan 2016 22:05:05 +0000 Subject: [PATCH] Sync up languages from CrowdIn. Closes #1259 --- config/langs.php | 25 ++- resources/lang/af/cachet.php | 140 ++++++++++++++++ resources/lang/af/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/af/forms.php | 181 ++++++++++++++++++++ resources/lang/af/pagination.php | 28 ++++ resources/lang/af/setup.php | 23 +++ resources/lang/af/validation.php | 119 +++++++++++++ resources/lang/ar/cachet.php | 140 ++++++++++++++++ resources/lang/ar/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/ar/forms.php | 181 ++++++++++++++++++++ resources/lang/ar/pagination.php | 28 ++++ resources/lang/ar/setup.php | 23 +++ resources/lang/ar/validation.php | 119 +++++++++++++ resources/lang/ca/cachet.php | 140 ++++++++++++++++ resources/lang/ca/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/ca/forms.php | 181 ++++++++++++++++++++ resources/lang/ca/pagination.php | 28 ++++ resources/lang/ca/setup.php | 23 +++ resources/lang/ca/validation.php | 119 +++++++++++++ resources/lang/cs/cachet.php | 140 ++++++++++++++++ resources/lang/cs/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/cs/forms.php | 181 ++++++++++++++++++++ resources/lang/cs/pagination.php | 28 ++++ resources/lang/cs/setup.php | 23 +++ resources/lang/cs/validation.php | 119 +++++++++++++ resources/lang/da/cachet.php | 50 +++++- resources/lang/da/dashboard.php | 88 ++++++---- resources/lang/da/forms.php | 52 +++--- resources/lang/da/pagination.php | 4 +- resources/lang/da/validation.php | 6 +- resources/lang/de/cachet.php | 46 ++++- resources/lang/de/dashboard.php | 36 +++- resources/lang/de/forms.php | 29 +++- resources/lang/de/setup.php | 2 +- resources/lang/de/validation.php | 4 +- resources/lang/el/cachet.php | 140 ++++++++++++++++ resources/lang/el/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/el/forms.php | 181 ++++++++++++++++++++ resources/lang/el/pagination.php | 28 ++++ resources/lang/el/setup.php | 23 +++ resources/lang/el/validation.php | 119 +++++++++++++ resources/lang/en-UD/cachet.php | 43 +++-- resources/lang/en-UD/dashboard.php | 25 ++- resources/lang/en-UD/forms.php | 11 +- resources/lang/en-UD/validation.php | 2 +- resources/lang/en/cachet.php | 2 +- resources/lang/en/validation.php | 70 ++++---- resources/lang/es/cachet.php | 124 +++++++++----- resources/lang/es/dashboard.php | 223 ++++++++++++++++-------- resources/lang/es/forms.php | 163 ++++++++++-------- resources/lang/es/setup.php | 19 ++- resources/lang/es/validation.php | 100 +++++------ resources/lang/fa/cachet.php | 140 ++++++++++++++++ resources/lang/fa/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/fa/forms.php | 181 ++++++++++++++++++++ resources/lang/fa/pagination.php | 28 ++++ resources/lang/fa/setup.php | 23 +++ resources/lang/fa/validation.php | 119 +++++++++++++ resources/lang/fi/cachet.php | 140 ++++++++++++++++ resources/lang/fi/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/fi/forms.php | 181 ++++++++++++++++++++ resources/lang/fi/pagination.php | 28 ++++ resources/lang/fi/setup.php | 23 +++ resources/lang/fi/validation.php | 119 +++++++++++++ resources/lang/fr/cachet.php | 99 +++++++---- resources/lang/fr/dashboard.php | 68 +++++--- resources/lang/fr/forms.php | 49 ++++-- resources/lang/fr/setup.php | 2 +- resources/lang/fr/validation.php | 4 +- resources/lang/he/cachet.php | 140 ++++++++++++++++ resources/lang/he/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/he/forms.php | 181 ++++++++++++++++++++ resources/lang/he/pagination.php | 28 ++++ resources/lang/he/setup.php | 23 +++ resources/lang/he/validation.php | 119 +++++++++++++ resources/lang/hu/cachet.php | 140 ++++++++++++++++ resources/lang/hu/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/hu/forms.php | 181 ++++++++++++++++++++ resources/lang/hu/pagination.php | 28 ++++ resources/lang/hu/setup.php | 23 +++ resources/lang/hu/validation.php | 119 +++++++++++++ resources/lang/id/cachet.php | 51 +++++- resources/lang/id/dashboard.php | 54 ++++-- resources/lang/id/forms.php | 29 +++- resources/lang/id/validation.php | 4 +- resources/lang/it/cachet.php | 106 ++++++++---- resources/lang/it/dashboard.php | 212 +++++++++++++---------- resources/lang/it/forms.php | 121 ++++++++------ resources/lang/it/pagination.php | 2 +- resources/lang/it/setup.php | 12 +- resources/lang/it/validation.php | 102 ++++++----- resources/lang/ja/cachet.php | 140 ++++++++++++++++ resources/lang/ja/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/ja/forms.php | 181 ++++++++++++++++++++ resources/lang/ja/pagination.php | 28 ++++ resources/lang/ja/setup.php | 23 +++ resources/lang/ja/validation.php | 119 +++++++++++++ resources/lang/ko/cachet.php | 47 +++++- resources/lang/ko/dashboard.php | 61 ++++++- resources/lang/ko/forms.php | 32 +++- resources/lang/ko/validation.php | 4 +- resources/lang/nl/cachet.php | 80 ++++++--- resources/lang/nl/dashboard.php | 80 ++++++--- resources/lang/nl/forms.php | 57 ++++--- resources/lang/nl/validation.php | 4 +- resources/lang/no/cachet.php | 140 ++++++++++++++++ resources/lang/no/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/no/forms.php | 181 ++++++++++++++++++++ resources/lang/no/pagination.php | 28 ++++ resources/lang/no/setup.php | 23 +++ resources/lang/no/validation.php | 119 +++++++++++++ resources/lang/pl/cachet.php | 126 +++++++++----- resources/lang/pl/dashboard.php | 231 +++++++++++++++---------- resources/lang/pl/forms.php | 181 +++++++++++--------- resources/lang/pl/pagination.php | 4 +- resources/lang/pl/setup.php | 19 ++- resources/lang/pl/validation.php | 108 ++++++------ resources/lang/pt-BR/cachet.php | 107 ++++++++---- resources/lang/pt-BR/dashboard.php | 132 +++++++++------ resources/lang/pt-BR/forms.php | 88 +++++----- resources/lang/pt-BR/setup.php | 4 +- resources/lang/pt-BR/validation.php | 8 +- resources/lang/pt-PT/cachet.php | 140 ++++++++++++++++ resources/lang/pt-PT/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/pt-PT/forms.php | 181 ++++++++++++++++++++ resources/lang/pt-PT/pagination.php | 28 ++++ resources/lang/pt-PT/setup.php | 23 +++ resources/lang/pt-PT/validation.php | 119 +++++++++++++ resources/lang/ro/cachet.php | 140 ++++++++++++++++ resources/lang/ro/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/ro/forms.php | 181 ++++++++++++++++++++ resources/lang/ro/pagination.php | 28 ++++ resources/lang/ro/setup.php | 23 +++ resources/lang/ro/validation.php | 119 +++++++++++++ resources/lang/ru/cachet.php | 71 ++++++-- resources/lang/ru/dashboard.php | 105 ++++++++---- resources/lang/ru/forms.php | 52 ++++-- resources/lang/ru/validation.php | 14 +- resources/lang/sq/cachet.php | 140 ++++++++++++++++ resources/lang/sq/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/sq/forms.php | 181 ++++++++++++++++++++ resources/lang/sq/pagination.php | 28 ++++ resources/lang/sq/setup.php | 23 +++ resources/lang/sq/validation.php | 119 +++++++++++++ resources/lang/sr/cachet.php | 140 ++++++++++++++++ resources/lang/sr/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/sr/forms.php | 181 ++++++++++++++++++++ resources/lang/sr/pagination.php | 28 ++++ resources/lang/sr/setup.php | 23 +++ resources/lang/sr/validation.php | 119 +++++++++++++ resources/lang/sv-SE/cachet.php | 140 ++++++++++++++++ resources/lang/sv-SE/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/sv-SE/forms.php | 181 ++++++++++++++++++++ resources/lang/sv-SE/pagination.php | 28 ++++ resources/lang/sv-SE/setup.php | 23 +++ resources/lang/sv-SE/validation.php | 119 +++++++++++++ resources/lang/tr/cachet.php | 140 ++++++++++++++++ resources/lang/tr/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/tr/forms.php | 181 ++++++++++++++++++++ resources/lang/tr/pagination.php | 28 ++++ resources/lang/tr/setup.php | 23 +++ resources/lang/tr/validation.php | 119 +++++++++++++ resources/lang/uk/cachet.php | 140 ++++++++++++++++ resources/lang/uk/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/uk/forms.php | 181 ++++++++++++++++++++ resources/lang/uk/pagination.php | 28 ++++ resources/lang/uk/setup.php | 23 +++ resources/lang/uk/validation.php | 119 +++++++++++++ resources/lang/vi/cachet.php | 140 ++++++++++++++++ resources/lang/vi/dashboard.php | 251 ++++++++++++++++++++++++++++ resources/lang/vi/forms.php | 181 ++++++++++++++++++++ resources/lang/vi/pagination.php | 28 ++++ resources/lang/vi/setup.php | 23 +++ resources/lang/vi/validation.php | 119 +++++++++++++ resources/lang/zh-CN/cachet.php | 71 +++++--- resources/lang/zh-CN/dashboard.php | 123 +++++++------- resources/lang/zh-CN/forms.php | 106 ++++++------ resources/lang/zh-CN/setup.php | 2 +- resources/lang/zh-CN/validation.php | 4 +- resources/lang/zh-TW/cachet.php | 67 +++++--- resources/lang/zh-TW/dashboard.php | 164 ++++++++++-------- resources/lang/zh-TW/forms.php | 96 +++++------ resources/lang/zh-TW/pagination.php | 4 +- resources/lang/zh-TW/setup.php | 16 +- resources/lang/zh-TW/validation.php | 106 ++++++------ 185 files changed, 16908 insertions(+), 1603 deletions(-) create mode 100644 resources/lang/af/cachet.php create mode 100644 resources/lang/af/dashboard.php create mode 100644 resources/lang/af/forms.php create mode 100644 resources/lang/af/pagination.php create mode 100644 resources/lang/af/setup.php create mode 100644 resources/lang/af/validation.php create mode 100644 resources/lang/ar/cachet.php create mode 100644 resources/lang/ar/dashboard.php create mode 100644 resources/lang/ar/forms.php create mode 100644 resources/lang/ar/pagination.php create mode 100644 resources/lang/ar/setup.php create mode 100644 resources/lang/ar/validation.php create mode 100644 resources/lang/ca/cachet.php create mode 100644 resources/lang/ca/dashboard.php create mode 100644 resources/lang/ca/forms.php create mode 100644 resources/lang/ca/pagination.php create mode 100644 resources/lang/ca/setup.php create mode 100644 resources/lang/ca/validation.php create mode 100644 resources/lang/cs/cachet.php create mode 100644 resources/lang/cs/dashboard.php create mode 100644 resources/lang/cs/forms.php create mode 100644 resources/lang/cs/pagination.php create mode 100644 resources/lang/cs/setup.php create mode 100644 resources/lang/cs/validation.php create mode 100644 resources/lang/el/cachet.php create mode 100644 resources/lang/el/dashboard.php create mode 100644 resources/lang/el/forms.php create mode 100644 resources/lang/el/pagination.php create mode 100644 resources/lang/el/setup.php create mode 100644 resources/lang/el/validation.php create mode 100644 resources/lang/fa/cachet.php create mode 100644 resources/lang/fa/dashboard.php create mode 100644 resources/lang/fa/forms.php create mode 100644 resources/lang/fa/pagination.php create mode 100644 resources/lang/fa/setup.php create mode 100644 resources/lang/fa/validation.php create mode 100644 resources/lang/fi/cachet.php create mode 100644 resources/lang/fi/dashboard.php create mode 100644 resources/lang/fi/forms.php create mode 100644 resources/lang/fi/pagination.php create mode 100644 resources/lang/fi/setup.php create mode 100644 resources/lang/fi/validation.php create mode 100644 resources/lang/he/cachet.php create mode 100644 resources/lang/he/dashboard.php create mode 100644 resources/lang/he/forms.php create mode 100644 resources/lang/he/pagination.php create mode 100644 resources/lang/he/setup.php create mode 100644 resources/lang/he/validation.php create mode 100644 resources/lang/hu/cachet.php create mode 100644 resources/lang/hu/dashboard.php create mode 100644 resources/lang/hu/forms.php create mode 100644 resources/lang/hu/pagination.php create mode 100644 resources/lang/hu/setup.php create mode 100644 resources/lang/hu/validation.php create mode 100644 resources/lang/ja/cachet.php create mode 100644 resources/lang/ja/dashboard.php create mode 100644 resources/lang/ja/forms.php create mode 100644 resources/lang/ja/pagination.php create mode 100644 resources/lang/ja/setup.php create mode 100644 resources/lang/ja/validation.php create mode 100644 resources/lang/no/cachet.php create mode 100644 resources/lang/no/dashboard.php create mode 100644 resources/lang/no/forms.php create mode 100644 resources/lang/no/pagination.php create mode 100644 resources/lang/no/setup.php create mode 100644 resources/lang/no/validation.php create mode 100644 resources/lang/pt-PT/cachet.php create mode 100644 resources/lang/pt-PT/dashboard.php create mode 100644 resources/lang/pt-PT/forms.php create mode 100644 resources/lang/pt-PT/pagination.php create mode 100644 resources/lang/pt-PT/setup.php create mode 100644 resources/lang/pt-PT/validation.php create mode 100644 resources/lang/ro/cachet.php create mode 100644 resources/lang/ro/dashboard.php create mode 100644 resources/lang/ro/forms.php create mode 100644 resources/lang/ro/pagination.php create mode 100644 resources/lang/ro/setup.php create mode 100644 resources/lang/ro/validation.php create mode 100644 resources/lang/sq/cachet.php create mode 100644 resources/lang/sq/dashboard.php create mode 100644 resources/lang/sq/forms.php create mode 100644 resources/lang/sq/pagination.php create mode 100644 resources/lang/sq/setup.php create mode 100644 resources/lang/sq/validation.php create mode 100644 resources/lang/sr/cachet.php create mode 100644 resources/lang/sr/dashboard.php create mode 100644 resources/lang/sr/forms.php create mode 100644 resources/lang/sr/pagination.php create mode 100644 resources/lang/sr/setup.php create mode 100644 resources/lang/sr/validation.php create mode 100644 resources/lang/sv-SE/cachet.php create mode 100644 resources/lang/sv-SE/dashboard.php create mode 100644 resources/lang/sv-SE/forms.php create mode 100644 resources/lang/sv-SE/pagination.php create mode 100644 resources/lang/sv-SE/setup.php create mode 100644 resources/lang/sv-SE/validation.php create mode 100644 resources/lang/tr/cachet.php create mode 100644 resources/lang/tr/dashboard.php create mode 100644 resources/lang/tr/forms.php create mode 100644 resources/lang/tr/pagination.php create mode 100644 resources/lang/tr/setup.php create mode 100644 resources/lang/tr/validation.php create mode 100644 resources/lang/uk/cachet.php create mode 100644 resources/lang/uk/dashboard.php create mode 100644 resources/lang/uk/forms.php create mode 100644 resources/lang/uk/pagination.php create mode 100644 resources/lang/uk/setup.php create mode 100644 resources/lang/uk/validation.php create mode 100644 resources/lang/vi/cachet.php create mode 100644 resources/lang/vi/dashboard.php create mode 100644 resources/lang/vi/forms.php create mode 100644 resources/lang/vi/pagination.php create mode 100644 resources/lang/vi/setup.php create mode 100644 resources/lang/vi/validation.php diff --git a/config/langs.php b/config/langs.php index 828c8be9..cd0241fc 100755 --- a/config/langs.php +++ b/config/langs.php @@ -11,19 +11,38 @@ return [ // Enabled langs - 'en-UD' => 'CrowdIn - InContext Localization', + 'af' => 'Afrikaans', + 'ar' => 'Arabic', + 'ca' => 'Catalan', + 'cs' => 'Czech', 'da' => 'Danish', 'de' => 'Deutsch', + 'el' => 'Greek', 'en' => 'English', - 'pl' => 'Polski', + 'en-UD' => 'CrowdIn - InContext Localization', 'es' => 'Español', + 'fa' => 'Persian', + 'fi' => 'Finnish', 'fr' => 'Français', + 'he' => 'Hebrew', + 'hu' => 'Hungarian', 'id' => 'Indonesian', 'it' => 'Italiano', + 'ja' => 'Japanese', 'ko' => '한글', 'nl' => 'Nederlands', - 'pt-BR' => 'Portuguese, Brazilian', + 'no' => 'Norwegian', + 'pl' => 'Polski', + 'pt-BR' => 'Portuguese', + 'pt-PT' => 'Portuguese, Brazilian', + 'ro' => 'Romanian', 'ru' => 'Русский', + 'sq' => 'Albanian', + 'sr' => 'Sebrian (Cyrillic)', + 'sv-SE' => 'Swedish', + 'tr' => 'Turkish', + 'uk' => 'Ukranian', + 'vi' => 'Vietnamese', 'zh-CN' => '简体中文', 'zh-TW' => '繁體中文', ]; diff --git a/resources/lang/af/cachet.php b/resources/lang/af/cachet.php new file mode 100644 index 00000000..9881e876 --- /dev/null +++ b/resources/lang/af/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Operasioneel', + 2 => 'Prestasieprobleme', + 3 => 'Gedeeltelike Onderbreking', + 4 => 'Groot Onderbreking', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Geen Voorvalle Aangemeld Nie.', + 'past' => 'Vorige Voorvalle', + 'previous_week' => 'Vorige Week', + 'next_week' => 'Volgende Week', + 'none' => 'Geen Voorvalle Aangemeld Nie.', + 'scheduled' => 'Geskeduleerde Instandhouding', + 'scheduled_at' => ', scheduled :timestamp', + 'status' => [ + 0 => 'Geskeduleerd', // TODO: Hopefully remove this. + 1 => 'Onder die Loep', + 2 => 'Geïdentifiseerd', + 3 => 'Hou Dop', + 4 => 'Opgelos', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Regenerate API Key', + 'revoke' => 'Revoke API Key', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Afgelope 12 Uur', + 'weekly' => 'Weekliks', + 'monthly' => 'Maandeliks', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/af/dashboard.php b/resources/lang/af/dashboard.php new file mode 100644 index 00000000..51dfba93 --- /dev/null +++ b/resources/lang/af/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Incidents', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Geskeduleerde Instandhouding', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/af/forms.php b/resources/lang/af/forms.php new file mode 100644 index 00000000..c1945012 --- /dev/null +++ b/resources/lang/af/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Username', + 'password' => 'Password', + 'site_name' => 'Site Name', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Password', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Component', + 'message' => 'Message', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site Name', + 'site-url' => 'Site URL', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/af/pagination.php b/resources/lang/af/pagination.php new file mode 100644 index 00000000..add1092a --- /dev/null +++ b/resources/lang/af/pagination.php @@ -0,0 +1,28 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/af/setup.php b/resources/lang/af/setup.php new file mode 100644 index 00000000..044cf2e2 --- /dev/null +++ b/resources/lang/af/setup.php @@ -0,0 +1,23 @@ + 'Setup', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/af/validation.php b/resources/lang/af/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/af/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/ar/cachet.php b/resources/lang/ar/cachet.php new file mode 100644 index 00000000..9a77a3d7 --- /dev/null +++ b/resources/lang/ar/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Operational', + 2 => 'Performance Issues', + 3 => 'Partial Outage', + 4 => 'Major Outage', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Scheduled Maintenance', + 'scheduled_at' => ', scheduled :timestamp', + 'status' => [ + 0 => 'Scheduled', // TODO: Hopefully remove this. + 1 => 'Investigating', + 2 => 'Identified', + 3 => 'Watching', + 4 => 'Fixed', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Regenerate API Key', + 'revoke' => 'Revoke API Key', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/ar/dashboard.php b/resources/lang/ar/dashboard.php new file mode 100644 index 00000000..4ed89d1d --- /dev/null +++ b/resources/lang/ar/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Incidents', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Scheduled Maintenance', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/ar/forms.php b/resources/lang/ar/forms.php new file mode 100644 index 00000000..c1945012 --- /dev/null +++ b/resources/lang/ar/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Username', + 'password' => 'Password', + 'site_name' => 'Site Name', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Password', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Component', + 'message' => 'Message', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site Name', + 'site-url' => 'Site URL', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/ar/pagination.php b/resources/lang/ar/pagination.php new file mode 100644 index 00000000..add1092a --- /dev/null +++ b/resources/lang/ar/pagination.php @@ -0,0 +1,28 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/ar/setup.php b/resources/lang/ar/setup.php new file mode 100644 index 00000000..044cf2e2 --- /dev/null +++ b/resources/lang/ar/setup.php @@ -0,0 +1,23 @@ + 'Setup', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/ar/validation.php b/resources/lang/ar/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/ar/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/ca/cachet.php b/resources/lang/ca/cachet.php new file mode 100644 index 00000000..9a77a3d7 --- /dev/null +++ b/resources/lang/ca/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Operational', + 2 => 'Performance Issues', + 3 => 'Partial Outage', + 4 => 'Major Outage', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Scheduled Maintenance', + 'scheduled_at' => ', scheduled :timestamp', + 'status' => [ + 0 => 'Scheduled', // TODO: Hopefully remove this. + 1 => 'Investigating', + 2 => 'Identified', + 3 => 'Watching', + 4 => 'Fixed', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Regenerate API Key', + 'revoke' => 'Revoke API Key', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/ca/dashboard.php b/resources/lang/ca/dashboard.php new file mode 100644 index 00000000..4ed89d1d --- /dev/null +++ b/resources/lang/ca/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Incidents', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Scheduled Maintenance', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/ca/forms.php b/resources/lang/ca/forms.php new file mode 100644 index 00000000..c1945012 --- /dev/null +++ b/resources/lang/ca/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Username', + 'password' => 'Password', + 'site_name' => 'Site Name', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Password', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Component', + 'message' => 'Message', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site Name', + 'site-url' => 'Site URL', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/ca/pagination.php b/resources/lang/ca/pagination.php new file mode 100644 index 00000000..add1092a --- /dev/null +++ b/resources/lang/ca/pagination.php @@ -0,0 +1,28 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/ca/setup.php b/resources/lang/ca/setup.php new file mode 100644 index 00000000..044cf2e2 --- /dev/null +++ b/resources/lang/ca/setup.php @@ -0,0 +1,23 @@ + 'Setup', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/ca/validation.php b/resources/lang/ca/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/ca/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/cs/cachet.php b/resources/lang/cs/cachet.php new file mode 100644 index 00000000..2b42364b --- /dev/null +++ b/resources/lang/cs/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'V provozu', + 2 => 'Problémy s výkonem', + 3 => 'Částečný výpadek', + 4 => 'Závažný výpadek', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Plánovaná odstávka', + 'scheduled_at' => ', plánované na :timestamp', + 'status' => [ + 0 => 'Naplánováno', // TODO: Hopefully remove this. + 1 => 'Zkoumání příčiny', + 2 => 'Problém identifikován', + 3 => 'Sledování', + 4 => 'Opraveno', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Obnovit API klíč', + 'revoke' => 'Zrušit API klíč', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Přihlásit', + 'email' => [ + 'subscribe' => 'Přihlásit se k zasílání upozornění e-mailem.', + 'subscribed' => 'Proběhlo přihlášení k e-mailovým upozorněním, potvrďte ho prosím na vašem e-mailu.', + 'verified' => 'E-mail pro zasílání upozornění byl ověřen. Děkujeme!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Odběr e-mailových upozornění byl zrušen.', + 'failure' => 'Došlo k chybě při nastavení odběru e-mailů.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Potvrďte, prosím, svůj e-mail pro upozornění od :app_name Status.\n:link\nDěkujeme, :app_name", + 'html-preheader' => 'Potvrďte, prosím, svůj e-mail pro upozornění od :app_name Status.', + 'html' => '

Potvrďte, prosím, svůj e-mail pro upozornění od :app_name Status

:link

Děkujeme, :app_name

', + ], + 'maintenance' => [ + 'text' => "Nová odstávka v :app_name byla naplánována.\nDěkujeme.", + 'html-preheader' => 'Byla naplánována nová odstávka v :app_name.', + 'html' => '

Byla naplánována nová odstávka v :app_name.

', + ], + 'incident' => [ + 'text' => "Byl nahlášen nový incident v :app_name.\nDěkujeme.", + 'html-preheader' => 'Byl nahlášen nový incident v :app_name.', + 'html' => '

Byl nahlášen nový incident v :app_name.

Děkujeme.

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Uživatelské jméno', + 'email' => 'E-mail', + 'password' => 'Heslo', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Přihlásit', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Kanál stavů', + +]; diff --git a/resources/lang/cs/dashboard.php b/resources/lang/cs/dashboard.php new file mode 100644 index 00000000..6ca104fe --- /dev/null +++ b/resources/lang/cs/dashboard.php @@ -0,0 +1,251 @@ + 'Řídicí panel', + + // Incidents + 'incidents' => [ + 'title' => 'Incidenty & Plán', + 'incidents' => 'Incidenty', + 'logged' => '{0} Nejsou hlášeny žádné incidenty, dobrá práce. | Zapsali jste jeden incident. | Nahlásili jste :count incident(y).', + 'incident-create-template' => 'Vytvořit šablonu', + 'incident-templates' => 'Šablony incidentů', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident přidán.', + 'failure' => 'Na incidentu se něco pokazilo.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident aktualizován.', + 'failure' => 'S incidentem se něco pokazilo.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Šablony incidentů', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Šablona vytvořena.', + 'failure' => 'Na šabloně incidentu se něco se pokazilo.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Šablona byla aktualizována!', + 'failure' => 'Při aktualizaci šablony incidentu se něco pokazilo', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Plánovaná odstávka', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Naplánováno na :timestamp', + 'add' => [ + 'title' => 'Přidat plánovanou odstávku', + 'success' => 'Plán byl přidán.', + 'failure' => 'Něco se pokazilo při přidávání plánu.', + ], + 'edit' => [ + 'title' => 'Upravit plánované odstávky', + 'success' => 'Plán byl aktualizován!', + 'failure' => 'Něco se pokazilo při úpravě plánu.', + ], + 'delete' => [ + 'success' => 'Plán byl vymazán a nebude se zobrazovat na vaší stavové stránce.', + 'failure' => 'Plán se nepodařilo smazat. Zkuste to prosím znovu.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Služby', + 'component_statuses' => 'Stavy služeb', + 'listed_group' => 'Seskupeno podle :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'Měli byste přidat službu.', + 'success' => 'Služba vytvořena.', + 'failure' => 'Na službě se objevila chyba.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Služba byla aktualizována.', + 'failure' => 'Na službě se objevila chyba.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Skupina služeb|Skupiny služeb', + 'no_components' => 'Můžete přidat skupinu služeb.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Skupina služeb byla přidána.', + 'failure' => 'Vyskytla se chyba skupiny služeb.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Skupina služeb byla aktualizována.', + 'failure' => 'Vyskytla se chyba skupiny služeb.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metriky', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metrika vytvořena.', + 'failure' => 'Něco se stalo s metrikou.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metrika aktualizována.', + 'failure' => 'Něco se stalo s metrikou.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Odběratelé', + 'description' => 'Odběratelé obdrží aktualizace e-mailem v okamžiku, kdy dojde ke vzniku incidentu.', + 'verified' => 'Ověřeno', + 'not_verified' => 'Neověřeno', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Odběratel přidán.', + 'failure' => 'Na službě se objevila chyba.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Odběratel aktualizován.', + 'failure' => 'Něco se pokazilo při aktualizaci.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Tým', + 'member' => 'Člen', + 'profile' => 'Profil', + 'description' => 'Členové týmu budou schopni přidat nebo upravit komponenty a incidenty.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Nový člen týmu byl přidán.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profil byl aktualizován.', + 'failure' => 'Něco se pokazilo při aktualizaci.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Nastala chyba při mazání uživatele.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Nastavení', + 'app-setup' => [ + 'app-setup' => 'Nastavení aplikace', + 'images-only' => 'Nahrány mohou být pouze obrázky.', + 'too-big' => 'Soubor, který nahráváte, je příliš velký. Nahrajte obrázek menší než :velikost', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Zabezpečení', + 'two-factor' => 'Uživatelé bez dvoufaktorového ověřování', + ], + 'stylesheet' => [ + 'stylesheet' => 'Šablona stylů', + ], + 'theme' => [ + 'theme' => 'Motiv vzhledu', + ], + 'edit' => [ + 'success' => 'Nastavení uložena.', + 'failure' => 'Nastavení nelze uložit.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Přihlášení', + 'logged_in' => 'Jste přihlášeni.', + 'welcome' => 'Vítejte zpátky!', + 'two-factor' => 'Zadejte prosím váš token.', + ], + + // Sidebar footer + 'help' => 'Nápověda', + 'status_page' => 'Stavová stránka', + 'logout' => 'Odhlásit', + + // Notifications + 'notifications' => [ + 'notifications' => 'Ozmámení', + 'awesome' => 'Vynikající.', + 'whoops' => 'Jejda.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Vaše stavová stránka je téměř připravena! Možná budete chtít upravit další nastavení', + 'close' => 'Přejděte do řídicího panelu', + 'steps' => [ + 'component' => 'Vytvoření komponent', + 'incident' => 'Vytvoření incidentů', + 'customize' => 'Přizpůsobit', + 'team' => 'Přidat uživatele', + 'api' => 'Vygenerovat API token', + 'two-factor' => 'Dvoufaktorové ověření', + ], + ], + +]; diff --git a/resources/lang/cs/forms.php b/resources/lang/cs/forms.php new file mode 100644 index 00000000..27f4e46a --- /dev/null +++ b/resources/lang/cs/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'E-mail', + 'username' => 'Uživatelské jméno', + 'password' => 'Heslo', + 'site_name' => 'Název webu', + 'site_domain' => 'Doména webu', + 'site_timezone' => 'Vyberte vaše časové pásmo', + 'site_locale' => 'Vyberte svůj jazyk', + 'enable_google2fa' => 'Povolit dvoufaktorové ověřování Google', + 'cache_driver' => 'Ovladač cache', + 'session_driver' => 'Ovladač sezení', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'E-mail', + 'password' => 'Heslo', + '2fauth' => 'Ověřovací kód', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Neplatný token', + 'cookies' => 'Pro přihlášení je třeba povolit soubory cookie.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Jméno', + 'status' => 'Stav', + 'component' => 'Komponenta', + 'message' => 'Zpráva', + 'message-help' => 'Můžete také použít Markdown.', + 'scheduled_at' => 'Na kdy naplánovat údržbu/výpadek?', + 'incident_time' => 'Kdy k incidentu došlo?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Viditelnost incidentu', + 'public' => 'Viditelné veřejnosti', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Jméno', + 'template' => 'Šablona', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Jméno', + 'status' => 'Stav', + 'group' => 'Skupina', + 'description' => 'Popis', + 'link' => 'Odkaz', + 'tags' => 'Štítky', + 'tags-help' => 'Oddělené čárkou.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Jméno', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Jméno', + 'suffix' => 'Přípona', + 'description' => 'Popis', + 'description-help' => 'Můžete také použít Markdown.', + 'display-chart' => 'Zobrazovat graf na stavové stránce?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Celkem', + 'type_avg' => 'Průměr', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Hodnota', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Název webu', + 'site-url' => 'URL adresa webu', + 'display-graphs' => 'Zobrazit grafy na stavové stránce?', + 'about-this-page' => 'O této stránce', + 'days-of-incidents' => 'Kolik dní incidentů zobrazovat?', + 'banner' => 'Obrázek banneru', + 'banner-help' => "Doručuje se nenahrávat soubory větší než 930 pixelů na šířku.", + 'subscribers' => 'Umožnit lidem, aby se přihlašovali k odběru e-mailových upozornění?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Oddělené čárkami. Výše uvedené domény jsou ve výchozím nastavení automaticky povoleny.', + ], + 'stylesheet' => [ + 'custom-css' => 'Vlastní šablona stylů', + ], + 'theme' => [ + 'background-color' => 'Barva pozadí', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Barva textu', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Uživatelské jméno', + 'email' => 'E-mail', + 'password' => 'Heslo', + 'api-token' => 'API Token', + 'api-token-help' => 'Přegenerování vašeho API tokenu zabrání současným aplikacím přistupovat ke Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Zapnutí dvoufaktorového ověřování zvýší zabezpečení vašeho účtu. Budete muset stáhnout Google Authenticator nebo podobnou aplikaci pro mobilní zařízení. Po přihlášení budete vyzváni k zadání tokenu vygenerovaného aplikací.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Přidat', + 'save' => 'Uložit', + 'update' => 'Aktualizovat', + 'create' => 'Vytvořit', + 'edit' => 'Upravit', + 'delete' => 'Smazat', + 'submit' => 'Potvrdit', + 'cancel' => 'Zrušit', + 'remove' => 'Smazat', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Volitelné', +]; diff --git a/resources/lang/cs/pagination.php b/resources/lang/cs/pagination.php new file mode 100644 index 00000000..d5a1614f --- /dev/null +++ b/resources/lang/cs/pagination.php @@ -0,0 +1,28 @@ + '« Předchozí', + 'next' => 'Následuující »', + +]; diff --git a/resources/lang/cs/setup.php b/resources/lang/cs/setup.php new file mode 100644 index 00000000..7c254245 --- /dev/null +++ b/resources/lang/cs/setup.php @@ -0,0 +1,23 @@ + 'Instalace', + 'title' => 'Instalace Cachet', + 'service_details' => 'Podrobnosti o službě', + 'env_setup' => 'Nastavení prostředí', + 'status_page_setup' => 'Nastavení Stavové stránky', + 'show_support' => 'Zobrazit podporu pro Cachet?', + 'admin_account' => 'Účet správce', + 'complete_setup' => 'Dokončení instalace', + 'completed' => 'Cachet byl úspěšně nakonfigurován!', + 'finish_setup' => 'Přejít na řídící panel', +]; diff --git a/resources/lang/cs/validation.php b/resources/lang/cs/validation.php new file mode 100644 index 00000000..8b340715 --- /dev/null +++ b/resources/lang/cs/validation.php @@ -0,0 +1,119 @@ + 'Je potřeba potvrdit :attribute.', + 'active_url' => ':attribute není platná adresa URL.', + 'after' => ':attribute musí být datum po :date.', + 'alpha' => ':attribute může obsahovat pouze písmena.', + 'alpha_dash' => ':attribute může obsahovat pouze písmena, čísla a pomlčky.', + 'alpha_num' => ':attribute může obsahovat pouze písmena a čísla.', + 'array' => ':attribute musí být textové pole.', + 'before' => ':attribute musí být datum před :date.', + 'between' => [ + 'numeric' => ':attribute musí být mezi :min a :max.', + 'file' => ':attribute musí mít mezi :min a :max kB.', + 'string' => ':attribute musí mít délku rozmezí :min a :max znaků.', + 'array' => ':attribute musí mít mezi :min a :max položkami.', + ], + 'boolean' => ':attribute musí mít hodnotu pravda nebo nepravda.', + 'confirmed' => 'Potvrzení :attribute se neshoduje.', + 'date' => ':attribute není platné datum.', + 'date_format' => ':attribute se neshoduje se správným formátem :format.', + 'different' => ':attribute a :other se musí lišit.', + 'digits' => ':attribute musí obsahovat :digits číslic.', + 'digits_between' => ':attribute musí být v rozmezí :min a :max číslic.', + 'email' => ':attribute musí být platná e-mailová adresa.', + 'exists' => 'Vybraný :attribute je neplatný.', + 'filled' => 'Pole :attribute je vyžadováno.', + 'image' => ':attribute musí být obrázek.', + 'in' => 'Vybraný :attribute je neplatný.', + 'integer' => ':attribute musí být celé číslo.', + 'ip' => ':attribute musí být platná IP adresa.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => ':attribute nesmí být větší než :max.', + 'file' => ':attribute nesmí být větší než :max kB.', + 'string' => 'Atribut nesmí být delší než :max znaků.', + 'array' => 'Atribut nesmí mít více než :max položek.', + ], + 'mimes' => ':attribute musí být soubor typu: :values.', + 'min' => [ + 'numeric' => ':attribute musí být alespoň :min.', + 'file' => 'Atribut musí mít alespoň :min kB.', + 'string' => 'Atribut musí být dlouhý alespoň :min znaků.', + 'array' => 'Atribut musí mít alespoň :min položek.', + ], + 'not_in' => 'Vybraný :attribute je neplatný.', + 'numeric' => ':attribute musí být číslo.', + 'regex' => 'Formát :attribute je neplatný.', + 'required' => 'Pole :attribute je vyžadováno.', + 'required_if' => 'Pole :attribute je požadováno, když :other je :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'Pole :attribute je požadováno, když je zadané :values.', + 'required_with_all' => 'Pole :attribute je požadováno, když je zadané :values.', + 'required_without' => 'Pole :attribute je požadováno, když je zadané :values.', + 'required_without_all' => ':attribute je nutný, pokud není zadaná žádná :values.', + 'same' => ':attribute a :other se musí shodovat.', + 'size' => [ + 'numeric' => ':attribute must mít délku :size.', + 'file' => 'Atribut musí mít :size kB.', + 'string' => 'Atribut musí mít :size znaků.', + 'array' => 'Atribut musí obsahovat :size položek.', + ], + 'string' => 'Atribut musí být textový řetězec.', + 'timezone' => ':attribute musí být platná zóna.', + 'unique' => ':attribute byl už použit.', + 'url' => 'Formát :attribute je neplatný.', + + /* + |-------------------------------------------------------------------------- + | 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' => 'vlastní zpráva', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/da/cachet.php b/resources/lang/da/cachet.php index c8ea678b..668eaeb9 100755 --- a/resources/lang/da/cachet.php +++ b/resources/lang/da/cachet.php @@ -22,7 +22,7 @@ return [ // Incidents 'incidents' => [ - 'none' => 'Ingen indrapporterede hændelser.', + 'none' => 'Intet at rapportere', 'past' => 'Tidligere hændelser', 'previous_week' => 'Sidste uge', 'next_week' => 'Næste uge', @@ -30,10 +30,10 @@ return [ 'scheduled' => 'Planlagte hændelser', 'scheduled_at' => ', planlagt til :timestamp', 'status' => [ - 0 => 'Planlagt', // TODO: Hopefully remove this. - 1 => 'Undersøger', - 2 => 'Identificeret', - 3 => 'Overvåger', + 0 => 'Scheduled', // TODO: Hopefully remove this. + 1 => 'Investigating', + 2 => 'Identified', + 3 => 'Watching', 4 => 'Rettet', ], ], @@ -87,6 +87,46 @@ return [ 'html-preheader' => 'Ny fejl raporteret på :app_name.', 'html' => '

Ny fejl raporteret på :app_name.

Mvh, :app_name

', ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Kodeord', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Abonner', ], ], diff --git a/resources/lang/da/dashboard.php b/resources/lang/da/dashboard.php index 8107671e..02426536 100755 --- a/resources/lang/da/dashboard.php +++ b/resources/lang/da/dashboard.php @@ -16,10 +16,10 @@ return [ // Incidents 'incidents' => [ 'title' => 'Hændelser & Planlagte', - 'incidents' => 'Hændelser', + 'incidents' => 'Incidents', 'logged' => '{0} Ingen åbne hændelser.|Der er en åben hændelse.|Der er :count åbne hændelser.', - 'incident-create-template' => 'Opret skabelon', - 'incident-templates' => 'Hændelses skabeloner', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', 'add' => [ 'title' => 'Opret hændelse', 'success' => 'Hændelse oprettet.', @@ -28,7 +28,11 @@ return [ 'edit' => [ 'title' => 'Redigér hændelse', 'success' => 'Hændelse opdateret.', - 'failure' => 'Noget gik galt under opdateringen af hændelsen.', + 'failure' => 'Noget gik galt med hændelsen.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', ], // Incident templates @@ -36,7 +40,8 @@ return [ 'title' => 'Hændelses skabeloner', 'add' => [ 'title' => 'Opret hændelses skabelon', - 'success' => 'Skabelon oprettet.', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', 'failure' => 'Noget gik galt i oprettelsen af skabelonen.', ], 'edit' => [ @@ -44,12 +49,17 @@ return [ 'success' => 'Skabelonen opdateret!', 'failure' => 'Noget gik galt under opdateringen af skabelonen', ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], ], ], // Incident Maintenance 'schedule' => [ - 'schedule' => 'Planlagt nedetid', + 'schedule' => 'Planlagt vedligeholdelse', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', 'scheduled_at' => 'Planlagt til :timestamp', 'add' => [ 'title' => 'Tilføj planlagt nedetid', @@ -69,9 +79,9 @@ return [ // Components 'components' => [ - 'components' => 'Komponenter', + 'components' => 'Components', 'component_statuses' => 'Komponentstatus', - 'listed_group' => 'Grupperet under :name', + 'listed_group' => 'Grouped under :name', 'add' => [ 'title' => 'Tilføj komponent', 'message' => 'Du bør tilføje en komponent.', @@ -81,13 +91,17 @@ return [ 'edit' => [ 'title' => 'Redigér komponent', 'success' => 'Komponent opdteret.', - 'failure' => 'Noget gik galt under opdateringen.', + 'failure' => 'Noget gik galt med komponenten.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', ], // Component groups 'groups' => [ 'groups' => 'Komponentgruppe|Komponentgrupper', - 'no_components' => 'Du bør tilføje en komponentgruppe.', + 'no_components' => 'You should add a component group.', 'add' => [ 'title' => 'Tilføj komponentgruppe', 'success' => 'Komponentgruppe tilføjet.', @@ -96,7 +110,11 @@ return [ 'edit' => [ 'title' => 'Redigér komponentgruppe', 'success' => 'Gruppe opdateret.', - 'failure' => 'Noget gik galt under opdateringen.', + 'failure' => 'Noget gik galt med komponentgruppen.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', ], ], ], @@ -106,30 +124,35 @@ return [ 'metrics' => 'Grafer', 'add' => [ 'title' => 'Opret graf', + 'message' => 'You should add a Metric.', 'success' => 'Graf oprettet.', 'failure' => 'Noget gik galt med oprettelsen.', ], 'edit' => [ 'title' => 'Redigér graf', 'success' => 'Graf opdateret.', - 'failure' => 'Noget gik galt under opdateringen.', + 'failure' => 'Noget gik galt med målestokken.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', ], ], // Subscribers 'subscribers' => [ - 'subscribers' => 'Abonnenter', + 'subscribers' => 'Subscribers', 'description' => 'Abonnenter vil modtage notifikationer når hændelser oprettes.', 'verified' => 'Bekræftet', 'not_verified' => 'Ej bekræftet', 'add' => [ 'title' => 'Tilføj abonnent', - 'success' => 'Abonnent tilføjet.', + 'success' => 'Subscriber added.', 'failure' => 'Noget gik galt med oprettelsen.', ], 'edit' => [ 'title' => 'Redigér abonnent', - 'success' => 'Abonnent opdateret.', - 'failure' => 'Noget gik galt under opdateringen.', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', ], ], @@ -137,7 +160,7 @@ return [ 'team' => [ 'team' => 'Brugere', 'member' => 'Bruger', - 'profile' => 'Profil', + 'profile' => 'Profile', 'description' => 'Brugere kan oprette og rette komponenter og hændelser.', 'add' => [ 'title' => 'Tilføj bruger', @@ -146,21 +169,26 @@ return [ ], 'edit' => [ 'title' => 'Redigér profil', - 'success' => 'Profil opdateret.', - 'failure' => 'Noget gik galt under opdateringen.', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', ], 'delete' => [ 'success' => 'Slet bruger.', 'failure' => 'Noget gik galt under sletningen af brugeren.', ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], ], // Settings 'settings' => [ - 'settings' => 'Indstillinger', + 'settings' => 'Settings', 'app-setup' => [ 'app-setup' => 'Applikationssetup', - 'images-only' => 'Kun billeder kan uploades.', + 'images-only' => 'Only images may be uploaded.', 'too-big' => 'Filen du prøvede at uploade er for stort, billet skal være mindre end :size', ], 'analytics' => [ @@ -170,7 +198,7 @@ return [ 'localization' => 'Localization', ], 'security' => [ - 'security' => 'Sikkerhed', + 'security' => 'Security', 'two-factor' => 'Brugere uden two-factor login', ], 'stylesheet' => [ @@ -181,39 +209,39 @@ return [ ], 'edit' => [ 'success' => 'Indstillingerne er gemt.', - 'failure' => 'Indstillingerne kunne ikke gemmes.', + 'failure' => 'Settings could not be saved.', ], ], // Login 'login' => [ - 'login' => 'Log ind', - 'logged_in' => 'Du er logget ind.', + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', 'welcome' => 'Velkommen tilbage', 'two-factor' => 'Indtast venligst din log ind nøgle', ], // Sidebar footer - 'help' => 'Hjælp', + 'help' => 'Help', 'status_page' => 'Status Siden', - 'logout' => 'Log ud', + 'logout' => 'Logout', // Notifications 'notifications' => [ - 'notifications' => 'Notifikationer', + 'notifications' => 'Notifications', 'awesome' => 'Fedt!', 'whoops' => 'Whoops!', ], // Welcome modal 'welcome' => [ - 'welcome' => 'Velkommen til Cachet', + 'welcome' => 'Welcome to your status page!', 'message' => 'Din statusside er nærmest klar! Måske du skulle gennemgå disse ekstra indstillinger', 'close' => 'Til oversigtssiden tak.', 'steps' => [ 'component' => 'Opret Komponent', 'incident' => 'Opret hændelse', - 'customize' => 'Tilpas', + 'customize' => 'Customize', 'team' => 'Tilføj bruger', 'api' => 'Generer API nøgle', 'two-factor' => 'Two Factor Log ind', diff --git a/resources/lang/da/forms.php b/resources/lang/da/forms.php index f79130b2..bc72df5e 100755 --- a/resources/lang/da/forms.php +++ b/resources/lang/da/forms.php @@ -16,7 +16,7 @@ return [ 'email' => 'Email', 'username' => 'Brugernavn', 'password' => 'Kodeord', - 'site_name' => 'Sidens navn', + 'site_name' => 'Sidenavn', 'site_domain' => 'Sidens domæne', 'site_timezone' => 'Vælg tidszone', 'site_locale' => 'Vælg sprog', @@ -29,9 +29,9 @@ return [ 'login' => [ 'login' => 'Username or Email', 'email' => 'Email', - 'password' => 'Kodeord', + 'password' => 'Adgangskode', '2fauth' => 'Godkendelses kode', - 'invalid' => 'Ugyldig brugernavn eller kodeord', + 'invalid' => 'Invalid username or password', 'invalid-token' => 'Ugyldig kode', 'cookies' => 'Du skal tillade cookies for at kunne logge ind.', ], @@ -40,8 +40,8 @@ return [ 'incidents' => [ 'name' => 'Name', 'status' => 'Status', - 'component' => 'Komponent', - 'message' => 'Besked', + 'component' => 'Component', + 'message' => 'Message', 'message-help' => 'Du kan benytte Markdown.', 'scheduled_at' => 'Hvornår skal vedligeholdelses vinduet skeduleres til?', 'incident_time' => 'Hvornår skete hændelsen?', @@ -51,7 +51,7 @@ return [ 'logged_in_only' => 'Kun synlig for brugere der er logget ind', 'templates' => [ 'name' => 'Navn', - 'template' => 'Skabelon', + 'template' => 'Template', 'twig' => 'Incident Templates can make use of the Twig templating language.', ], ], @@ -60,15 +60,16 @@ return [ 'components' => [ 'name' => 'Navn', 'status' => 'Status', - 'group' => 'Gruppe', - 'description' => 'Beskrivelse', + 'group' => 'Group', + 'description' => 'Description', 'link' => 'Link', 'tags' => 'Tags', 'tags-help' => 'Komma adskilt.', 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Navn', + 'name' => 'Navn', + 'collapsed' => 'Collapse the group by default?', ], ], @@ -77,16 +78,17 @@ return [ 'name' => 'Navn', 'suffix' => 'Suffix', 'description' => 'Beskrivelse', - 'description-help' => 'Der kan benyttes Markdown.', + 'description-help' => 'Du kan også bruge Markdown.', 'display-chart' => 'Vis graf på statussiden?', 'default-value' => 'Default værdi', 'calc_type' => 'Beregning af grafer', 'type_sum' => 'Sum', - 'type_avg' => 'Gennemsnit', + 'type_avg' => 'Average', 'places' => 'Antal decimaler', + 'default_view' => 'Default View', 'points' => [ - 'value' => 'Værdi', + 'value' => 'Value', ], ], @@ -96,11 +98,11 @@ return [ 'app-setup' => [ 'site-name' => 'Sidens navn', 'site-url' => 'Sidens URL', - 'display-graphs' => 'Vis grafer på statussiden?', + 'display-graphs' => 'Display graphs on status page?', 'about-this-page' => 'Om', 'days-of-incidents' => 'Hvor mange dage skal der vises hændelser for?', - 'banner' => 'Bannerbillede', - 'banner-help' => 'Det anbefales ikke at uploade billeder bredere end 930px.', + 'banner' => 'Banner Image', + 'banner-help' => "Det anbefales ikke at uploade billeder bredere end 930px.", 'subscribers' => 'Tillad at man kan tilmelde sig emailnotifikationer?', ], 'analytics' => [ @@ -123,12 +125,12 @@ return [ 'custom-css' => 'Tilpasset stylesheet', ], 'theme' => [ - 'background-color' => 'Baggrundsfarve', + 'background-color' => 'Background Color', 'background-fills' => 'Baggrundsfyld (Komponenter, hændelser og footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', - 'text-color' => 'Tekstfarve', + 'text-color' => 'Text Color', 'dashboard-login' => 'Vis oversigtsside ikon i bunden af siden?', 'reds' => 'Rød (Brugt til fejl)', 'blues' => 'Blå (Brugt til information)', @@ -141,9 +143,9 @@ return [ ], 'user' => [ - 'username' => 'Brugernavn', + 'username' => 'Username', 'email' => 'Email', - 'password' => 'Kodeord', + 'password' => 'Adgangskode', 'api-token' => 'API nøgle', 'api-token-help' => 'Hvis du regenerere din API nøgle vil eksisterende applikationer ikke kunne tilgå API\'et.', 'gravatar' => 'Change your profile picture at Gravatar.', @@ -163,14 +165,16 @@ return [ // Buttons 'add' => 'Tilføj', - 'save' => 'Gem', + 'save' => 'Save', 'update' => 'Opdatér', - 'create' => 'Opret', + 'create' => 'Create', 'edit' => 'Editér', - 'delete' => 'Slet', + 'delete' => 'Delete', 'submit' => 'Gem', - 'cancel' => 'Afbryd', - 'remove' => 'Fjern', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', // Other 'optional' => '* ej påkrævet', diff --git a/resources/lang/da/pagination.php b/resources/lang/da/pagination.php index 7d278cbc..e9ac98d0 100755 --- a/resources/lang/da/pagination.php +++ b/resources/lang/da/pagination.php @@ -22,7 +22,7 @@ return [ | */ - 'previous' => '« Forrige', - 'next' => 'Næste »', + 'previous' => '« Vorherige', + 'next' => 'Nächste »', ]; diff --git a/resources/lang/da/validation.php b/resources/lang/da/validation.php index d15d6d34..78f4de5a 100755 --- a/resources/lang/da/validation.php +++ b/resources/lang/da/validation.php @@ -64,14 +64,14 @@ return [ 'string' => ':attribute skal være mindst :min karakterer.', 'array' => ':attribute skal have mindst :min emner.', ], - 'not_in' => 'Det valgte :attribute er ikke gyldigt.', + 'not_in' => 'Den valgte :attribute er ugyldig.', 'numeric' => ':attribute skal være et tal.', 'regex' => ':attribute er ikke korrekt formateret.', 'required' => ':attribute skal udfyldes.', 'required_if' => ':attribute skal udfyldes når :other er :value.', 'required_unless' => 'The :attribute field is required unless :other is in :values.', 'required_with' => ':attribute skal udfyldes når :values er present.', - 'required_with_all' => ':attribute skal udfyldes når :values er present.', + 'required_with_all' => 'Feltet :attribute er krævet når :values eksisterer.', 'required_without' => ':attribute skal udfyldes når :values ikke er sat.', 'required_without_all' => ':attribute skal udfyldes når ingen af :values er sat.', 'same' => ':attribute og :other skal være ens.', @@ -84,7 +84,7 @@ return [ 'string' => ':attribute skal være en streng.', 'timezone' => ':attribute skal være en gyldig zone.', 'unique' => ':attribute er allerede i brug.', - 'url' => ':attribute er ikke gyldigt formateret.', + 'url' => 'Formatet af :attribute er ugyldigt.', /* |-------------------------------------------------------------------------- diff --git a/resources/lang/de/cachet.php b/resources/lang/de/cachet.php index 8885a68b..8ec85c72 100755 --- a/resources/lang/de/cachet.php +++ b/resources/lang/de/cachet.php @@ -73,20 +73,60 @@ return [ 'failure' => 'Etwas ist mit dem Abonnement schief gelaufen.', 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', 'verify' => [ - 'text' => 'Bitte bestätigen Sie Ihre E-Mail-Abonnement zu :app_name Status-Aktualisierungen.\\n:link\\nDanke, :app_name', + 'text' => "Bitte bestätigen Sie Ihre E-Mail-Abonnement zu :app_name Status-Aktualisierungen.\n:link\nDanke, :app_name", 'html-preheader' => 'Bitte bestätigen Sie Ihre E-Mail-Abonnement zu :app_name Status-Aktualisierungen.', 'html' => '

Bestätigen Sie bitte Ihr E-Mail-Abonnement für :app_name Statusaktualisierungen.

:link

Danke, :app_name

', ], 'maintenance' => [ - 'text' => 'Neue Wartung wurde für :app_name geplant.\\nDanke, :app_name', + 'text' => "Neue Wartung wurde für :app_name geplant.\nDanke, :app_name", 'html-preheader' => 'Neue Wartung wurde für :app_name geplant.', 'html' => '

Neue Wartung wurde für :app_name geplant.

', ], 'incident' => [ - 'text' => 'Ein neuer Vorfall wurde auf :app_name berichtet.\\nDanke, :app_name', + 'text' => "Ein neuer Vorfall wurde auf :app_name berichtet.\nDanke, :app_name", 'html-preheader' => 'Ein neuer Vorfall wurde über :app_name berichtet.', 'html' => '

Ein neuer Vorfall wurde über :app_name berichtet.

Danke, :app_name

', ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "Du wurdest in das Team :app_name Status Seite eingeladen. Um dich zu registrieren klicke den Link.\n:link\nDanke, :app_name", + 'html-preheader' => 'Du wurdest in das Team :app_name eingeladen.', + 'html' => '

Du wurdest in das Team :app_name Status Seite eingeladen. Um dich zu registrieren klicke den Link.

:link

Danke, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Registrieren', + 'username' => 'Benutzername', + 'email' => 'E-Mail', + 'password' => 'Passwort', + 'success' => 'Ihr Konto wurde erfolgreich erstellt.', + 'failure' => 'Mit der Registrierung ist etwas schief gelaufen.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Abonnieren', ], ], diff --git a/resources/lang/de/dashboard.php b/resources/lang/de/dashboard.php index fc82e734..eee99a3e 100755 --- a/resources/lang/de/dashboard.php +++ b/resources/lang/de/dashboard.php @@ -30,12 +30,17 @@ return [ 'success' => 'Vorfall aktualisiert.', 'failure' => 'Etwas ist mit dem Vorfall schiefgelaufen.', ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], // Incident templates 'templates' => [ 'title' => 'Vorfall Vorlagen', 'add' => [ 'title' => 'Vorfallvorlage erstellen', + 'message' => 'You should add an Incident Template.', 'success' => 'Vorlage erstellt.', 'failure' => 'Etwas ist mit der Vorfallvorlage schiefgelaufen.', ], @@ -44,12 +49,17 @@ return [ 'success' => 'Vorlage aktualisiert!', 'failure' => 'Etwas ist mit dem Updaten der Vorfallvorlage schiefgelaufen', ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], ], ], // Incident Maintenance 'schedule' => [ 'schedule' => 'Planmäßige Wartung', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', 'scheduled_at' => 'Geplant am :timestamp', 'add' => [ 'title' => 'Planmäßige Wartung hinzufügen', @@ -83,6 +93,10 @@ return [ 'success' => 'Komponente aktualisiert.', 'failure' => 'Mit der Komponente ist etwas schiefgegangen.', ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], // Component groups 'groups' => [ @@ -98,6 +112,10 @@ return [ 'success' => 'Komponentengruppe aktualisiert.', 'failure' => 'Mit der Komponentengruppe ist etwas schiefgegangen.', ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], ], ], @@ -106,6 +124,7 @@ return [ 'metrics' => 'Metriken', 'add' => [ 'title' => 'Metrik erstellen', + 'message' => 'You should add a Metric.', 'success' => 'Metrik erstellt.', 'failure' => 'Mit der Metrik ist etwas schiefgegangen.', ], @@ -114,6 +133,10 @@ return [ 'success' => 'Metrik aktualisiert.', 'failure' => 'Mit der Metrik ist etwas schiefgegangen.', ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], ], // Subscribers 'subscribers' => [ @@ -124,12 +147,12 @@ return [ 'add' => [ 'title' => 'Einen neuen Abonnenten hinzufügen', 'success' => 'Abonnent hinzugefügt.', - 'failure' => 'Mit der Komponente ist etwas schiefgegangen.', + 'failure' => 'Beim Erstellen der Komponente ist etwas schiefgegangen.', ], 'edit' => [ 'title' => 'Abonnent aktualisieren', 'success' => 'Abonnent aktualisiert.', - 'failure' => 'Bei der Aktualisierung ist etwas schiefgegangen.', + 'failure' => 'Bei der Aktualisierung ging etwas schief.', ], ], @@ -153,6 +176,11 @@ return [ 'success' => 'Benutzer aktualisiert.', 'failure' => 'Bei dem Löschen dieses Benutzers ging etwas schief.', ], + 'invite' => [ + 'title' => 'Ein neues Teammitglied einladen', + 'success' => 'Die Benutzer eingeladen.', + 'failure' => 'Mit der Einladung ist etwas schiefgelaufen.', + ], ], // Settings @@ -188,7 +216,7 @@ return [ // Login 'login' => [ 'login' => 'Anmelden', - 'logged_in' => 'Sie sind angemeldet.', + 'logged_in' => 'Sie sind eingeloggt.', 'welcome' => 'Willkommen zurück!', 'two-factor' => 'Bitte geben Sie Ihren Token ein.', ], @@ -207,7 +235,7 @@ return [ // Welcome modal 'welcome' => [ - 'welcome' => 'Willkommen zu Cachet', + 'welcome' => 'Welcome to your status page!', 'message' => 'Ihre Statusseite ist fast fertig! Vielleicht möchten Sie diese zusätzlichen Einstellungen konfigurieren', 'close' => 'Gehe einfach direkt zu meinem Dashboard', 'steps' => [ diff --git a/resources/lang/de/forms.php b/resources/lang/de/forms.php index ce85d3e2..f1ee1eee 100755 --- a/resources/lang/de/forms.php +++ b/resources/lang/de/forms.php @@ -31,7 +31,7 @@ return [ 'email' => 'E-Mail', 'password' => 'Passwort', '2fauth' => 'Authentifizierungscode', - 'invalid' => 'E-Mail-Adresse oder Passwort ungültig', + 'invalid' => 'Invalid username or password', 'invalid-token' => 'Token ist ungültig', 'cookies' => 'Sie müssen Cookies aktivieren um sich anzumelden.', ], @@ -68,7 +68,8 @@ return [ 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Name', + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', ], ], @@ -83,6 +84,8 @@ return [ 'calc_type' => 'Berechnung der Metrik', 'type_sum' => 'Summe', 'type_avg' => 'Durchschnitt', + 'places' => 'Nachkommastellen', + 'default_view' => 'Default View', 'points' => [ 'value' => 'Wert', @@ -99,7 +102,7 @@ return [ 'about-this-page' => 'Über diese Seite', 'days-of-incidents' => 'Wie viele Tage mit Vorfällen sollen gezeigt werden?', 'banner' => 'Banner', - 'banner-help' => 'Es wird empfohlen, dass Sie keine Dateien die breiter als 930 Pixel sind hochladen .', + 'banner-help' => "Es wird empfohlen, dass Sie keine Dateien die breiter als 930 Pixel sind hochladen .", 'subscribers' => 'Personen die Anmeldung für E-Mail-Benachrichtigung erlauben?', ], 'analytics' => [ @@ -123,10 +126,19 @@ return [ ], 'theme' => [ 'background-color' => 'Hintergrundfarbe', - 'text-color' => 'Schriftfarbe', + 'background-fills' => 'Hintergrunddateien (Komponenten, Vorfälle, Footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Schriftfarbe', + 'dashboard-login' => 'Dashboard-Button im Footer anzeigen?', + 'reds' => 'Rot (Genutzt für Fehler)', + 'blues' => 'Blau (Genutzt für Informationen)', + 'greens' => 'Grün (Genutzt für Erfolgreich)', + 'yellows' => 'Gelb (Genutzt für Warnungen)', + 'oranges' => 'Orange (Genutzt für Nachrichten)', + 'metrics' => 'Kennzahlen-Füllung', + 'links' => 'Links', ], ], @@ -137,7 +149,12 @@ return [ 'api-token' => 'API Token', 'api-token-help' => 'Wenn sie ihren API-Token neu generieren, können bestehende Anwendungen nicht mehr auf Cachet zugreifen.', 'gravatar' => 'Change your profile picture at Gravatar.', - '2fa' => [ + 'user_level' => 'Benutzerebene', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'Benutzer', + ], + '2fa' => [ 'help' => 'Die Zwei-Faktor-Authentifizierung erhöht die Sicherheit Ihres Kontos. Sie benötigen Google Authenticator oder eine ähnliche App auf Ihrem Mobilgerät. Beim Anmelden werden sie aufgefordert, einen Token einzugeben, der von der App generiert wird.', ], 'team' => [ @@ -156,6 +173,8 @@ return [ 'submit' => 'Abschicken', 'cancel' => 'Abbrechen', 'remove' => 'Entfernen', + 'invite' => 'Einladen', + 'signup' => 'Registrieren', // Other 'optional' => '* optional', diff --git a/resources/lang/de/setup.php b/resources/lang/de/setup.php index f8853b91..ccda3bfa 100755 --- a/resources/lang/de/setup.php +++ b/resources/lang/de/setup.php @@ -16,7 +16,7 @@ return [ 'env_setup' => 'Einrichtung der Systemumgebung', 'status_page_setup' => 'Statusseite einrichten', 'show_support' => 'Möchten Sie Cachet unterstützen?', - 'admin_account' => 'Administratorkonto', + 'admin_account' => 'Administrator Konto', 'complete_setup' => 'Installation abschließen', 'completed' => 'Cachet wurde erfolgreich konfiguriert!', 'finish_setup' => 'Zum Dashboard wechseln', diff --git a/resources/lang/de/validation.php b/resources/lang/de/validation.php index b6bee33d..6f837545 100755 --- a/resources/lang/de/validation.php +++ b/resources/lang/de/validation.php @@ -45,10 +45,12 @@ return [ 'digits_between' => ':attribute muss zwischen :min und :max Stellen haben.', 'email' => ':attribute muss eine gültige E-Mail Adresse sein.', 'exists' => 'Der gewählte Wert für :attribute ist ungültig.', + 'filled' => ':attribute muss ausgefüllt sein.', 'image' => ':attribute muss ein Bild sein.', 'in' => 'Der gewählte Wert für :attribute ist ungültig.', 'integer' => ':attribute muss eine ganze Zahl sein.', 'ip' => ':attribute muss eine gültige IP-Adresse sein.', + 'json' => 'Das :attribut muss eine gültige JSON-Zeichenfolge sein.', 'max' => [ 'numeric' => ':attribute darf maximal :max sein.', 'file' => ':attribute darf maximal :max Kilobytes groß sein.', @@ -80,9 +82,9 @@ return [ 'array' => ':attribute muss :size Elemente beinhalten.', ], 'string' => ':attribute muss eine Zeichenfolge sein.', + 'timezone' => ':attribute muss eine gültige Zeitzone sein.', 'unique' => ':attribute ist schon vergeben.', 'url' => 'Das Format von :attribute ist ungültig.', - 'timezone' => ':attribute muss eine gültige Zeitzone sein.', /* |-------------------------------------------------------------------------- diff --git a/resources/lang/el/cachet.php b/resources/lang/el/cachet.php new file mode 100644 index 00000000..df093b11 --- /dev/null +++ b/resources/lang/el/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Λειτουργικό', + 2 => 'Προβλήματα επιδόσης', + 3 => 'Μερική Διακοπή', + 4 => 'Σημαντική Διακοπή', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Προγραμματισμένη Συντήρηση', + 'scheduled_at' => ', προγραμματισμένη :timestamp', + 'status' => [ + 0 => 'Προγραμματίστηκε', // TODO: Hopefully remove this. + 1 => 'Διερευνάται', + 2 => 'Προσδιορίστηκε', + 3 => 'Παρακολούθηση', + 4 => 'Διορθωμένο', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Αλλαγή κλειδιού API', + 'revoke' => 'Ακύρωση κλειδιού API', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'E-mail', + 'password' => 'Κωδικός πρόσβασης', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/el/dashboard.php b/resources/lang/el/dashboard.php new file mode 100644 index 00000000..7c794ad6 --- /dev/null +++ b/resources/lang/el/dashboard.php @@ -0,0 +1,251 @@ + 'Πίνακας Ελέγχου', + + // Incidents + 'incidents' => [ + 'title' => 'Περιστατικά & Πρόγραμμα', + 'incidents' => 'Περιστατικά', + 'logged' => '{0} Δεν υπάρχουν περιστατικά, καλλή δουλειά.|Έχετε καταγράψει ένα περιστατικό.|Έχετε ανάφερει :count περιστατικά.', + 'incident-create-template' => 'Δημιουργία προτύπου', + 'incident-templates' => 'Πρότυπα Περιστατικών', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Το περιστατικό προστέθηκε.', + 'failure' => 'Κάτι πήγε στραβά με την προσθήκη του περιστατικού.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Επεξεργασία περιστατικού επιτυχής.', + 'failure' => 'Κάτι πήγε στραβά με την προσθήκη του περιστατικού.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Πρότυπα Περιστατικών', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Επιτυχής δημιουργία προτύπου.', + 'failure' => 'Κάτι πήγε στραβά με την δημιουργία προτύπου.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Επιτυχής ενημέρωση προτύπου!', + 'failure' => 'Κάτι πήγε στραβά με την ενημέρωση του προτύπου', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Προγραμματισμένη Συντήρηση', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Προγραμματισμένη στις :timestamp', + 'add' => [ + 'title' => 'Προσθήκη Προγραμματισμένης Συντήρησης', + 'success' => 'Επιτυχής προσθήκη προγραμματισμού.', + 'failure' => 'Κάτι πήγε στραβά με την προσθήκη του προγραμματισμού.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Ομάδα', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Ρυθμίσεις', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Θέμα', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Σύνδεση', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Βοήθεια', + 'status_page' => 'Σελίδα Κατάστασης', + 'logout' => 'Έξοδος', + + // Notifications + 'notifications' => [ + 'notifications' => 'Ειδοποιήσεις', + 'awesome' => 'Φανταστικό.', + 'whoops' => 'Ούπς.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Η σελίδα κατάστασής σας είναι σχεδόν έτοιμη! Ίσως να θέλετε να κάνετε κάποιες παραμετροποιήσεις', + 'close' => 'Απλά πηγαίνε κατευθείαν στον πίνακα ελέγχου μου', + 'steps' => [ + 'component' => 'Δημιουργία συστατικών', + 'incident' => 'Δημιουργία περιστατικών', + 'customize' => 'Προσαρμογή', + 'team' => 'Προσθήκη χρηστών', + 'api' => 'Δημιουργία κλειδιού API', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/el/forms.php b/resources/lang/el/forms.php new file mode 100644 index 00000000..cd8d87d0 --- /dev/null +++ b/resources/lang/el/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'E-mail', + 'username' => 'Username', + 'password' => 'Κωδικός πρόσβασης', + 'site_name' => 'Όνομα ιστοσελίδας', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Επιλέξτε τη ζώνη ώρας σας', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'E-mail', + 'password' => 'Κωδικός πρόσβασης', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Κατάσταση', + 'component' => 'Component', + 'message' => 'Μήνυμα', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Κατάσταση', + 'group' => 'Ομάδα', + 'description' => 'Description', + 'link' => 'Σύνδεσμος', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Μέσος όρος', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Όνομα ιστοσελίδας', + 'site-url' => 'Διεύθυνση URL ιστοσελίδας', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'E-mail', + 'password' => 'Κωδικός πρόσβασης', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/el/pagination.php b/resources/lang/el/pagination.php new file mode 100644 index 00000000..b8df5ddc --- /dev/null +++ b/resources/lang/el/pagination.php @@ -0,0 +1,28 @@ + '« Προηγούμενο', + 'next' => 'Επόμενο »', + +]; diff --git a/resources/lang/el/setup.php b/resources/lang/el/setup.php new file mode 100644 index 00000000..076a7dd1 --- /dev/null +++ b/resources/lang/el/setup.php @@ -0,0 +1,23 @@ + 'Εγκατάσταση', + 'title' => 'Εγκατάσταση του Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Ολοκλήρωση εγκατάστασης', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/el/validation.php b/resources/lang/el/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/el/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/en-UD/cachet.php b/resources/lang/en-UD/cachet.php index 0565f37a..d4d7e476 100755 --- a/resources/lang/en-UD/cachet.php +++ b/resources/lang/en-UD/cachet.php @@ -40,8 +40,9 @@ return [ // Service Status 'service' => [ - 'good' => 'crwdns546:0crwdne546:0', - 'bad' => 'crwdns547:0crwdne547:0', + 'good' => 'crwdns622:0crwdne622:0', + 'bad' => 'crwdns623:0crwdne623:0', + 'major' => 'crwdns624:0crwdne624:0', ], 'api' => [ @@ -52,9 +53,10 @@ return [ // Metrics 'metrics' => [ 'filter' => [ - 'hourly' => 'crwdns548:0crwdne548:0', - 'weekly' => 'crwdns549:0crwdne549:0', - 'monthly' => 'crwdns550:0crwdne550:0', + 'last_hour' => 'crwdns625:0crwdne625:0', + 'hourly' => 'crwdns548:0crwdne548:0', + 'weekly' => 'crwdns549:0crwdne549:0', + 'monthly' => 'crwdns550:0crwdne550:0', ], ], @@ -69,29 +71,36 @@ return [ 'unsubscribe' => 'crwdns552:0crwdne552:0', 'unsubscribed' => 'crwdns495:0crwdne495:0', 'failure' => 'crwdns496:0crwdne496:0', - 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'already-subscribed' => 'crwdns626:0crwdne626:0', 'verify' => [ - 'text' => 'crwdns497:0crwdne497:0', + 'text' => "crwdns497:0crwdne497:0", 'html-preheader' => 'crwdns498:0crwdne498:0', 'html' => 'crwdns520:0crwdne520:0', ], 'maintenance' => [ - 'text' => 'crwdns500:0crwdne500:0', + 'text' => "crwdns500:0crwdne500:0", 'html-preheader' => 'crwdns501:0crwdne501:0', 'html' => 'crwdns521:0crwdne521:0', ], 'incident' => [ - 'text' => 'crwdns503:0crwdne503:0', + 'text' => "crwdns503:0crwdne503:0", 'html-preheader' => 'crwdns504:0crwdne504:0', 'html' => 'crwdns505:0crwdne505:0', ], + 'component' => [ + 'subject' => 'crwdns627:0crwdne627:0', + 'text' => 'crwdns628:0crwdne628:0', + 'html-preheader' => 'crwdns629:0crwdne629:0', + 'html' => 'crwdns630:0crwdne630:0', + 'tooltip-title' => 'crwdns631:0crwdne631:0', + ], ], ], 'users' => [ 'email' => [ 'invite' => [ - 'text' => 'crwdns553:0crwdne553:0', + 'text' => "crwdns553:0crwdne553:0", 'html-preheader' => 'crwdns554:0crwdne554:0', 'html' => 'crwdns555:0crwdne555:0', ], @@ -107,6 +116,20 @@ return [ 'failure' => 'crwdns561:0crwdne561:0', ], + 'system' => [ + 'update' => 'crwdns632:0crwdne632:0', + ], + + // Modal + 'modal' => [ + 'close' => 'crwdns633:0crwdne633:0', + 'subscribe' => [ + 'title' => 'crwdns634:0crwdne634:0', + 'body' => 'crwdns635:0crwdne635:0', + 'button' => 'crwdns636:0crwdne636:0', + ], + ], + // Other 'powered_by' => 'crwdns562:0crwdne562:0', 'about_this_site' => 'crwdns563:0crwdne563:0', diff --git a/resources/lang/en-UD/dashboard.php b/resources/lang/en-UD/dashboard.php index 37acc9b7..c262554d 100755 --- a/resources/lang/en-UD/dashboard.php +++ b/resources/lang/en-UD/dashboard.php @@ -30,12 +30,17 @@ return [ 'success' => 'crwdns312:0crwdne312:0', 'failure' => 'crwdns313:0crwdne313:0', ], + 'delete' => [ + 'success' => 'crwdns637:0crwdne637:0', + 'failure' => 'crwdns638:0crwdne638:0', + ], // Incident templates 'templates' => [ 'title' => 'crwdns314:0crwdne314:0', 'add' => [ 'title' => 'crwdns566:0crwdne566:0', + 'message' => 'crwdns639:0crwdne639:0', 'success' => 'crwdns316:0crwdne316:0', 'failure' => 'crwdns317:0crwdne317:0', ], @@ -44,12 +49,17 @@ return [ 'success' => 'crwdns319:0crwdne319:0', 'failure' => 'crwdns320:0crwdne320:0', ], + 'delete' => [ + 'success' => 'crwdns640:0crwdne640:0', + 'failure' => 'crwdns641:0crwdne641:0', + ], ], ], // Incident Maintenance 'schedule' => [ 'schedule' => 'crwdns445:0crwdne445:0', + 'logged' => 'crwdns642:0{0}crwdne642:0', 'scheduled_at' => 'crwdns446:0crwdne446:0', 'add' => [ 'title' => 'crwdns447:0crwdne447:0', @@ -83,6 +93,10 @@ return [ 'success' => 'crwdns327:0crwdne327:0', 'failure' => 'crwdns328:0crwdne328:0', ], + 'delete' => [ + 'success' => 'crwdns643:0crwdne643:0', + 'failure' => 'crwdns644:0crwdne644:0', + ], // Component groups 'groups' => [ @@ -98,6 +112,10 @@ return [ 'success' => 'crwdns456:0crwdne456:0', 'failure' => 'crwdns457:0crwdne457:0', ], + 'delete' => [ + 'success' => 'crwdns645:0crwdne645:0', + 'failure' => 'crwdns646:0crwdne646:0', + ], ], ], @@ -106,6 +124,7 @@ return [ 'metrics' => 'crwdns178:0crwdne178:0', 'add' => [ 'title' => 'crwdns572:0crwdne572:0', + 'message' => 'crwdns647:0crwdne647:0', 'success' => 'crwdns459:0crwdne459:0', 'failure' => 'crwdns460:0crwdne460:0', ], @@ -114,6 +133,10 @@ return [ 'success' => 'crwdns462:0crwdne462:0', 'failure' => 'crwdns463:0crwdne463:0', ], + 'delete' => [ + 'success' => 'crwdns648:0crwdne648:0', + 'failure' => 'crwdns649:0crwdne649:0', + ], ], // Subscribers 'subscribers' => [ @@ -212,7 +235,7 @@ return [ // Welcome modal 'welcome' => [ - 'welcome' => 'crwdns358:0crwdne358:0', + 'welcome' => 'crwdns650:0crwdne650:0', 'message' => 'crwdns359:0crwdne359:0', 'close' => 'crwdns360:0crwdne360:0', 'steps' => [ diff --git a/resources/lang/en-UD/forms.php b/resources/lang/en-UD/forms.php index 2148e9da..2a4d83fe 100755 --- a/resources/lang/en-UD/forms.php +++ b/resources/lang/en-UD/forms.php @@ -27,11 +27,11 @@ return [ // Login form fields 'login' => [ - 'login' => 'Username or Email', + 'login' => 'crwdns651:0crwdne651:0', 'email' => 'crwdns217:0crwdne217:0', 'password' => 'crwdns381:0crwdne381:0', '2fauth' => 'crwdns382:0crwdne382:0', - 'invalid' => 'crwdns383:0crwdne383:0', + 'invalid' => 'crwdns652:0crwdne652:0', 'invalid-token' => 'crwdns384:0crwdne384:0', 'cookies' => 'crwdns480:0crwdne480:0', ], @@ -52,6 +52,7 @@ return [ 'templates' => [ 'name' => 'crwdns389:0crwdne389:0', 'template' => 'crwdns390:0crwdne390:0', + 'twig' => 'crwdns653:0crwdne653:0', ], ], @@ -67,7 +68,8 @@ return [ 'enabled' => 'crwdns587:0crwdne587:0', 'groups' => [ - 'name' => 'crwdns397:0crwdne397:0', + 'name' => 'crwdns397:0crwdne397:0', + 'collapsed' => 'crwdns654:0crwdne654:0', ], ], @@ -83,6 +85,7 @@ return [ 'type_sum' => 'crwdns476:0crwdne476:0', 'type_avg' => 'crwdns477:0crwdne477:0', 'places' => 'crwdns590:0crwdne590:0', + 'default_view' => 'crwdns655:0crwdne655:0', 'points' => [ 'value' => 'crwdns471:0crwdne471:0', @@ -99,7 +102,7 @@ return [ 'about-this-page' => 'crwdns402:0crwdne402:0', 'days-of-incidents' => 'crwdns403:0crwdne403:0', 'banner' => 'crwdns404:0crwdne404:0', - 'banner-help' => 'crwdns405:0crwdne405:0', + 'banner-help' => "crwdns405:0crwdne405:0", 'subscribers' => 'crwdns513:0crwdne513:0', ], 'analytics' => [ diff --git a/resources/lang/en-UD/validation.php b/resources/lang/en-UD/validation.php index 0068b292..0aa0dda6 100755 --- a/resources/lang/en-UD/validation.php +++ b/resources/lang/en-UD/validation.php @@ -69,7 +69,7 @@ return [ 'regex' => 'crwdns132:0crwdne132:0', 'required' => 'crwdns133:0crwdne133:0', 'required_if' => 'crwdns134:0crwdne134:0', - 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_unless' => 'crwdns656:0crwdne656:0', 'required_with' => 'crwdns135:0crwdne135:0', 'required_with_all' => 'crwdns136:0crwdne136:0', 'required_without' => 'crwdns137:0crwdne137:0', diff --git a/resources/lang/en/cachet.php b/resources/lang/en/cachet.php index e84c744c..9a77a3d7 100755 --- a/resources/lang/en/cachet.php +++ b/resources/lang/en/cachet.php @@ -22,7 +22,7 @@ return [ // Incidents 'incidents' => [ - 'none' => 'No incidents reported', + 'none' => 'Nothing to report', 'past' => 'Past Incidents', 'previous_week' => 'Previous Week', 'next_week' => 'Next Week', diff --git a/resources/lang/en/validation.php b/resources/lang/en/validation.php index 36ab3f30..3f58463d 100755 --- a/resources/lang/en/validation.php +++ b/resources/lang/en/validation.php @@ -31,57 +31,57 @@ return [ 'array' => 'The :attribute must be an array.', 'before' => 'The :attribute must be a date before :date.', 'between' => [ - 'numeric' => 'The :attribute must be between :min and :max.', - 'file' => 'The :attribute must be between :min and :max kilobytes.', - 'string' => 'The :attribute must be between :min and :max characters.', + 'numeric' => 'The :attribute must be a date before :date.', + 'file' => 'The :attribute must be between :min and :max.', + 'string' => 'The :attribute must be between :min and :max kilobytes.', 'array' => 'The :attribute must have between :min and :max items.', ], - 'boolean' => 'The :attribute field must be true or false.', - 'confirmed' => 'The :attribute confirmation does not match.', - 'date' => 'The :attribute is not a valid date.', - 'date_format' => 'The :attribute does not match the format :format.', - '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.', - 'email' => 'The :attribute must be a valid email address.', - 'exists' => 'The selected :attribute is invalid.', - 'filled' => 'The :attribute field is required.', + 'boolean' => 'The :attribute must have between :min and :max items.', + 'confirmed' => 'The :attribute field must be true or false.', + 'date' => 'The :attribute confirmation does not match.', + 'date_format' => 'The :attribute is not a valid date.', + 'different' => 'The :attribute does not match the format :format.', + 'digits' => 'The :attribute and :other must be different.', + 'digits_between' => 'The :attribute must be :digits digits.', + 'email' => 'The :attribute must be between :min and :max digits.', + 'exists' => 'The :attribute must be a valid email address.', + 'filled' => 'The :attribute format is invalid.', 'image' => 'The :attribute must be an image.', - 'in' => 'The selected :attribute is invalid.', - 'integer' => 'The :attribute must be an integer.', - 'ip' => 'The :attribute must be a valid IP address.', + 'in' => 'The :attribute must be an image.', + 'integer' => 'The selected :attribute is invalid.', + 'ip' => 'The :attribute must be an integer.', 'json' => 'The :attribute must be a valid JSON string.', 'max' => [ - 'numeric' => 'The :attribute may not be greater than :max.', - 'file' => 'The :attribute may not be greater than :max kilobytes.', - 'string' => 'The :attribute may not be greater than :max characters.', + 'numeric' => 'The :attribute must be a valid IP address.', + 'file' => 'The :attribute may not be greater than :max.', + 'string' => 'The :attribute may not be greater than :max kilobytes.', 'array' => 'The :attribute may not have more than :max items.', ], - 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimes' => 'The :attribute may not have more than :max items.', 'min' => [ - 'numeric' => 'The :attribute must be at least :min.', + 'numeric' => 'The :attribute must be a file of type: :values.', 'file' => 'The :attribute must be at least :min kilobytes.', - 'string' => 'The :attribute must be at least :min characters.', - 'array' => 'The :attribute must have at least :min items.', + 'string' => 'The :attribute must be at least :min kilobytes.', + 'array' => 'The :attribute must be at least :min characters.', ], - 'not_in' => 'The selected :attribute is invalid.', - 'numeric' => 'The :attribute must be a number.', - 'regex' => 'The :attribute format is invalid.', - 'required' => 'The :attribute field is required.', - 'required_if' => 'The :attribute field is required when :other is :value.', + 'not_in' => 'The :attribute must have at least :min items.', + 'numeric' => 'The selected :attribute is invalid.', + 'regex' => 'The :attribute must be a number.', + 'required' => 'The :attribute format is invalid.', + 'required_if' => 'The :attribute field is required.', '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' => 'The :attribute field is required when :other is :value.', 'required_with_all' => 'The :attribute field is required when :values is 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.', + 'required_without' => 'The :attribute field is required when :values is present.', + 'required_without_all' => 'The :attribute field is required when :values is not present.', + 'same' => 'The :attribute field is required when none of :values are present.', 'size' => [ - 'numeric' => 'The :attribute must be :size.', + 'numeric' => 'The :attribute and :other must match.', 'file' => 'The :attribute must be :size kilobytes.', 'string' => 'The :attribute must be :size characters.', - 'array' => 'The :attribute must contain :size items.', + 'array' => 'The :attribute must be :size characters.', ], - 'string' => 'The :attribute must be a string.', + 'string' => 'The :attribute must contain :size items.', 'timezone' => 'The :attribute must be a valid zone.', 'unique' => 'The :attribute has already been taken.', 'url' => 'The :attribute format is invalid.', diff --git a/resources/lang/es/cachet.php b/resources/lang/es/cachet.php index 029e5925..1fde8db9 100755 --- a/resources/lang/es/cachet.php +++ b/resources/lang/es/cachet.php @@ -13,26 +13,28 @@ return [ // Components 'components' => [ 'status' => [ - 1 => 'Operacional', - 2 => 'Problemas de rendimiento', - 3 => 'Interrupción parcial', - 4 => 'Interrupción mayor', + 1 => 'Funktionsfähig', + 2 => 'Leistungsprobleme', + 3 => 'Teilweiser Ausfall', + 4 => 'Schwerer Ausfall', ], ], // Incidents 'incidents' => [ - 'none' => 'No hay ningún incidente reportado.', - 'past' => 'Incidentes anteriores', - 'previous_week' => 'Semana anterior', - 'next_week' => 'Siguiente semana', - 'none' => 'No hay ningún incidente reportado.', + 'none' => 'Keine Vorfälle berichtet.', + 'past' => 'Vergangene Vorfälle', + 'previous_week' => 'Vorherige Woche', + 'next_week' => 'Nächste Woche', + 'none' => 'Keine Vorfälle berichtet.', + 'scheduled' => 'Geplante Wartungen', + 'scheduled_at' => ', geplant :timestamp', 'status' => [ - 0 => '', - 1 => 'Investigando', - 2 => 'Identificado', - 3 => 'Observando', - 4 => 'Corregido', + 0 => 'Geplant', // TODO: Hopefully remove this. + 1 => 'Untersuchungen laufen', + 2 => 'Identifiziert', + 3 => 'Unter Beobachtung', + 4 => 'Behoben', ], ], @@ -44,55 +46,95 @@ return [ ], 'api' => [ - 'regenerate' => 'Regenerar API Key', - 'revoke' => 'Revocar API Key', + 'regenerate' => 'API-Schlüssel neu generieren', + 'revoke' => 'API-Schlüssel widerrufen', ], // Metrics 'metrics' => [ 'filter' => [ 'last_hour' => 'Last Hour', - 'hourly' => 'Últimas 12 horas', - 'weekly' => 'Semana', - 'monthly' => 'Mes', + 'hourly' => 'Letzte 12 Stunden', + 'weekly' => 'Wöchentlich', + 'monthly' => 'Monatlich', ], ], // Subscriber 'subscriber' => [ - 'subscribe' => 'Suscríbete para recibir las actualizaciones más recientes.', - 'button' => 'Suscribirse', + 'subscribe' => 'Abonnieren Sie um die neuesten Updates zu erhalten.', + 'button' => 'Abonnieren', 'email' => [ - 'subscribe' => 'Suscríbete a las actualizaciones por correo electrónico.', - 'subscribed' => 'Se te ha suscrito a la la lista de notificaciones por correo electónico, por favor comprueba tu email para confirmar la suscripción.', - 'verified' => 'Tu suscripción a la lista de notificaciones por correo electrónico ha sido confirmada. ¡Gracias!', - 'unsubscribe' => 'Desuscribirse de la lista de notificaciones por correo electrónico.', - 'unsubscribed' => 'Tu suscripción a la lista de notificaciones por correo electrónico has sido cancelada.', - 'failure' => 'Algo salió mal con la suscripción.', + 'subscribe' => 'Aktualisierungen per E-Mail abonnieren.', + 'subscribed' => 'Sie haben E-Mail-Benachrichtigungen abonniert, überprüfen Sie bitte Ihre E-Mail, um Ihr Abonnement zu bestätigen.', + 'verified' => 'Ihre E-Mail-Abonnement ist bestätigt worden. Danke!', + 'unsubscribe' => 'Von E-Mail-Updates deabonnieren.', + 'unsubscribed' => 'Ihre E-Mail-Abonnement wurde gekündigt.', + 'failure' => 'Etwas ist mit dem Abonnement schief gelaufen.', 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', 'verify' => [ - 'text' => "Por favor confirma tu suscripción por correo electrónico a las actualizaciones de estado de :app_name.\n:link\nGracias, :app_name", - 'html-preheader' => 'Por favor confirma tu suscripción por correo electrónico a las actualizaciones de estado de :app_name.', - 'html' => '

Por favor confirma tu suscripción por correo electrónico a las actualizaciones de estado de :app_name.

:link

Gracias, :app_name

', + 'text' => "Bitte bestätigen Sie Ihre E-Mail-Abonnement zu :app_name Status-Aktualisierungen.\n:link\nDanke, :app_name", + 'html-preheader' => 'Bitte bestätigen Sie Ihre E-Mail-Abonnement zu :app_name Status-Aktualisierungen.', + 'html' => '

Bestätigen Sie bitte Ihr E-Mail-Abonnement für :app_name Statusaktualisierungen.

:link

Danke, :app_name

', ], 'maintenance' => [ - 'text' => "Se ha programado una tarea de mantenimiento en :app_name.\nGracias, :app_name", - 'html-preheader' => 'Se ha programado una tarea de mantenimiento en :app_name.', - 'html' => '

Se ha programado una tarea de mantenimiento en :app_name.

Gracias, :app_name

', + 'text' => "Neue Wartung wurde für :app_name geplant.\nDanke, :app_name", + 'html-preheader' => 'Neue Wartung wurde für :app_name geplant.', + 'html' => '

Neue Wartung wurde für :app_name geplant.

', ], 'incident' => [ - 'text' => "Se ha informado de un nuevo incidente en :app_name.\nGracias, :app_name", - 'html-preheader' => 'Se ha informado de un nuevo incidente en :app_name.', - 'html' => '

Se ha informado de un nuevo incidente en :app_name.

Gracias, :app_name

', + 'text' => "Ein neuer Vorfall wurde auf :app_name berichtet.\nDanke, :app_name", + 'html-preheader' => 'Ein neuer Vorfall wurde über :app_name berichtet.', + 'html' => '

Ein neuer Vorfall wurde über :app_name berichtet.

Danke, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', ], ], ], + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "Te han invitado a la página de estado del equipo de :app_name, para registrarte sigue este enlace.\n:link\nGracias, :app_name", + 'html-preheader' => 'Te han invitado al equipo de :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Registrarse', + 'username' => 'Benutzername', + 'email' => 'E-Mail', + 'password' => 'Passwort', + 'success' => 'Tu cuenta ha sido creada.', + 'failure' => 'Hubo algún error al registrarse.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Abonnieren', + ], + ], + // Other - 'powered_by' => ':app La página de estado es alimentada por Cachet.', - 'about_this_site' => 'Acerca de este sitio', - 'rss-feed' => 'Feed RSS', - 'atom-feed' => 'Atom Feed', - 'feed' => 'Estado del Feed', + 'powered_by' => ':app Status-Seite betrieben mit Cachet.', + 'about_this_site' => 'Über diese Seite', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status-Feed', ]; diff --git a/resources/lang/es/dashboard.php b/resources/lang/es/dashboard.php index e09c9737..897abd89 100755 --- a/resources/lang/es/dashboard.php +++ b/resources/lang/es/dashboard.php @@ -15,105 +15,181 @@ return [ // Incidents 'incidents' => [ - 'incidents' => 'Incidentes', - 'logged' => '{0} No hay incidentes, ¡buen trabajo!|Has registrado un incidente.|Has reportado :count incidentes.', - 'incident-create-template' => 'Crear plantilla', - 'incident-templates' => 'Plantillas de incidente', + 'title' => 'Ereignisse & Termine', + 'incidents' => 'Vorfälle', + 'logged' => '{0} Es gibt keine Vorfälle, gute Arbeit.|Du hast einen Vorfall gemeldet.|Du hast :count Vorfälle gemeldet.', + 'incident-create-template' => 'Vorlage erstellen', + 'incident-templates' => 'Vorfall Vorlagen', 'add' => [ - 'title' => 'Agregar un incidente', - 'success' => 'Incidente agregado.', - 'failure' => 'Algo salió mal con el incidente.', + 'title' => 'Vorfall hinzufügen', + 'success' => 'Vorfall hinzugefügt.', + 'failure' => 'Etwas ist mit dem Vorfall schiefgelaufen.', ], 'edit' => [ - 'title' => 'Editar un incidente', - 'success' => 'Incidente actualizado.', + 'title' => 'Vorfall bearbeiten', + 'success' => 'Vorfall aktualisiert.', 'failure' => 'Algo salió mal con el incidente.', ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], // Incident templates 'templates' => [ 'title' => 'Plantillas de incidente', 'add' => [ - 'title' => 'Crear una plantilla de incidente', - 'success' => 'Plantilla creada.', - 'failure' => 'Algo salió mal con la plantilla de incidente.', + 'title' => 'Vorfallvorlage erstellen', + 'message' => 'You should add an Incident Template.', + 'success' => 'Vorlage erstellt.', + 'failure' => 'Etwas ist mit der Vorfallvorlage schiefgelaufen.', ], 'edit' => [ - 'title' => 'Editar plantilla', - 'success' => '¡Se ha actualizado la plantilla!', - 'failure' => 'Algo salió mal actualizar la plantilla de incidente', + 'title' => 'Vorlage bearbeiten', + 'success' => 'Vorlage aktualisiert!', + 'failure' => 'Etwas ist mit dem Updaten der Vorfallvorlage schiefgelaufen', ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Geplante Wartungen', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Geplant am :timestamp', + 'add' => [ + 'title' => 'Planmäßige Wartung hinzufügen', + 'success' => 'Zeitplan hinzugefügt.', + 'failure' => 'Etwas ist mit dem hinzufügen des Zeitplanes schiefgelaufen.', + ], + 'edit' => [ + 'title' => 'Planmäßige Wartung bearbeiten', + 'success' => 'Zeitplan wurde aktualisiert!', + 'failure' => 'Etwas ist mit dem Bearbeiten des Zeitplanes schiefgelaufen.', + ], + 'delete' => [ + 'success' => 'Der Zeitplan wurde gelöscht und wird nicht auf Ihrer Statusseite angezeigt.', + 'failure' => 'Der Zeitplan konnte nicht gelöscht werden. Bitte versuchen Sie es erneut.', ], ], // Components 'components' => [ - 'components' => 'Componentes', - 'component_statuses' => 'Estatus de los componentes', + 'components' => 'Komponenten', + 'component_statuses' => 'Komponentenstatus', + 'listed_group' => 'Gruppiert unter :name', 'add' => [ - 'title' => 'Agregar un componente', - 'message' => 'Deberías agregar un componente.', - 'success' => 'Componente creado.', - 'failure' => 'Algo salió mal con el componente.', + 'title' => 'Komponente hinzufügen', + 'message' => 'Sie sollten eine Komponente erstellen.', + 'success' => 'Komponente erstellt.', + 'failure' => 'Beim Erstellen der Komponente ist etwas schiefgegangen.', ], 'edit' => [ - 'title' => 'Editar un componente', - 'success' => 'Componente actualizado.', + 'title' => 'Komponente bearbeiten', + 'success' => 'Komponente aktualisiert.', 'failure' => 'Algo salió mal con el componente.', ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], // Component groups 'groups' => [ - 'groups' => 'Grupo de componente|Grupos de componente', - 'no_components' => 'Deberías añadir un grupo de componentes.', + 'groups' => 'Komponentgruppe|Komponentgruppen', + 'no_components' => 'Sie sollten eine Komponentengruppe hinzufügen.', 'add' => [ - 'title' => 'Agregar un grupo', - 'success' => 'Grupo componente agregado.', - 'failure' => 'Algo salió mal con el grupo del componente.', + 'title' => 'Eine Komponentengruppe hinzufügen', + 'success' => 'Komponentengruppe hinzugefügt.', + 'failure' => 'Mit der Komponentengruppe ist etwas schiefgegangen.', ], 'edit' => [ - 'title' => 'Editar un grupo de componentes', - 'success' => 'Grupo de componentes actualizado.', - 'failure' => 'Algo salió mal con el grupo de componentes.', + 'title' => 'Komponentengruppe bearbeiten', + 'success' => 'Komponentengruppe aktualisiert.', + 'failure' => 'Mit der Komponentengruppe ist etwas schiefgegangen.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', ], ], ], // Metrics 'metrics' => [ - 'metrics' => 'Métricas', + 'metrics' => 'Metriken', 'add' => [ - 'title' => 'Crear una métrica', - 'success' => 'Métrica creada.', - 'failure' => 'Algo salió mal con la métrica.', + 'title' => 'Metrik erstellen', + 'message' => 'You should add a Metric.', + 'success' => 'Metrik erstellt.', + 'failure' => 'Mit der Metrik ist etwas schiefgegangen.', + ], + 'edit' => [ + 'title' => 'Metrik bearbeiten', + 'success' => 'Metrik aktualisiert.', + 'failure' => 'Mit der Metrik ist etwas schiefgegangen.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Abonnenten', + 'description' => 'Abonnenten erhalten E-Mail Updates wenn Vorfälle erstellt werden.', + 'verified' => 'Verifiziert', + 'not_verified' => 'Nicht verifiziert', + 'add' => [ + 'title' => 'Einen neuen Abonnenten hinzufügen', + 'success' => 'Abonnent hinzugefügt.', + 'failure' => 'Beim Erstellen der Komponente ist etwas schiefgegangen.', + ], + 'edit' => [ + 'title' => 'Abonnent aktualisieren', + 'success' => 'Abonnent aktualisiert.', + 'failure' => 'Bei der Aktualisierung ging etwas schief.', ], ], // Team 'team' => [ - 'team' => 'Equipo', - 'member' => 'Miembro', - 'profile' => 'Perfil', - 'description' => 'Los miembros del equipo será capaces de añadir, modificar y editar componentes e incidentes.', + 'team' => 'Team', + 'member' => 'Mitglied', + 'profile' => 'Profil', + 'description' => 'Teammitglieder werden die Möglichkeit haben, Komponente sowie Vorfälle hinzuzufügen und zu verändern.', 'add' => [ - 'title' => 'Agregar miembro de equipo', - 'success' => 'Miembro del equipo agregado.', - 'failure' => 'Algo salió mal con el componente.', + 'title' => 'Neues Teammitglied hinzufügen', + 'success' => 'Teammitglied hinzugefügt.', + 'failure' => 'Mit der Komponente ist etwas schiefgegangen.', ], 'edit' => [ - 'title' => 'Actualizar perfil', - 'success' => 'Perfil actualizado.', - 'failure' => 'Algo salió mal al actualizar.', + 'title' => 'Profil aktualisieren', + 'success' => 'Profil aktualisiert.', + 'failure' => 'Bei der Aktualisierung ging etwas schief.', + ], + 'delete' => [ + 'success' => 'Benutzer aktualisiert.', + 'failure' => 'Bei dem Löschen dieses Benutzers ging etwas schief.', + ], + 'invite' => [ + 'title' => 'Invitar a un nuevo miembro al equipo', + 'success' => 'Los usuarios invitados.', + 'failure' => 'Algo salió mal en la invitación.', ], ], // Settings 'settings' => [ - 'settings' => 'Ajustes', + 'settings' => 'Einstellungen', 'app-setup' => [ - 'app-setup' => 'Configuración', - 'images-only' => 'Sólo puedes subir imágenes.', - 'too-big' => 'El archivo subido es demasiado grande. Sube una imagen con tamaño menor a: tamaño', + 'app-setup' => 'Anwendungsinstallation', + 'images-only' => 'Es können nur Bilder hochgeladen werden.', + 'too-big' => 'Die von Ihnen hochgeladene Datei ist zu groß. Laden Sie ein Bild welches kleiner als :size ist hoch', ], 'analytics' => [ 'analytics' => 'Analytics', @@ -122,52 +198,53 @@ return [ 'localization' => 'Localization', ], 'security' => [ - 'security' => 'Seguridad', + 'security' => 'Sicherheit', + 'two-factor' => 'Nutzer ohne Zwei-Faktor-Authentifizierung', ], 'stylesheet' => [ - 'stylesheet' => 'Hoja de estilo', + 'stylesheet' => 'Stylesheet', ], 'theme' => [ - 'theme' => 'Tema', + 'theme' => 'Theme', ], 'edit' => [ - 'success' => 'Configuración guardada.', - 'failure' => 'La configuración no ha podido ser guardada.', + 'success' => 'Einstellungen gespeichert.', + 'failure' => 'Einstellungen konnten nicht gespeichert werden.', ], ], // Login 'login' => [ - 'login' => 'Iniciar Sesión', - 'logged_in' => 'Estás conectado.', - 'welcome' => '¡Bienvenido!', - 'two-factor' => 'Por favor ingresa tu token.', + 'login' => 'Anmelden', + 'logged_in' => 'Sie sind angemeldet.', + 'welcome' => 'Willkommen zurück!', + 'two-factor' => 'Bitte geben Sie Ihren Token ein.', ], // Sidebar footer - 'help' => 'Ayuda', - 'status_page' => 'Página de estado', - 'logout' => 'Salir', + 'help' => 'Hilfe', + 'status_page' => 'Statusseite', + 'logout' => 'Abmelden', // Notifications 'notifications' => [ - 'notifications' => 'Notificaciones', - 'awesome' => 'Excelente.', - 'whoops' => 'Ups.', + 'notifications' => 'Benachrichtigungen', + 'awesome' => 'Großartig.', + 'whoops' => 'Hoppla.', ], // Welcome modal 'welcome' => [ - 'welcome' => 'Bienvenido a Cachet', - 'message' => '¡La página de estado está casi lista! Tal vez quieras configurar estos ajustes adicionales', - 'close' => 'Ir directo al Panel de Control', + 'welcome' => 'Welcome to your status page!', + 'message' => 'Ihre Statusseite ist fast fertig! Vielleicht möchten Sie diese zusätzlichen Einstellungen konfigurieren', + 'close' => 'Gehe einfach direkt zu meinem Dashboard', 'steps' => [ - 'component' => 'Crear componentes', - 'incident' => 'Crear incidentes', - 'customize' => 'Personaliza tu página de estado Cachet.', - 'team' => 'Agregar usuarios a tu equipo.', - 'api' => 'Generar token API.', - 'two-factor' => 'Habilitar autenticación de dos pasos.', + 'component' => 'Komponenten erstellen', + 'incident' => 'Vorfälle erstellen', + 'customize' => 'Personalisieren', + 'team' => 'Benutzer hinzufügen', + 'api' => 'API Token generieren', + 'two-factor' => 'Zwei-Faktor-Authentifizierung', ], ], diff --git a/resources/lang/es/forms.php b/resources/lang/es/forms.php index 3260a414..2037cd72 100755 --- a/resources/lang/es/forms.php +++ b/resources/lang/es/forms.php @@ -13,14 +13,16 @@ return [ // Setup form fields 'setup' => [ - 'email' => 'Correo electrónico', + 'email' => 'E-Mail', 'username' => 'Nombre de usario', - 'password' => 'Contraseña', + 'password' => 'Passwort', 'site_name' => 'Nombre del sitio', - 'site_domain' => 'Dominio de sitio', - 'site_timezone' => 'Selecciona tu zona horaria', - 'site_locale' => 'Selecciona tu idioma', - 'enable_google2fa' => 'Habilitar la verificación en dos pasos de Google', + 'site_domain' => 'Domain ihrer Seite', + 'site_timezone' => 'Wählen Sie Ihre Zeitzone', + 'site_locale' => 'Wählen Sie Ihre Sprache', + 'enable_google2fa' => 'Google Zwei-Faktor-Authentifizierung aktivieren', + 'cache_driver' => 'Cache-Treiber', + 'session_driver' => 'Sitzungs-Treiber', ], // Login form fields @@ -28,23 +30,28 @@ return [ 'login' => 'Username or Email', 'email' => 'Correo electrónico', 'password' => 'Contraseña', - '2fauth' => 'Código de Autenticación', - 'invalid' => 'Dirección de correo o contraseña incorrectos', - 'invalid-token' => 'Token inválido', - 'cookies' => 'Debes activar las cookies para poder entrar.', + '2fauth' => 'Authentifizierungscode', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Token ist ungültig', + 'cookies' => 'Sie müssen Cookies aktivieren um sich anzumelden.', ], // Incidents form fields 'incidents' => [ - 'name' => 'Nombre', - 'status' => 'Estado', - 'component' => 'Componente', - 'message' => 'Mensaje', - 'message-help' => 'También puedes usar Markdown.', - - 'templates' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Komponente', + 'message' => 'Nachricht', + 'message-help' => 'Sie können auch Markdown verwenden.', + 'scheduled_at' => 'Für wann ist die Wartung geplant?', + 'incident_time' => 'Wann ist dieser Vorfall aufgetreten?', + 'notify_subscribers' => 'Abonnenten benachrichtigen', + 'visibility' => 'Vorfall Sichtbarkeit', + 'public' => 'Öffentlich sichtbar', + 'logged_in_only' => 'Nur für angemeldete Benutzer sichtbar', + 'templates' => [ 'name' => 'Nombre', - 'template' => 'Plantilla', + 'template' => 'Vorlage', 'twig' => 'Incident Templates can make use of the Twig templating language.', ], ], @@ -53,31 +60,35 @@ return [ 'components' => [ 'name' => 'Nombre', 'status' => 'Estatus', - 'group' => 'Grupo', - 'description' => 'Descripción', - 'link' => 'Enlace', - 'tags' => 'Etiquetas', - 'tags-help' => 'Separado por comas.', + 'group' => 'Gruppe', + 'description' => 'Beschreibung', + 'link' => 'Link', + 'tags' => 'Schlagwörter', + 'tags-help' => 'Durch Kommata trennen.', 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Nombre', + 'name' => 'Nombre', + 'collapsed' => 'Collapse the group by default?', ], ], // Metric form fields 'metrics' => [ - 'name' => 'Nombre', - 'suffix' => 'Sufijo', - 'description' => 'Descripción', - 'description-help' => 'Puedes usar también Markdown.', - 'display-chart' => '¿Vizualizar gráfica en la página de estado?', - 'calc_type' => 'Cálculo de métricas', - 'type_sum' => 'Suma', - 'type_avg' => 'Media', + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Beschreibung', + 'description-help' => 'Sie können auch Markdown verwenden.', + 'display-chart' => 'Diagramm auf der Statusseite anzeigen?', + 'default-value' => 'Standardwert', + 'calc_type' => 'Berechnung der Metrik', + 'type_sum' => 'Summe', + 'type_avg' => 'Durchschnitt', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', 'points' => [ - 'value' => 'Valor', + 'value' => 'Wert', ], ], @@ -85,52 +96,66 @@ return [ 'settings' => [ /// Application setup 'app-setup' => [ - 'site-name' => 'Nombre del sitio', - 'site-url' => 'URL del sitio', - 'display-graphs' => '¿Visualizar gráficas en la página de estado?', - 'about-this-page' => 'Sobre esta página', - 'days-of-incidents' => '¿Cuántos días de incidentes mostrar?', - 'banner' => 'Imagen de inicio', - 'banner-help' => 'Se recomienda subir una imagen no más grande de 930px de ancho.', + 'site-name' => 'Seitenname', + 'site-url' => 'URL ihrer Seite', + 'display-graphs' => 'Graphen auf der Statusseite anzeigen?', + 'about-this-page' => 'Über diese Seite', + 'days-of-incidents' => 'Wie viele Tage mit Vorfällen sollen gezeigt werden?', + 'banner' => 'Banner', + 'banner-help' => "Es wird empfohlen, dass Sie keine Dateien die breiter als 930 Pixel sind hochladen .", + 'subscribers' => 'Personen die Anmeldung für E-Mail-Benachrichtigung erlauben?', ], 'analytics' => [ - 'analytics_google' => 'Código de Google Analytics', - 'analytics_gosquared' => 'Código de GoSquared Analytics', - 'analytics_piwik_url' => 'URL de tu instancia Piwik (sin http(s)://)', - 'analytics_piwik_siteid' => 'Id sitio Piwik', + 'analytics_google' => 'Google Analytics Code', + 'analytics_gosquared' => 'GoSquared Analytics Code', + 'analytics_piwik_url' => 'URL der Piwik-Instanz (ohne http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s Seiten-ID', ], 'localization' => [ - 'site-timezone' => 'Zona horaria del sitio', - 'site-locale' => 'Idioma del sitio', - 'date-format' => 'Formato de la fecha', - 'incident-date-format' => 'Incident Timestamp Format', + 'site-timezone' => 'Zeitzone ihrer Seite', + 'site-locale' => 'Sprache ihrer Seite', + 'date-format' => 'Datumsformat', + 'incident-date-format' => 'Vorfall Zeitstempel-Format', ], 'security' => [ - 'allowed-domains' => 'Dominios permitidos', - 'allowed-domains-help' => 'Separados por coma. El dominio establecido en la configuración del sitio formará automáticamente parte de los dominios permitidos.', + 'allowed-domains' => 'Erlaubte Domains', + 'allowed-domains-help' => 'Durch Kommata trennen. Die oben genannte Domain ist standardmäßig erlaubt.', ], 'stylesheet' => [ - 'custom-css' => 'Hoja de estilo personalizada', + 'custom-css' => 'Benutzerdefiniertes Stylesheet', ], 'theme' => [ - 'background-color' => 'Color de fondo', - 'text-color' => 'Color de Texto', - 'dashboard-login' => '¿Mostrar botón del panel en el pie?', + 'background-color' => 'Hintergrundfarbe', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Schriftfarbe', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Rojo (usado para errores)', + 'blues' => 'Azul (usado para información)', + 'greens' => 'Verde (usado para operaciones correctas)', + 'yellows' => 'Amarillo (usado para alertas)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Enlaces', ], ], 'user' => [ - 'username' => 'Nombre de usario', + 'username' => 'Benutzername', 'email' => 'Correo electrónico', 'password' => 'Contraseña', 'api-token' => 'API Token', - 'api-token-help' => 'Al regenerar tu API key revocarás todas las aplicaciones existentes.', + 'api-token-help' => 'Wenn sie ihren API-Token neu generieren, können bestehende Anwendungen nicht mehr auf Cachet zugreifen.', 'gravatar' => 'Change your profile picture at Gravatar.', - '2fa' => [ - 'help' => 'Habilitar autenticación de dos pasos aumenta la seguridad de tu cuenta. Necesitarás descargar Google Authenticator o una aplicación similar en tu dispositivo móvil. Al iniciar sesión te pedirá proporcionar un token generado por la aplicación.', + 'user_level' => 'Nivel de usuario', + 'levels' => [ + 'admin' => 'Administrador', + 'user' => 'Usuario', + ], + '2fa' => [ + 'help' => 'Die Zwei-Faktor-Authentifizierung erhöht die Sicherheit Ihres Kontos. Sie benötigen Google Authenticator oder eine ähnliche App auf Ihrem Mobilgerät. Beim Anmelden werden sie aufgefordert, einen Token einzugeben, der von der App generiert wird.', ], 'team' => [ 'description' => 'Invite your team members by entering their email addresses here.', @@ -139,16 +164,18 @@ return [ ], // Buttons - 'add' => 'Agregar', - 'save' => 'Guardar', - 'update' => 'Actualizar', - 'create' => 'Crear', - 'edit' => 'Editar', - 'delete' => 'Eliminar', - 'submit' => 'Enviar', - 'cancel' => 'Cancelar', - 'remove' => 'Remover', + 'add' => 'Hinzufügen', + 'save' => 'Speichern', + 'update' => 'Aktualisieren', + 'create' => 'Erstellen', + 'edit' => 'Bearbeiten', + 'delete' => 'Löschen', + 'submit' => 'Abschicken', + 'cancel' => 'Abbrechen', + 'remove' => 'Entfernen', + 'invite' => 'Invitar', + 'signup' => 'Registrarse', // Other - 'optional' => '* Opcional', + 'optional' => '* optional', ]; diff --git a/resources/lang/es/setup.php b/resources/lang/es/setup.php index 9b16bf2f..f8853b91 100755 --- a/resources/lang/es/setup.php +++ b/resources/lang/es/setup.php @@ -10,13 +10,14 @@ */ return [ - 'setup' => 'Configurar', - 'title' => 'Configurar Cachet', - 'service_details' => 'Detalles del servicio', - 'status_page_setup' => 'Configuración de la página de estado', - 'show_support' => '¿Mostrar tu apoyo a Cachet?', - 'admin_account' => 'Cuenta de administrador', - 'complete_setup' => 'Completar configuración', - 'completed' => '¡Cachet se ha configurado correctamente!', - 'finish_setup' => 'Ir a Panel de control', + 'setup' => 'Installation', + 'title' => 'Cachet installieren', + 'service_details' => 'Servicedetails', + 'env_setup' => 'Einrichtung der Systemumgebung', + 'status_page_setup' => 'Statusseite einrichten', + 'show_support' => 'Möchten Sie Cachet unterstützen?', + 'admin_account' => 'Administratorkonto', + 'complete_setup' => 'Installation abschließen', + 'completed' => 'Cachet wurde erfolgreich konfiguriert!', + 'finish_setup' => 'Zum Dashboard wechseln', ]; diff --git a/resources/lang/es/validation.php b/resources/lang/es/validation.php index d7cdb294..6905ddb6 100755 --- a/resources/lang/es/validation.php +++ b/resources/lang/es/validation.php @@ -22,67 +22,69 @@ return [ | */ - 'accepted' => 'El :attribute debe ser aceptado.', - 'active_url' => 'El :attribute no es un enlace válido.', - 'after' => 'El :attribute debe ser una fecha después de :date.', - 'alpha' => 'El :attribute sólo puede contener letras.', - 'alpha_dash' => 'El :attribute sólo puede contener letras, números y guiones.', - 'alpha_num' => 'El :attribute sólo puede contener letras y números.', - 'array' => 'El :attribute debe ser una matriz.', - 'before' => 'El :attribute debe ser una fecha antes de :date.', + 'accepted' => ':attribute muss akzeptiert werden.', + 'active_url' => ':attribute ist keine gültige Internet-Adresse.', + 'after' => ':attribute muss ein Datum nach dem :date sein.', + 'alpha' => ':attribute darf nur aus Buchstaben bestehen.', + 'alpha_dash' => ':attribute darf nur aus Buchstaben, Zahlen, Binde- und Unterstrichen bestehen. Umlaute (ä, ö, ü) und Eszett (ß) sind nicht erlaubt.', + 'alpha_num' => ':attribute darf nur aus Buchstaben, Zahlen, Binde- und Unterstrichen bestehen. Umlaute (ä, ö, ü) und Eszett (ß) sind nicht erlaubt.', + 'array' => ':attribute muss ein Array sein.', + 'before' => ':attribute muss ein Datum vor dem :date sein.', 'between' => [ - 'numeric' => 'El :attribute debe ser entre :min y :max.', - 'file' => 'El :attribute debe ser entre :min y :max kilobytes.', - 'string' => 'El :attribute debe tener entre :min y :max caracteres.', - 'array' => 'El :attribute debe tener entre :min y :max objetos.', + 'numeric' => ':attribute muss zwischen :min & :max liegen.', + 'file' => ':attribute muss zwischen :min & :max Kilobytes groß sein.', + 'string' => ':attribute muss zwischen :min & :max Zeichen lang sein.', + 'array' => ':attribute muss zwischen :min & :max Elemente haben.', ], - 'boolean' => 'El campo del :attribute debe ser verdadero o falso.', - 'confirmed' => 'La confirmación del :attribute no coincide.', - 'date' => 'El :attribute no es una fecha válida.', - 'date_format' => 'El :attribute no cumple el formato :format.', - 'different' => ':attribute y :other deben ser diferentes.', - 'digits' => 'El :attribute debe tener :digits dígitos.', - 'digits_between' => 'El :attribute debe tener entre: min y :max dígitos.', - 'email' => 'El :attribute debe ser una dirección de email válida.', - 'exists' => 'El :attribute seleccionado es inválido.', - 'image' => 'El :attribute debe ser una imagen.', + 'boolean' => ':attribute muss entweder \'true\' oder \'false\' sein.', + 'confirmed' => ':attribute stimmt nicht mit der Bestätigung überein.', + 'date' => ':attribute muss ein gültiges Datum sein.', + 'date_format' => ':attribute entspricht nicht dem gültigen Format für :format.', + 'different' => ':attribute und :other müssen sich unterscheiden.', + 'digits' => ':attribute muss :digits Stellen haben.', + 'digits_between' => ':attribute muss zwischen :min und :max Stellen haben.', + 'email' => ':attribute muss eine gültige E-Mail Adresse sein.', + 'exists' => 'Der gewählte Wert für :attribute ist ungültig.', + 'filled' => ':attribute muss ausgefüllt sein.', + 'image' => ':attribute muss ein Bild sein.', 'in' => 'El :attribute seleccionado es inválido.', - 'integer' => 'El :attribute debe ser un número entero.', - 'ip' => 'El :attribute debe ser una dirección IP válida.', + 'integer' => ':attribute muss eine ganze Zahl sein.', + 'ip' => ':attribute muss eine gültige IP-Adresse sein.', + 'json' => 'The :attribute must be a valid JSON string.', 'max' => [ - 'numeric' => 'El :attribute no puede tener más de :max.', - 'file' => 'El :attribute no puede tener más de :max kilobytes.', - 'string' => 'El :attribute no puede tener más de :max caracteres.', - 'array' => 'El :attribute no puede tener más de :max objetos.', + 'numeric' => ':attribute darf maximal :max sein.', + 'file' => ':attribute darf maximal :max Kilobytes groß sein.', + 'string' => ':attribute darf maximal :max Zeichen haben.', + 'array' => ':attribute darf nicht mehr als :max Elemente haben.', ], - 'mimes' => 'El :attribute debe ser un archivo de tipo: :values.', + 'mimes' => ':attribute muss den Dateityp :values haben.', 'min' => [ - 'numeric' => 'El :attribute debe tener al menos :min.', - 'file' => 'El :attribute debe tener al menos :min kilobytes.', - 'string' => 'El :attribute debe tener al menos :min characters.', - 'array' => 'El :attribute debe tener al menos :min objetos.', + 'numeric' => ':attribute muss mindestens :min sein.', + 'file' => ':attribute muss mindestens :min Kilobytes groß sein.', + 'string' => ':attribute muss mindestens :min Zeichen lang sein.', + 'array' => ':attribute muss mindestens :min Elemente haben.', ], 'not_in' => 'El :attribute seleccionado es inválido.', - 'numeric' => 'El :attribute sebe ser un número.', - 'regex' => 'El formato del :attribute es inválido.', - 'required' => 'El campo del :attribute es requerido.', - 'required_if' => 'El campo del :attribute se requiere cuando :other es :value.', + 'numeric' => ':attribute muss eine Zahl sein.', + 'regex' => ':attribute Format ist ungültig.', + 'required' => ':attribute muss ausgefüllt sein.', + 'required_if' => ':attribute muss ausgefüllt sein wenn :other :value ist.', 'required_unless' => 'The :attribute field is required unless :other is in :values.', - 'required_with' => 'El campo del :attribute se requiere cuando :values es presente.', + 'required_with' => ':attribute muss angegeben werden wenn :values ausgefüllt wurde.', 'required_with_all' => 'El campo del :attribute se requiere cuando :values es presente.', - 'required_without' => 'El campo del :attribute se requiere cuando :values no es presente.', - 'required_without_all' => 'El campo del :attribute se requiere cuando ninguno de los :values son presentes.', - 'same' => 'Los :attribute y :other deben coincidir.', + 'required_without' => ':attribute muss angegeben werden wenn :values nicht ausgefüllt wurde.', + 'required_without_all' => ':attribute muss angegeben werden wenn keines der Felder :values ausgefüllt wurde.', + 'same' => ':attribute und :other müssen übereinstimmen.', 'size' => [ - 'numeric' => 'El :attribute debe ser :size.', - 'file' => 'El :attribute debe ser :size kilobytes.', - 'string' => 'El :attribute debe tener :size caracteres.', - 'array' => 'El :attribute debe contener :size objetos.', + 'numeric' => ':attribute muss gleich :size sein.', + 'file' => ':attribute muss :size Kilobytes groß sein.', + 'string' => ':attribute muss :size Zeichen lang sein.', + 'array' => ':attribute muss :size Elemente beinhalten.', ], - 'string' => 'The :attribute must be a string.', - 'unique' => 'El :attribute ya ha sido usado.', + 'string' => ':attribute muss eine Zeichenfolge sein.', + 'timezone' => ':attribute muss eine gültige Zeitzone sein.', + 'unique' => ':attribute ist schon vergeben.', 'url' => 'El formato :attribute es inválido.', - 'timezone' => 'El :attribute debe ser una zona válida.', /* |-------------------------------------------------------------------------- @@ -97,7 +99,7 @@ return [ 'custom' => [ 'attribute-name' => [ - 'rule-name' => 'mensaje-personalizado', + 'rule-name' => 'Individuelle Nachricht', ], ], diff --git a/resources/lang/fa/cachet.php b/resources/lang/fa/cachet.php new file mode 100644 index 00000000..9a77a3d7 --- /dev/null +++ b/resources/lang/fa/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Operational', + 2 => 'Performance Issues', + 3 => 'Partial Outage', + 4 => 'Major Outage', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Scheduled Maintenance', + 'scheduled_at' => ', scheduled :timestamp', + 'status' => [ + 0 => 'Scheduled', // TODO: Hopefully remove this. + 1 => 'Investigating', + 2 => 'Identified', + 3 => 'Watching', + 4 => 'Fixed', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Regenerate API Key', + 'revoke' => 'Revoke API Key', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/fa/dashboard.php b/resources/lang/fa/dashboard.php new file mode 100644 index 00000000..4ed89d1d --- /dev/null +++ b/resources/lang/fa/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Incidents', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Scheduled Maintenance', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/fa/forms.php b/resources/lang/fa/forms.php new file mode 100644 index 00000000..c1945012 --- /dev/null +++ b/resources/lang/fa/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Username', + 'password' => 'Password', + 'site_name' => 'Site Name', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Password', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Component', + 'message' => 'Message', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site Name', + 'site-url' => 'Site URL', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/fa/pagination.php b/resources/lang/fa/pagination.php new file mode 100644 index 00000000..add1092a --- /dev/null +++ b/resources/lang/fa/pagination.php @@ -0,0 +1,28 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/fa/setup.php b/resources/lang/fa/setup.php new file mode 100644 index 00000000..044cf2e2 --- /dev/null +++ b/resources/lang/fa/setup.php @@ -0,0 +1,23 @@ + 'Setup', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/fa/validation.php b/resources/lang/fa/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/fa/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/fi/cachet.php b/resources/lang/fi/cachet.php new file mode 100644 index 00000000..a041a298 --- /dev/null +++ b/resources/lang/fi/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Toiminnassa', + 2 => 'Suorituskykyyn liittyviä ongelmia', + 3 => 'Osittainen sähkökatkos', + 4 => 'Merkittävä katkos', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Ei ilmoitettuja tapahtumia.', + 'past' => 'Aikaisemmat tapahtumat', + 'previous_week' => 'Edellinen viikko', + 'next_week' => 'Seuraava viikko', + 'none' => 'Ei ilmoitettuja tapahtumia.', + 'scheduled' => 'Määräaikaishuolto', + 'scheduled_at' => ', ajoitettu: aikaleima', + 'status' => [ + 0 => 'Ajoitettu', // TODO: Hopefully remove this. + 1 => 'Tutkitaan', + 2 => 'Tunnistettu', + 3 => 'Valvotaan', + 4 => 'Korjattu', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Luo API-avain', + 'revoke' => 'Peruuttaa API avain', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Viimeisen 12 tunnin', + 'weekly' => 'Viikko', + 'monthly' => 'Kuukausi', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Tilaa', + 'email' => [ + 'subscribe' => 'Tilaa email päivitykset.', + 'subscribed' => 'Olet tilannut sähköposti-ilmoitukset, tarkista sähköpostisi vahvistaaksesi tilauksen.', + 'verified' => 'Sinun sähköposti tilaus on vahvistettu. Kiitos!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Sähköpostitilauksesi on peruuttu.', + 'failure' => 'Jokin meni vikaan sähköpostitilauksen käsittelyssä.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Ole hyvä ja vahvista :app_name tilasivun sähköpostitilauksille.\n:link\nKiittäen, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Käyttäjätunnus', + 'email' => 'Sähköposti', + 'password' => 'Salasana', + 'success' => 'Tilisi on luotu.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Tilaa', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'Tietoa sivustosta', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/fi/dashboard.php b/resources/lang/fi/dashboard.php new file mode 100644 index 00000000..66526c8b --- /dev/null +++ b/resources/lang/fi/dashboard.php @@ -0,0 +1,251 @@ + 'Hallintanäkymä', + + // Incidents + 'incidents' => [ + 'title' => 'Tapahtumat & ajastaminen', + 'incidents' => 'Tapahtumat', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Luo mallipohja', + 'incident-templates' => 'Tapahtuma pohja', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Tapahtuma lisätty.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Tapahtuma päivitetty.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Tapahtuma pohja', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Mallipohja on luotu.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Ajastettu huolto', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Komponentit', + 'component_statuses' => 'Komponenttien tilat', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Mittarit', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Tilaajat', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Vahvistettu', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Tilaaja lisätty.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Tapahtui virhe päivitettäessä.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Ryhmä', + 'member' => 'Jäsen', + 'profile' => 'Profiili', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Ryhmän jäsen lisätty.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profiili päivitetty.', + 'failure' => 'Tapahtui virhe päivitettäessä.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Asetukset', + 'app-setup' => [ + 'app-setup' => 'Sovelluksen asetukset', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Turvallisuus', + 'two-factor' => 'Käyttäjät ilman kaksivaiheista todennusta', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Teema', + ], + 'edit' => [ + 'success' => 'Asetukset tallennettu.', + 'failure' => 'Asetuksia ei voitu tallentaa.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Kirjaudu', + 'logged_in' => 'Olet kirjautunut sisään.', + 'welcome' => 'Tervetuloa takaisin!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Tuki', + 'status_page' => 'Tila-sivu', + 'logout' => 'Kirjaudu ulos', + + // Notifications + 'notifications' => [ + 'notifications' => 'Ilmoitukset', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Muokkaa', + 'team' => 'Lisää käyttäjä', + 'api' => 'Luo API tunnus', + 'two-factor' => 'Kaksivaiheinen todennus', + ], + ], + +]; diff --git a/resources/lang/fi/forms.php b/resources/lang/fi/forms.php new file mode 100644 index 00000000..6e04a2e3 --- /dev/null +++ b/resources/lang/fi/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Sähköposti', + 'username' => 'Käyttäjätunnus', + 'password' => 'Salasana', + 'site_name' => 'Sivuston Nimi', + 'site_domain' => 'Sivuston verkkotunnus', + 'site_timezone' => 'Valitse aikavyöhykkeesi', + 'site_locale' => 'Valitse kielesi', + 'enable_google2fa' => 'Ota käyttöön Googlen kaksivaiheisen todennuksen', + 'cache_driver' => 'Välimuistin ajuri', + 'session_driver' => 'Istunnon ajuri', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Sähköposti', + 'password' => 'Salasana', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'Ota käyttöön evästeet kirjautuaksesi.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Nimi', + 'status' => 'Tila', + 'component' => 'Komponentti', + 'message' => 'Vesti', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'Milloin tämä tapaus tapahtui?', + 'notify_subscribers' => 'Ilmoita tilaajille?', + 'visibility' => 'Tapahtuman näkyvyys', + 'public' => 'Näytetään julkisesti', + 'logged_in_only' => 'Näytetään vain kirjautuneille käyttäjille', + 'templates' => [ + 'name' => 'Nimi', + 'template' => 'Malli', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Nimi', + 'status' => 'Tila', + 'group' => 'Ryhmä', + 'description' => 'Kuvaus', + 'link' => 'Linkki', + 'tags' => 'Tunnisteet', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Komponentti käytössä?', + + 'groups' => [ + 'name' => 'Nimi', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Nimi', + 'suffix' => 'Pääte', + 'description' => 'Kuvaus', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Oletusarvo', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Summa', + 'type_avg' => 'Keskiarvo', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Arvo', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Sivuston Nimi', + 'site-url' => 'Sivuston URL-osoite', + 'display-graphs' => 'Näyttää kaaviot tila-sivulla?', + 'about-this-page' => 'Tietoa tästä sivustosta', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Otsikkokuvan kuva', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Salli käyttäjien tilata sähköpostitilaukset?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics seurantakoodi', + 'analytics_gosquared' => 'GoSquared Analytics-koodi', + 'analytics_piwik_url' => 'URL Piwik hallintaan (ilman http(s)://)', + 'analytics_piwik_siteid' => 'Piwik sivun tunnus', + ], + 'localization' => [ + 'site-timezone' => 'Sivuston aikavyöhyke', + 'site-locale' => 'Sivuston kieli', + 'date-format' => 'Päivämäärän muoto', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Sallittu toimialueet', + 'allowed-domains-help' => 'Pilkulla erotettuna. Edellä olevat toimialueet sallitaan automaattisesti oletuksena.', + ], + 'stylesheet' => [ + 'custom-css' => 'Mukautettu tyylisivu', + ], + 'theme' => [ + 'background-color' => 'Taustaväri', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Tekstin väri', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Linkit', + ], + ], + + 'user' => [ + 'username' => 'Käyttäjätunnus', + 'email' => 'Sähköposti', + 'password' => 'Salasana', + 'api-token' => 'API tunnus', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'Käyttäjätaso', + 'levels' => [ + 'admin' => 'Ylläpito', + 'user' => 'Käyttäjä', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Kutsu ryhmääsi jäseniä antamalla heidän sähköpostiosoitteensa täällä.', + 'email' => 'Sähköposti #:id', + ], + ], + + // Buttons + 'add' => 'Lisää', + 'save' => 'Tallenna', + 'update' => 'Päivitä', + 'create' => 'Luo', + 'edit' => 'Muokkaa', + 'delete' => 'Poista', + 'submit' => 'Lähetä', + 'cancel' => 'Peruuta', + 'remove' => 'Poista', + 'invite' => 'Kutsu', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Valinnainen', +]; diff --git a/resources/lang/fi/pagination.php b/resources/lang/fi/pagination.php new file mode 100644 index 00000000..7122b4d3 --- /dev/null +++ b/resources/lang/fi/pagination.php @@ -0,0 +1,28 @@ + '« Edellinen', + 'next' => 'Seuraava »', + +]; diff --git a/resources/lang/fi/setup.php b/resources/lang/fi/setup.php new file mode 100644 index 00000000..e1ec8a24 --- /dev/null +++ b/resources/lang/fi/setup.php @@ -0,0 +1,23 @@ + 'Asetukset', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Sivun asetukset', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Järjestelmänvalvojantili', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Välimuisti on konfiguroitu onnistuneesti!', + 'finish_setup' => 'Siirry hallintapaneeliin', +]; diff --git a/resources/lang/fi/validation.php b/resources/lang/fi/validation.php new file mode 100644 index 00000000..bafffaca --- /dev/null +++ b/resources/lang/fi/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => ':attribute ei ole oikea URL-osoite.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/fr/cachet.php b/resources/lang/fr/cachet.php index b42f4bce..2979b552 100755 --- a/resources/lang/fr/cachet.php +++ b/resources/lang/fr/cachet.php @@ -1,4 +1,3 @@ - [ 'status' => [ - 1 => 'Opérationnel', - 2 => 'Problèmes de performances', - 3 => 'Panne partielle', - 4 => 'Panne majeure', + 1 => 'Funktionsfähig', + 2 => 'Leistungsprobleme', + 3 => 'Teilweiser Ausfall', + 4 => 'Schwerer Ausfall', ], ], @@ -28,14 +27,14 @@ return [ 'previous_week' => 'Semaine précédente', 'next_week' => 'Semaine suivante', 'none' => 'Aucun incident signalé.', - 'scheduled' => 'Maintenance Planifiée', - 'scheduled_at' => ', planifiée :timestamp', + 'scheduled' => 'Geplante Wartungen', + 'scheduled_at' => ', geplant :timestamp', 'status' => [ - 0 => 'Planifié', // TODO: Hopefully remove this. - 1 => 'Enquête en cours', - 2 => 'Identifié', - 3 => 'Analyse en cours', - 4 => 'Corrigé', + 0 => 'Geplant', // TODO: Hopefully remove this. + 1 => 'Untersuchungen laufen', + 2 => 'Identifiziert', + 3 => 'Unter Beobachtung', + 4 => 'Behoben', ], ], @@ -47,8 +46,8 @@ return [ ], 'api' => [ - 'regenerate' => 'Régénérer la clé API', - 'revoke' => 'Révoquer la clé API', + 'regenerate' => 'API-Schlüssel neu generieren', + 'revoke' => 'API-Schlüssel widerrufen', ], // Metrics @@ -64,30 +63,70 @@ return [ // Subscriber 'subscriber' => [ 'subscribe' => 'Abonnez-vous pour obtenir les dernières mises à jour.', - 'button' => 'S\'abonner', + 'button' => 'Abonnieren', 'email' => [ - 'subscribe' => 'S\'abonner aux mises à jour par courriel.', - 'subscribed' => 'Vous êtes abonné aux notifications par courriel, veuillez vérifier votre messagerie pour confirmer votre abonnement.', - 'verified' => 'Votre abonnement par courriel a été confirmé. Merci !', + 'subscribe' => 'Aktualisierungen per E-Mail abonnieren.', + 'subscribed' => 'Sie haben E-Mail-Benachrichtigungen abonniert, überprüfen Sie bitte Ihre E-Mail, um Ihr Abonnement zu bestätigen.', + 'verified' => 'Ihre E-Mail-Abonnement ist bestätigt worden. Danke!', 'unsubscribe' => 'Désinscription des mises à jour par courriel.', - 'unsubscribed' => 'Votre abonnement par courriel a été annulé.', - 'failure' => 'Quelque chose s\'est mal passé avec l\'abonnement.', + 'unsubscribed' => 'Ihre E-Mail-Abonnement wurde gekündigt.', + 'failure' => 'Etwas ist mit dem Abonnement schief gelaufen.', 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', 'verify' => [ - 'text' => "Veuillez confirmer votre abonnement par courriel aux mises à jour d'état de :app_name.\\n:link\\nMerci, :app_name", - 'html-preheader' => 'Veuillez confirmer votre abonnement par courriel aux mises à jour de :app_name.', - 'html' => '', + 'text' => "Bitte bestätigen Sie Ihre E-Mail-Abonnement zu :app_name Status-Aktualisierungen.\n:link\nDanke, :app_name", + 'html-preheader' => 'Bitte bestätigen Sie Ihre E-Mail-Abonnement zu :app_name Status-Aktualisierungen.', + 'html' => '

Bestätigen Sie bitte Ihr E-Mail-Abonnement für :app_name Statusaktualisierungen.

:link

Danke, :app_name

', ], 'maintenance' => [ - 'text' => 'Une nouvelle maintenance a été planifiée pour :app_name.\\nMerci, :app_name', - 'html-preheader' => 'Une nouvelle maintenance a été planifiée pour :app_name.', - 'html' => '', + 'text' => "Neue Wartung wurde für :app_name geplant.\nDanke, :app_name", + 'html-preheader' => 'Neue Wartung wurde für :app_name geplant.', + 'html' => '

Neue Wartung wurde für :app_name geplant.

', ], 'incident' => [ - 'text' => 'Un nouvel incident a été signalé sur : app_name.\\nMerci, :app_name', - 'html-preheader' => 'Un nouvel incident a été signalé sur : app_name.', - 'html' => '

Un nouvel incident a été signalé sur : app_name.

Merci, : app_name

', + 'text' => "Ein neuer Vorfall wurde auf :app_name berichtet.\nDanke, :app_name", + 'html-preheader' => 'Ein neuer Vorfall wurde über :app_name berichtet.', + 'html' => '

Ein neuer Vorfall wurde über :app_name berichtet.

Danke, :app_name

', ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "Vous avez été invité à la page de statut de l'équipe :app_name , veuillez suivre le lien suivant pour vous inscire \n:link\nMerci, :app_name", + 'html-preheader' => 'Vous avez été invité à rejoindre l\'équipe :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Inscription', + 'username' => 'Nom d\'utilisateur', + 'email' => 'Adresse email', + 'password' => 'Mot de passe ', + 'success' => 'Votre compte a été créé.', + 'failure' => 'Un problème est survenu lors de votre inscription.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Abonnieren', ], ], @@ -96,6 +135,6 @@ return [ 'about_this_site' => 'À propos du site', 'rss-feed' => 'RSS', 'atom-feed' => 'Atom', - 'feed' => 'Flux des statuts', + 'feed' => 'Status-Feed', ]; diff --git a/resources/lang/fr/dashboard.php b/resources/lang/fr/dashboard.php index 5c9df056..83b51256 100755 --- a/resources/lang/fr/dashboard.php +++ b/resources/lang/fr/dashboard.php @@ -30,19 +30,28 @@ return [ 'success' => 'Incident mis à jour.', 'failure' => 'Une erreur est survenue avec l\'incident.', ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], // Incident templates 'templates' => [ 'title' => 'Modèles d\'incident', 'add' => [ 'title' => 'Créer un modèle d\'incident', + 'message' => 'You should add an Incident Template.', 'success' => 'Modèle créé.', 'failure' => 'Une erreur est survenue avec le modèle d\'incident.', ], 'edit' => [ 'title' => 'Editer le Template', 'success' => 'Le modèle a été mis à jour !', - 'failure' => 'Une erreur est survenue avec la mise à jour le modèle d\'incident', + 'failure' => 'Une erreur est survenue lors de la mise à jour le modèle d\'incident', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', ], ], ], @@ -50,6 +59,7 @@ return [ // Incident Maintenance 'schedule' => [ 'schedule' => 'Maintenance planifiée', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', 'scheduled_at' => 'Planifiée à :timestamp', 'add' => [ 'title' => 'Ajouter une maintenance planifiée', @@ -62,16 +72,16 @@ return [ 'failure' => 'Une erreur est survenue lors de l\'édition de la planification.', ], 'delete' => [ - 'success' => 'Cette planification a été supprimée et ne sera pas affichée sur votre page de statut.', - 'failure' => 'Cette planification n\'a pas pu être supprimée. Veuillez réessayer.', + 'success' => 'La planification a été supprimée et ne sera pas affichée sur votre page de statut.', + 'failure' => 'La planification n\'a pas pu être supprimée. Veuillez réessayer.', ], ], // Components 'components' => [ 'components' => 'Composants', - 'component_statuses' => 'Statuts des composant', - 'listed_group' => 'Groupés dans : nom', + 'component_statuses' => 'Statut des composants', + 'listed_group' => 'Groupés par : nom', 'add' => [ 'title' => 'Ajouter un composant', 'message' => 'Vous devez ajouter un composant.', @@ -83,14 +93,18 @@ return [ 'success' => 'Composant mis à jour.', 'failure' => 'Une erreur est survenue avec le composant.', ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], // Component groups 'groups' => [ - 'groups' => 'Groupes de composants', + 'groups' => 'Groupe de composants|Groupes de composants', 'no_components' => 'Vous devez ajouter un groupe de composants.', 'add' => [ 'title' => 'Ajouter un groupe de composants', - 'success' => 'Groupe composant ajouté.', + 'success' => 'Groupe de composants ajouté.', 'failure' => 'Une erreur est survenue avec le groupe de composants.', ], 'edit' => [ @@ -98,6 +112,10 @@ return [ 'success' => 'Groupe de composants mis à jour.', 'failure' => 'Un problème est survenu avec le groupe de composants.', ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], ], ], @@ -106,6 +124,7 @@ return [ 'metrics' => 'Métriques', 'add' => [ 'title' => 'Créer un indicateur', + 'message' => 'You should add a Metric.', 'success' => 'Métrique créé.', 'failure' => 'Un problème est survenu avec cet indicateur.', ], @@ -114,12 +133,16 @@ return [ 'success' => 'Indicateur mise à jour.', 'failure' => 'Un problème est survenu avec cet indicateur.', ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], ], // Subscribers 'subscribers' => [ 'subscribers' => 'Abonnés', - 'description' => 'Les abonnés receveront un courriel lors de la création d\'incident.', - 'verified' => 'Vérifié', + 'description' => 'Les abonnés reçoivent des notifications par email lorsque des incidents sont créés.', + 'verified' => 'Vérifié ', 'not_verified' => 'Non vérifié', 'add' => [ 'title' => 'Ajouter un abonné', @@ -127,18 +150,18 @@ return [ 'failure' => 'Une erreur est survenue avec le composant.', ], 'edit' => [ - 'title' => 'Mettre à jour un abonné', + 'title' => 'Mettre à jour l\'abonné', 'success' => 'Abonné mis à jour.', - 'failure' => 'Une erreur est survenue lors de l\'actualisation.', + 'failure' => 'Une erreur est survenue lors de la mise à jour.', ], ], // Team 'team' => [ 'team' => 'Equipe', - 'member' => 'Utilisateur', + 'member' => 'Membre', 'profile' => 'Profil utilisateur', - 'description' => 'Membres de l\'équipe sera en mesure d\'ajouter, de modifier et de modifier les composants et les incidents.', + 'description' => 'Les membres de l\'équipe pourront ajouter & modifier les composants et les incidents.', 'add' => [ 'title' => 'Ajouter un nouveau membre de l\'équipe', 'success' => 'Membre de l\'équipe a ajouté.', @@ -147,11 +170,16 @@ return [ 'edit' => [ 'title' => 'Mettre le Profil à Jour', 'success' => 'Profil mis à jour.', - 'failure' => 'Une erreur est survenue lors de l\'actualisation.', + 'failure' => 'Une erreur est survenue lors de la mise à jour.', ], 'delete' => [ - 'success' => 'Profil supprimé', - 'failure' => 'Une erreur est survenue lors de la suppression.', + 'success' => 'Utilisateur supprimé.', + 'failure' => 'Une erreur s\'est produite lors de la suppression de l\'utilisateur.', + ], + 'invite' => [ + 'title' => 'Inviter un nouveau membre d\'équipe', + 'success' => 'The users invited.', + 'failure' => 'Un problème est survenu avec cette invitation.', ], ], @@ -207,15 +235,15 @@ return [ // Welcome modal 'welcome' => [ - 'welcome' => 'Bienvenue sur Cachet', - 'message' => 'Votre page de statut est presque prêt ! Vous pouvez configurer ces paramètres supplémentaires', - 'close' => 'Il suffit d\'aller directement à mon tableau de bord', + 'welcome' => 'Welcome to your status page!', + 'message' => 'Votre page de statut est presque prête ! Vous pouvez configurer ces paramètres supplémentaires', + 'close' => 'Aller directement au tableau de bord', 'steps' => [ 'component' => 'Créer des composants', 'incident' => 'Créer des incidents', 'customize' => 'Personnaliser', 'team' => 'Ajouter des utilisateurs', - 'api' => 'Générer un jeton pour l\'API', + 'api' => 'Générer un jeton d\'API', 'two-factor' => 'Authentification à deux facteurs', ], ], diff --git a/resources/lang/fr/forms.php b/resources/lang/fr/forms.php index 0118276c..d4ea5892 100755 --- a/resources/lang/fr/forms.php +++ b/resources/lang/fr/forms.php @@ -18,9 +18,9 @@ return [ 'password' => 'Mot de passe ', 'site_name' => 'Nom du site', 'site_domain' => 'Nom de domaine du site', - 'site_timezone' => 'Choisissez un fuseau horaire', - 'site_locale' => 'Choisir la langue', - 'enable_google2fa' => 'Activez l\'authentification à deux facteurs Google', + 'site_timezone' => 'Choisissez votre fuseau horaire', + 'site_locale' => 'Choisissez votre langue', + 'enable_google2fa' => 'Activez la validation en deux étapes Google', 'cache_driver' => 'Pilote de cache', 'session_driver' => 'Pilote de session', ], @@ -31,7 +31,7 @@ return [ 'email' => 'Email', 'password' => 'Mot de passe ', '2fauth' => 'Code d\'authentification', - 'invalid' => 'E-mail ou mot de passe non valide', + 'invalid' => 'Invalid username or password', 'invalid-token' => 'Jeton non valide', 'cookies' => 'Vous devez activer les cookies pour vous identifier.', ], @@ -51,7 +51,7 @@ return [ 'logged_in_only' => 'Uniquement visible des utilisateurs enregistrés', 'templates' => [ 'name' => 'Nom', - 'template' => 'Modéle', + 'template' => 'Modèle', 'twig' => 'Incident Templates can make use of the Twig templating language.', ], ], @@ -60,15 +60,16 @@ return [ 'components' => [ 'name' => 'Nom', 'status' => 'Etat', - 'group' => 'Groupes', + 'group' => 'Groupe', 'description' => 'Description', 'link' => 'Lien', 'tags' => 'Mots clés', - 'tags-help' => 'séparé par des virgules.', + 'tags-help' => 'Séparés par des virgules.', 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Nom', + 'name' => 'Nom', + 'collapsed' => 'Collapse the group by default?', ], ], @@ -83,6 +84,8 @@ return [ 'calc_type' => 'Calcul des données', 'type_sum' => 'Somme', 'type_avg' => 'Moyenne', + 'places' => 'Nombre de chiffres après la virgule', + 'default_view' => 'Default View', 'points' => [ 'value' => 'Valeur', @@ -97,10 +100,10 @@ return [ 'site-url' => 'Url du site', 'display-graphs' => 'Afficher les graphiques sur la page de status ?', 'about-this-page' => 'À propos de cette page', - 'days-of-incidents' => 'Combien de jours d\'incidents à montrer?', - 'banner' => 'Image de la bannière', - 'banner-help' => 'Il est recommandé que vous téléchargez des fichiers ne dépassant pas les 930px large .', - 'subscribers' => 'Permettre aux gens de s\'inscrire aux notifications par courrier électronique ?', + 'days-of-incidents' => 'Combien de jours d\'incidents à montrer ?', + 'banner' => 'Image d\'en-tête', + 'banner-help' => "Il est recommandé de téléchargez un fichier ne dépassant pas 930px de large .", + 'subscribers' => 'Permettre aux gens de s\'inscrire aux notifications par email ?', ], 'analytics' => [ 'analytics_google' => 'Code de Google Analytics', @@ -123,10 +126,19 @@ return [ ], 'theme' => [ 'background-color' => 'Couleur de fond', - 'text-color' => 'Couleur Texte', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Couleur Texte', + 'dashboard-login' => 'Afficher le bouton "Tableau de bord" dans le pied de page ?', + 'reds' => 'Rouge (utilisé pour les erreurs)', + 'blues' => 'Bleu (utilisé pour les informations)', + 'greens' => 'Vert (utilisé pour les succès)', + 'yellows' => 'Jaune (utilisé pour les alertes)', + 'oranges' => 'Orange (utilisé pour les notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Liens', ], ], @@ -137,7 +149,12 @@ return [ 'api-token' => 'Jeton de l\'API', 'api-token-help' => 'Régénérer votre jeton API permettra d\'éviter les applications existantes d\'accéder à Cachet.', 'gravatar' => 'Change your profile picture at Gravatar.', - '2fa' => [ + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'Utilisateur', + ], + '2fa' => [ 'help' => 'Habilitante authentification à deux facteurs augmente la sécurité de votre compte. Vous aurez besoin de télécharger Google Authenticator ou une application similaire sur votre appareil mobile. Lorsque vous vous connectez vous sera demandé de fournir un jeton généré par l\'application.', ], 'team' => [ @@ -147,7 +164,7 @@ return [ ], // Buttons - 'add' => 'Ajouter catégorie', + 'add' => 'Ajouter', 'save' => 'Enregistrer', 'update' => 'mettre à jour', 'create' => 'Nouveau', @@ -156,6 +173,8 @@ return [ 'submit' => 'ENVOYER', 'cancel' => 'Annuler', 'remove' => 'Enlever', + 'invite' => 'Inviter', + 'signup' => 'Inscription', // Other 'optional' => '* En option', diff --git a/resources/lang/fr/setup.php b/resources/lang/fr/setup.php index bed07f30..96d69e71 100755 --- a/resources/lang/fr/setup.php +++ b/resources/lang/fr/setup.php @@ -15,7 +15,7 @@ return [ 'service_details' => 'Détails du service', 'env_setup' => 'Configuration de l\'environnement', 'status_page_setup' => 'Configuration de la page de statut', - 'show_support' => 'Afficher votre soutien à Cachet?', + 'show_support' => 'Afficher votre soutien à Cachet ?', 'admin_account' => 'Compte administrateur', 'complete_setup' => 'Terminer la configuration', 'completed' => 'Cachet a été configuré avec succès !', diff --git a/resources/lang/fr/validation.php b/resources/lang/fr/validation.php index 2af1467b..ed953909 100755 --- a/resources/lang/fr/validation.php +++ b/resources/lang/fr/validation.php @@ -45,10 +45,12 @@ return [ 'digits_between' => ':attribute doit être entre :min et :max chiffres.', 'email' => ':attribute doit être une adresse électronique valide.', 'exists' => 'Le champ :attribute sélectionné est invalide.', + 'filled' => 'Le champ :attribute est requis.', 'image' => ':attribute doit être une image.', 'in' => 'Le champ :attribute sélectionné est invalide.', 'integer' => ':attribute doit être un entier.', 'ip' => ':attribute doit être une adresse IP valide.', + 'json' => 'The :attribute must be a valid JSON string.', 'max' => [ 'numeric' => ':attribute ne doit pas être plus grand que :max.', 'file' => 'attribute ne doit pas être plus grand que :max kilo-octets.', @@ -80,9 +82,9 @@ return [ 'array' => 'attribute doit contenir :size éléments.', ], 'string' => ':attribute doit être une chaîne.', + 'timezone' => ':attribute doit être une zone valide.', 'unique' => ':attribute a déjà été pris.', 'url' => 'Le format de :attribute n\'est pas valide.', - 'timezone' => ':attribute doit être une zone valide.', /* |-------------------------------------------------------------------------- diff --git a/resources/lang/he/cachet.php b/resources/lang/he/cachet.php new file mode 100644 index 00000000..c55c0882 --- /dev/null +++ b/resources/lang/he/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Operational', + 2 => 'בעיות ביצועים', + 3 => 'Partial Outage', + 4 => 'Major Outage', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'תחזוקה מתוזמנת', + 'scheduled_at' => ', scheduled :timestamp', + 'status' => [ + 0 => 'מתוזמן', // TODO: Hopefully remove this. + 1 => 'Investigating', + 2 => 'מזוהה', + 3 => 'צופה', + 4 => 'תוקן', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'צור מפתח API', + 'revoke' => 'לבטל את מפתח ה-API', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'כתובת דוא"ל', + 'password' => 'סיסמא', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/he/dashboard.php b/resources/lang/he/dashboard.php new file mode 100644 index 00000000..01fa1387 --- /dev/null +++ b/resources/lang/he/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'אירועים', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'תבנית נוצרה.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'תחזוקה מתוזמנת', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'רכיבים', + 'component_statuses' => 'רכיב סטטוסים', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'רכיב נוצר.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'מדדים', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'מדד נוצר.', + 'failure' => 'משהו השתבש עם המדד.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'משהו השתבש עם המדד.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'אבטחה', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'ערכת נושא', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'התחברות למערכת', + 'logged_in' => 'אתה מחובר.', + 'welcome' => 'ברוך הבא!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'עזרה', + 'status_page' => 'Status Page', + 'logout' => 'יציאה', + + // Notifications + 'notifications' => [ + 'notifications' => 'התראות', + 'awesome' => 'נהדר.', + 'whoops' => 'אופס.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'הוסף משתמשים', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/he/forms.php b/resources/lang/he/forms.php new file mode 100644 index 00000000..3eaa909e --- /dev/null +++ b/resources/lang/he/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'כתובת דוא"ל', + 'username' => 'שם משתמש', + 'password' => 'סיסמא', + 'site_name' => 'שם האתר', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'בחר איזור זמן', + 'site_locale' => 'בחר שפה', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'כתובת דוא"ל', + 'password' => 'סיסמא', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'שם', + 'status' => 'סטטוס', + 'component' => 'Component', + 'message' => 'הודעה', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'למתי לתזמן את התחזוקה?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'שם', + 'template' => 'תבנית', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'שם', + 'status' => 'סטטוס', + 'group' => 'קבוצה', + 'description' => 'הגדרה', + 'link' => 'קישור', + 'tags' => 'טאגים', + 'tags-help' => 'מופרד באמצעות פסיקים.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'שם', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'שם', + 'suffix' => 'סיומת', + 'description' => 'הגדרה', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'ערך', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'שם האתר', + 'site-url' => 'כתובת url של האתר', + 'display-graphs' => 'להציג גרפים בדף של סטטוס?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'כמה ימים של אירועים להראות?', + 'banner' => 'תמונת הבאנר', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'כתובת דוא"ל', + 'password' => 'סיסמא', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/he/pagination.php b/resources/lang/he/pagination.php new file mode 100644 index 00000000..3d774e3f --- /dev/null +++ b/resources/lang/he/pagination.php @@ -0,0 +1,28 @@ + 'קודם', + 'next' => 'הבא', + +]; diff --git a/resources/lang/he/setup.php b/resources/lang/he/setup.php new file mode 100644 index 00000000..a281bb1d --- /dev/null +++ b/resources/lang/he/setup.php @@ -0,0 +1,23 @@ + 'הגדרות', + 'title' => 'התקנת Cachet', + 'service_details' => 'פרטי שרות', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'הגדרת עמוד מצב', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'חשבון מנהל המערכת', + 'complete_setup' => 'התקנה הסתיימה', + 'completed' => 'Cachet הוגדר בהצלחה!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/he/validation.php b/resources/lang/he/validation.php new file mode 100644 index 00000000..b6f30bd5 --- /dev/null +++ b/resources/lang/he/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'attribute: אינו כתובת URL חוקית.', + 'after' => 'attribute: חייב להיות תאריך אחרי date:', + 'alpha' => 'attribute: יכולים להכיל רק אותיות.', + 'alpha_dash' => 'attribute: יכולה להכיל רק אותיות, מספרים, מקפים.', + 'alpha_num' => 'attribute: יכולים להכיל רק אותיות ומספרים.', + 'array' => 'attribute: חייב להיות מערך.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'attribute: חייב להיות בין min: ו max:', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'שדה attribute: חייב להיות true או false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'attribute: אינו תאריך חוקי.', + 'date_format' => 'The :attribute does not match the format :format.', + 'different' => 'The :attribute and :other must be different.', + 'digits' => 'attribute: חייב להיות digits: ספרות.', + 'digits_between' => 'The :attribute must be between :min and :max digits.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'attribute: חייב להיות תמונה.', + 'in' => 'attribute: הנבחר אינו חוקית.', + 'integer' => 'attribute: צריכה להיות מספר שלם.', + 'ip' => 'attribute: חייב להיות כתובת IP חוקית.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'attribute: הנבחר אינו חוקי.', + 'numeric' => 'attribute: חייב להיות מספר.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'attribute: חייב להיות size:', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/hu/cachet.php b/resources/lang/hu/cachet.php new file mode 100644 index 00000000..e3823f58 --- /dev/null +++ b/resources/lang/hu/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Működik', + 2 => 'Teljesítmény problémák', + 3 => 'Részleges leállás', + 4 => 'Teljes leállás', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Ütemezett karbantartás', + 'scheduled_at' => ', ütemezett :timestamp', + 'status' => [ + 0 => 'Ütemezett', // TODO: Hopefully remove this. + 1 => 'Kivizsgálás', + 2 => 'Azonosítva', + 3 => 'Megfigyelés', + 4 => 'Javítva', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'API kulcs újragenerálása', + 'revoke' => 'API kulcs visszavonása', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Feliratkozás', + 'email' => [ + 'subscribe' => 'Feliratkozás e-mail értesítésekre.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Felhasználónév', + 'email' => 'E-mail cím', + 'password' => 'Jelszó', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Feliratkozás', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Státusz Feed', + +]; diff --git a/resources/lang/hu/dashboard.php b/resources/lang/hu/dashboard.php new file mode 100644 index 00000000..db2054ec --- /dev/null +++ b/resources/lang/hu/dashboard.php @@ -0,0 +1,251 @@ + 'Műszerfal', + + // Incidents + 'incidents' => [ + 'title' => 'Incidensek & Ütemezés', + 'incidents' => 'Incidensek', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Sablon létrehozása', + 'incident-templates' => 'Incidens Sablonok', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incidens létrehozva.', + 'failure' => 'Hiba történt az incidens létrehozása során.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incidens frissítve.', + 'failure' => 'Hiba történt az incidens szerkesztése során.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incidens Sablonok', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Sablon létrehozva.', + 'failure' => 'Hiba történt az incidens sablon létrehozása során.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Sablon frissítve!', + 'failure' => 'Hiba történt az incidens sablon szerkesztése során', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Ütemezett Karbantartás', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/hu/forms.php b/resources/lang/hu/forms.php new file mode 100644 index 00000000..1bb6db83 --- /dev/null +++ b/resources/lang/hu/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'E-mail cím', + 'username' => 'Felhasználónév', + 'password' => 'Jelszó', + 'site_name' => 'Webhely neve', + 'site_domain' => 'Webhely címe', + 'site_timezone' => 'Időzóna kiválasztása', + 'site_locale' => 'Nyelv kiválasztása', + 'enable_google2fa' => 'Google Two Factor Authentication engedélyezése', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'E-mail cím', + 'password' => 'Jelszó', + '2fauth' => 'Hitelesítési kód', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Érvénytelen kulcs', + 'cookies' => 'A bejelentkezéshez engedélyezni kell a sütiket.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Név', + 'status' => 'Státusz', + 'component' => 'Komponens', + 'message' => 'Üzenet', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Név', + 'template' => 'Sablon', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Név', + 'status' => 'Státusz', + 'group' => 'Csoport', + 'description' => 'Leírás', + 'link' => 'Link', + 'tags' => 'Cimkék', + 'tags-help' => 'Vesszővel elválasztva.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Név', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Név', + 'suffix' => 'Szuffixum', + 'description' => 'Leírás', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Összeg', + 'type_avg' => 'Átlag', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Érték', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Webhely neve', + 'site-url' => 'Webhely címe', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Felhasználónév', + 'email' => 'E-mail cím', + 'password' => 'Jelszó', + 'api-token' => 'API Kulcs', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Hozzáadás', + 'save' => 'Mentés', + 'update' => 'Módosít', + 'create' => 'Létrehoz', + 'edit' => 'Szerkeszt', + 'delete' => 'Törlés', + 'submit' => 'Elküld', + 'cancel' => 'Mégsem', + 'remove' => 'Törlés', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Opcionális', +]; diff --git a/resources/lang/hu/pagination.php b/resources/lang/hu/pagination.php new file mode 100644 index 00000000..97574427 --- /dev/null +++ b/resources/lang/hu/pagination.php @@ -0,0 +1,28 @@ + '«Előző', + 'next' => 'Következő »', + +]; diff --git a/resources/lang/hu/setup.php b/resources/lang/hu/setup.php new file mode 100644 index 00000000..0afb9c63 --- /dev/null +++ b/resources/lang/hu/setup.php @@ -0,0 +1,23 @@ + 'Telepítés', + 'title' => 'Cachet telepítése', + 'service_details' => 'A szolgáltatás részletei', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Állapotoldal beállítás', + 'show_support' => 'Cachet támogató link megjelenítése?', + 'admin_account' => 'Adminisztrátori fiók', + 'complete_setup' => 'Telepítés befejezése', + 'completed' => 'A Cachet telepítése sikeresen befejeződött!', + 'finish_setup' => 'Használat megkezdése', +]; diff --git a/resources/lang/hu/validation.php b/resources/lang/hu/validation.php new file mode 100644 index 00000000..9aefc685 --- /dev/null +++ b/resources/lang/hu/validation.php @@ -0,0 +1,119 @@ + ':attribute el kell fogadni.', + 'active_url' => ':attribute nem érvényes URL.', + 'after' => ':attribute csak :date utáni dátum lehet.', + 'alpha' => ':attribute csak betűket tartalmazhat.', + 'alpha_dash' => ':attribute csak betűket, számokat és kötőjelet tartalmazhat.', + 'alpha_num' => ':attribute csak betűket és számokat tartalmazhat.', + 'array' => ':attribute csak tömb típusú lehet.', + 'before' => ':attribute csak :date előtti dátum lehet.', + 'between' => [ + 'numeric' => ':attribute csak :min és :max közötti lehet.', + 'file' => ':attribute csak :min és :max kilobyte közötti lehet.', + 'string' => ':attribute csak :min és :max karakterszám közötti lehet.', + 'array' => ':attribute csak :min és :max elem közötti lehet.', + ], + 'boolean' => ':attribute csak igaz vagy hamis lehet.', + 'confirmed' => ':attribute megerősítése nem egyezik.', + 'date' => ':attribute nem érvényes dátum.', + 'date_format' => ':attribute formátuma csak :format lehet.', + 'different' => ':attribute és :other csak különbözőek lehetnek.', + 'digits' => ':attribute csak :digits számjegy lehet.', + 'digits_between' => ':attribute csak :min és :max között számjegy lehet.', + 'email' => ':attribute csak érvényes e-mail cím lehet.', + 'exists' => 'A kiválasztott :attribute érvénytelen.', + 'filled' => ':attribute mező kitöltése kötelező.', + 'image' => ':attribute csak kép lehet.', + 'in' => 'A kiválasztott :attribute érvénytelen.', + 'integer' => ':attribute csak szám lehet.', + 'ip' => ':attribute csak érvényes IP cím lehet.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => ':attribute nem lehet nagyobb, mint :max.', + 'file' => ':attribute nem lehet nagyobb, mint :max kilobyte.', + 'string' => ':attribute nem lehet hosszabb, mint :max karakter.', + 'array' => ':attribute nem lehet több, mint :max elem.', + ], + 'mimes' => ':attribute csak :values fájltípus lehet.', + 'min' => [ + 'numeric' => ':attribute nem lehet kevesebb, mint :min.', + 'file' => ':attribute nem lehet kevesebb, mint :min kilobyte.', + 'string' => ':attribute nem lehet kevesebb, mint :min karakter.', + 'array' => ':attribute nem lehet kevesebb, mint :min elem.', + ], + 'not_in' => 'A kiválasztott :attribute érvénytelen.', + 'numeric' => ':attribute csak szám lehet.', + 'regex' => ':attribute formátuma érvénytelen.', + 'required' => ':attribute mező kitöltése kötelező.', + 'required_if' => ':attribute mező kitöltése kötelező, ha :other mező értéke :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => ':attribute mező kitöltése kötelező, ha az értéke :values.', + 'required_with_all' => ':attribute mező kitöltése kötelező, ha az értéke :values.', + 'required_without' => ':attribute mező kitöltése kötelező, ha az értéke nem :values.', + 'required_without_all' => ':attribute mező kitöltése kötelező, ha az értéke nem :values.', + 'same' => ':attribute és :other meg kell egyezzen.', + 'size' => [ + 'numeric' => ':attribute csak :size méretű lehet.', + 'file' => ':attribute csak :size kilobyte méretű lehet.', + 'string' => ':attribute csak :size karakter lehet.', + 'array' => ':attribute tartalmaznia kell :size elemeit.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => ':attribute csak érvényes zóna lehet.', + 'unique' => ':attribute már létezik.', + 'url' => ':attribute formátuma érvénytelen.', + + /* + |-------------------------------------------------------------------------- + | 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' => 'Egyéni üzenet', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/id/cachet.php b/resources/lang/id/cachet.php index 40cf14ac..bdcaa297 100755 --- a/resources/lang/id/cachet.php +++ b/resources/lang/id/cachet.php @@ -73,20 +73,61 @@ return [ 'failure' => 'Ada yang salah dengan sistem langganan email.', 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', 'verify' => [ - 'text' => 'Mohon konfirmasi langganan email update status :app_name.\\n:link\\nTerima kasih.', + 'text' => "Mohon konfirmasi langganan email update status :app_name.\n:link\nTerima kasih, +:app_name", 'html-preheader' => 'Mohon konfirmasi langganan email update status :app_name.', - 'html' => '', + 'html' => '

Mohon konfirmasi langganan email anda ke: app_name status update.

: link

Terima kasih,: app_name

', ], 'maintenance' => [ - 'text' => 'Jadwal pemeliharaan baru sudah dibuat di :app_name.\\nTerima kasih, :app_name', + 'text' => "Jadwal pemeliharaan baru sudah dibuat di :app_name.\nTerima kasih, :app_name", 'html-preheader' => 'Jadwal pemeliharaan baru sudah dibuat di :app_name.', - 'html' => '', + 'html' => '

Pemeliharaan baru telah dijadwalkan pada: app_name.

', ], 'incident' => [ - 'text' => 'Ada insiden baru yang dilaporkan di :app_name.\\n Terima kasih, :app_name', + 'text' => "Ada insiden baru yang dilaporkan di :app_name.\n Terima kasih, :app_name", 'html-preheader' => 'Ada insiden baru yang dilaporkan di :app_name.', 'html' => '

Ada insiden baru yang dilaporkan di :app_name.

Terima kasih, :app_name

', ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "Anda diundang dalam tim Halaman Status :app_name, untuk mendaftar silakan klik tautan berikut \n:link\nTerima kasih, :app_name", + 'html-preheader' => 'Anda diundang dalam tim :app_name.', + 'html' => '

Anda diundang dalam tim Halaman Status :app_name, untuk mendaftar silakan klik tautan berikut.

:link

Terima kasih, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Daftar', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Akun anda berhasil dibuat.', + 'failure' => 'Ada masalah dalam pendaftaran.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Daftar', ], ], diff --git a/resources/lang/id/dashboard.php b/resources/lang/id/dashboard.php index a635a600..748d3579 100755 --- a/resources/lang/id/dashboard.php +++ b/resources/lang/id/dashboard.php @@ -30,12 +30,17 @@ return [ 'success' => 'Insiden sudah diperbarui.', 'failure' => 'Ada masalah dengan insiden ini.', ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], // Incident templates 'templates' => [ 'title' => 'Template Insiden', 'add' => [ 'title' => 'Buat template insiden', + 'message' => 'You should add an Incident Template.', 'success' => 'Template sudah dibuat.', 'failure' => 'Ada masalah dengan template insiden ini.', ], @@ -44,12 +49,17 @@ return [ 'success' => 'Template sudah diperbarui!', 'failure' => 'Ada masalah dengan template insiden ini', ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], ], ], // Incident Maintenance 'schedule' => [ 'schedule' => 'Jadwal Pemeliharaan', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', 'scheduled_at' => 'Dijadwalkan pada :timestamp', 'add' => [ 'title' => 'Tambahkan Jadwal Pemeliharaan', @@ -83,6 +93,10 @@ return [ 'success' => 'Komponen sudah diperbarui.', 'failure' => 'Ada masalah dengan komponen ini.', ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], // Component groups 'groups' => [ @@ -98,6 +112,10 @@ return [ 'success' => 'Grup komponen sudah diperbarui.', 'failure' => 'Ada masalah dengan grup komponen ini.', ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], ], ], @@ -106,6 +124,7 @@ return [ 'metrics' => 'Metrik', 'add' => [ 'title' => 'Buat metrik', + 'message' => 'You should add a Metric.', 'success' => 'Metrik sudah dibuat.', 'failure' => 'Ada masalah dengan metrik ini.', ], @@ -114,22 +133,26 @@ return [ 'success' => 'Metrik sudah diperbarui.', 'failure' => 'Ada masalah dengan metrik ini.', ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], ], // Subscribers 'subscribers' => [ - 'subscribers' => '', - 'description' => '', - 'verified' => '', - 'not_verified' => '', + 'subscribers' => 'Berlangganan', + 'description' => 'Pelanggan email akan menerima update ketika insiden dibuat.', + 'verified' => 'Terverifikasi', + 'not_verified' => 'Belum Diverifikasi', 'add' => [ - 'title' => '', - 'success' => '', - 'failure' => '', + 'title' => 'Tambah Pelanggan Baru', + 'success' => 'Pelanggan sudah ditambahkan.', + 'failure' => 'Ada masalah dengan komponen ini.', ], 'edit' => [ - 'title' => '', - 'success' => '', - 'failure' => '', + 'title' => 'Perbarui Pelanggan', + 'success' => 'Pelanggan sudah diupdate.', + 'failure' => 'Ada masalah saat memperbarui.', ], ], @@ -150,8 +173,13 @@ return [ 'failure' => 'Ada masalah saat memperbarui.', ], 'delete' => [ - 'success' => '', - 'failure' => '', + 'success' => 'Pengguna sudah dihapus.', + 'failure' => 'Ada yang tidak beres saat menghapus pengguna ini.', + ], + 'invite' => [ + 'title' => 'Undang Anggota Tim Baru', + 'success' => 'Pengguna sudah diundang.', + 'failure' => 'Ada masalah dengan sistem undangan.', ], ], @@ -207,7 +235,7 @@ return [ // Welcome modal 'welcome' => [ - 'welcome' => 'Selamat Datang di Cachet', + 'welcome' => 'Welcome to your status page!', 'message' => 'Halaman status anda hampir siap! Anda masih perlu mengkonfigurasi beberapa pengaturan', 'close' => 'Langsung ke dashboard saja', 'steps' => [ diff --git a/resources/lang/id/forms.php b/resources/lang/id/forms.php index 4408f4e8..6691067e 100755 --- a/resources/lang/id/forms.php +++ b/resources/lang/id/forms.php @@ -31,7 +31,7 @@ return [ 'email' => 'Email', 'password' => 'Password', '2fauth' => 'Kode Otentikasi', - 'invalid' => 'Email atau password tidak benar', + 'invalid' => 'Invalid username or password', 'invalid-token' => 'Token tidak benar', 'cookies' => 'Mohon aktifkan cookies untuk login.', ], @@ -68,7 +68,8 @@ return [ 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Nama', + 'name' => 'Nama', + 'collapsed' => 'Collapse the group by default?', ], ], @@ -83,6 +84,8 @@ return [ 'calc_type' => 'Kalkulasi metrik', 'type_sum' => 'Jumlah', 'type_avg' => 'Rata-rata', + 'places' => 'Digit Desimal', + 'default_view' => 'Default View', 'points' => [ 'value' => 'Nilai', @@ -99,7 +102,7 @@ return [ 'about-this-page' => 'Tentang halaman ini', 'days-of-incidents' => 'Berapa hari insiden akan ditampilkan?', 'banner' => 'Gambar Banner', - 'banner-help' => 'Disarankan gambar yang anda unggah tidak lebih lebar dari 930px.', + 'banner-help' => "Disarankan gambar yang anda unggah tidak lebih lebar dari 930px.", 'subscribers' => 'Bolehkan pengunjung mendaftar notifikasi email?', ], 'analytics' => [ @@ -123,10 +126,19 @@ return [ ], 'theme' => [ 'background-color' => 'Warna Latar', - 'text-color' => 'Warna Teks', + 'background-fills' => 'Isian latar belakang (Komponen, Insiden, Footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Warna Teks', + 'dashboard-login' => 'Tampilkan tombol dashboard di footer?', + 'reds' => 'Merah (Digunakan jika ada kesalahan)', + 'blues' => 'Biru (Digunakan jika ada informasi)', + 'greens' => 'Hijau (Digunakan saat operasi berhasil)', + 'yellows' => 'Kuning (Digunakan sebagai peringatan)', + 'oranges' => 'Jingga (Digunakan sebagai pemberitahuan)', + 'metrics' => 'Isian metrik', + 'links' => 'Tautan', ], ], @@ -137,7 +149,12 @@ return [ 'api-token' => 'Token API', 'api-token-help' => 'Pembuatan ulang token API akan bermasalah jika sudah ada aplikasi lain yang mengakses Cachet.', 'gravatar' => 'Change your profile picture at Gravatar.', - '2fa' => [ + 'user_level' => 'Tingkatan pengguna', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ 'help' => 'Mengaktifkan otentikasi dua faktor akan memperkuat keamanan akun anda. Anda perlu mengunduh Google Authenticator atau app sejenis di gadget anda. Saat login anda akan ditanyakan untuk mengisi token yang dibuat oleh app tersebut.', ], 'team' => [ @@ -156,6 +173,8 @@ return [ 'submit' => 'Kirim', 'cancel' => 'Batalkan', 'remove' => 'Buang', + 'invite' => 'Undang', + 'signup' => 'Daftar', // Other 'optional' => '* Tidak wajib', diff --git a/resources/lang/id/validation.php b/resources/lang/id/validation.php index 9c695e5e..1fa7c4ae 100755 --- a/resources/lang/id/validation.php +++ b/resources/lang/id/validation.php @@ -45,10 +45,12 @@ return [ 'digits_between' => ':attribute harus antara :min dan :max digit.', 'email' => ':attribute harus merupakan alamat email yang benar.', 'exists' => ':attribute yang dipilih tidak benar.', + 'filled' => ':attribute belum diisi.', 'image' => ':attribute harus merupakan gambar.', 'in' => ':attribute yang dipilih tidak benar.', 'integer' => ':attribute harus merupakan bilangan bulat.', 'ip' => ':attribute harus merupakan alamat IP yang benar.', + 'json' => ':attribute harus merupakan string JSON yang valid.', 'max' => [ 'numeric' => ':attribute tidak boleh lebih dari :max.', 'file' => ':attribute tidak boleh lebih dari :max kilobyte.', @@ -80,9 +82,9 @@ return [ 'array' => ':attribute harus berisi :size item.', ], 'string' => ':attribute harus berupa string.', + 'timezone' => ':attribute harus merupakan zona yang benar.', 'unique' => ':attribute sudah ada.', 'url' => 'Format :attribute tidak benar.', - 'timezone' => ':attribute harus merupakan zona yang benar.', /* |-------------------------------------------------------------------------- diff --git a/resources/lang/it/cachet.php b/resources/lang/it/cachet.php index dee0ea30..698cc15e 100644 --- a/resources/lang/it/cachet.php +++ b/resources/lang/it/cachet.php @@ -14,26 +14,26 @@ return [ 'components' => [ 'status' => [ 1 => 'Operativo', - 2 => 'Problemi di performance', - 3 => 'Interruzioni parziali', - 4 => 'Interruzione prolungata', + 2 => 'Problemi sulle prestazioni', + 3 => 'Disservizio parziale', + 4 => 'Interruzione del servizio', ], ], // Incidents 'incidents' => [ - 'none' => 'Nessun incidente riportato.', - 'past' => 'Incidenti passati', - 'previous_week' => 'Settimana precedente', - 'next_week' => 'Settimana successiva', - 'none' => 'Niente da segnalare', + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', 'scheduled' => 'Manutenzione programmata', - 'scheduled_at' => ', pianificato alle :timestamp', + 'scheduled_at' => ', programmata il :timestamp', 'status' => [ - 0 => 'Pianificato', // TODO: Hopefully remove this. - 1 => 'In analisi', + 0 => 'Programmata', // TODO: Hopefully remove this. + 1 => 'Analisi', 2 => 'Identificato', - 3 => 'In osservazione', + 3 => 'Osservazione', 4 => 'Risolto', ], ], @@ -46,53 +46,93 @@ return [ ], 'api' => [ - 'regenerate' => 'Rigenera chiave API', - 'revoke' => 'Revoca chiave API', + 'regenerate' => 'Rigenera API Key', + 'revoke' => 'Revoca API Key', ], // Metrics 'metrics' => [ 'filter' => [ 'last_hour' => 'Last Hour', - 'hourly' => 'Ultime 12 ore', - 'weekly' => 'Settimana', - 'monthly' => 'Mese', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', ], ], // Subscriber 'subscriber' => [ - 'subscribe' => 'Iscriviti per ricevere gli aggiornamenti più recenti.', + 'subscribe' => 'Subscribe to get the most recent updates', 'button' => 'Iscriviti', 'email' => [ 'subscribe' => 'Iscriviti agli aggiornamenti via email.', - 'subscribed' => 'Sei stato iscritto alle notifiche via email, controlla la tua casella per confermare l\'iscrizione.', - 'verified' => 'La tua iscrizione via email è stata confermata. Grazie!', - 'unsubscribe' => 'Annulla l\'iscrizione agli aggiornamenti via email.', - 'unsubscribed' => 'La tua iscrizione via email è stata cancellata.', + 'subscribed' => 'Ti sei appena iscritto agli aggiornamenti email, controlla la tua casella per confermare la sottoscrizione', + 'verified' => 'La tua iscrizione è stata confermata. Grazie!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'La tua iscrizione è stata rimossa.', 'failure' => 'Qualcosa è andato storto con l\'iscrizione.', 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', 'verify' => [ - 'text' => "Conferma la tua iscrizione via email agli aggiornamenti dello stato di :app_name.\n:link\Grazie, :app_name", - 'html-preheader' => 'Conferma la tua iscrizione via email agli aggiornamento dello stato di :app_name.', - 'html' => '

Conferma la tua iscrizione via email agli aggiornamenti dello stato di :app_name.

:link

Grazie, :app_name

', + 'text' => "Conferma la sottoscrizione email per gli aggiornamento di stato su :app_name \n:link\nGrazie, :app_name", + 'html-preheader' => 'Conferma la sottoscrizione email per gli aggiornamento di stato su :app_name', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', ], 'maintenance' => [ - 'text' => "Una nuova manutenzione è stata pianificata su :app_name.\nGrazie, :app_name", - 'html-preheader' => 'Una nuova manutenzione è stata pianificata su :app_name.', - 'html' => '

Una nuova manutenzione è stata pianificata su :app_name.

', + 'text' => "Una nuova manutenzione programmata è stata inserita su :app_name.\nGrazie, :app_name", + 'html-preheader' => 'Una nuova manutenzione programmata è stata inserita su :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', ], 'incident' => [ - 'text' => "Un nuovo incidente è stato riportato su :app_name.\nGrazie, :app_name", - 'html-preheader' => 'Un nuovo incidente è stato riportato su :app_name.', - 'html' => '

Un nuovo incidente è stato riportato su :app_name.

Grazie, :app_name

', + 'text' => "Un nuovo incidente è stato segnalato su :app_name.\nGrazie, :app_name", + 'html-preheader' => 'Un nuovo incidente è stato segnalato su :app_name.', + 'html' => '

Un nuovo incidente è stato segnalato su :app_name.

Grazie, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', ], ], ], + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Nome Utente', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Iscriviti', + ], + ], + // Other - 'powered_by' => ':app Status Page is powered by Cachet.', - 'about_this_site' => 'Su questo sito', + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', 'rss-feed' => 'RSS', 'atom-feed' => 'Atom', 'feed' => 'Status Feed', diff --git a/resources/lang/it/dashboard.php b/resources/lang/it/dashboard.php index 12682e8c..c300c079 100644 --- a/resources/lang/it/dashboard.php +++ b/resources/lang/it/dashboard.php @@ -15,34 +15,43 @@ return [ // Incidents 'incidents' => [ - 'title' => 'Incidenti & Pianificazione', + 'title' => 'Incidents & Schedule', 'incidents' => 'Incidenti', - 'logged' => '{0} Non ci sono incidenti, ottimo lavoro!|Hai registrato un incidente.|Hai riportato :count incidenti.', - 'incident-create-template' => 'Crea modello', - 'incident-templates' => 'Modelli incidente', + 'logged' => '{0} Non ci sono incidenti, ottimo lavoro.|Hai segnalato un incidente.|Hai segnalato :count incidenti.', + 'incident-create-template' => 'Crea Modello', + 'incident-templates' => 'Incident Templates', 'add' => [ - 'title' => 'Aggiungi un incidente', + 'title' => 'Add an Incident', 'success' => 'Incidente aggiunto.', 'failure' => 'Qualcosa è andato storto con l\'incidente.', ], 'edit' => [ - 'title' => 'Modifica un incidente', + 'title' => 'Edit an Incident', 'success' => 'Incidente aggiornato.', 'failure' => 'Qualcosa è andato storto con l\'incidente.', ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], // Incident templates 'templates' => [ - 'title' => 'Modelli incidente', + 'title' => 'Incident Templates', 'add' => [ - 'title' => 'Crea un modello di incidente', - 'success' => 'Modello creato.', - 'failure' => 'Qualcosa è andato storto con il modello di incidente.', + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', ], 'edit' => [ - 'title' => 'Modifica modello', - 'success' => 'Il modello è stato aggiornato.', - 'failure' => 'Qualcosa è andato storto con il modello di incidente.', + 'title' => 'Edit Template', + 'success' => 'Il modello è stato aggiornato!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', ], ], ], @@ -50,86 +59,100 @@ return [ // Incident Maintenance 'schedule' => [ 'schedule' => 'Manutenzione programmata', - 'scheduled_at' => 'Pianificato alle :timestamp', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', 'add' => [ - 'title' => 'Aggiungi Manutenzione programmata', - 'success' => 'Pianificazione aggiunta.', - 'failure' => 'Qualcosa è andato storto con la pianificazione.', + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', ], 'edit' => [ - 'title' => 'Modifica Manutenzione programmata', - 'success' => 'La pianificazione è stata aggiornata.', - 'failure' => 'Qualcosa è andato storto con la pianificazione.', + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', ], 'delete' => [ - 'success' => 'La pianificazione è stata eliminate e non verrà visualizzata nella Status Page.', - 'failure' => 'Non è stato possibile eliminare la pianificazione. Riprova.', + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', ], ], // Components 'components' => [ - 'components' => 'Componenti', - 'component_statuses' => 'Stato componenti', - 'listed_group' => 'Raggruppati sotto :name', + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', 'add' => [ - 'title' => 'Aggiungi un componente', - 'message' => 'Dovresti aggiungere un componente.', - 'success' => 'Componente creato.', - 'failure' => 'Qualcosa è andato storto con il componente.', + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', ], 'edit' => [ - 'title' => 'Modifica un componente', - 'success' => 'Componente aggiornato.', - 'failure' => 'Qualcosa è andato storto con il componente.', + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', ], // Component groups 'groups' => [ - 'groups' => 'Gruppo di componenti|Gruppi di componenti', - 'no_components' => 'Dovresti aggiungere un gruppo di componenti.', + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', 'add' => [ - 'title' => 'Aggiungi un gruppo di componenti', - 'success' => 'Gruppo di componenti aggiunto.', - 'failure' => 'Qualcosa è andato storto con il componente.', + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', ], 'edit' => [ - 'title' => 'Modifica un gruppo di componenti', - 'success' => 'Gruppo di componenti aggiornato.', - 'failure' => 'Qualcosa è andato storto con il componente.', + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', ], ], ], // Metrics 'metrics' => [ - 'metrics' => 'Misurazioni', + 'metrics' => 'Metriche', 'add' => [ - 'title' => 'Crea una misurazione', - 'success' => 'Misurazione creata.', - 'failure' => 'Qualcosa è andato storto con la misurazione.', + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metrica creata.', + 'failure' => 'Something went wrong with the metric.', ], 'edit' => [ - 'title' => 'Modifica una misurazione', - 'success' => 'Misurazione aggiornata.', - 'failure' => 'Qualcosa è andato storto con la misurazione.', + 'title' => 'Edit a Metric', + 'success' => 'Metrica aggiornata.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', ], ], // Subscribers 'subscribers' => [ - 'subscribers' => 'Iscritti', - 'description' => 'Gli iscritti riceveranno aggiornamenti via email quando verranno creati gli incidenti.', - 'verified' => 'Verificato', + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', 'not_verified' => 'Non Verificato', 'add' => [ - 'title' => 'Aggiungi un nuovo iscritto', - 'success' => 'Iscrizione aggiunta.', - 'failure' => 'Qualcosa è andato storto con il componente.', + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', ], 'edit' => [ - 'title' => 'Aggiorna iscritto', - 'success' => 'Iscrizione aggiornata.', - 'failure' => 'Qualcosa è andato storto durante l\'aggiornamento.', + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', ], ], @@ -138,26 +161,35 @@ return [ 'team' => 'Team', 'member' => 'Membro', 'profile' => 'Profilo', - 'description' => 'I membri di un Team saranno in grado di aggiungere e modificare componenti e incidenti.', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', 'add' => [ - 'title' => 'Aggiungi un nuovo membro del Team', - 'success' => 'Membro del Team aggiunto.', - 'failure' => 'Qualcosa è andato storto con il componente.', + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', ], 'edit' => [ - 'title' => 'Aggiorna profilo', - 'success' => 'Profilo aggiornato.', - 'failure' => 'Qualcosa è andato storto durante l\'aggiornamento.', + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', ], ], // Settings 'settings' => [ - 'settings' => 'Impostazioni', + 'settings' => 'Settings', 'app-setup' => [ - 'app-setup' => 'Configurazione applicazione', - 'images-only' => 'Possono essere caricate solo immagini.', - 'too-big' => 'Il file che hai caricato è troppo grande. Carica un\'immagine più piccola di :size', + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', ], 'analytics' => [ 'analytics' => 'Analytics', @@ -166,53 +198,53 @@ return [ 'localization' => 'Localization', ], 'security' => [ - 'security' => 'Sicurezza', - 'two-factor' => 'Utenti senza verifica in 2 passaggi', + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', ], 'stylesheet' => [ - 'stylesheet' => 'Foglio di stile', + 'stylesheet' => 'Stylesheet', ], 'theme' => [ - 'theme' => 'Tema', + 'theme' => 'Theme', ], 'edit' => [ - 'success' => 'Impostazioni salvate.', - 'failure' => 'Le impostazioni non possono essere salvate.', + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', ], ], // Login 'login' => [ - 'login' => 'Accedi', - 'logged_in' => 'Sei loggato.', - 'welcome' => 'Ben tornato!', - 'two-factor' => 'Inserisci il tuo token.', + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', ], // Sidebar footer - 'help' => 'Aiuto', + 'help' => 'Help', 'status_page' => 'Status Page', - 'logout' => 'Esci', + 'logout' => 'Logout', // Notifications 'notifications' => [ - 'notifications' => 'Notifiche', - 'awesome' => 'Fantastico.', + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', 'whoops' => 'Whoops.', ], // Welcome modal 'welcome' => [ - 'welcome' => 'Benvenuto in Cachet', - 'message' => 'La tua Status Page è quasi pronta! Potresti voler configurare queste impostazioni aggiuntive', - 'close' => 'Vai alla dashboard', + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', 'steps' => [ - 'component' => 'Crea componenti', - 'incident' => 'Crea incidenti', - 'customize' => 'Personalizza', - 'team' => 'Aggiungi utenti', - 'api' => 'Genera un API Token', - 'two-factor' => 'Verifica in 2 passaggi', + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', ], ], diff --git a/resources/lang/it/forms.php b/resources/lang/it/forms.php index 9d5794f3..3fd053e0 100644 --- a/resources/lang/it/forms.php +++ b/resources/lang/it/forms.php @@ -14,13 +14,13 @@ return [ // Setup form fields 'setup' => [ 'email' => 'Email', - 'username' => 'Username', + 'username' => 'Nome Utente', 'password' => 'Password', - 'site_name' => 'Nome del sito', - 'site_domain' => 'Dominio del sito', - 'site_timezone' => 'Seleziona il tuo Fuso Orario', - 'site_locale' => 'Seleziona la tua lingua', - 'enable_google2fa' => 'Abilita la verifica in 2 passaggi di Google', + 'site_name' => 'Nome del Sito', + 'site_domain' => 'Dominio del Sito', + 'site_timezone' => 'Seleziona il fuso orario', + 'site_locale' => 'Seleziona la lingua', + 'enable_google2fa' => 'Abilita la Verifica in Due Passaggi di Google', 'cache_driver' => 'Cache Driver', 'session_driver' => 'Session Driver', ], @@ -30,10 +30,10 @@ return [ 'login' => 'Username or Email', 'email' => 'Email', 'password' => 'Password', - '2fauth' => 'Codice di autenticazione', - 'invalid' => 'Email o password non valida', + '2fauth' => 'Codice di Autenticazione', + 'invalid' => 'Invalid username or password', 'invalid-token' => 'Token non valido', - 'cookies' => 'Devi abilitare i cookie per accedere.', + 'cookies' => 'You must enable cookies to login.', ], // Incidents form fields @@ -42,13 +42,13 @@ return [ 'status' => 'Stato', 'component' => 'Componente', 'message' => 'Messaggio', - 'message-help' => 'Puoi usare anche Markdown.', - 'scheduled_at' => 'Per quando programmare la manutenzione?', - 'incident_time' => 'Quando è avvenuto l\'incidente?', - 'notify_subscribers' => 'Notifica gli iscritti', - 'visibility' => 'Visibilità incidente', - 'public' => 'Visibilità pubblica', - 'logged_in_only' => 'Visibile solo agli utenti loggati', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'Quando è accaduto questo incidente?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Visibilità dell\'Incidente', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', 'templates' => [ 'name' => 'Nome', 'template' => 'Modello', @@ -62,13 +62,14 @@ return [ 'status' => 'Stato', 'group' => 'Gruppo', 'description' => 'Descrizione', - 'link' => 'Link', - 'tags' => 'Tags', - 'tags-help' => 'Separati da virgola.', + 'link' => 'Collegamento', + 'tags' => 'Etichette', + 'tags-help' => 'Comma separated.', 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Nome', + 'name' => 'Nome', + 'collapsed' => 'Collapse the group by default?', ], ], @@ -77,12 +78,14 @@ return [ 'name' => 'Nome', 'suffix' => 'Suffisso', 'description' => 'Descrizione', - 'description-help' => 'Puoi usare anche Markdown.', - 'display-chart' => 'Visualizzare grafico sulla Status Page?', - 'default-value' => 'Valore di default', - 'calc_type' => 'Calcolo delle metriche', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', 'type_sum' => 'Somma', 'type_avg' => 'Media', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', 'points' => [ 'value' => 'Valore', @@ -93,58 +96,66 @@ return [ 'settings' => [ /// Application setup 'app-setup' => [ - 'site-name' => 'Nome del sito', - 'site-url' => 'URL del sito', - 'display-graphs' => 'Visualizzare grafici sulla Status Page?', - 'about-this-page' => 'Su questa pagina', - 'days-of-incidents' => 'Quanti giorni di incidenti mostrare?', - 'banner' => 'Immagine Banner', - 'banner-help' => 'Si consiglia di caricare file non più grandi di 930px di larghezza.', - 'subscribers' => 'Consentire alle persone di iscriversi alle notifiche email?', + 'site-name' => 'Nome del Sito', + 'site-url' => 'URL del Sito', + 'display-graphs' => 'Visualizzare i grafici nella pagina di stato?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', ], 'analytics' => [ - 'analytics_google' => 'Codice Google Analytics', - 'analytics_gosquared' => 'Codice GoSquared Analytics', - 'analytics_piwik_url' => 'URL della tua istanza Piwik (senza http(s)://)', - 'analytics_piwik_siteid' => 'ID sito Piwik', + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', ], 'localization' => [ - 'site-timezone' => 'Fuso orario del sito', - 'site-locale' => 'Lingua del sito', - 'date-format' => 'Formato Data', - 'incident-date-format' => 'Formato Timestamp dell\'incidente', + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', ], 'security' => [ - 'allowed-domains' => 'Domini consentiti', - 'allowed-domains-help' => 'Separati da virgola. Il dominio impostato sopra è automaticamente consentito di default.', + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', ], 'stylesheet' => [ - 'custom-css' => 'Foglio di stile personalizzato', + 'custom-css' => 'Foglio di Stile Personalizzato', ], 'theme' => [ - 'background-color' => 'Colore di sfondo', - 'text-color' => 'Colore del testo', - 'dashboard-login' => 'Visualizzare il pulsante Dashboard nel footer?', + 'background-color' => 'Colore di Sfondo', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Colore del Testo', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', ], ], 'user' => [ - 'username' => 'Username', + 'username' => 'Nome Utente', 'email' => 'Email', 'password' => 'Password', - 'api-token' => 'Token API', - 'api-token-help' => 'Rigenerando il token delle API impedirai l\'accesso a Cachet alle applicazioni esistenti.', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', 'gravatar' => 'Change your profile picture at Gravatar.', - 'user_level' => 'Livello utente', + 'user_level' => 'User Level', 'levels' => [ - 'admin' => 'Amministratore', - 'user' => 'Utente', + 'admin' => 'Admin', + 'user' => 'User', ], '2fa' => [ - 'help' => 'L\'abilitazione della verifica in 2 passaggi aumenta la sicurezza del tuo account. Sarà necessario scaricare Google Authenticator o un\'applicazione simile sul tuo dispositivo mobile. Quando accederai, ti verrà chiesto di fornire un token generato dall\'app.', + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', ], 'team' => [ 'description' => 'Invite your team members by entering their email addresses here.', @@ -160,8 +171,10 @@ return [ 'edit' => 'Modifica', 'delete' => 'Elimina', 'submit' => 'Invia', - 'cancel' => 'Annulla', + 'cancel' => 'Cancella', 'remove' => 'Rimuovi', + 'invite' => 'Invite', + 'signup' => 'Sign Up', // Other 'optional' => '* Opzionale', diff --git a/resources/lang/it/pagination.php b/resources/lang/it/pagination.php index 9142ea11..3db29aff 100644 --- a/resources/lang/it/pagination.php +++ b/resources/lang/it/pagination.php @@ -23,6 +23,6 @@ return [ */ 'previous' => '« Precedente', - 'next' => 'Successivo »', + 'next' => 'Successiva »', ]; diff --git a/resources/lang/it/setup.php b/resources/lang/it/setup.php index 2a8cba5b..2808e173 100644 --- a/resources/lang/it/setup.php +++ b/resources/lang/it/setup.php @@ -11,13 +11,13 @@ return [ 'setup' => 'Installazione', - 'title' => 'Installazione Cachet', - 'service_details' => 'Dettagli Servizio', - 'env_setup' => 'Installazione Environment', - 'status_page_setup' => 'Installazione Status Page', - 'show_support' => 'Mostrare il supporto per Cachet?', + 'title' => 'Installa Cachet', + 'service_details' => 'Dettagli del Servizio', + 'env_setup' => 'Configurazione dell\'Ambiente', + 'status_page_setup' => 'Installazione della Pagina di Stato', + 'show_support' => 'Mostrare supporto per Cachet?', 'admin_account' => 'Account Amministratore', 'complete_setup' => 'Installazione Completata', 'completed' => 'Cachet è stato configurato con successo!', - 'finish_setup' => 'Vai alla dashboard', + 'finish_setup' => 'Vai alla bacheca', ]; diff --git a/resources/lang/it/validation.php b/resources/lang/it/validation.php index 0077e5f2..b735a732 100644 --- a/resources/lang/it/validation.php +++ b/resources/lang/it/validation.php @@ -25,68 +25,66 @@ return [ 'accepted' => ':attribute deve essere accettato.', 'active_url' => ':attribute non è un URL valido.', 'after' => ':attribute deve essere una data successiva al :date.', - 'alpha' => ':attribute può contenere solo lettere.', - 'alpha_dash' => ':attribute può contenere solo lettere, numeri e trattini.', - 'alpha_num' => ':attribute può contenere solo lettere e numeri.', + 'alpha' => 'Il campo :attribute può contenere solo lettere.', + 'alpha_dash' => 'Il campo :attribute può contenere solo lettere, numeri e trattini.', + 'alpha_num' => 'Il campo :attribute può contenere solo lettere e numeri.', 'array' => ':attribute deve essere un array.', - 'before' => ':attribute deve essere una data precedente al :date.', + 'before' => 'Il campo :attribute deve contenere una data precedente a :date.', 'between' => [ - 'numeric' => ':attribute deve trovarsi tra :min - :max.', - 'file' => ':attribute deve trovarsi tra :min - :max kilobytes.', - 'string' => ':attribute deve trovarsi tra :min - :max caratteri.', - 'array' => ':attribute deve avere tra :min - :max elementi.', + 'numeric' => 'Il campo :attribute deve essere compreso tra :min e :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', ], - - 'boolean' => 'Il campo :attribute deve essere vero o falso.', - 'confirmed' => 'Il campo di conferma per :attribute non coincide.', - 'date' => ':attribute non è una data valida.', - 'date_format' => ':attribute non coincide con il formato :format.', - 'different' => ':attribute e :other devono essere differenti.', - 'digits' => ':attribute deve essere di :digits cifre.', - 'digits_between' => ':attribute deve essere tra :min e :max cifre.', - 'email' => ':attribute non è valido.', - 'exists' => ':attribute selezionato/a non è valido.', - 'filled' => 'Il campo :attribute è richiesto.', - 'image' => ':attribute deve essere un\'immagine.', - 'in' => ':attribute selezionato non è valido.', - 'integer' => ':attribute deve essere un numero intero.', - 'ip' => ':attribute deve essere un indirizzo IP valido.', - 'json' => ':attribute deve essere una stringa JSON valida.', + 'boolean' => 'Il campo :attribuite deve essere vero o falso.', + 'confirmed' => 'Il campo :attribute non corrisponde.', + 'date' => 'Il campo :attribute non contiene una data valida.', + 'date_format' => 'Il campo :attribute non contiene una data con il formato :format.', + 'different' => 'I campi :attribute e :other devono contenere valori diversi.', + 'digits' => 'Il campo :attribute deve contenere :digits cifre.', + 'digits_between' => 'Il campo :attribute deve contenere dalle :min alle :max cifre.', + 'email' => 'Il campo :attribute non contiene un indirizzo email valido.', + 'exists' => 'Il valore del campo :attribute non è valido.', + 'filled' => 'Il campo :attribute è obbligatorio.', + 'image' => 'Il campo :attribute deve contenere un\'immagine.', + 'in' => 'Il valore del campo :attribute non è valido.', + 'integer' => 'Il campo :attribute deve contenere un numero intero.', + 'ip' => 'Il campo :attribute deve contenere un indirizzo IP valido.', + 'json' => 'The :attribute must be a valid JSON string.', 'max' => [ - 'numeric' => ':attribute non può essere superiore a :max.', - 'file' => ':attribute non può essere superiore a :max kilobytes.', - 'string' => ':attribute non può contenere più di :max caratteri.', - 'array' => ':attribute non può avere più di :max elementi.', + 'numeric' => 'Il campo :attribute non può contenere un numero maggiore di :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', ], - 'mimes' => ':attribute deve essere del tipo: :values.', + 'mimes' => 'Il campo :attribute deve contenere un file del tipo: :values.', 'min' => [ - 'numeric' => ':attribute deve essere almeno :min.', - 'file' => ':attribute deve essere almeno di :min kilobytes.', - 'string' => ':attribute deve contenere almeno :min caratteri.', - 'array' => ':attribute deve avere almeno :min elementi.', + 'numeric' => 'Il campo :attribute non può contenere un numero inferiore a :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', ], - - 'not_in' => 'Il valore selezionato per :attribute non è valido.', - 'numeric' => ':attribute deve essere un numero.', - 'regex' => 'Il formato del campo :attribute non è valido.', - 'required' => 'Il campo :attribute è richiesto.', - 'required_if' => 'Il campo :attribute è richiesto quando :other è :value.', + 'not_in' => 'Il valore del campo :attribute non è valido.', + 'numeric' => 'Il campo :attribute deve essere un numero.', + 'regex' => 'Il formato di :attribute non è valido.', + 'required' => 'Il campo :attribute è obbligatorio.', + 'required_if' => 'Il campo :attribute è richiesto quando :other vale :value.', 'required_unless' => 'The :attribute field is required unless :other is in :values.', - 'required_with' => 'Il campo :attribute è richiesto quando :values è presente.', - 'required_with_all' => 'Il campo :attribute è richiesto quando :values è presente.', - 'required_without' => 'Il campo :attribute è richiesto quando :values non è presente.', - 'required_without_all' => 'Il campo :attribute è richiesto quando nessuno di :values è presente.', - 'same' => ':attribute e :other devono coincidere.', + 'required_with' => 'Il campo :attribute è obbligatorio quando :values è presente.', + 'required_with_all' => 'Il campo :attribute è obbligatorio quando :values è presente.', + 'required_without' => 'Il campo :attribute è obbligatorio quando :values non è presente.', + 'required_without_all' => 'Il campo :attribute è obbligatorio quando nessuno dei valori :values è presente.', + 'same' => 'I campi :attribute e :other devono corrispondere.', 'size' => [ - 'numeric' => ':attribute deve essere :size.', - 'file' => ':attribute deve essere :size kilobytes.', - 'string' => ':attribute deve contenere :size caratteri.', - 'array' => ':attribute deve contenere :size elementi.', + 'numeric' => 'Il campo :attribute deve essere :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', ], - 'string' => ':attribute deve essere una stringa.', + 'string' => 'Il campo :attribute deve essere una stringa.', 'timezone' => ':attribute deve essere una zona valida.', - 'unique' => ':attribute è stato già utilizzato.', - 'url' => 'Il formato del campo :attribute non è valido.', + 'unique' => 'Il valore del campo :attribute è già stato preso.', + 'url' => 'Il formato di :attribute non è valido.', /* |-------------------------------------------------------------------------- @@ -101,7 +99,7 @@ return [ 'custom' => [ 'attribute-name' => [ - 'rule-name' => 'custom-message', + 'rule-name' => 'messaggio personalizzato', ], ], diff --git a/resources/lang/ja/cachet.php b/resources/lang/ja/cachet.php new file mode 100644 index 00000000..9a77a3d7 --- /dev/null +++ b/resources/lang/ja/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Operational', + 2 => 'Performance Issues', + 3 => 'Partial Outage', + 4 => 'Major Outage', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Scheduled Maintenance', + 'scheduled_at' => ', scheduled :timestamp', + 'status' => [ + 0 => 'Scheduled', // TODO: Hopefully remove this. + 1 => 'Investigating', + 2 => 'Identified', + 3 => 'Watching', + 4 => 'Fixed', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Regenerate API Key', + 'revoke' => 'Revoke API Key', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/ja/dashboard.php b/resources/lang/ja/dashboard.php new file mode 100644 index 00000000..4ed89d1d --- /dev/null +++ b/resources/lang/ja/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Incidents', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Scheduled Maintenance', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/ja/forms.php b/resources/lang/ja/forms.php new file mode 100644 index 00000000..c1945012 --- /dev/null +++ b/resources/lang/ja/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Username', + 'password' => 'Password', + 'site_name' => 'Site Name', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Password', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Component', + 'message' => 'Message', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site Name', + 'site-url' => 'Site URL', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/ja/pagination.php b/resources/lang/ja/pagination.php new file mode 100644 index 00000000..add1092a --- /dev/null +++ b/resources/lang/ja/pagination.php @@ -0,0 +1,28 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/ja/setup.php b/resources/lang/ja/setup.php new file mode 100644 index 00000000..73650463 --- /dev/null +++ b/resources/lang/ja/setup.php @@ -0,0 +1,23 @@ + 'セットアップ', + 'title' => 'セットアップ Cachet', + 'service_details' => 'サービスの詳細情報', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'ステータス ページのセットアップ', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/ja/validation.php b/resources/lang/ja/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/ja/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/ko/cachet.php b/resources/lang/ko/cachet.php index 351e79a2..dd72618f 100755 --- a/resources/lang/ko/cachet.php +++ b/resources/lang/ko/cachet.php @@ -22,7 +22,7 @@ return [ // Incidents 'incidents' => [ - 'none' => '아무 문제도 보고되지 않음.', + 'none' => '아무 문제도 보고되지 않음', 'past' => '이전 문제', 'previous_week' => '전 주', 'next_week' => '다음 주', @@ -30,7 +30,7 @@ return [ 'scheduled' => '예정된 유지 보수', 'scheduled_at' => ', :timestamp 에 예정됨', 'status' => [ - 0 => '예정된', // TODO: Hopefully remove this. + 0 => '예정됨', // TODO: Hopefully remove this. 1 => '파악 중', 2 => '확인됨', 3 => '주시하는 중', @@ -78,7 +78,7 @@ return [ 'html' => '

:app_name 의 상태 업데이트에 대한 이메일 구독을 확인해주세요.

:link

감사 합니다, :app_name

', ], 'maintenance' => [ - 'text' => ":app_name 에 새로운 유지 보수에 예정 되었습니다.\n감사합니다, :app_name", + 'text' => ":app_name 에 새로운 작업이 예정 되었습니다.\n감사합니다, :app_name", 'html-preheader' => ':app_name 에 새로운 유지 보수가 예정 되었습니다..', 'html' => '

:app_name 에 새로운 유지 보수가 예정 되었습니다.

감사 합니다, :app_name

', ], @@ -87,6 +87,47 @@ return [ 'html-preheader' => ':app_name 에 새로운 문제가 보고 되었습니다.', 'html' => '

:app_name 에 새로운 문제가 보고 되었습니다.

감사 합니다, : app_name

', ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => ":app_name 팀의 상태페이지에 초대되었습니다. 가입하시려면 다음 링크를 눌러주세요.\n:link\n감사합니다, :app_name", + 'html-preheader' => ':app_name 팀에 초대되었습니다.', + 'html' => '

:app_name 팀의 상태페이지에 초대되었습니다. 가입하시려면 다음 링크를 눌러주세요.

+

:link

감사합니다, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => '가입', + 'username' => '사용자이름', + 'email' => '이메일', + 'password' => '비밀번호', + 'success' => '계정이 생성되었습니다.', + 'failure' => '가입 중에 문제가 생겼습니다.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => '구독', ], ], diff --git a/resources/lang/ko/dashboard.php b/resources/lang/ko/dashboard.php index ab30e87e..63f87f99 100755 --- a/resources/lang/ko/dashboard.php +++ b/resources/lang/ko/dashboard.php @@ -28,7 +28,11 @@ return [ 'edit' => [ 'title' => '문제 수정', 'success' => '문제가 수정되었습니다.', - 'failure' => '수정 중 문제가 발생했습니다.', + 'failure' => '문제가 발생했습니다.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', ], // Incident templates @@ -36,6 +40,7 @@ return [ 'title' => '문제 템플릿', 'add' => [ 'title' => '문제 템플릿 생성하기', + 'message' => 'You should add an Incident Template.', 'success' => '템플릿이 생성되었습니다.', 'failure' => '템플릿 생성 중 문제가 발생했습니다.', ], @@ -44,12 +49,17 @@ return [ 'success' => '템플릿이 수정되었습니다!', 'failure' => '템플릿 수정 중 문제가 발생했습니다.', ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], ], ], // Incident Maintenance 'schedule' => [ - 'schedule' => '예정된 유지 관리', + 'schedule' => '예약 된 유지 관리', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', 'scheduled_at' => ':timestamp 에 예정됨', 'add' => [ 'title' => '예정 된 유지 관리 추가', @@ -81,7 +91,11 @@ return [ 'edit' => [ 'title' => '구성요소 수정', 'success' => '구성요소가 수정되었습니다.', - 'failure' => '구성요소 수정 중 문제가 발생했습니다.', + 'failure' => '구성요소와 관련하여 문제가 생겼습니다.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', ], // Component groups @@ -96,7 +110,11 @@ return [ 'edit' => [ 'title' => '구성요소 그룹 수정', 'success' => '구성요소 그룹이 수정되었습니다.', - 'failure' => '구성요소 그룹 수정 중 문제가 발생했습니다.', + 'failure' => '구성요소 그룹과 관련하여 문제가 생겼습니다.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', ], ], ], @@ -106,13 +124,35 @@ return [ 'metrics' => '통계', 'add' => [ 'title' => '통계 추가', + 'message' => 'You should add a Metric.', 'success' => '통계가 추가되었습니다.', 'failure' => '통계 추가 중 문제가 발생했습니다.', ], 'edit' => [ 'title' => '통계 수정', 'success' => '통계가 수정되었습니다.', - 'failure' => '통계 수정 중 문제가 발생했습니다.', + 'failure' => '통계와 관련하여 문제가 생겼습니다.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => '구독자', + 'description' => '구독자들이 문제가 생겼을 때 이메일 업데이트를 받게 됩니다.', + 'verified' => '인증됨', + 'not_verified' => '인증되지 않음', + 'add' => [ + 'title' => '구독자 추가', + 'success' => '구독자가 추가됨.', + 'failure' => '구성요소 생성 중 문제가 발생했습니다.', + ], + 'edit' => [ + 'title' => '구독자 업데이트', + 'success' => '구독자가 업데이트됨.', + 'failure' => '프로필 수정 중 문제가 생겼습니다.', ], ], @@ -132,6 +172,15 @@ return [ 'success' => '프로필이 수정되었습니다.', 'failure' => '프로필 수정 중 문제가 생겼습니다.', ], + 'delete' => [ + 'success' => '사용자 삭제', + 'failure' => '사용자를 삭제하던 도중 문제가 발생했습니다.', + ], + 'invite' => [ + 'title' => '새 팀 멤버 초대하기', + 'success' => '사용자가 초대되었습니다.', + 'failure' => '초대 중에 문제가 발생했습니다.', + ], ], // Settings @@ -186,7 +235,7 @@ return [ // Welcome modal 'welcome' => [ - 'welcome' => 'Cachet에 오신 것을 환영 합니다', + 'welcome' => 'Welcome to your status page!', 'message' => '상태 페이지는 거의 다 준비 되었습니다! 추가 설정을 해보세요', 'close' => '내 대시보드로 바로 가기', 'steps' => [ diff --git a/resources/lang/ko/forms.php b/resources/lang/ko/forms.php index 71373a00..318dbd2c 100755 --- a/resources/lang/ko/forms.php +++ b/resources/lang/ko/forms.php @@ -31,7 +31,7 @@ return [ 'email' => '이메일', 'password' => '비밀번호', '2fauth' => '인증 코드', - 'invalid' => '잘못된 이메일 또는 패스워드', + 'invalid' => 'Invalid username or password', 'invalid-token' => '잘못된 토큰n', 'cookies' => '로그인 하려면 쿠키를 활성화 해야 합니다.', ], @@ -43,7 +43,7 @@ return [ 'component' => '구성요소', 'message' => '메시지', 'message-help' => 'Markdown을 사용할 수 있습니다.', - 'scheduled_at' => '유지 관리는 언제 예정되었습니까?', + 'scheduled_at' => '언제 작업을 예약하시겠습니까?', 'incident_time' => '이 문제는 언제 발생 했습니까??', 'notify_subscribers' => '구독자에게 알림', 'visibility' => '공개 설정', @@ -68,7 +68,8 @@ return [ 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => '이름', + 'name' => '이름', + 'collapsed' => 'Collapse the group by default?', ], ], @@ -83,6 +84,8 @@ return [ 'calc_type' => '통계 계산', 'type_sum' => '합계', 'type_avg' => '평균', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', 'points' => [ 'value' => '값', @@ -99,7 +102,7 @@ return [ 'about-this-page' => '이 페이지에 대하여', 'days-of-incidents' => '몇 일 동안 사건을 표시하시겠습니까?', 'banner' => '배너 이미지', - 'banner-help' => '가로가 930 픽셀보다 작은 이미지를 업로드 하는 것을 권장합니다.', + 'banner-help' => "가로가 930 픽셀보다 작은 이미지를 업로드 하는 것을 권장합니다.", 'subscribers' => '이메일 알림을 받기 위한 회원가입 허용', ], 'analytics' => [ @@ -123,11 +126,19 @@ return [ ], 'theme' => [ 'background-color' => '배경색', - 'text-color' => '글자색', - 'dashboard-login' => 'Show dashboard button in the footer?', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => '글자색', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => '빨강 (에러에 사용됨)', + 'blues' => '파랑 (정보에 사용됨)', + 'greens' => '초록 (성공에 사용됨)', + 'yellows' => '노랑 (알림에 사용됨)', + 'oranges' => '주황 (공지에 사용됨)', + 'metrics' => 'Metrics Fill', + 'links' => '링크', ], ], @@ -138,7 +149,12 @@ return [ 'api-token' => 'API 토큰', 'api-token-help' => '기존의 프로그램이 Cachet에 접근하는 것을 막기 위해, API token 을 재성성합니다.', 'gravatar' => 'Change your profile picture at Gravatar.', - '2fa' => [ + 'user_level' => '사용자 레벨', + 'levels' => [ + 'admin' => '관리자', + 'user' => '사용자', + ], + '2fa' => [ 'help' => '2단계 인증을 활성화하면 계정 보안이 강화됩니다. Google Authenticator 또는 유사한 앱을 모바일 기기에 다운로드 받아야 합니다. 로그인 할 때, 해당 앱에서 생성된 토큰을 입력해야합니다.', ], 'team' => [ @@ -157,6 +173,8 @@ return [ 'submit' => '전송', 'cancel' => '취소', 'remove' => '삭제', + 'invite' => '초대', + 'signup' => '가입', // Other 'optional' => '* 선택사항', diff --git a/resources/lang/ko/validation.php b/resources/lang/ko/validation.php index 1e3e6175..3a4f24af 100755 --- a/resources/lang/ko/validation.php +++ b/resources/lang/ko/validation.php @@ -45,10 +45,12 @@ return [ 'digits_between' => ':attribute 는 :min 과 :max 사이의 숫자 여야 합니다.', 'email' => ':attribute 는 유효한 이메일 주소 여야 합니다.', 'exists' => '선택된 :attribute 가 유효하지 않습니다.', + 'filled' => ':attribute 필드는 필수 항목입니다.', 'image' => ':attribute 는 이미지여야 합니다.', 'in' => '선택된 :attribute 는 유효하지 않습니다.', 'integer' => ':attribute 는 정수 여야 합니다.', 'ip' => ':attribute 는 유효한 IP 주소 여야 합니다.', + 'json' => ':attribute 는 유효한 JSON 문자열이어야 합니다.', 'max' => [ 'numeric' => ':attribute 는 :max 보다 클 수 없습니다.', 'file' => ':attribute 는 :max kilobytes 보다 클 수 없습니다.', @@ -80,9 +82,9 @@ return [ 'array' => ':attribute 는 :size 개의 항목을 포함해야 합니다.', ], 'string' => ':attribute 는 문자열 이어야 합니다.', + 'timezone' => ':attribute 는 유효한 영역이어야 합니다.', 'unique' => ':attribute 는 이미 사용되었습니다.', 'url' => ':attribute 형식이 올바르지 않습니다.', - 'timezone' => ':attribute 는 유효한 영역이어야 합니다.', /* |-------------------------------------------------------------------------- diff --git a/resources/lang/nl/cachet.php b/resources/lang/nl/cachet.php index 9699acc5..241758d2 100755 --- a/resources/lang/nl/cachet.php +++ b/resources/lang/nl/cachet.php @@ -15,18 +15,18 @@ return [ 'status' => [ 1 => 'Operationeel', 2 => 'Prestatieproblemen', - 3 => 'Gedeeltelijke storing', - 4 => 'Grote storing', + 3 => 'Gedeeltelijke Storing', + 4 => 'Grote Storing', ], ], // Incidents 'incidents' => [ - 'none' => 'Geen incidenten gemeld.', - 'past' => 'Incidenten in het verleden', + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', 'previous_week' => 'Vorige week', - 'next_week' => 'Volgende week', - 'none' => 'Geen incidenten gemeld.', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', 'scheduled' => 'Gepland onderhoud', 'scheduled_at' => ', gepland :timestamp', 'status' => [ @@ -47,52 +47,92 @@ return [ 'api' => [ 'regenerate' => 'Hergenereer API-sleutel', - 'revoke' => 'API-sleutel intrekken', + 'revoke' => 'API-sleutel Intrekken', ], // Metrics 'metrics' => [ 'filter' => [ 'last_hour' => 'Last Hour', - 'hourly' => 'Laatste 12 uren', - 'weekly' => 'Week', - 'monthly' => 'Maand', + 'hourly' => 'Laatste 12 uur', + 'weekly' => 'Wekelijks', + 'monthly' => 'Maandelijks', ], ], // Subscriber 'subscriber' => [ - 'subscribe' => 'Abonneer voor de meest recente updates.', + 'subscribe' => 'Subscribe to get the most recent updates', 'button' => 'Abonneer', 'email' => [ 'subscribe' => 'Abonneren op e-mail updates.', 'subscribed' => 'U bent geabonneerd op e-mailmeldingen, controleer uw e-mail om uw abonnement te bevestigen.', 'verified' => 'Uw e-mail abonnement is bevestigd. Bedankt!', - 'unsubscribe' => 'Afmelden voor e-mail updates.', + 'unsubscribe' => 'Unsubscribe from email updates.', 'unsubscribed' => 'Uw e-mail abonnement is opgezegd.', - 'failure' => 'Er ging iets fout tijdens het aanmelden.', + 'failure' => 'Er ging ging iets fout tijdens het aanmelden.', 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', 'verify' => [ - 'text' => 'Bevestig uw e-mail abonnement op :app_name status updates.\\n:link\\nBedankt, :app_name', + 'text' => "Bevestig uw e-mail abonnement op :app_name status updates.\n:link\nBedankt, :app_name", 'html-preheader' => 'Bevestig uw e-mail abonnement op :app_name status updates.', - 'html' => '', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', ], 'maintenance' => [ - 'text' => 'Nieuwe onderhoud is gepland voor :app_name.\\nBedankt, :app_name', + 'text' => "Nieuwe onderhoud is gepland voor :app_name.\nBedankt, :app_name", 'html-preheader' => 'Nieuw onderhoud is gepland voor :app_name.', - 'html' => '', + 'html' => '

New maintenance has been scheduled on :app_name.

', ], 'incident' => [ - 'text' => 'Nieuw incident is aangemeld op :app_name.\\nBedankt, :app_name', + 'text' => "Nieuw incident is aangemeld op :app_name.\nBedankt, :app_name", 'html-preheader' => 'Nieuw incident aangemeld op :app_name.', 'html' => '

Nieuw incident aangemeld op :app_name.

Bedankt, :app_name

', ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Gebruikersnaam', + 'email' => 'E-mail', + 'password' => 'Wachtwoord', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Abonneer', ], ], // Other - 'powered_by' => ': app statuspagina wordt mogelijk gemaakt door Cachet.', - 'about_this_site' => 'Over deze site', + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', 'rss-feed' => 'RSS', 'atom-feed' => 'Atom', 'feed' => 'Status Feed', diff --git a/resources/lang/nl/dashboard.php b/resources/lang/nl/dashboard.php index 59ca271b..b2a06551 100755 --- a/resources/lang/nl/dashboard.php +++ b/resources/lang/nl/dashboard.php @@ -21,35 +21,45 @@ return [ 'incident-create-template' => 'Maak template', 'incident-templates' => 'Incident Sjablonen', 'add' => [ - 'title' => 'Incident toevoegen', + 'title' => 'Add an Incident', 'success' => 'Incident toegevoegd.', 'failure' => 'Er ging iets mis met het incident.', ], 'edit' => [ - 'title' => 'Wijzig een incident', + 'title' => 'Edit an Incident', 'success' => 'Incident bijgewerkt.', 'failure' => 'Er ging iets mis met het incident.', ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], // Incident templates 'templates' => [ 'title' => 'Incident Sjablonen', 'add' => [ - 'title' => 'Een incident sjabloon maken', + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', 'success' => 'Sjabloon aangemaakt.', 'failure' => 'Er ging iets mis met het incident sjabloon.', ], 'edit' => [ - 'title' => 'Bewerk sjabloon', + 'title' => 'Edit Template', 'success' => 'Sjabloon is bijgewerkt!', 'failure' => 'Er ging iets mis bij het bijwerken van het sjabloon', ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], ], ], // Incident Maintenance 'schedule' => [ 'schedule' => 'Gepland onderhoud', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', 'scheduled_at' => 'Gepland op :timestamp', 'add' => [ 'title' => 'Gepland onderhoud toevoegen', @@ -73,31 +83,39 @@ return [ 'component_statuses' => 'Onderdeel statussen', 'listed_group' => 'Gegroepeerd onder :name', 'add' => [ - 'title' => 'Voeg een onderdeel toe', + 'title' => 'Add a Component', 'message' => 'Gelieve een onderdeel toe te voegen.', 'success' => 'Onderdeel aangemaakt.', 'failure' => 'Er ging iets mis met het onderdeel.', ], 'edit' => [ - 'title' => 'Een onderdeel bewerken', + 'title' => 'Edit a Component', 'success' => 'Onderdeel bijgewerkt.', 'failure' => 'Er ging iets mis met het onderdeel.', ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], // Component groups 'groups' => [ 'groups' => 'Onderdeel groep|Onderdeel groepen', 'no_components' => 'U moet een componentgroep toevoegen.', 'add' => [ - 'title' => 'Componentgroep toevoegen', + 'title' => 'Add a Component Group', 'success' => 'Onderdeel groep toegevoegd.', 'failure' => 'Er ging iets mis met de onderdeel groep.', ], 'edit' => [ - 'title' => 'Componentgroep bewerken', + 'title' => 'Edit a Component Group', 'success' => 'Componentgroep bijgewerkt.', 'failure' => 'Er ging iets mis met de componentgroep.', ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], ], ], @@ -105,31 +123,36 @@ return [ 'metrics' => [ 'metrics' => 'Statistieken', 'add' => [ - 'title' => 'Meting aanmaken', + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', 'success' => 'Meting aangemaakt.', 'failure' => 'Er ging iets mis met de meting.', ], 'edit' => [ - 'title' => 'Meting bewerken', + 'title' => 'Edit a Metric', 'success' => 'Meting bijgewerkt.', 'failure' => 'Er ging iets mis met de meting.', ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], ], // Subscribers 'subscribers' => [ - 'subscribers' => '', - 'description' => '', - 'verified' => '', - 'not_verified' => '', + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', 'add' => [ - 'title' => '', - 'success' => '', - 'failure' => '', + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Er ging iets mis met het onderdeel.', ], 'edit' => [ - 'title' => '', - 'success' => '', - 'failure' => '', + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Er ging iets mis tijdens het bijwerken.', ], ], @@ -140,18 +163,23 @@ return [ 'profile' => 'Profiel', 'description' => 'Teamleden zullen onderdelen en incidenten kunnen aanpassen & toevoegen.', 'add' => [ - 'title' => 'Voeg een nieuw teamlid toe', + 'title' => 'Add a New Team Member', 'success' => 'Teamlid toegevoegd.', - 'failure' => 'Er ging iets mis met het onderdeel.', + 'failure' => 'Something went wrong with the user.', ], 'edit' => [ - 'title' => 'Profiel bijwerken', + 'title' => 'Update Profile', 'success' => 'Profiel bijgewerkt.', 'failure' => 'Er ging iets mis tijdens het bijwerken.', ], 'delete' => [ - 'success' => '', - 'failure' => '', + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', ], ], @@ -207,7 +235,7 @@ return [ // Welcome modal 'welcome' => [ - 'welcome' => 'Welkom bij Cachet', + 'welcome' => 'Welcome to your status page!', 'message' => 'Uw statuspagina is bijna klaar! U kunt deze extra instellingen configureren', 'close' => 'Ga direct naar mijn dashboard', 'steps' => [ diff --git a/resources/lang/nl/forms.php b/resources/lang/nl/forms.php index 1fe83cc1..a21fb46e 100755 --- a/resources/lang/nl/forms.php +++ b/resources/lang/nl/forms.php @@ -21,7 +21,7 @@ return [ 'site_timezone' => 'Selecteer uw tijdzone', 'site_locale' => 'Selecteer uw taal', 'enable_google2fa' => 'Schakel Google twee factor authenticatie in', - 'cache_driver' => '', + 'cache_driver' => 'Cache Driver', 'session_driver' => 'Sessie Driver', ], @@ -31,7 +31,7 @@ return [ 'email' => 'E-mail', 'password' => 'Wachtwoord', '2fauth' => 'Authenticatie Code', - 'invalid' => 'Ongeldig e-mailadres of wachtwoord', + 'invalid' => 'Invalid username or password', 'invalid-token' => 'Ongeldig token', 'cookies' => 'U moet cookies inschakelen om in te loggen.', ], @@ -45,10 +45,10 @@ return [ 'message-help' => 'U kan ook gebruik maken van Markdown.', 'scheduled_at' => 'Voor wanneer is het onderhoud gepland?', 'incident_time' => 'Wanneer heeft dit incident plaatsgevonden?', - 'notify_subscribers' => 'Houd abonnees op de hoogte', + 'notify_subscribers' => 'Notify Subscribers?', 'visibility' => 'Incident Zichtbaarheid', 'public' => 'Zichtbaar voor publiek', - 'logged_in_only' => 'Alleen zichtbaar voor ingelogde gebruikers', + 'logged_in_only' => 'Only visible to logged in users', 'templates' => [ 'name' => 'Naam', 'template' => 'Sjabloon', @@ -68,7 +68,8 @@ return [ 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Naam', + 'name' => 'Naam', + 'collapsed' => 'Collapse the group by default?', ], ], @@ -79,10 +80,12 @@ return [ 'description' => 'Beschrijving', 'description-help' => 'Je mag ook Markdown gebruiken.', 'display-chart' => 'Grafiek tonen op statuspagina?', - 'default-value' => 'Standaardwaarde', - 'calc_type' => 'Berekening van metingen', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', 'type_sum' => 'Som', 'type_avg' => 'Gemiddelde', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', 'points' => [ 'value' => 'Waarde', @@ -99,23 +102,23 @@ return [ 'about-this-page' => 'Over deze pagina', 'days-of-incidents' => 'Hoeveel dagen moeten incidenten getoond worden?', 'banner' => 'Banner afbeelding', - 'banner-help' => 'Het wordt aanbevolen dat u geen bestanden upload die breeder zijn dan 930px.', + 'banner-help' => "Het wordt aanbevolen dat u geen bestanden upload die breeder zijn dan 930px.", 'subscribers' => 'Bezoekers toestaan om te abonneren op e-mail notificaties?', ], 'analytics' => [ - 'analytics_google' => 'Google Analytics-code', - 'analytics_gosquared' => 'GoSquared Analytics-code', - 'analytics_piwik_url' => 'URL van uw Piwik exemplaar (zonder http(s)://)', - 'analytics_piwik_siteid' => 'Site-id van Piwik', + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', ], 'localization' => [ - 'site-timezone' => 'Site tijdzone', - 'site-locale' => 'Taal van de site', - 'date-format' => 'Datum formaat', - 'incident-date-format' => 'Incident Tijdsaanduiding Formaat', + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', ], 'security' => [ - 'allowed-domains' => 'Toegestane domeinen', + 'allowed-domains' => 'Allowed Domains', 'allowed-domains-help' => 'Door komma\'s gescheiden. Het hierboven ingestelde domein is automatisch standaard toegelaten.', ], 'stylesheet' => [ @@ -123,10 +126,19 @@ return [ ], 'theme' => [ 'background-color' => 'Achtergrondkleur', - 'text-color' => 'Tekstkleur', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Tekstkleur', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', ], ], @@ -137,7 +149,12 @@ return [ 'api-token' => 'API-token', 'api-token-help' => 'Het opnieuw genereren van je API-token zorgt ervoor dat bestaande applicaties geen toegang meer hebben tot Cachet.', 'gravatar' => 'Change your profile picture at Gravatar.', - '2fa' => [ + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ 'help' => 'Het inschakelen van two-factor authenticatie verhoogt de veiligheid van uw account. U zult een applicatie zoals Google Authenticator of een vergelijkbare applicatie moeten downloaden op uw mobiele apparaat. Wanneer u inlogt wordt u gevraagd om een token in te voeren welke door de applicatie wordt gegenereerd.', ], 'team' => [ @@ -156,6 +173,8 @@ return [ 'submit' => 'Versturen', 'cancel' => 'Annuleren', 'remove' => 'Verwijderen', + 'invite' => 'Invite', + 'signup' => 'Sign Up', // Other 'optional' => '* Optioneel', diff --git a/resources/lang/nl/validation.php b/resources/lang/nl/validation.php index dfc67357..eb74b402 100755 --- a/resources/lang/nl/validation.php +++ b/resources/lang/nl/validation.php @@ -45,10 +45,12 @@ return [ 'digits_between' => ':attribute moet tussen :min en :max cijfers hebben.', 'email' => ':attribute moet een geldig e-mailadres zijn.', 'exists' => 'Het geselecteerde :attribute is ongeldig.', + 'filled' => ':attribute formaat is verplicht.', 'image' => ':attribute moet een afbeelding zijn.', 'in' => 'Het geselecteerde :attribute is ongeldig.', 'integer' => 'The :attribute moet een geheel getal zijn.', 'ip' => ':attribute moet een geldig IP-adres zijn.', + 'json' => 'The :attribute must be a valid JSON string.', 'max' => [ 'numeric' => ':attribute mag niet groter dan :max zijn.', 'file' => ':attribute mag niet groter dan :max kilobytes zijn.', @@ -80,9 +82,9 @@ return [ 'array' => ':attribute moet :size items bevatten.', ], 'string' => ':attribute een text waarde zijn.', + 'timezone' => ':attribute moet een geldige zone zijn.', 'unique' => ':attribute is reeds in gebruik.', 'url' => 'Het :attribute-formaat is ongeldig.', - 'timezone' => ':attribute moet een geldige zone zijn.', /* |-------------------------------------------------------------------------- diff --git a/resources/lang/no/cachet.php b/resources/lang/no/cachet.php new file mode 100644 index 00000000..9b88f847 --- /dev/null +++ b/resources/lang/no/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Ingen problemer', + 2 => 'Ytelsesproblemer', + 3 => 'Delvis brudd', + 4 => 'Større brudd', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Planlagt vedlikehold', + 'scheduled_at' => ', planlagt :timestamp', + 'status' => [ + 0 => 'Planlagt', // TODO: Hopefully remove this. + 1 => 'Undersøkes', + 2 => 'Identifisert', + 3 => 'Observerer', + 4 => 'Løst', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Regenerer API-nøkkel', + 'revoke' => 'Tilbakekall API-nøkkel', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Abonner', + 'email' => [ + 'subscribe' => 'Abonner for å motta varslinger på e-post.', + 'subscribed' => 'Du har abbonerer nå på epostvarslinger, sjekk din e-post for å bekrefte abboneringen.', + 'verified' => 'Ditt epost abonnement er bekreftet!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Din epostvarsling har blitt kansellert.', + 'failure' => 'Noe gikk galt med abonneringen.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Vennligst bekreft abboneringen på epostvarsling til :app_name.\n:link\nTakk, :app_name", + 'html-preheader' => 'Vennligst bekreft abonnering på epostvarsling til :app_name.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "Nytt vedlikehold er planlagt for :app_name.\nTakk, :app_name", + 'html-preheader' => 'Nytt vedlikehold er planlagt for: app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "En ny hendelse har blitt rapportert for :app_name.\nTakk, :app_name", + 'html-preheader' => 'En nye hendelse har blitt rapportert for: app_name.', + 'html' => '

En ny hendelse har blitt rapportert for :app_name.

Takk, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Epost', + 'password' => 'Passord', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Abonner', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/no/dashboard.php b/resources/lang/no/dashboard.php new file mode 100644 index 00000000..046204dd --- /dev/null +++ b/resources/lang/no/dashboard.php @@ -0,0 +1,251 @@ + 'Dashbord', + + // Incidents + 'incidents' => [ + 'title' => 'Hendelser & Timeplan', + 'incidents' => 'Hendelser', + 'logged' => '{0} Det er ingen hendelser, bra jobbet.|Du har en logget hendelse.|Du har rapportert :count hendelser.', + 'incident-create-template' => 'Opprett mal', + 'incident-templates' => 'Hendelsesmaler', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Hendelse lagt til.', + 'failure' => 'Noe gikk galt med hendelsen.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Hendelse oppdatert.', + 'failure' => 'Noe gikk halt med hendelsen.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Hendelsesmaler', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Mal opprettet.', + 'failure' => 'Noe gikk galt med hendelsesmalen.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Mal har blitt oppdatert!', + 'failure' => 'Noe gikk galt under oppdatering av hendelsesmal', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Planlagt vedlikehold', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Planlagt til :timestamp', + 'add' => [ + 'title' => 'Legg til planlagt vedlikehold', + 'success' => 'Plan lagt til.', + 'failure' => 'Noe gikk galt ved opprettelse av plan.', + ], + 'edit' => [ + 'title' => 'Endre planlagt vedlikehold', + 'success' => 'Plan har blitt oppdatert!', + 'failure' => 'Noe gikk galt ved redigering av plan.', + ], + 'delete' => [ + 'success' => 'PLanen har blitt slettet og vil ikke vises på din statusside.', + 'failure' => 'Planen kunne ikke slettes. Vennligst forsøk igjen.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Komponenter', + 'component_statuses' => 'Komponentstatus', + 'listed_group' => 'Gruppert under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'Du burde legge til en komponent.', + 'success' => 'Komponent lagt til.', + 'failure' => 'Noe gikk galt med komponenten.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Komponent oppdatert.', + 'failure' => 'Noe gikk galt med komponenten.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Komponentgruppe | Komponentgrupper', + 'no_components' => 'Du burde legge til en komponentgruppe.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Komponentgruppe lagt til.', + 'failure' => 'Noe gikk galt med komponentgruppen.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Komponentgruppe oppdatert.', + 'failure' => 'Noe gikk galt med komponentgruppen.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Beregninger', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Beregning opprettet.', + 'failure' => 'Noe gikk galt med beregningen.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Beregning oppdatert.', + 'failure' => 'Noe gikk galt med beregningen.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Noe gikk galt med komponenten.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Bruker', + 'profile' => 'Profil', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Innstillinger', + 'app-setup' => [ + 'app-setup' => 'Applikasjonsoppsett', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Sikkerhet', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stilark', + ], + 'theme' => [ + 'theme' => 'Tema', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Hjelp', + 'status_page' => 'Statusside', + 'logout' => 'Logg ut', + + // Notifications + 'notifications' => [ + 'notifications' => 'Varslinger', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/no/forms.php b/resources/lang/no/forms.php new file mode 100644 index 00000000..500b1b75 --- /dev/null +++ b/resources/lang/no/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Epost', + 'username' => 'Brukernavn', + 'password' => 'Passord', + 'site_name' => 'Nettstedsnavn', + 'site_domain' => 'Nettstedet domene', + 'site_timezone' => 'Velg tidssone', + 'site_locale' => 'Velg språk', + 'enable_google2fa' => 'Aktiver Google Two Factor Authentication', + 'cache_driver' => 'Cache-Driver', + 'session_driver' => 'Økt Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Epost', + 'password' => 'Passord', + '2fauth' => 'Godkjenningskode', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Ugyldig token', + 'cookies' => 'Du må aktivere informasjonskapsler for å logge inn.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Navn', + 'status' => 'Status', + 'component' => 'Komponent', + 'message' => 'Melding', + 'message-help' => 'Du kan også bruke Markdown.', + 'scheduled_at' => 'Når ønsker du å planlegge vedlikeholdet?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Navn', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Navn', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Navn', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Navn', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'Du kan også bruke Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Sidenavn', + 'site-url' => 'Nettsteds-URL', + 'display-graphs' => 'Vis grafer på statussiden?', + 'about-this-page' => 'Om denne siden', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "Det anbefales at du ikke laster opp bilder bredere enn 930 piksler.", + 'subscribers' => 'Tillatt brukere å melde seg inn for epostvarslinger?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Epost', + 'password' => 'Passord', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Lagre', + 'update' => 'Update', + 'create' => 'Opprett', + 'edit' => 'Rediger', + 'delete' => 'Slett', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Fjern', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/no/pagination.php b/resources/lang/no/pagination.php new file mode 100644 index 00000000..6e925d16 --- /dev/null +++ b/resources/lang/no/pagination.php @@ -0,0 +1,28 @@ + '« Forrige', + 'next' => 'Neste »', + +]; diff --git a/resources/lang/no/setup.php b/resources/lang/no/setup.php new file mode 100644 index 00000000..b98b9ddf --- /dev/null +++ b/resources/lang/no/setup.php @@ -0,0 +1,23 @@ + 'Setup', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Vis at du støtter Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/no/validation.php b/resources/lang/no/validation.php new file mode 100644 index 00000000..39fd97ba --- /dev/null +++ b/resources/lang/no/validation.php @@ -0,0 +1,119 @@ + ':attribute må være godkjent.', + 'active_url' => ':attribute er ikke en gyldig URL.', + 'after' => ':attribute må være en dato etter :date.', + 'alpha' => ':attribute kan kun inneholde bokstaver.', + 'alpha_dash' => ':attribute kan kun inneholde bokstaver, tall og bindestreker.', + 'alpha_num' => ':attribute kan bare inneholde bokstaver og tall.', + 'array' => ':attribute må være en matrise.', + 'before' => ':attribute må være en dato før :date.', + 'between' => [ + 'numeric' => ':attribute må være mellom :min og :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => ':attribute feltet må være true eller false.', + 'confirmed' => ':attribute bekreftelsen samsvarer ikke.', + 'date' => ':attribute er ikke en gyldig dato.', + 'date_format' => ':attribute matcher ikke formatet :format.', + 'different' => ':attribute og :other må være forskjellige.', + 'digits' => ':attribute må være :digits sifre.', + 'digits_between' => ':attribute må være mellom :min og :max sifre.', + 'email' => ':attribute må være en gyldig e-postadresse.', + 'exists' => 'Valgt :attribute er uyldig.', + 'filled' => ':attribute feltet kreves.', + 'image' => ':attribute må være et bilde.', + 'in' => 'Valgte :attribute er ugyldig.', + 'integer' => ':attribute må være en integer.', + 'ip' => ':attribute må være en gyldig IP-adresse.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => ':attribute kan ikke være større enn :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => ':attribute må være en fil av typen :values.', + 'min' => [ + 'numeric' => ':attribute må være minst :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'Valgte :attribute er ugyldig.', + 'numeric' => ':attribute må være et tall.', + 'regex' => ':attribute formatet er ugyldig.', + 'required' => ':attribute feltet kreves.', + 'required_if' => ':attribute feltet kreves når :other er :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => ':attribute feltet kreves når :values er til stede.', + 'required_with_all' => ':attribute feltet kreves når :values er til stede.', + 'required_without' => ':attribute feltet kreves når :values ikker er til stede.', + 'required_without_all' => ':attribute feltet kreves når ingen av :values er til stede.', + 'same' => ':attribute og :other må samsvare.', + 'size' => [ + 'numeric' => ':attribute må være :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => ':attribute må være en gyldig tidssone.', + 'unique' => ':attribute er allerede tatt.', + 'url' => ':attribute formatet er ugyldig.', + + /* + |-------------------------------------------------------------------------- + | 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' => 'tilpasset melding', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/pl/cachet.php b/resources/lang/pl/cachet.php index aeceda7a..cc23381e 100755 --- a/resources/lang/pl/cachet.php +++ b/resources/lang/pl/cachet.php @@ -13,28 +13,28 @@ return [ // Components 'components' => [ 'status' => [ - 1 => 'Działa', - 2 => 'Problemy wydajnościowe', - 3 => 'Częściowa niedostępność', - 4 => 'Poważna awaria', + 1 => 'Funktionsfähig', + 2 => 'Leistungsprobleme', + 3 => 'Teilweiser Ausfall', + 4 => 'Schwerer Ausfall', ], ], // Incidents 'incidents' => [ - 'none' => 'Brak incydentów.', - 'past' => 'Poprzednie incydenty', - 'previous_week' => 'Poprzedni tydzień', - 'next_week' => 'Następny tydzień', - 'none' => 'Brak incydentów', - 'scheduled' => 'Zapowiedziane prace', - 'scheduled_at' => ', scheduled :timestamp', + 'none' => 'Keine Vorfälle berichtet.', + 'past' => 'Vergangene Vorfälle', + 'previous_week' => 'Vorherige Woche', + 'next_week' => 'Nächste Woche', + 'none' => 'Keine Vorfälle berichtet.', + 'scheduled' => 'Geplante Wartungen', + 'scheduled_at' => ', geplant :timestamp', 'status' => [ - 0 => 'Planowy', // TODO: Hopefully remove this. - 1 => 'Szukanie', - 2 => 'Zidentyfikowany', - 3 => 'Obserwacja', - 4 => 'Naprawiony', + 0 => 'Geplant', // TODO: Hopefully remove this. + 1 => 'Untersuchungen laufen', + 2 => 'Identifiziert', + 3 => 'Unter Beobachtung', + 4 => 'Behoben', ], ], @@ -46,55 +46,95 @@ return [ ], 'api' => [ - 'regenerate' => 'Przegeneruj klucz API', - 'revoke' => 'Odwołaj klucz API', + 'regenerate' => 'API-Schlüssel neu generieren', + 'revoke' => 'API-Schlüssel widerrufen', ], // Metrics 'metrics' => [ 'filter' => [ 'last_hour' => 'Last Hour', - 'hourly' => 'Last 12 Hours', - 'weekly' => 'Week', - 'monthly' => 'Month', + 'hourly' => 'Letzte 12 Stunden', + 'weekly' => 'Wöchentlich', + 'monthly' => 'Monatlich', ], ], // Subscriber 'subscriber' => [ - 'subscribe' => 'Subscribe to get the most recent updates.', - 'button' => 'Subscribe', + 'subscribe' => 'Abonnieren Sie um die neuesten Updates zu erhalten.', + 'button' => 'Abonnieren', 'email' => [ - 'subscribe' => 'Subscribe to email updates.', - 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', - 'verified' => 'Your email subscription has been confirmed. Thank you!', - 'unsubscribe' => 'Unsuscribe from email updates.', - 'unsubscribed' => 'Your email subscription has been cancelled.', - 'failure' => 'Something went wrong with the subscription.', + 'subscribe' => 'Aktualisierungen per E-Mail abonnieren.', + 'subscribed' => 'Sie haben E-Mail-Benachrichtigungen abonniert, überprüfen Sie bitte Ihre E-Mail, um Ihr Abonnement zu bestätigen.', + 'verified' => 'Ihre E-Mail-Abonnement ist bestätigt worden. Danke!', + 'unsubscribe' => 'Von E-Mail-Updates deabonnieren.', + 'unsubscribed' => 'Ihre E-Mail-Abonnement wurde gekündigt.', + 'failure' => 'Etwas ist mit dem Abonnement schief gelaufen.', 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', 'verify' => [ - 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", - 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', - 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + 'text' => "Bitte bestätigen Sie Ihre E-Mail-Abonnement zu :app_name Status-Aktualisierungen.\n:link\nDanke, :app_name", + 'html-preheader' => 'Bitte bestätigen Sie Ihre E-Mail-Abonnement zu :app_name Status-Aktualisierungen.', + 'html' => '

Bestätigen Sie bitte Ihr E-Mail-Abonnement für :app_name Statusaktualisierungen.

:link

Danke, :app_name

', ], 'maintenance' => [ - 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", - 'html-preheader' => 'New maintenance has been scheduled on :app_name.', - 'html' => '

New maintenance has been scheduled on :app_name.

Thank you, :app_name

', + 'text' => "Neue Wartung wurde für :app_name geplant.\nDanke, :app_name", + 'html-preheader' => 'Neue Wartung wurde für :app_name geplant.', + 'html' => '

Neue Wartung wurde für :app_name geplant.

', ], 'incident' => [ - 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", - 'html-preheader' => 'New incident has been reported on :app_name.', - 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + 'text' => "Ein neuer Vorfall wurde auf :app_name berichtet.\nDanke, :app_name", + 'html-preheader' => 'Ein neuer Vorfall wurde über :app_name berichtet.', + 'html' => '

Ein neuer Vorfall wurde über :app_name berichtet.

Danke, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', ], ], ], + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Benutzername', + 'email' => 'E-Mail', + 'password' => 'Passwort', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Abonnieren', + ], + ], + // Other - 'powered_by' => ':app Status Page is powered by Cachet.', - 'about_this_site' => 'O tej stronie', - 'rss-feed' => 'RSS Feed', - 'atom-feed' => 'Atom Feed', - 'feed' => 'Status Feed', + 'powered_by' => ':app Status-Seite betrieben mit Cachet.', + 'about_this_site' => 'Über diese Seite', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status-Feed', ]; diff --git a/resources/lang/pl/dashboard.php b/resources/lang/pl/dashboard.php index d74fb150..88fbedbd 100755 --- a/resources/lang/pl/dashboard.php +++ b/resources/lang/pl/dashboard.php @@ -11,136 +11,185 @@ return [ - 'dashboard' => 'Panel sterowania', + 'dashboard' => 'Dashboard', // Incidents 'incidents' => [ - 'title' => 'Incydenty i kalendarz', - 'incidents' => 'Incydenty', - 'logged' => '{0} Brak incydentów, gratulacje.| Zapisałeś jeden incydent.|Zapisałeś :count incydentów.', - 'incident-create-template' => 'Utwórz szablon', - 'incident-templates' => 'Szablony incydentów', + 'title' => 'Ereignisse & Termine', + 'incidents' => 'Vorfälle', + 'logged' => '{0} Es gibt keine Vorfälle, gute Arbeit.|Du hast einen Vorfall gemeldet.|Du hast :count Vorfälle gemeldet.', + 'incident-create-template' => 'Vorlage erstellen', + 'incident-templates' => 'Vorfall Vorlagen', 'add' => [ - 'title' => 'Dodaj incydent', - 'success' => 'Incydent dodany.', - 'failure' => 'Coś poszło nie tak z incydentem.', + 'title' => 'Vorfall hinzufügen', + 'success' => 'Vorfall hinzugefügt.', + 'failure' => 'Etwas ist mit dem Vorfall schiefgelaufen.', ], 'edit' => [ - 'title' => 'Aktualizuj incydent', - 'success' => 'Incydent zaktualizowany.', - 'failure' => 'Coś poszło nie tak z incydentem.', + 'title' => 'Vorfall bearbeiten', + 'success' => 'Vorfall aktualisiert.', + 'failure' => 'Etwas ist mit dem Vorfall schiefgelaufen.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', ], // Incident templates 'templates' => [ - 'title' => 'Szablony incydentów', + 'title' => 'Vorfall Vorlagen', 'add' => [ - 'title' => 'Stwórz szablon incydentu.', - 'success' => 'Szablon utworzony.', - 'failure' => 'Coś poszło nie tak z szablonem incydentu.', + 'title' => 'Vorfallvorlage erstellen', + 'message' => 'You should add an Incident Template.', + 'success' => 'Vorlage erstellt.', + 'failure' => 'Etwas ist mit der Vorfallvorlage schiefgelaufen.', ], 'edit' => [ - 'title' => 'Edytuj szablon', - 'success' => 'Szablon został zaktualizowany!', - 'failure' => 'Coś poszło nie tak przy aktualizacji szablonu.', + 'title' => 'Vorlage bearbeiten', + 'success' => 'Vorlage aktualisiert!', + 'failure' => 'Etwas ist mit dem Updaten der Vorfallvorlage schiefgelaufen', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', ], ], ], // Incident Maintenance 'schedule' => [ - 'schedule' => 'Zaplanowana przerwa', - 'scheduled_at' => 'Zaplanowana data :timestamp', + 'schedule' => 'Geplante Wartungen', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Geplant am :timestamp', 'add' => [ - 'title' => 'Dodaj planową przerwę', - 'success' => 'Zaplanowana przerwa dodana.', - 'failure' => 'Coś poszło nie tak przy dodawaniu przerwy.', + 'title' => 'Planmäßige Wartung hinzufügen', + 'success' => 'Zeitplan hinzugefügt.', + 'failure' => 'Etwas ist mit dem hinzufügen des Zeitplanes schiefgelaufen.', ], 'edit' => [ - 'title' => 'Aktualizuj zaplanowaną przerwę', - 'success' => 'Przerwa zaktualizowana!', - 'failure' => 'Coś poszło nie tak przy aktualizacji przerwy.', + 'title' => 'Planmäßige Wartung bearbeiten', + 'success' => 'Zeitplan wurde aktualisiert!', + 'failure' => 'Etwas ist mit dem Bearbeiten des Zeitplanes schiefgelaufen.', ], 'delete' => [ - 'success' => 'Przerwa została skasowana i nie będzie pokazywana na stronie statusowej.', - 'failure' => 'Nie można było skasować przerwy. Spróbuj ponownie.', + 'success' => 'Der Zeitplan wurde gelöscht und wird nicht auf Ihrer Statusseite angezeigt.', + 'failure' => 'Der Zeitplan konnte nicht gelöscht werden. Bitte versuchen Sie es erneut.', ], ], // Components 'components' => [ - 'components' => 'Komponenty', - 'component_statuses' => 'Statusy komponentów', - 'listed_group' => 'Zgrupowane pod :name', + 'components' => 'Komponenten', + 'component_statuses' => 'Komponentenstatus', + 'listed_group' => 'Gruppiert unter :name', 'add' => [ - 'title' => 'Dodaj komponent', - 'message' => 'Powinieneś doddać komponent.', - 'success' => 'Komponent utworzony.', - 'failure' => 'Coś poszło nie tak przy tworzeniu komponentu.', + 'title' => 'Komponente hinzufügen', + 'message' => 'Sie sollten eine Komponente erstellen.', + 'success' => 'Komponente erstellt.', + 'failure' => 'Beim Erstellen der Komponente ist etwas schiefgegangen.', ], 'edit' => [ - 'title' => 'Edytuj komponent', - 'success' => 'Komponent zaktualizowany.', - 'failure' => 'Coś poszło nie tak przy aktualizacji komponent.', + 'title' => 'Komponente bearbeiten', + 'success' => 'Komponente aktualisiert.', + 'failure' => 'Beim Erstellen der Komponente ist etwas schiefgegangen.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', ], // Component groups 'groups' => [ - 'groups' => 'Grupa komponenów|Grupy komponentów', - 'no_components' => 'You should add a component group.', + 'groups' => 'Komponentgruppe|Komponentgruppen', + 'no_components' => 'Sie sollten eine Komponentengruppe hinzufügen.', 'add' => [ - 'title' => 'Dodaj grupę komponentów', - 'success' => 'Grupa komponentów utworzona.', - 'failure' => 'Coś poszło nie tak przy tworzeniu grupy.', + 'title' => 'Eine Komponentengruppe hinzufügen', + 'success' => 'Komponentengruppe hinzugefügt.', + 'failure' => 'Mit der Komponentengruppe ist etwas schiefgegangen.', ], 'edit' => [ - 'title' => 'Edytuj grupę komponentów', - 'success' => 'Grupa komponentów zaktualizaowana.', - 'failure' => 'Coś poszło nie tak przy aktualizacji grupy.', + 'title' => 'Komponentengruppe bearbeiten', + 'success' => 'Komponentengruppe aktualisiert.', + 'failure' => 'Mit der Komponentengruppe ist etwas schiefgegangen.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', ], ], ], // Metrics 'metrics' => [ - 'metrics' => 'Metryki', + 'metrics' => 'Metriken', 'add' => [ - 'title' => 'Utwórz metrykę', - 'success' => 'Metryka utworzona.', - 'failure' => 'Coś poszło nie tak z tworzeniem metryki.', + 'title' => 'Metrik erstellen', + 'message' => 'You should add a Metric.', + 'success' => 'Metrik erstellt.', + 'failure' => 'Mit der Metrik ist etwas schiefgegangen.', ], 'edit' => [ - 'title' => 'Edytuj metrykę', - 'success' => 'Metryka zaktualizowana.', - 'failure' => 'Coś poszło nie tak przy aktualizacji metryki.', + 'title' => 'Metrik bearbeiten', + 'success' => 'Metrik aktualisiert.', + 'failure' => 'Mit der Metrik ist etwas schiefgegangen.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Abonnenten', + 'description' => 'Abonnenten erhalten E-Mail Updates wenn Vorfälle erstellt werden.', + 'verified' => 'Verifiziert', + 'not_verified' => 'Nicht verifiziert', + 'add' => [ + 'title' => 'Einen neuen Abonnenten hinzufügen', + 'success' => 'Abonnent hinzugefügt.', + 'failure' => 'Beim Erstellen der Komponente ist etwas schiefgegangen.', + ], + 'edit' => [ + 'title' => 'Abonnent aktualisieren', + 'success' => 'Abonnent aktualisiert.', + 'failure' => 'Bei der Aktualisierung ging etwas schief.', ], ], // Team 'team' => [ - 'team' => 'Zespół', - 'member' => 'Członek', + 'team' => 'Team', + 'member' => 'Mitglied', 'profile' => 'Profil', - 'description' => 'Członkowie zespołu będą mogli dodawać i modyfikować komponenty i incydenty.', + 'description' => 'Teammitglieder werden die Möglichkeit haben, Komponente sowie Vorfälle hinzuzufügen und zu verändern.', 'add' => [ - 'title' => 'Dodaj nowego członka zespołu', - 'success' => 'Dodano członka zespołu.', - 'failure' => 'Coś poszło nie tak z dodawaniem do zespołu.', + 'title' => 'Neues Teammitglied hinzufügen', + 'success' => 'Teammitglied hinzugefügt.', + 'failure' => 'Mit der Komponente ist etwas schiefgegangen.', ], 'edit' => [ - 'title' => 'Aktualizuj profil', - 'success' => 'Profil zaktualizowany.', - 'failure' => 'Coś poszło nie tak przy aktualizacji.', + 'title' => 'Profil aktualisieren', + 'success' => 'Profil aktualisiert.', + 'failure' => 'Bei der Aktualisierung ging etwas schief.', + ], + 'delete' => [ + 'success' => 'Benutzer aktualisiert.', + 'failure' => 'Bei dem Löschen dieses Benutzers ging etwas schief.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', ], ], // Settings 'settings' => [ - 'settings' => 'Ustawienia', + 'settings' => 'Einstellungen', 'app-setup' => [ - 'app-setup' => 'Ustawienia aplikacji', - 'images-only' => 'Można wgrywać tylko pliki graficzne.', - 'too-big' => 'Wgrany plik jest zbyt duży. Wgraj plik mnijeszy niż :size', + 'app-setup' => 'Anwendungsinstallation', + 'images-only' => 'Es können nur Bilder hochgeladen werden.', + 'too-big' => 'Die von Ihnen hochgeladene Datei ist zu groß. Laden Sie ein Bild welches kleiner als :size ist hoch', ], 'analytics' => [ 'analytics' => 'Analytics', @@ -149,53 +198,53 @@ return [ 'localization' => 'Localization', ], 'security' => [ - 'security' => 'Bezpieczeństwo', - 'two-factor' => 'Użytkownicy bez autentykacji dwuetapowej', + 'security' => 'Sicherheit', + 'two-factor' => 'Nutzer ohne Zwei-Faktor-Authentifizierung', ], 'stylesheet' => [ 'stylesheet' => 'Stylesheet', ], 'theme' => [ - 'theme' => 'Skórka', + 'theme' => 'Theme', ], 'edit' => [ - 'success' => 'Ustawienia zapisane.', - 'failure' => 'Ustawienia nie mogły być zapisane.', + 'success' => 'Einstellungen gespeichert.', + 'failure' => 'Einstellungen konnten nicht gespeichert werden.', ], ], // Login 'login' => [ - 'login' => 'Zaloguj', - 'logged_in' => 'Jesteś zalogowany.', - 'welcome' => 'Witam ponownie!', - 'two-factor' => 'Wpisz swój kod.', + 'login' => 'Anmelden', + 'logged_in' => 'Sie sind angemeldet.', + 'welcome' => 'Willkommen zurück!', + 'two-factor' => 'Bitte geben Sie Ihren Token ein.', ], // Sidebar footer - 'help' => 'Pomoc', - 'status_page' => 'Strona statusu', - 'logout' => 'Wyloguj', + 'help' => 'Hilfe', + 'status_page' => 'Statusseite', + 'logout' => 'Abmelden', // Notifications 'notifications' => [ - 'notifications' => 'Powiadomienia', - 'awesome' => 'Super.', - 'whoops' => 'Ojej.', + 'notifications' => 'Benachrichtigungen', + 'awesome' => 'Großartig.', + 'whoops' => 'Hoppla.', ], // Welcome modal 'welcome' => [ - 'welcome' => 'Witamy w Cachet', - 'message' => 'Twoja strona statusowa jest już prawie gotowa! Możesz skonfigurować dodatkowe ustawienia', - 'close' => 'Przejdź do mojego panelu', + 'welcome' => 'Welcome to your status page!', + 'message' => 'Ihre Statusseite ist fast fertig! Vielleicht möchten Sie diese zusätzlichen Einstellungen konfigurieren', + 'close' => 'Gehe einfach direkt zu meinem Dashboard', 'steps' => [ - 'component' => 'Utwórz komponenty', - 'incident' => 'Utwórz incydenty', - 'customize' => 'Personalizacja', - 'team' => 'Dodaj użytkowników', - 'api' => 'Wygeneruj token API', - 'two-factor' => 'Autentykacja dwuetapowa', + 'component' => 'Komponenten erstellen', + 'incident' => 'Vorfälle erstellen', + 'customize' => 'Personalisieren', + 'team' => 'Benutzer hinzufügen', + 'api' => 'API Token generieren', + 'two-factor' => 'Zwei-Faktor-Authentifizierung', ], ], diff --git a/resources/lang/pl/forms.php b/resources/lang/pl/forms.php index c564f43f..173ad5e8 100755 --- a/resources/lang/pl/forms.php +++ b/resources/lang/pl/forms.php @@ -13,73 +13,82 @@ return [ // Setup form fields 'setup' => [ - 'email' => 'Email', - 'username' => 'Użytkownik', - 'password' => 'Hasło', - 'site_name' => 'Nazwa strony', - 'site_domain' => 'Domena strony', - 'site_timezone' => 'Wybierz swoją strefę czasową', - 'site_locale' => 'Wybierz swól język', - 'enable_google2fa' => 'Włącz dwuetapową autentykację Google', + 'email' => 'E-Mail', + 'username' => 'Benutzername', + 'password' => 'Passwort', + 'site_name' => 'Seitenname', + 'site_domain' => 'Domain ihrer Seite', + 'site_timezone' => 'Wählen Sie Ihre Zeitzone', + 'site_locale' => 'Wählen Sie Ihre Sprache', + 'enable_google2fa' => 'Google Zwei-Faktor-Authentifizierung aktivieren', + 'cache_driver' => 'Cache-Treiber', + 'session_driver' => 'Sitzungs-Treiber', ], // Login form fields 'login' => [ 'login' => 'Username or Email', - 'email' => 'Email', - 'password' => 'Hasło', - '2fauth' => 'Kod autentykacji', - 'invalid' => 'Nieprawidłowy email lub hasło', - 'invalid-token' => 'Nieprawidłowy kod', - 'cookies' => 'You must enable cookies to login.', + 'email' => 'E-Mail', + 'password' => 'Passwort', + '2fauth' => 'Authentifizierungscode', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Token ist ungültig', + 'cookies' => 'Sie müssen Cookies aktivieren um sich anzumelden.', ], // Incidents form fields 'incidents' => [ - 'name' => 'Nazwa', - 'status' => 'Status', - 'component' => 'Komponent', - 'message' => 'Wiadomość', - 'message-help' => 'Możesz skorzystać z Markdown.', - 'scheduled_at' => 'Na kiedy zaplanować przerwę?', - - 'templates' => [ - 'name' => 'Nazwa', - 'template' => 'Szablon', + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Komponente', + 'message' => 'Nachricht', + 'message-help' => 'Sie können auch Markdown verwenden.', + 'scheduled_at' => 'Für wann ist die Wartung geplant?', + 'incident_time' => 'Wann ist dieser Vorfall aufgetreten?', + 'notify_subscribers' => 'Abonnenten benachrichtigen', + 'visibility' => 'Vorfall Sichtbarkeit', + 'public' => 'Öffentlich sichtbar', + 'logged_in_only' => 'Nur für angemeldete Benutzer sichtbar', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Vorlage', 'twig' => 'Incident Templates can make use of the Twig templating language.', ], ], // Components form fields 'components' => [ - 'name' => 'Nazwa', + 'name' => 'Name', 'status' => 'Status', - 'group' => 'Grupa', - 'description' => 'Opis', + 'group' => 'Gruppe', + 'description' => 'Beschreibung', 'link' => 'Link', - 'tags' => 'Tagi', - 'tags-help' => 'Rozdzielone przecinkiem.', + 'tags' => 'Schlagwörter', + 'tags-help' => 'Durch Kommata trennen.', 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Nazwa', + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', ], ], // Metric form fields 'metrics' => [ - 'name' => 'Nazwa', - 'suffix' => 'Jednostka', - 'description' => 'Opis', - 'description-help' => 'Możesz skorzystać z Markdown.', - 'display-chart' => 'Wyświetlać wykres na panelu głównym?', - 'default-value' => 'Domyślna wartość', - 'calc_type' => 'Sposób kalkulacji metryki', - 'type_sum' => 'Suma', - 'type_avg' => 'Średnia', + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Beschreibung', + 'description-help' => 'Sie können auch Markdown verwenden.', + 'display-chart' => 'Diagramm auf der Statusseite anzeigen?', + 'default-value' => 'Standardwert', + 'calc_type' => 'Berechnung der Metrik', + 'type_sum' => 'Summe', + 'type_avg' => 'Durchschnitt', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', 'points' => [ - 'value' => 'Wartość', + 'value' => 'Wert', ], ], @@ -87,52 +96,66 @@ return [ 'settings' => [ /// Application setup 'app-setup' => [ - 'site-name' => 'Nazwa strony', - 'site-url' => 'Adres URL strony', - 'display-graphs' => 'Wyświetlać wykresy na panelu głównym?', - 'about-this-page' => 'O tej stronie', - 'days-of-incidents' => 'Ile dni incydentów pokazywać?', - 'banner' => 'Obrazek z logo', - 'banner-help' => 'Zaleca się wrzuać pliki nie szersze niż 930px.', + 'site-name' => 'Seitenname', + 'site-url' => 'URL ihrer Seite', + 'display-graphs' => 'Graphen auf der Statusseite anzeigen?', + 'about-this-page' => 'Über diese Seite', + 'days-of-incidents' => 'Wie viele Tage mit Vorfällen sollen gezeigt werden?', + 'banner' => 'Banner', + 'banner-help' => "Es wird empfohlen, dass Sie keine Dateien die breiter als 930 Pixel sind hochladen .", + 'subscribers' => 'Personen die Anmeldung für E-Mail-Benachrichtigung erlauben?', ], 'analytics' => [ - 'analytics_google' => 'Google Analytics code', - 'analytics_gosquared' => 'GoSquared Analytics code', - 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', - 'analytics_piwik_siteid' => 'Piwik\'s site id', + 'analytics_google' => 'Google Analytics Code', + 'analytics_gosquared' => 'GoSquared Analytics Code', + 'analytics_piwik_url' => 'URL der Piwik-Instanz (ohne http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s Seiten-ID', ], 'localization' => [ - 'site-timezone' => 'Strefa czasowa', - 'site-locale' => 'Język', - 'date-format' => 'Format daty', - 'incident-date-format' => 'Incident Timestamp Format', + 'site-timezone' => 'Zeitzone ihrer Seite', + 'site-locale' => 'Sprache ihrer Seite', + 'date-format' => 'Datumsformat', + 'incident-date-format' => 'Vorfall Zeitstempel-Format', ], 'security' => [ - 'allowed-domains' => 'Dozwolone domenyw', - 'allowed-domains-help' => 'Oddzielone przecinkiem. Domena ustawiona powyżej jest dozwolona domyślnie.', + 'allowed-domains' => 'Erlaubte Domains', + 'allowed-domains-help' => 'Durch Kommata trennen. Die oben genannte Domain ist standardmäßig erlaubt.', ], 'stylesheet' => [ - 'custom-css' => 'Własny Stylesheet', + 'custom-css' => 'Benutzerdefiniertes Stylesheet', ], 'theme' => [ - 'background-color' => 'Kolor tła', - 'text-color' => 'Kolor tekstu', - 'dashboard-login' => 'Show dashboard button in the footer?', + 'background-color' => 'Hintergrundfarbe', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Schriftfarbe', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', ], ], 'user' => [ - 'username' => 'Nazwa użytkownika', - 'email' => 'Email', - 'password' => 'Hasło', - 'api-token' => 'Klucz API', - 'api-token-help' => 'Zregenerowanie twojego klucza API uniemożliwi dostęp istniejących aplikacji do Cachet.', + 'username' => 'Benutzername', + 'email' => 'E-Mail', + 'password' => 'Passwort', + 'api-token' => 'API Token', + 'api-token-help' => 'Wenn sie ihren API-Token neu generieren, können bestehende Anwendungen nicht mehr auf Cachet zugreifen.', 'gravatar' => 'Change your profile picture at Gravatar.', - '2fa' => [ - 'help' => 'Aktywacja dwuetapowej autentykacji zwiększą bezpieczeństwo twojego konta. Musisz ściągnąć Google Authenticator lub podobną aplikację na swój telefon. Przy logowaniu będziesz proszony o podanie kodu wygenerowanego przez tą aplikację.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Die Zwei-Faktor-Authentifizierung erhöht die Sicherheit Ihres Kontos. Sie benötigen Google Authenticator oder eine ähnliche App auf Ihrem Mobilgerät. Beim Anmelden werden sie aufgefordert, einen Token einzugeben, der von der App generiert wird.', ], 'team' => [ 'description' => 'Invite your team members by entering their email addresses here.', @@ -141,16 +164,18 @@ return [ ], // Buttons - 'add' => 'Dodaj', - 'save' => 'Zapisz', - 'update' => 'Aktualizuj', - 'create' => 'Swtórz', - 'edit' => 'Edytuj', - 'delete' => 'Skasuj', - 'submit' => 'Wyślij', - 'cancel' => 'Anuluj', - 'remove' => 'Usuń', + 'add' => 'Hinzufügen', + 'save' => 'Speichern', + 'update' => 'Aktualisieren', + 'create' => 'Erstellen', + 'edit' => 'Bearbeiten', + 'delete' => 'Löschen', + 'submit' => 'Abschicken', + 'cancel' => 'Abbrechen', + 'remove' => 'Entfernen', + 'invite' => 'Invite', + 'signup' => 'Sign Up', // Other - 'optional' => '* Opcjonalny', + 'optional' => '* optional', ]; diff --git a/resources/lang/pl/pagination.php b/resources/lang/pl/pagination.php index 3006cb19..0ce21e3e 100755 --- a/resources/lang/pl/pagination.php +++ b/resources/lang/pl/pagination.php @@ -22,7 +22,7 @@ return [ | */ - 'previous' => '« Poprzednia', - 'next' => 'Następna »', + 'previous' => '« Zurück', + 'next' => 'Vor »', ]; diff --git a/resources/lang/pl/setup.php b/resources/lang/pl/setup.php index 0c1d15bc..f8853b91 100755 --- a/resources/lang/pl/setup.php +++ b/resources/lang/pl/setup.php @@ -10,13 +10,14 @@ */ return [ - 'setup' => 'Konfiguracja', - 'title' => 'Skonfiguruj Cachet', - 'service_details' => 'Szczegóły serwisu', - 'status_page_setup' => 'Konfiguracja strony statusowej', - 'show_support' => 'Okaż wsparcie dla Cachet?', - 'admin_account' => 'Konto administratora', - 'complete_setup' => 'Konfiguracja zakończona', - 'completed' => 'Cachet został skonfigurowany pomyślnie!', - 'finish_setup' => 'Przejdź do panelu', + 'setup' => 'Installation', + 'title' => 'Cachet installieren', + 'service_details' => 'Servicedetails', + 'env_setup' => 'Einrichtung der Systemumgebung', + 'status_page_setup' => 'Statusseite einrichten', + 'show_support' => 'Möchten Sie Cachet unterstützen?', + 'admin_account' => 'Administratorkonto', + 'complete_setup' => 'Installation abschließen', + 'completed' => 'Cachet wurde erfolgreich konfiguriert!', + 'finish_setup' => 'Zum Dashboard wechseln', ]; diff --git a/resources/lang/pl/validation.php b/resources/lang/pl/validation.php index 67259c57..2984f1f0 100755 --- a/resources/lang/pl/validation.php +++ b/resources/lang/pl/validation.php @@ -22,67 +22,69 @@ return [ | */ - 'accepted' => 'The :attribute must be accepted.', - 'active_url' => 'The :attribute is not a valid URL.', - 'after' => 'The :attribute must be a date after :date.', - 'alpha' => 'The :attribute may only contain letters.', - 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', - 'alpha_num' => 'The :attribute may only contain letters and numbers.', - 'array' => 'The :attribute must be an array.', - 'before' => 'The :attribute must be a date before :date.', + 'accepted' => ':attribute muss akzeptiert werden.', + 'active_url' => ':attribute ist keine gültige Internet-Adresse.', + 'after' => ':attribute muss ein Datum nach dem :date sein.', + 'alpha' => ':attribute darf nur aus Buchstaben bestehen.', + 'alpha_dash' => ':attribute darf nur aus Buchstaben, Zahlen, Binde- und Unterstrichen bestehen. Umlaute (ä, ö, ü) und Eszett (ß) sind nicht erlaubt.', + 'alpha_num' => ':attribute darf nur aus Buchstaben, Zahlen, Binde- und Unterstrichen bestehen. Umlaute (ä, ö, ü) und Eszett (ß) sind nicht erlaubt.', + 'array' => ':attribute muss ein Array sein.', + 'before' => ':attribute muss ein Datum vor dem :date sein.', 'between' => [ - 'numeric' => 'The :attribute must be between :min and :max.', - 'file' => 'The :attribute must be between :min and :max kilobytes.', - 'string' => 'The :attribute must be between :min and :max characters.', - 'array' => 'The :attribute must have between :min and :max items.', + 'numeric' => ':attribute muss zwischen :min & :max liegen.', + 'file' => ':attribute muss zwischen :min & :max Kilobytes groß sein.', + 'string' => ':attribute muss zwischen :min & :max Zeichen lang sein.', + 'array' => ':attribute muss zwischen :min & :max Elemente haben.', ], - 'boolean' => 'The :attribute field must be true or false.', - 'confirmed' => 'The :attribute confirmation does not match.', - 'date' => 'The :attribute is not a valid date.', - 'date_format' => 'The :attribute does not match the format :format.', - '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.', - 'email' => 'The :attribute must be a valid email address.', - 'exists' => 'The selected :attribute is invalid.', - 'image' => 'The :attribute must be an image.', - 'in' => 'The selected :attribute is invalid.', - 'integer' => 'The :attribute must be an integer.', - 'ip' => 'The :attribute must be a valid IP address.', + 'boolean' => ':attribute muss entweder \'true\' oder \'false\' sein.', + 'confirmed' => ':attribute stimmt nicht mit der Bestätigung überein.', + 'date' => ':attribute muss ein gültiges Datum sein.', + 'date_format' => ':attribute entspricht nicht dem gültigen Format für :format.', + 'different' => ':attribute und :other müssen sich unterscheiden.', + 'digits' => ':attribute muss :digits Stellen haben.', + 'digits_between' => ':attribute muss zwischen :min und :max Stellen haben.', + 'email' => ':attribute muss eine gültige E-Mail Adresse sein.', + 'exists' => 'Der gewählte Wert für :attribute ist ungültig.', + 'filled' => ':attribute muss ausgefüllt sein.', + 'image' => ':attribute muss ein Bild sein.', + 'in' => 'Wybrane pole :attribute jest nieprawidłowe.', + 'integer' => ':attribute muss eine ganze Zahl sein.', + 'ip' => ':attribute muss eine gültige IP-Adresse sein.', + 'json' => 'The :attribute must be a valid JSON string.', 'max' => [ - 'numeric' => 'The :attribute may not be greater than :max.', - 'file' => 'The :attribute may not be greater than :max kilobytes.', - 'string' => 'The :attribute may not be greater than :max characters.', - 'array' => 'The :attribute may not have more than :max items.', + 'numeric' => ':attribute darf maximal :max sein.', + 'file' => ':attribute darf maximal :max Kilobytes groß sein.', + 'string' => ':attribute darf maximal :max Zeichen haben.', + 'array' => ':attribute darf nicht mehr als :max Elemente haben.', ], - 'mimes' => 'The :attribute must be a file of type: :values.', + 'mimes' => ':attribute muss den Dateityp :values haben.', 'min' => [ - 'numeric' => 'The :attribute must be at least :min.', - 'file' => 'The :attribute must be at least :min kilobytes.', - 'string' => 'The :attribute must be at least :min characters.', - 'array' => 'The :attribute must have at least :min items.', + 'numeric' => ':attribute muss mindestens :min sein.', + 'file' => ':attribute muss mindestens :min Kilobytes groß sein.', + 'string' => ':attribute muss mindestens :min Zeichen lang sein.', + 'array' => ':attribute muss mindestens :min Elemente haben.', ], - 'not_in' => 'The selected :attribute is invalid.', - 'numeric' => 'The :attribute must be a number.', - 'regex' => 'The :attribute format is invalid.', - 'required' => 'The :attribute field is required.', - 'required_if' => 'The :attribute field is required when :other is :value.', + 'not_in' => 'Wybrane pole :attribute jest nieprawidłowe.', + 'numeric' => ':attribute muss eine Zahl sein.', + 'regex' => ':attribute Format ist ungültig.', + 'required' => ':attribute muss ausgefüllt sein.', + 'required_if' => ':attribute muss ausgefüllt sein wenn :other :value ist.', '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 is 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.', + 'required_with' => ':attribute muss angegeben werden wenn :values ausgefüllt wurde.', + 'required_with_all' => 'Pole :attribute jest wymagane kiedy obecne jest :values.', + 'required_without' => ':attribute muss angegeben werden wenn :values nicht ausgefüllt wurde.', + 'required_without_all' => ':attribute muss angegeben werden wenn keines der Felder :values ausgefüllt wurde.', + 'same' => ':attribute und :other müssen übereinstimmen.', 'size' => [ - 'numeric' => 'The :attribute must be :size.', - 'file' => 'The :attribute must be :size kilobytes.', - 'string' => 'The :attribute must be :size characters.', - 'array' => 'The :attribute must contain :size items.', + 'numeric' => ':attribute muss gleich :size sein.', + 'file' => ':attribute muss :size Kilobytes groß sein.', + 'string' => ':attribute muss :size Zeichen lang sein.', + 'array' => ':attribute muss :size Elemente beinhalten.', ], - 'string' => 'The :attribute must be a string.', - 'unique' => 'The :attribute has already been taken.', - 'url' => 'The :attribute format is invalid.', - 'timezone' => 'The :attribute must be a valid zone.', + 'string' => ':attribute muss eine Zeichenfolge sein.', + 'timezone' => ':attribute muss eine gültige Zeitzone sein.', + 'unique' => ':attribute ist schon vergeben.', + 'url' => 'Format atrybutu ":attribute" jest nieprawidłowy.', /* |-------------------------------------------------------------------------- @@ -97,7 +99,7 @@ return [ 'custom' => [ 'attribute-name' => [ - 'rule-name' => 'custom-message', + 'rule-name' => 'Individuelle Nachricht', ], ], diff --git a/resources/lang/pt-BR/cachet.php b/resources/lang/pt-BR/cachet.php index e9bcfe95..05730f50 100755 --- a/resources/lang/pt-BR/cachet.php +++ b/resources/lang/pt-BR/cachet.php @@ -22,15 +22,15 @@ return [ // Incidents 'incidents' => [ - 'none' => 'Nenhum incidente reportado.', - 'past' => 'Incidentes anteriores', - 'previous_week' => 'Semana anterior', - 'next_week' => 'Próxima semana', - 'none' => 'Nenhum incidente reportado.', - 'scheduled' => 'Manutenção agendada', - 'scheduled_at' => 'Manutenção agendada em :timestamp', + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Manutenção Agendada', + 'scheduled_at' => ', agendada :timestamp', 'status' => [ - 0 => 'Agendada', // TODO: Hopefully remove this. + 0 => 'Agendado', // TODO: Hopefully remove this. 1 => 'Investigando', 2 => 'Identificado', 3 => 'Observando', @@ -54,46 +54,87 @@ return [ 'metrics' => [ 'filter' => [ 'last_hour' => 'Last Hour', - 'hourly' => 'Últimas 12 horas', - 'weekly' => 'Semana', - 'monthly' => 'Mês', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', ], ], // Subscriber 'subscriber' => [ - 'subscribe' => 'Inscreva-se para receber as atualizações mais recentes', - 'button' => 'Inscrever', + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Inscreva-se', 'email' => [ - 'subscribe' => 'Inscreva-se para receber emails com atualizações.', - 'subscribed' => 'Você se inscreveu e receberá as notificações por email, verifique sua caixa de entrada para confirmar a inscrição.', - 'verified' => 'Sua inscrição foi confirmada. Obrigado!', - 'unsubscribe' => 'Cancelar a inscrição', - 'unsubscribed' => 'Sua inscrição foi cancelada.', - 'failure' => 'Algo deu errado com sua inscrição', - 'verify' => [ - 'text' => "Por favor, confirme a inscrição para :app_name .\n:link\nObrigado, :app_name", - 'html-preheader' => 'Por favor, confirme a inscrição para :app_name.', - 'html' => '

Por favor, confirme a inscrição para :app_name.

:link

Obrigado, :app_name

', + 'subscribe' => 'Inscreva-se para atualizações via e-mail.', + 'subscribed' => 'Inscrição realizada com sucesso! Por favor verifique o e-mail que enviamos à você para confirmar sua inscrição.', + 'verified' => 'Sua inscrição foi confirmada! Obrigado!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Sua inscrição foi cancelada.', + 'failure' => 'Ocorreu um problema na sua inscrição.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Por favor confirme seu e-mail para receber as atualizações do :app_name .\n:link\nAtenciosamente, :app_name", + 'html-preheader' => 'Por favor confirme seu e-mail para receber as atualizações do :app_name.', + 'html' => '

Por favor confirme seu cadastro para receber atualizações do :app_name.

:link

Atenciosamente, :app_name

', ], 'maintenance' => [ - 'text' => "Nova manutenção agendada para :app_name.\nObrigado, :app_name", - 'html-preheader' => 'Nova manutenção agendada para :app_name.', - 'html' => '

Nova manutenção agendada para :app_name.

Obrigado, :app_name

', + 'text' => "Uma manutenção do aplicativo :app_name foi agendada. \n Atenciosamente, :app_name", + 'html-preheader' => 'Uma manutenção do aplicativo :app_name foi agendada.', + 'html' => '

Uma nova manutenção para o aplicativo :app_name foi agendada.

', ], 'incident' => [ - 'text' => "Novo incidente relatado em :app_name.\nObrigado, :app_name", - 'html-preheader' => 'Novo incidente relatado em :app_name.', - 'html' => '

Novo incidente relatado em :app_name.

Obrigado, :app_name

', + 'text' => "Um novo incidente foi reportado no aplicativo :app_name.\n Atenciosamente, :app_name", + 'html-preheader' => 'Um novo incidente foi reportado no aplicativo :app_name.', + 'html' => '

Um novo incidente foi reportado no aplicativo :app_name.

Obrigado, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', ], ], ], + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Usuário', + 'email' => 'Email', + 'password' => 'Senha', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Inscreva-se', + ], + ], + // Other - 'powered_by' => ':app Esta Status Page é fornecida por Cachet.', - 'about_this_site' => 'Sobre este site', - 'rss-feed' => 'RSS Feed', - 'atom-feed' => 'Atom Feed', + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', 'feed' => 'Status Feed', ]; diff --git a/resources/lang/pt-BR/dashboard.php b/resources/lang/pt-BR/dashboard.php index 0ac19642..db4d8072 100755 --- a/resources/lang/pt-BR/dashboard.php +++ b/resources/lang/pt-BR/dashboard.php @@ -15,39 +15,43 @@ return [ // Incidents 'incidents' => [ - 'title' => 'Incidentes & Agendamentos', + 'title' => 'Incidentes & Agenda', 'incidents' => 'Incidentes', 'logged' => '{0} Não existem incidentes, bom trabalho.|Você registrou um incidente.|Você reportou :count incidentes.', 'incident-create-template' => 'Criar template', 'incident-templates' => 'Template de incidentes', 'add' => [ - 'title' => 'Adicionar um incidente', + 'title' => 'Add an Incident', 'success' => 'Incidente adicionado.', 'failure' => 'Algo deu errado com o incidente.', ], 'edit' => [ - 'title' => 'Editar incidente', + 'title' => 'Edit an Incident', 'success' => 'Incidente atualizado.', 'failure' => 'Algo deu errado com o incidente.', ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], // Incident templates 'templates' => [ - 'title' => 'Incidentes Templates', + 'title' => 'Template de incidentes', 'add' => [ - 'title' => 'Criar um template de incidente', - 'message' => 'Você deve adicionar um template de incidente.', + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', 'success' => 'Template criado.', - 'failure' => 'Ocorreu algum erro ao criar o template, tente novamente.', + 'failure' => 'Algo deu errado com o template de incidente.', ], 'edit' => [ - 'title' => 'Editar Template', + 'title' => 'Edit Template', 'success' => 'Template foi atualizado!', - 'failure' => 'Ocorreu algum erro ao editar o template, tente novamente.', + 'failure' => 'Algo deu errado atualizando o template de incidente', ], 'delete' => [ - 'success' => 'O Template foi deletado.', - 'failure' => 'Ocorreu algum erro ao deletar o template, tente novamente.', + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', ], ], ], @@ -55,20 +59,21 @@ return [ // Incident Maintenance 'schedule' => [ 'schedule' => 'Manutenção Agendada', - 'scheduled_at' => 'Manutenção agendada em :timestamp ', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Agendada em :timestamp', 'add' => [ - 'title' => 'Adicionar manutenção agendada', - 'success' => 'Agendamento atualizado com sucesso!', - 'failure' => 'Algo deu errado com o agendamento.', + 'title' => 'Adicionar manutenção programada', + 'success' => 'Agenda adicionada.', + 'failure' => 'Aconteceu algo errado ao adicionar o cronograma.', ], 'edit' => [ - 'title' => 'Editar manutenção agendada', - 'success' => 'Agendamento atualizado com sucesso!', - 'failure' => 'Algo deu errado com a atualização do agendamento.', + 'title' => 'Editar manutenção programada', + 'success' => 'Agenda foi atualizada!', + 'failure' => 'Aconteceu algo errado ao editar o cronograma.', ], 'delete' => [ - 'success' => 'O agendamento foi excluído e não será exibido na página de status.', - 'failure' => 'O agendamento não pode ser excluído. Por favor, tente novamente.', + 'success' => 'O cronograma foi excluído e não aparecerá na sua página de status.', + 'failure' => 'O cronograma não pôde ser excluído. Por favor, tente novamente.', ], ], @@ -76,65 +81,78 @@ return [ 'components' => [ 'components' => 'Componentes', 'component_statuses' => 'Status do componente', - 'listed_group' => 'Agrupados por :name', + 'listed_group' => 'Agrupados sob :name', 'add' => [ - 'title' => 'Adicionar componente', + 'title' => 'Add a Component', 'message' => 'Você deve adicionar um componente.', 'success' => 'Componente criado.', 'failure' => 'Algo deu errado com o componente.', ], 'edit' => [ - 'title' => 'Editar componente', + 'title' => 'Edit a Component', 'success' => 'Componente atualizado.', - 'failure' => 'Algo deu errado com a atualização do componente.', + 'failure' => 'Algo deu errado com o componente.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', ], // Component groups 'groups' => [ 'groups' => 'Grupo de componente|Grupos de componente', - 'no_components' => 'Você deve adicionar um grupo de componentes.', + 'no_components' => 'Você deve adicionar um componente à um grupo.', 'add' => [ - 'title' => 'Adicionar um grupo de componentes', + 'title' => 'Add a Component Group', 'success' => 'Grupo de componente adicionado.', 'failure' => 'Algo deu errado com o grupo de componente.', ], 'edit' => [ - 'title' => 'Editar grupo de componentes', - 'success' => 'Grupo de compoenentes atualizado.', - 'failure' => 'Algo deu errado com a atualização do grupo de componentes.', + 'title' => 'Edit a Component Group', + 'success' => 'Grupo de componentes atualizado.', + 'failure' => 'Algo deu errado com o grupo de componentes.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', ], ], ], // Metrics 'metrics' => [ - 'metrics' => 'Métricas', + 'metrics' => 'Metricas', 'add' => [ - 'title' => 'Criar uma métrica', + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', 'success' => 'Métrica criada.', - 'failure' => 'Algo deu errado ao criar a métrica.', + 'failure' => 'Algo deu errado com a métrica.', ], 'edit' => [ - 'title' => 'Editar métrica', + 'title' => 'Edit a Metric', 'success' => 'Métrica atualizada.', - 'failure' => 'Algo deu errado ao atualizar a métrica.', + 'failure' => 'Algo deu errado com a métrica.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', ], ], // Subscribers 'subscribers' => [ - 'subscribers' => 'Assinantes', - 'description' => 'Os assinantes receberão um alerta quando os incidentes forem criados.', + 'subscribers' => 'Inscritos', + 'description' => 'Todos os inscritos receberão atualizações quando novos incidentes forem criados.', 'verified' => 'Verificado', 'not_verified' => 'Não verificado', 'add' => [ - 'title' => 'Adicionar novo assinante', - 'success' => 'Assinante adicionado', - 'failure' => 'Algo deu errado ao adicionar o assinate.', + 'title' => 'Add a New Subscriber', + 'success' => 'Inscrito adicionado.', + 'failure' => 'Algo deu errado com o componente.', ], 'edit' => [ - 'title' => 'Editar assinante', - 'success' => 'Assinante atualizado.', - 'failure' => 'Algo deu errado ao atualizar o assinante.', + 'title' => 'Update Subscriber', + 'success' => 'Inscrito atualizado.', + 'failure' => 'Algo deu errado duante a atualização.', ], ], @@ -142,21 +160,26 @@ return [ 'team' => [ 'team' => 'Equipe', 'member' => 'Membro', - 'profile' => 'Perfil', + 'profile' => 'Perfil ', 'description' => 'Membros da equipe serão capazes de adicionar, modificar & editar componentes e incidentes.', 'add' => [ - 'title' => 'Adicionar um novo membro da equipe', + 'title' => 'Add a New Team Member', 'success' => 'Membro da equipe adicionado.', - 'failure' => 'Algo deu errado com o componente.', + 'failure' => 'Something went wrong with the user.', ], 'edit' => [ - 'title' => 'Editar perfil', + 'title' => 'Update Profile', 'success' => 'Perfil atualizado.', 'failure' => 'Algo deu errado duante a atualização.', ], 'delete' => [ - 'success' => 'Perfil excluído', - 'failure' => 'Algo deu errado ao excluir o perfil.', + 'success' => 'User deleted.', + 'failure' => 'Ocorreu um problema ao excluir esse usuário.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', ], ], @@ -172,10 +195,11 @@ return [ 'analytics' => 'Analytics', ], 'localization' => [ - 'localization' => 'Localização', + 'localization' => 'Localization', ], 'security' => [ - 'security' => 'Segurança', + 'security' => 'Segurança', + 'two-factor' => 'Usuários sem autenticação de dois fatores', ], 'stylesheet' => [ 'stylesheet' => 'Folha de estilo', @@ -206,13 +230,13 @@ return [ 'notifications' => [ 'notifications' => 'Notificações', 'awesome' => 'Excelente.', - 'whoops' => 'Ops.', + 'whoops' => 'Opa.', ], // Welcome modal 'welcome' => [ - 'welcome' => 'Bem-vindo ao Cachet', - 'message' => 'Sua página de status está quase pronta! Tavez você queira checar essas configurações extras', + 'welcome' => 'Welcome to your status page!', + 'message' => 'Sua página de status está quase pronta! Tavez vocë queira checar essas configurações extras', 'close' => 'Basta ir direto para o meu painel de controle', 'steps' => [ 'component' => 'Criar componentes', @@ -220,7 +244,7 @@ return [ 'customize' => 'Personalizar', 'team' => 'Adicionar usuários', 'api' => 'Gerar token de API', - 'two-factor' => 'Autneticação em 2 passos', + 'two-factor' => 'Autenticação em duas etapas', ], ], diff --git a/resources/lang/pt-BR/forms.php b/resources/lang/pt-BR/forms.php index 3bf9c4b2..7eb325ef 100755 --- a/resources/lang/pt-BR/forms.php +++ b/resources/lang/pt-BR/forms.php @@ -31,9 +31,9 @@ return [ 'email' => 'Email', 'password' => 'Senha', '2fauth' => 'Código de autenticação', - 'invalid' => 'E-mail ou senha inválidos', + 'invalid' => 'Invalid username or password', 'invalid-token' => 'Token inválido', - 'cookies' => 'Você precisa habilitar os cookies para acessar.', + 'cookies' => 'Você deve habilitar os cookies do navegador para logar.', ], // Incidents form fields @@ -43,12 +43,12 @@ return [ 'component' => 'Componente', 'message' => 'Mensagem', 'message-help' => 'Você também pode usar o Markdown.', - 'scheduled_at' => 'Agendado em :timestamp', - 'incident_time' => 'Quando o incidente ocorreu?', - 'notify_subscribers' => 'Notificar asssinantes', - 'visibility' => 'Visível', - 'public' => 'Visível pelo público', - 'logged_in_only' => 'Visível apenas para usuários logados', + 'scheduled_at' => 'Agendar a manutenção para quando?', + 'incident_time' => 'Quando esse incidente ocorreu?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'VIsibilidade do incidente', + 'public' => 'Visível para todos', + 'logged_in_only' => 'Only visible to logged in users', 'templates' => [ 'name' => 'Nome', 'template' => 'Template', @@ -68,7 +68,8 @@ return [ 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Nome', + 'name' => 'Nome', + 'collapsed' => 'Collapse the group by default?', ], ], @@ -77,13 +78,14 @@ return [ 'name' => 'Nome', 'suffix' => 'Sufixo', 'description' => 'Descrição', - 'description-help' => 'Você pode usar Markdown.', - 'display-chart' => 'Exibir gráficos na página de status?', - 'default-value' => 'Valor padrão', - 'calc_type' => 'Cálculo de métricas', + 'description-help' => 'Você também pode usar Markdown.', + 'display-chart' => 'Exibir o gráfico na página de status?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', 'type_sum' => 'Soma', 'type_avg' => 'Média', - 'places' => 'Casas decimais', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', 'points' => [ 'value' => 'Valor', @@ -98,25 +100,25 @@ return [ 'site-url' => 'URL do site', 'display-graphs' => 'Exibir gráficos na página de status?', 'about-this-page' => 'Sobre esta página', - 'days-of-incidents' => 'Exibir quantos dias de incidentes?', + 'days-of-incidents' => 'Quantos dias de incidentes para mostrar?', 'banner' => 'Imagem do banner', - 'banner-help' => 'É recomendável que você faça upload de arquivos menores que 930px.', - 'subscribers' => 'Permitir assinaturas de notificações por email?', + 'banner-help' => "É recomendável que você faça upload de arquivos menores que 930px .", + 'subscribers' => 'Permitir que outras pessoas se cadastrem para notificações via e-mail?', ], 'analytics' => [ - 'analytics_google' => 'Código do Google Ananlytics', - 'analytics_gosquared' => 'Código do GoSquared Analytics', - 'analytics_piwik_url' => 'URL do Piwik (sem http(s)://)', - 'analytics_piwik_siteid' => 'ID do Piwik', + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', ], 'localization' => [ - 'site-timezone' => 'Fuso horário do site', - 'site-locale' => 'Idioma do site', - 'date-format' => 'Formato da Data', - 'incident-date-format' => 'Formato da data para incidentes', + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', ], 'security' => [ - 'allowed-domains' => 'Domínios permitidos', + 'allowed-domains' => 'Allowed Domains', 'allowed-domains-help' => 'Separados por vírgula. O domínio definido acima é permitido automaticamente por padrão.', ], 'stylesheet' => [ @@ -124,18 +126,18 @@ return [ ], 'theme' => [ 'background-color' => 'Cor de fundo', - 'background-fills' => 'Preenchimento do fundo (Componentes, Incidentes, Rodapé)', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', 'banner-background-color' => 'Banner Background Color', 'banner-padding' => 'Banner Padding', 'fullwidth-banner' => 'Enable fullwidth banner?', - 'text-color' => 'Cor do texto', - 'dashboard-login' => 'Exibir o botão do dashboard no rodapé?', - 'reds' => 'Vermelho (Utilizado para erros)', - 'blues' => 'Azul (utilizado para informações)', - 'greens' => 'Verde (Utilizado para sucesso)', - 'yellows' => 'Amarelo (Utilizado para alertas)', - 'oranges' => 'Larange (Utilizado para notícias)', - 'metrics' => 'Métricas', + 'text-color' => 'Cor do Texto', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', 'links' => 'Links', ], ], @@ -145,15 +147,15 @@ return [ 'email' => 'Email', 'password' => 'Senha', 'api-token' => 'Token da API', - 'api-token-help' => 'Gerar nova chave da API impedirá que aplicativos existentes acessem o Cachet.', - 'gravatar' => 'Alterar sua foto do perfil no Gravatar.', - 'user_level' => 'Nível de Usuário', + 'api-token-help' => 'Regenerar a chave da API impedirá que aplicativos existentes acessem o Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', 'levels' => [ - 'admin' => 'Administrador', - 'user' => 'Usuário', + 'admin' => 'Admin', + 'user' => 'User', ], - '2fa' => [ - 'help' => 'Ativar a autenticação de dois fatores aumenta a segurança de sua conta. Você vai precisar baixar Google Authenticator ou um app similar em seu dispositivo móvel. Quando você entrar, será solicitado um token gerado pelo app.', + '2fa' => [ + 'help' => 'Ativando autenticação de dois fatores aumenta a segurança de sua conta. Você vai precisar baixar Google Authenticator ou um app similar em seu dispositivo móvel. Quando você entrar você será solicitado um token gerado pelo app.', ], 'team' => [ 'description' => 'Invite your team members by entering their email addresses here.', @@ -171,6 +173,8 @@ return [ 'submit' => 'Enviar', 'cancel' => 'Cancelar', 'remove' => 'Remover', + 'invite' => 'Invite', + 'signup' => 'Sign Up', // Other 'optional' => '* Opcional', diff --git a/resources/lang/pt-BR/setup.php b/resources/lang/pt-BR/setup.php index 915e0ce2..87c3265a 100755 --- a/resources/lang/pt-BR/setup.php +++ b/resources/lang/pt-BR/setup.php @@ -13,9 +13,9 @@ return [ 'setup' => 'Configuração', 'title' => 'Configurar o Cachet', 'service_details' => 'Detalhes do serviço', - 'env_setup' => 'Configuração do Ambiente', + 'env_setup' => 'Configurações do Ambiente', 'status_page_setup' => 'Configuração da página de status', - 'show_support' => 'Mostrar apoio ao Cachet?', + 'show_support' => 'Exibir mensagem de "Feito por Cachet"?', 'admin_account' => 'Conta de administrador', 'complete_setup' => 'Configuração completa', 'completed' => 'Cachet foi configurado com sucesso!', diff --git a/resources/lang/pt-BR/validation.php b/resources/lang/pt-BR/validation.php index c07924a1..0a8480b5 100755 --- a/resources/lang/pt-BR/validation.php +++ b/resources/lang/pt-BR/validation.php @@ -45,10 +45,12 @@ return [ 'digits_between' => 'O :attribute deve ter entre :min e :max dígitos.', 'email' => 'A: attribute deve ser um endereço de email válido.', 'exists' => 'O :attribute selecionado é inválido.', + 'filled' => 'O campo de :attribute é obrigatório.', 'image' => 'O :attribute deve ser uma imagem.', 'in' => 'O :attribute selecionado é inválido.', 'integer' => 'O :attribute deve ser um número inteiro.', 'ip' => 'O :attribute deve ser um endereço de IP válido.', + 'json' => 'The :attribute must be a valid JSON string.', 'max' => [ 'numeric' => 'O :attribute não pode ser maior do que :max.', 'file' => 'O campo :attribute não deverá ter um tamanho superior a :max kilobytes.', @@ -79,10 +81,10 @@ return [ 'string' => 'O :attribute deve ter :size caracteres.', 'array' => 'O :attribute deve ter :size itens.', ], - 'string' => 'O :attribute deve ser uma string.', + 'string' => 'O campo :attribute deve ser uma string.', + 'timezone' => 'O :attribute deve ser uma zona válida.', 'unique' => 'O :attribute já existe.', 'url' => 'O formato de :attribute é inválido.', - 'timezone' => 'O :attribute deve ser uma zona válida.', /* |-------------------------------------------------------------------------- @@ -97,7 +99,7 @@ return [ 'custom' => [ 'attribute-name' => [ - 'rule-name' => 'Mensagem personalizada', + 'rule-name' => 'Mensagem-personalizada', ], ], diff --git a/resources/lang/pt-PT/cachet.php b/resources/lang/pt-PT/cachet.php new file mode 100644 index 00000000..b8e78fdf --- /dev/null +++ b/resources/lang/pt-PT/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Operacional', + 2 => 'Problemas de performance', + 3 => 'Indisponibilidade parcial', + 4 => 'Indisponibilidade total', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nenhum incidente reportado.', + 'past' => 'Incidentes anteriores', + 'previous_week' => 'Semana anterior', + 'next_week' => 'Próxima semana', + 'none' => 'Nenhum incidente reportado.', + 'scheduled' => 'Manutenção Agendada', + 'scheduled_at' => ', agendada :timestamp', + 'status' => [ + 0 => 'Agendada', // TODO: Hopefully remove this. + 1 => 'Investigando', + 2 => 'Identificado', + 3 => 'Observando', + 4 => 'Resolvido', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Gerar nova chave de API', + 'revoke' => 'Revogar a chave de API', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Últimas 12 horas', + 'weekly' => 'Semana', + 'monthly' => 'Mês', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Inscreva-se para obter as atualizações mais recentes', + 'button' => 'Subscrever', + 'email' => [ + 'subscribe' => 'Subscrever actualizações via email.', + 'subscribed' => 'Subscreveu as notificações por e-mail, por favor verifique o seu e-mail para confirmar a subscrição.', + 'verified' => 'A sua subscrição por e-mail foi confirmada. Obrigado!', + 'unsubscribe' => 'Remover subscrição de e-mail.', + 'unsubscribed' => 'A sua subscrição de e-mail foi cancelada.', + 'failure' => 'Algo correu mal com a sua subscrição.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Por favor confirme a sua subscrição de e-mail para as actualizações :app_name .\n:link\nObrigado, :app_name", + 'html-preheader' => 'Por favor confirme a sua subscrição de e-mail para as notificações de actualização de estado :app_name.', + 'html' => '

Por favor, confirme sua assinatura de e-mail para atualizações de status para :app_name.

: link

Obrigado, :app_name

', + ], + 'maintenance' => [ + 'text' => "Uma nova manutenção foi agendada - :app_name.\nObrigado, :app_name", + 'html-preheader' => 'Uma nova manutenção foi agendada em :app_name.', + 'html' => '

Nova manutenção foi agendada na :app_name.

', + ], + 'incident' => [ + 'text' => "Foi reportado um novo incidente - :app_name.\nObrigado, :app_name", + 'html-preheader' => 'Novo incidente reportado - :app_name.', + 'html' => '

Novo incidente reportado - :app_name.

Obrigado, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "Você foi convidado para a equipa :app_name página de status, para se inscrever siga o próximo link.\n:link\nObrigado, :app_name", + 'html-preheader' => 'Você foi convidado para a equipa :app_name.', + 'html' => '

Foi convidado para a equipa :app_name página de status, para se inscrever siga o seguinte link.

:link

Obrigado, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Registrar', + 'username' => 'Usuário', + 'email' => 'E-mail', + 'password' => 'Palavra passe', + 'success' => 'A sua conta foi criada.', + 'failure' => 'Aconteceu algo de errado com a inscrição.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscrever', + ], + ], + + // Other + 'powered_by' => ':app Página Status é promovida por Cachet.', + 'about_this_site' => 'Sobre este Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Feed de Estado', + +]; diff --git a/resources/lang/pt-PT/dashboard.php b/resources/lang/pt-PT/dashboard.php new file mode 100644 index 00000000..0afa0aef --- /dev/null +++ b/resources/lang/pt-PT/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidentes & Agendamentos', + 'incidents' => 'Ocorrências', + 'logged' => '{0} Não existem incidentes, bom trabalho.|Você registrou um incidente.|Você reportou :count incidentes.', + 'incident-create-template' => 'Criar template', + 'incident-templates' => 'Template de incidentes', + 'add' => [ + 'title' => 'Adicionar um incidente', + 'success' => 'Incidente adicionado.', + 'failure' => 'Algo deu errado com o incidente.', + ], + 'edit' => [ + 'title' => 'Editar um incidente', + 'success' => 'Incidente atualizado.', + 'failure' => 'Algo deu errado com o incidente.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Template de incidentes', + 'add' => [ + 'title' => 'Criar um modelo de incidente', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template criado.', + 'failure' => 'Algo deu errado com o template de incidente.', + ], + 'edit' => [ + 'title' => 'Editar Modelo', + 'success' => 'Template foi atualizado!', + 'failure' => 'Algo deu errado atualizando o template de incidente', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Manutenção Agendada', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Agendada em :timestamp', + 'add' => [ + 'title' => 'Adicionar Manutenção Agendada', + 'success' => 'Agendamento adicionado.', + 'failure' => 'Algo correu mal ao criar o agendamento.', + ], + 'edit' => [ + 'title' => 'Editar Manutenção Agendada', + 'success' => 'Agendamento actualizado!', + 'failure' => 'Algo correu mal ao editar o agendamento.', + ], + 'delete' => [ + 'success' => 'O agendamento foi eliminado e não será mostrado na sua página de estado.', + 'failure' => 'O agendamento não pôde ser eliminado. Por favor tente de novo.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Componentes', + 'component_statuses' => 'Status do componente', + 'listed_group' => 'Agrupado em :name', + 'add' => [ + 'title' => 'Adicionar um Componente', + 'message' => 'Você deve adicionar um componente.', + 'success' => 'Componente criado.', + 'failure' => 'Algo deu errado com o componente.', + ], + 'edit' => [ + 'title' => 'Editar um Componente', + 'success' => 'Componente atualizado.', + 'failure' => 'Algo deu errado com o componente.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Grupo de componente|Grupos de componente', + 'no_components' => 'Deverá adicionar um grupo de componente.', + 'add' => [ + 'title' => 'Adicionar um grupo de componentes', + 'success' => 'Grupo de componente adicionado.', + 'failure' => 'Algo deu errado com o grupo de componente.', + ], + 'edit' => [ + 'title' => 'Editar um grupo de Componentes', + 'success' => 'Grupo de componente actualizado.', + 'failure' => 'Algo correu mal com o grupo de componente.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metricas', + 'add' => [ + 'title' => 'Criar uma métrica', + 'message' => 'You should add a Metric.', + 'success' => 'Métrica criada.', + 'failure' => 'Algo correu mal com a métrica.', + ], + 'edit' => [ + 'title' => 'Editar uma métrica', + 'success' => 'Métrica actualizada.', + 'failure' => 'Algo correu mal com a métrica.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Assinantes', + 'description' => 'Os Assinantes receberão atualizações por email quando incidentes são criados.', + 'verified' => 'Verificado', + 'not_verified' => 'Não Verificado', + 'add' => [ + 'title' => 'Adicionar um novo assinante', + 'success' => 'Assinante adicionado.', + 'failure' => 'Algo deu errado com o componente.', + ], + 'edit' => [ + 'title' => 'Actualizar Assinante', + 'success' => 'Assinante atualizado.', + 'failure' => 'Algo deu errado duante a atualização.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Equipe', + 'member' => 'Membro', + 'profile' => 'Perfil ', + 'description' => 'Membros da equipe serão capazes de adicionar, modificar & editar componentes e incidentes.', + 'add' => [ + 'title' => 'Adicionar um novo membro de equipa', + 'success' => 'Membro da equipe adicionado.', + 'failure' => 'Houve algo de errado com o utilizador.', + ], + 'edit' => [ + 'title' => 'Atualizar Perfil', + 'success' => 'Perfil atualizado.', + 'failure' => 'Algo deu errado duante a atualização.', + ], + 'delete' => [ + 'success' => 'Utilizador apagado.', + 'failure' => 'Houve algo de errado ao apagar o utilizador.', + ], + 'invite' => [ + 'title' => 'Convidar um novo membro de equipa', + 'success' => 'Os utilizadores convidados.', + 'failure' => 'Houve algo de errado com o convite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Configurações', + 'app-setup' => [ + 'app-setup' => 'Instalação do aplicativo', + 'images-only' => 'Somente imagens podem ser carregadas.', + 'too-big' => 'O arquivo que você carregou é muito grande. Envie uma imagem inferior à :size', + ], + 'analytics' => [ + 'analytics' => 'Analítica', + ], + 'localization' => [ + 'localization' => 'Localização', + ], + 'security' => [ + 'security' => 'Segurança', + 'two-factor' => 'Utilizados sem factor de dupla autenticação', + ], + 'stylesheet' => [ + 'stylesheet' => 'Folha de estilo', + ], + 'theme' => [ + 'theme' => 'Tema', + ], + 'edit' => [ + 'success' => 'Configurações salvas.', + 'failure' => 'Não foi possível salvar as configurações.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Entrar', + 'logged_in' => 'Você está logado.', + 'welcome' => 'Bem-vindo de volta!', + 'two-factor' => 'Por favor insira o seu token.', + ], + + // Sidebar footer + 'help' => 'Ajuda', + 'status_page' => 'Página de status', + 'logout' => 'Sair', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notificações', + 'awesome' => 'Excelente.', + 'whoops' => 'Opa.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Sua página de status está quase pronta! Tavez vocë queira checar essas configurações extras', + 'close' => 'Basta ir direto para o meu painel de controle', + 'steps' => [ + 'component' => 'Criar componentes', + 'incident' => 'Criar incidentes', + 'customize' => 'Personalizar', + 'team' => 'Adicionar usuários', + 'api' => 'Gerar token de API', + 'two-factor' => 'Autenticação de 2 Factores', + ], + ], + +]; diff --git a/resources/lang/pt-PT/forms.php b/resources/lang/pt-PT/forms.php new file mode 100644 index 00000000..70248e7e --- /dev/null +++ b/resources/lang/pt-PT/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'E-mail', + 'username' => 'Usuário', + 'password' => 'Palavra passe', + 'site_name' => 'Nome do site', + 'site_domain' => 'Domínio do site', + 'site_timezone' => 'Selecione o seu fuso horário', + 'site_locale' => 'Selecione seu idioma', + 'enable_google2fa' => 'Habilitar a autenticação de dois fatores do Google', + 'cache_driver' => 'Driver de Cache', + 'session_driver' => 'Driver de Sessão', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Endereço de Correio', + 'password' => 'Senha', + '2fauth' => 'Código de autenticação', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Token inválido', + 'cookies' => 'Deverá activar cookies para efectuar autenticação.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Nome', + 'status' => 'Estado', + 'component' => 'Componente', + 'message' => 'Mensagem', + 'message-help' => 'Você também pode usar o Markdown.', + 'scheduled_at' => 'Para quando pretende agendar a manutenção?', + 'incident_time' => 'Quando é que este incidente ocorreu?', + 'notify_subscribers' => 'Notificar subscritores?', + 'visibility' => 'Visibilidade do Incidente', + 'public' => 'Visível ao Publico', + 'logged_in_only' => 'Apenas visível para users autenticados', + 'templates' => [ + 'name' => 'Nome', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Nome', + 'status' => 'Estado', + 'group' => 'Grupo', + 'description' => 'Descrição', + 'link' => 'Link', + 'tags' => 'Marcações', + 'tags-help' => 'Separados por vírgulas.', + 'enabled' => 'Componente activado?', + + 'groups' => [ + 'name' => 'Nome', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Nome', + 'suffix' => 'Sufixo', + 'description' => 'Descrição', + 'description-help' => 'Poderá também usar Markdown.', + 'display-chart' => 'Mostrar gráfico na página de estado?', + 'default-value' => 'Valor Padrão', + 'calc_type' => 'Cálculo de Métricas', + 'type_sum' => 'Soma', + 'type_avg' => 'Média', + 'places' => 'Casas Decimais', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Valor', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Nome do site', + 'site-url' => 'URL do site', + 'display-graphs' => 'Mostrar gráficos na página de estado?', + 'about-this-page' => 'Sobre esta página', + 'days-of-incidents' => 'Quantos dias de incidentes para mostrar?', + 'banner' => 'Imagem do banner', + 'banner-help' => "É recomendável que você faça upload de arquivos menores que 930px .", + 'subscribers' => 'Permitir que as pessoas subscrevam as notificações?', + ], + 'analytics' => [ + 'analytics_google' => 'Código do Google Analytics', + 'analytics_gosquared' => 'Código do GoSquared Analytics', + 'analytics_piwik_url' => 'URL da instância do Piwik (sem http(s)://)', + 'analytics_piwik_siteid' => 'ID do site Piwik', + ], + 'localization' => [ + 'site-timezone' => 'Fuso horário do site', + 'site-locale' => 'Idioma do site', + 'date-format' => 'Formato da Data', + 'incident-date-format' => 'Formato da Hora do Incidente', + ], + 'security' => [ + 'allowed-domains' => 'Domínios permitidos', + 'allowed-domains-help' => 'Separados por vírgula. O domínio definido acima é permitido automaticamente por padrão.', + ], + 'stylesheet' => [ + 'custom-css' => 'Folha de estilos personalizada', + ], + 'theme' => [ + 'background-color' => 'Cor de fundo', + 'background-fills' => 'Preenchimento de Fundo (Componentes, Incidentes, Rodapé)', + 'banner-background-color' => 'Cor de Fundo do banner', + 'banner-padding' => 'Espaçamento do Banner', + 'fullwidth-banner' => 'Habilitar largura completa do banner?', + 'text-color' => 'Cor do Texto', + 'dashboard-login' => 'Mostrar botão para painel no rodapé?', + 'reds' => 'Vermelho (Usado para erros)', + 'blues' => 'Azul (usado para informações)', + 'greens' => 'Verde (Usado para sucesso)', + 'yellows' => 'Amarelo (Usado para alertas)', + 'oranges' => 'Laranga (Usado para avisos)', + 'metrics' => 'Preenchimento de Métricas', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Usuário', + 'email' => 'E-mail', + 'password' => 'Senha', + 'api-token' => 'Token da API', + 'api-token-help' => 'Regenerar a chave da API impedirá que aplicativos existentes acessem o Cachet.', + 'gravatar' => 'Altere a foto de perfil no Gravatar.', + 'user_level' => 'Nível do Utilizador', + 'levels' => [ + 'admin' => 'Administrador', + 'user' => 'Utilizador', + ], + '2fa' => [ + 'help' => 'Ativando autenticação de dois fatores aumenta a segurança de sua conta. Você vai precisar baixar Google Authenticator ou um app similar em seu dispositivo móvel. Quando você entrar você será solicitado um token gerado pelo app.', + ], + 'team' => [ + 'description' => 'Convide membros da sua equipa através do endereço de e-mail aqui.', + 'email' => 'Email', + ], + ], + + // Buttons + 'add' => 'Adicionar', + 'save' => 'Salvar', + 'update' => 'Atualizar', + 'create' => 'Criar', + 'edit' => 'Editar', + 'delete' => 'Apagar', + 'submit' => 'Enviar', + 'cancel' => 'Cancelar', + 'remove' => 'Remover', + 'invite' => 'Convite', + 'signup' => 'Registrar', + + // Other + 'optional' => '* Opcional', +]; diff --git a/resources/lang/pt-PT/pagination.php b/resources/lang/pt-PT/pagination.php new file mode 100644 index 00000000..5599d696 --- /dev/null +++ b/resources/lang/pt-PT/pagination.php @@ -0,0 +1,28 @@ + '« Anterior', + 'next' => 'Próximo »', + +]; diff --git a/resources/lang/pt-PT/setup.php b/resources/lang/pt-PT/setup.php new file mode 100644 index 00000000..85ea795e --- /dev/null +++ b/resources/lang/pt-PT/setup.php @@ -0,0 +1,23 @@ + 'Configuração', + 'title' => 'Configurar o Cachet', + 'service_details' => 'Detalhes do serviço', + 'env_setup' => 'Configuração de Ambiente', + 'status_page_setup' => 'Configuração da página de status', + 'show_support' => 'Mostrar apoio ao Cachet?', + 'admin_account' => 'Conta de administrador', + 'complete_setup' => 'Configuração completa', + 'completed' => 'Cachet foi configurado com sucesso!', + 'finish_setup' => 'Ir para o painel de controle', +]; diff --git a/resources/lang/pt-PT/validation.php b/resources/lang/pt-PT/validation.php new file mode 100644 index 00000000..58d40666 --- /dev/null +++ b/resources/lang/pt-PT/validation.php @@ -0,0 +1,119 @@ + 'O :attribute tem de ser aceite.', + 'active_url' => 'O :attribute não é um URL válido.', + 'after' => 'O :attribute deverá ser uma data posterior a :date.', + 'alpha' => 'O campo :attribute deverá conter apenas letras.', + 'alpha_dash' => 'O :attribute deverá apenas conter letras, números e hífens.', + 'alpha_num' => 'O campo :attribute só pode conter letras e números.', + 'array' => 'O campo :attribute deve ser um vetor.', + 'before' => 'O campo :attribute deverá conter uma data anterior a :date.', + 'between' => [ + 'numeric' => 'O campo :attribute deverá ter um valor entre :min - :max.', + 'file' => 'O campo :attribute deverá ter um tamanho entre :min - :max kilobytes.', + 'string' => 'O campo :attribute deverá conter entre :min - :max caracteres.', + 'array' => 'O campo :attribute deve ter entre :min e :max itens.', + ], + 'boolean' => 'O campo :attribute deve ser verdadeiro ou falso.', + 'confirmed' => 'A confirmação para o campo :attribute não coincide.', + 'date' => 'O :attribute não é uma data válida.', + 'date_format' => 'O :attribute não corresponde ao formato :format.', + 'different' => 'O :attribute e :other devem ser diferentes.', + 'digits' => 'O campo :attribute deverá conter :digits dígitos.', + 'digits_between' => 'O :attribute deve ter entre :min e :max dígitos.', + 'email' => 'A: attribute deve ser um endereço de email válido.', + 'exists' => 'O :attribute selecionado é inválido.', + 'filled' => 'O campo de :attribute é obrigatório.', + 'image' => 'O :attribute deve ser uma imagem.', + 'in' => 'O :attribute selecionado é inválido.', + 'integer' => 'O :attribute deve ser um número inteiro.', + 'ip' => 'O :attribute deve ser um endereço de IP válido.', + 'json' => 'O :attribute tem que ser uma string JSON válida.', + 'max' => [ + 'numeric' => 'O :attribute não pode ser maior do que :max.', + 'file' => 'O campo :attribute não deverá ter um tamanho superior a :max kilobytes.', + 'string' => 'O :attribute não pode ser maior do que :max caracteres.', + 'array' => 'A: atributo não pode ter mais de que :max itens.', + ], + 'mimes' => 'O :attribute deve ser um arquivo do tipo: :values.', + 'min' => [ + 'numeric' => 'O :attribute deve ter pelo menos :min.', + 'file' => 'O :attribute deve ter pelo menos :min kilobytes.', + 'string' => 'O :attribute deve ter pelo menos :min caracteres.', + 'array' => 'O :attribute deve ter pelo menos :min itens.', + ], + 'not_in' => 'O :attribute selecionado é inválido.', + 'numeric' => 'O :attribute deve ser um número.', + 'regex' => 'O formato de :attribute é inválido.', + 'required' => 'O campo de :attribute é obrigatório.', + 'required_if' => 'O campo de :attribute é obrigatório quando :other é :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'O campo :attribute é obrigatório quando :values está presente.', + 'required_with_all' => 'O campo :attribute é obrigatório quando :values está presente.', + 'required_without' => 'O campo de :attribute é obrigatório quando :values não está presente.', + 'required_without_all' => 'O campo de :attribute é obrigatório quando qualquer um dos :values estão presentes.', + 'same' => 'O :attribute e :other devem corresponder.', + 'size' => [ + 'numeric' => 'O :attribute deve ser :size.', + 'file' => 'O :attribute deve ter :size kilobytes.', + 'string' => 'O :attribute deve ter :size caracteres.', + 'array' => 'O :attribute deve ter :size itens.', + ], + 'string' => 'O campo :attribute deve ser uma string.', + 'timezone' => 'O :attribute deve ser uma zona válida.', + 'unique' => 'O :attribute já existe.', + 'url' => 'O formato de :attribute é inválido.', + + /* + |-------------------------------------------------------------------------- + | 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' => 'Mensagem-personalizada', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/ro/cachet.php b/resources/lang/ro/cachet.php new file mode 100644 index 00000000..9d27d1c8 --- /dev/null +++ b/resources/lang/ro/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Operaţional', + 2 => 'Probleme de performanţă', + 3 => 'Ȋntrerupere parțială', + 4 => 'Ȋntrerupere gravă', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nici un incident raportat.', + 'past' => 'Incidente anterioare', + 'previous_week' => 'Săptămâna anterioară', + 'next_week' => 'Săptămâna viitoare', + 'none' => 'Nici un incident raportat.', + 'scheduled' => 'Întreținere programată', + 'scheduled_at' => ', programată: timestamp', + 'status' => [ + 0 => 'Programată', // TODO: Hopefully remove this. + 1 => 'Sub investigație', + 2 => 'Identificat', + 3 => 'Sub observație', + 4 => 'Remediat', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Regenerează cheia API', + 'revoke' => 'Revocă cheia API', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Ultimele 12 ore', + 'weekly' => 'Săptămână', + 'monthly' => 'Lună', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Abonează-te pentru a primi cele mai recente actualizări', + 'button' => 'Abonează-te', + 'email' => [ + 'subscribe' => 'Abonează-te la actualizări prin email.', + 'subscribed' => 'Te-ai abonat la actualizări prin email, te rugăm să îți verifici adresa email și să confirmi abonarea.', + 'verified' => 'Abonarea prin email a fost confirmată. Mulțumim!', + 'unsubscribe' => 'Dezabonare de la actualizări prin email.', + 'unsubscribed' => 'Actualizările prin email au fost anulate.', + 'failure' => 'Ceva nu a funcționat în legătură cu abonarea.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Abonează-te', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/ro/dashboard.php b/resources/lang/ro/dashboard.php new file mode 100644 index 00000000..f9422f57 --- /dev/null +++ b/resources/lang/ro/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Incidents', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Întreținere programată', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/ro/forms.php b/resources/lang/ro/forms.php new file mode 100644 index 00000000..c1945012 --- /dev/null +++ b/resources/lang/ro/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Username', + 'password' => 'Password', + 'site_name' => 'Site Name', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Password', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Component', + 'message' => 'Message', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site Name', + 'site-url' => 'Site URL', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/ro/pagination.php b/resources/lang/ro/pagination.php new file mode 100644 index 00000000..e6277229 --- /dev/null +++ b/resources/lang/ro/pagination.php @@ -0,0 +1,28 @@ + '« Anterior', + 'next' => 'Următorul »', + +]; diff --git a/resources/lang/ro/setup.php b/resources/lang/ro/setup.php new file mode 100644 index 00000000..044cf2e2 --- /dev/null +++ b/resources/lang/ro/setup.php @@ -0,0 +1,23 @@ + 'Setup', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/ro/validation.php b/resources/lang/ro/validation.php new file mode 100644 index 00000000..1bf64731 --- /dev/null +++ b/resources/lang/ro/validation.php @@ -0,0 +1,119 @@ + ':attribute trebuie să fie acceptat.', + 'active_url' => ':attribute nu este un URL valid.', + 'after' => ':attribute trebuie să fie o dată după :date.', + 'alpha' => ':attribute poate să conțină numai litere.', + 'alpha_dash' => ':attribute poate să conțină numai litere, cifre şi semne de punctuație.', + 'alpha_num' => ':attribute poate să conțină numai litere şi cifre.', + 'array' => ':attribute trebuie să fie o matrice.', + 'before' => ':attribute trebuie să fie o dată înainte de :date.', + 'between' => [ + 'numeric' => ':attribute trebuie să fie cuprins între :min şi :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'Câmpul :attribute trebuie să fie adevărat sau fals.', + 'confirmed' => 'Confirmarea :attribute nu se potriveşte.', + 'date' => ':attribute nu este o dată validă.', + 'date_format' => ':attribute nu se potrivește cu formatul :format.', + 'different' => ':attribute şi :other trebuie să fie diferite.', + 'digits' => ':attribute trebuie să fie de :digits cifre.', + 'digits_between' => ':attribute trebuie să aibă între :min şi :max cifre.', + 'email' => ':attribute trebuie să fie o adresă de e-mail validă.', + 'exists' => ':attribute selectat nu este valid.', + 'filled' => 'Câmpul :attribute este obligatoriu.', + 'image' => ':attribute trebuie să fie o imagine.', + 'in' => ':attribute selectat nu este valid.', + 'integer' => ':attribute trebuie să fie număr întreg.', + 'ip' => ':attribute trebuie să fie o adresă IP validă.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => ':attribute nu poate fi mai mare de :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => ':attribute trebuie să fie un fişier de tip: :values.', + 'min' => [ + 'numeric' => ':attribute trebuie să aibă cel puțin :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => ':attribute selectat nu este valid.', + 'numeric' => ':attribute trebuie să fie un număr.', + 'regex' => 'Formatul :attribute nu este valid.', + 'required' => 'Câmpul :attribute este obligatoriu.', + 'required_if' => 'Câmpul :attribute este obligatoriu atunci când :other este :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'Câmpul :attribute este obligatoriu atunci când :values este prezent.', + 'required_with_all' => 'Câmpul :attribute este obligatoriu atunci când :values este prezent.', + 'required_without' => 'Câmpul :attribute este obligatoriu atunci când :values nu este prezent.', + 'required_without_all' => 'Câmpul :attribute este obligatoriu atunci când nici una din :values nu sunt prezente.', + 'same' => ':attribute și :other trebuie să coincidă.', + 'size' => [ + 'numeric' => ':attribute trebuie să aibă :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => ':attribute trebuie să fie o zonă validă.', + 'unique' => ':attribute este deja folosit.', + 'url' => 'Formatul :attribute nu este valid.', + + /* + |-------------------------------------------------------------------------- + | 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' => 'mesaj-personalizat', + ], + ], + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/ru/cachet.php b/resources/lang/ru/cachet.php index 86fe23f4..d087c37e 100644 --- a/resources/lang/ru/cachet.php +++ b/resources/lang/ru/cachet.php @@ -22,12 +22,13 @@ return [ // Incidents 'incidents' => [ - 'none' => 'Инцидентов не происходило.', - 'past' => 'Прошлые инциденты', - 'previous_week' => 'Прошлая неделя', + 'none' => 'Нет происшествий.', + 'past' => 'Полседние инциденты', + 'previous_week' => 'Предыдущая неделя', 'next_week' => 'Следующая неделя', - 'scheduled' => 'Запланированное обслуживание', - 'scheduled_at' => ', запланировано :timestamp', + 'none' => 'Нет происшествий.', + 'scheduled' => 'Плановое техническое обслуживание', + 'scheduled_at' => ', запланированное :timestamp', 'status' => [ 0 => 'Запланировано', // TODO: Hopefully remove this. 1 => 'Проводим анализ проблемы', @@ -46,7 +47,7 @@ return [ 'api' => [ 'regenerate' => 'Сгенерировать ключ API', - 'revoke' => 'Отозвать ключ API', + 'revoke' => 'Отозвать API ключ', ], // Metrics @@ -61,11 +62,11 @@ return [ // Subscriber 'subscriber' => [ - 'subscribe' => 'Подпишитесь, чтобы получать информацию об изменениях.', + 'subscribe' => 'Подпишитесь, чтобы получать информацию об изменениях', 'button' => 'Подписаться', 'email' => [ 'subscribe' => 'Подписка на рассылку об изменениях.', - 'subscribed' => 'Вы подписались на рассылку уведомлений по эл. почте. Проверьте ваш почтовый ящик, чтобы подтвердить подписку.', + 'subscribed' => 'Вы подписались на рассылку email уведомлений. Проверьте вашу почту, чтобы подтвердить подписку.', 'verified' => 'Ваша подписка подтверждена. Спасибо!', 'unsubscribe' => 'Отписаться от рассылки.', 'unsubscribed' => 'Ваша подписка отменена.', @@ -74,26 +75,66 @@ return [ 'verify' => [ 'text' => "Пожалуйста подтвердите вашу подписку на уведомления об изменениях статуса проекта :app_name.\n:link\nСпасибо! :app_name", 'html-preheader' => 'Пожалуйста подтвердите подписку на уведомления :app_name.', - 'html' => '

Пожалуйста подтвердите вашу подписку на уведомления об изменениях статуса проекта :app_name.

:link

Спасибо! :app_name

', + 'html' => '

Пожалуйста, подтвердите ваш email для получения обновлений от :app_name

:link

Спасибо, :app_name

', ], 'maintenance' => [ 'text' => "На проекте :app_name запланированы технические работы.\nСпасибо! :app_name", 'html-preheader' => 'Плановые работы на проекте :app_name.', - 'html' => '

На проекте :app_name запланированы технические работы.

Спасибо! :app_name

', + 'html' => '

Плановые работы для :app_name зарегестрированы.

', ], 'incident' => [ 'text' => "На проекте :app_name добавлен новый инцидент.\nСпасибо! :app_name", 'html-preheader' => 'Новый инцидент на проекте :app_name.', 'html' => '

На проекте :app_name добавлен новый инцидент.

Спасибо! :app_name

', ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Зарегистрироваться', + 'username' => 'Имя пользователя', + 'email' => 'Email', + 'password' => 'Пароль', + 'success' => 'Ваша учетная запись создана.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Подписаться', ], ], // Other - 'powered_by' => ':app Статусная страница работает на Cachet.', - 'about_this_site' => 'Об этом сайте', - 'rss-feed' => 'RSS-лента', - 'atom-feed' => 'Atom-лента', - 'feed' => 'Лента статуса', + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Статус фид', ]; diff --git a/resources/lang/ru/dashboard.php b/resources/lang/ru/dashboard.php index 62771cbd..379834c9 100644 --- a/resources/lang/ru/dashboard.php +++ b/resources/lang/ru/dashboard.php @@ -15,34 +15,43 @@ return [ // Incidents 'incidents' => [ - 'title' => 'Инциденты и плановые работы', + 'title' => 'Инциденты и Плановые работы', 'incidents' => 'Инциденты', - 'logged' => '{0} Нет инцидентов, отличная работа!|У вас записан один инцидент.|Записано инцидентов: :count', + 'logged' => '{0} Нет инцидентов, отличная работа!|У вас записан один инцидент.|Записано инцидентов: :count.', 'incident-create-template' => 'Создать шаблон', 'incident-templates' => 'Шаблоны инцидентов', 'add' => [ - 'title' => 'Добавить инцидент', + 'title' => 'Add an Incident', 'success' => 'Инцидент добавлен.', 'failure' => 'Что-то пошло не так при добавлении инцидента.', ], 'edit' => [ - 'title' => 'Редактировать инцидент', + 'title' => 'Edit an Incident', 'success' => 'Инцидент обновлен.', 'failure' => 'Что-то пошло не так при изменении инцидента.', ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], // Incident templates 'templates' => [ 'title' => 'Шаблоны инцидентов', 'add' => [ - 'title' => 'Создать шаблон инцидента', + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', 'success' => 'Шаблон создан.', 'failure' => 'Что-то пошло не так при создании шаблона.', ], 'edit' => [ - 'title' => 'Редактировать шаблон', - 'success' => 'Шаблон обновлен.', - 'failure' => 'Что-то пошло не так при изменении шаблона.', + 'title' => 'Edit Template', + 'success' => 'Шаблон был обновлен!', + 'failure' => 'Что-то пошло не так при изменении шаблона', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', ], ], ], @@ -50,7 +59,8 @@ return [ // Incident Maintenance 'schedule' => [ 'schedule' => 'Плановое техническое обслуживание', - 'scheduled_at' => 'Запланировано на :timestamp', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'запланировано на :timestamp', 'add' => [ 'title' => 'Добавить плановое техническое обслуживание', 'success' => 'Плановые работы добавлены.', @@ -70,18 +80,22 @@ return [ // Components 'components' => [ 'components' => 'Компоненты', - 'component_statuses' => 'Статусы компонентов', - 'listed_group' => 'В группе :name', + 'component_statuses' => ' Статусы компонентов', + 'listed_group' => 'Сгруппированные по :name', 'add' => [ - 'title' => 'Добавить компонент', + 'title' => 'Add a Component', 'message' => 'Вам следует добавить компонент.', 'success' => 'Компонент создан.', - 'failure' => 'Что-то пошло не так при создании компонента.', + 'failure' => 'Что-то пошло не так с компонентом.', ], 'edit' => [ - 'title' => 'Редактировать компонент', - 'success' => 'Компонент обновлен.', - 'failure' => 'Что-то пошло не так при изменении компонента.', + 'title' => 'Edit a Component', + 'success' => 'Обновление компонента.', + 'failure' => 'Что-то пошло не так с компонентом.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', ], // Component groups @@ -89,15 +103,19 @@ return [ 'groups' => 'Группа компонентов|Группы компонентов', 'no_components' => 'Вам следует добавить группу компонентов.', 'add' => [ - 'title' => 'Добавить группу компонентов', + 'title' => 'Add a Component Group', 'success' => 'Группа компонентов добавлена.', 'failure' => 'Что-то пошло не так при создании группы компонентов.', ], 'edit' => [ - 'title' => 'Изменение группы компонентов', + 'title' => 'Edit a Component Group', 'success' => 'Группа компонентов обновлена.', 'failure' => 'Что-то пошло не так при изменении группы компонентов.', ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], ], ], @@ -105,15 +123,37 @@ return [ 'metrics' => [ 'metrics' => 'Метрики', 'add' => [ - 'title' => 'Создать метрику', + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', 'success' => 'Метрика создана.', 'failure' => 'Что-то пошло не так при создании метрики.', ], 'edit' => [ - 'title' => 'Изменить метрику', + 'title' => 'Edit a Metric', 'success' => 'Метрика обновлена.', 'failure' => 'Что-то пошло не так при изменении метрики.', ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Что-то пошло не так с компонентом.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Что-то пошло не так при изменении профиля.', + ], ], // Team @@ -123,15 +163,24 @@ return [ 'profile' => 'Профиль', 'description' => 'Участники команды смогут добавлять и изменять компоненты и инциденты.', 'add' => [ - 'title' => 'Добавить нового участника команды', + 'title' => 'Add a New Team Member', 'success' => 'Участник команды добавлен.', - 'failure' => 'Что-то пошло не так при добавлении участника команды.', + 'failure' => 'Something went wrong with the user.', ], 'edit' => [ - 'title' => 'Обновить профиль', + 'title' => 'Update Profile', 'success' => 'Данные профиля обновлены.', 'failure' => 'Что-то пошло не так при изменении профиля.', ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], ], // Settings @@ -143,10 +192,10 @@ return [ 'too-big' => 'Загруженный вами файл слишком большой. Загрузите картинку меньше чем :size', ], 'analytics' => [ - 'analytics' => 'Аналитика', + 'analytics' => 'Analytics', ], 'localization' => [ - 'localization' => 'Локализация', + 'localization' => 'Localization', ], 'security' => [ 'security' => 'Безопасность', @@ -169,7 +218,7 @@ return [ 'login' => 'Войти', 'logged_in' => 'Вы вошли в систему.', 'welcome' => 'С возвращением!', - 'two-factor' => 'Пожалуйста, введите ваш одноразовый пароль.', + 'two-factor' => 'Пожалуйста, введите ваш токен.', ], // Sidebar footer @@ -180,13 +229,13 @@ return [ // Notifications 'notifications' => [ 'notifications' => 'Уведомления', - 'awesome' => 'Отлично!', + 'awesome' => 'Отлично.', 'whoops' => 'Ой-ой!', ], // Welcome modal 'welcome' => [ - 'welcome' => 'Добро пожаловать в Cachet', + 'welcome' => 'Welcome to your status page!', 'message' => 'Ваша статусная страница почти готова! Возможно, вы захотите настроить дополнительные параметры', 'close' => 'Я хочу сразу перейти в панель управления', 'steps' => [ diff --git a/resources/lang/ru/forms.php b/resources/lang/ru/forms.php index b3ef473e..b1696915 100644 --- a/resources/lang/ru/forms.php +++ b/resources/lang/ru/forms.php @@ -13,7 +13,7 @@ return [ // Setup form fields 'setup' => [ - 'email' => 'Эл. почта', + 'email' => 'Email', 'username' => 'Имя пользователя', 'password' => 'Пароль', 'site_name' => 'Название сайта', @@ -31,9 +31,9 @@ return [ 'email' => 'Эл. почта', 'password' => 'Пароль', '2fauth' => 'Код аутентификации', - 'invalid' => 'Неправильный адрес эл. почты или пароль', + 'invalid' => 'Invalid username or password', 'invalid-token' => 'Неправильный токен', - 'cookies' => 'Необходимо включить куки для входа.', + 'cookies' => 'Необходимо включить cookies для входа.', ], // Incidents form fields @@ -45,7 +45,7 @@ return [ 'message-help' => 'Вы также можете использовать Markdown.', 'scheduled_at' => 'Когда запланированы работы?', 'incident_time' => 'Когда инцидент произошел?', - 'notify_subscribers' => 'Уведомить подписчиков', + 'notify_subscribers' => 'Уведомлять подписчиков?', 'visibility' => 'Видимость инцидента', 'public' => 'Доступен публично', 'logged_in_only' => 'Видимый только авторизованным пользователям', @@ -68,7 +68,8 @@ return [ 'enabled' => 'Component enabled?', 'groups' => [ - 'name' => 'Название', + 'name' => 'Название', + 'collapsed' => 'Collapse the group by default?', ], ], @@ -79,10 +80,12 @@ return [ 'description' => 'Описание', 'description-help' => 'Вы также можете использовать Markdown.', 'display-chart' => 'Отображать график на статусной странице?', - 'default-value' => 'Значение по-умолчанию', + 'default-value' => 'Значение по умолчанию', 'calc_type' => 'Расчет метрики', 'type_sum' => 'Сумма', 'type_avg' => 'Среднее значение', + 'places' => 'Разрядность', + 'default_view' => 'Default View', 'points' => [ 'value' => 'Значение', @@ -99,23 +102,23 @@ return [ 'about-this-page' => 'Об этой странице', 'days-of-incidents' => 'Сколько дней показывать инциденты?', 'banner' => 'Картинка-баннер', - 'banner-help' => 'Рекомендуется загружать картинки не больше 930 пикс. в ширину.', + 'banner-help' => "Рекомендуется загружать картинки не больше 930 пикс. в ширину.", 'subscribers' => 'Разрешить посетителям подписываться на email-уведомления?', ], 'analytics' => [ 'analytics_google' => 'Код Google Analytics', 'analytics_gosquared' => 'Код GoSquared Analytics', - 'analytics_piwik_url' => 'URL установки Piwik (без http(s)://)', + 'analytics_piwik_url' => 'URL Piwik сайта (без http(s)://)', 'analytics_piwik_siteid' => 'Идентификатор сайта в Piwik', ], 'localization' => [ 'site-timezone' => 'Часовой пояс сайта', 'site-locale' => 'Язык сайта', 'date-format' => 'Формат даты', - 'incident-date-format' => 'Формат даты и времени инцидента', + 'incident-date-format' => 'Формат даты и времени для инцидента', ], 'security' => [ - 'allowed-domains' => 'Разрешенные домены', + 'allowed-domains' => 'Разрешённые домены', 'allowed-domains-help' => 'Разделитель - запятые. Домен, установленный в настройках разрешен по-умолчанию.', ], 'stylesheet' => [ @@ -123,11 +126,19 @@ return [ ], 'theme' => [ 'background-color' => 'Цвет фона', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Цвет фона для баннера', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', 'text-color' => 'Цвет текста', - 'dashboard-login' => 'Показывать кнопку панели управления внизу страницы?', - 'banner-background-color' => 'Фоновый цвет баннера', - 'banner-padding' => 'Поля вокруг баннера', - 'fullwidth-banner' => 'Включить баннер в полную ширину?', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Ссылки', ], ], @@ -137,9 +148,14 @@ return [ 'password' => 'Пароль', 'api-token' => 'API токен', 'api-token-help' => 'Обновление вашего API токена заблокирует существующим приложениям доступ в Cachet. Вам будет необходимо прописать в них новый токен.', - 'gravatar' => 'Измените вашу картинку профиля в Gravatar.', - '2fa' => [ - 'help' => 'Включение двухфакторной аутентификации увеличивает безопасность вашей учетной записи. Вам понадобится скачать Google Authenticator или аналогичное приложение на свой смартфон. Когда в следующий раз вы войдете в панель управления, вам понадобится токен, выданный этим приложением.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Включение двухфакторной аутентификации увеличивает безопасность вашей учетной записи. Вам понадобится скачать Google Authenticator или аналогичное приложение на свой смартфон. Когда в следующий раз вы войдете в панель управления, вам понадобится токен, выданный этим приложением.', ], 'team' => [ 'description' => 'Invite your team members by entering their email addresses here.', @@ -157,6 +173,8 @@ return [ 'submit' => 'Отправить', 'cancel' => 'Отмена', 'remove' => 'Удалить', + 'invite' => 'Пригласить', + 'signup' => 'Зарегистрироваться', // Other 'optional' => '* не обязательное', diff --git a/resources/lang/ru/validation.php b/resources/lang/ru/validation.php index c780d552..a319e475 100644 --- a/resources/lang/ru/validation.php +++ b/resources/lang/ru/validation.php @@ -22,18 +22,18 @@ return [ | */ - 'accepted' => ':attribute должно быть принято.', + 'accepted' => ':attribute должен быть принят.', 'active_url' => ':attribute не является правильным URL.', 'after' => ':attribute должно быть датой после :date.', 'alpha' => ':attribute может содержать только буквы.', 'alpha_dash' => ':attribute может содержать только латинские буквы, цифры и дефис.', 'alpha_num' => ':attribute может содержать только буквы и цифры.', - 'array' => ':attribute должно быть массивом.', + 'array' => ': attribute должно быть массивом.', 'before' => ':attribute должно быть датой до :date.', 'between' => [ 'numeric' => ':attribute должно быть между :min и :max.', - 'file' => ':attribute должно быть от :min до :max килобайт.', - 'string' => ':attribute должно быть от :min до :max символов.', + 'file' => ':attribute должно быть между :min и :max килобайт.', + 'string' => ':attribute должно быть между :min и :max символов.', 'array' => ':attribute должно содержать от :min до :max элементов.', ], 'boolean' => 'Поле :attribute должно содержать true или false.', @@ -45,10 +45,12 @@ return [ 'digits_between' => ':attribute должно содержать от :min до :max цифр.', 'email' => ':attribute должно быть корректным адресом электронной почты.', 'exists' => 'Выбранное значение :attribute не верно.', + 'filled' => 'Поле :attribute является обязательным.', 'image' => ':attribute должно быть изображением.', 'in' => 'Выбранное значение :attribute не верно.', 'integer' => ':attribute должно быть целым числом.', 'ip' => ':attribute не является корректным IP-адресом.', + 'json' => ':attribute должен быть в JSON формате.', 'max' => [ 'numeric' => ':attribute не может быть больше чем :max .', 'file' => ':attribute не может быть больше :max килобайт.', @@ -80,9 +82,9 @@ return [ 'array' => 'Поле :attribute должно содержать :size элементов.', ], 'string' => 'Поле :attribute должно быть строкой.', + 'timezone' => ':attribute должно быть корректным часовым поясом.', 'unique' => ':attribute уже занято.', 'url' => 'Неправильный формат :attribute.', - 'timezone' => ':attribute должно быть корректным часовым поясом.', /* |-------------------------------------------------------------------------- @@ -97,7 +99,7 @@ return [ 'custom' => [ 'attribute-name' => [ - 'rule-name' => 'custom-message', + 'rule-name' => 'настраиваемое сообщение', ], ], diff --git a/resources/lang/sq/cachet.php b/resources/lang/sq/cachet.php new file mode 100644 index 00000000..3f44f52f --- /dev/null +++ b/resources/lang/sq/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Funksionim', + 2 => 'Çështje të performancës', + 3 => 'Ndërprerje e pjesshëm', + 4 => 'Ndërprerje Kryesore', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Mirëmbajtje planifikuar', + 'scheduled_at' => ', planifiko :timestamp', + 'status' => [ + 0 => 'Planifikuar', // TODO: Hopefully remove this. + 1 => 'Hetimin', + 2 => 'Identifikohet', + 3 => 'Shikim', + 4 => 'Rregulluar', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Rikrijo çelësin e API-t', + 'revoke' => 'Refuzo çelësin e API-t', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Emri i përdoruesit', + 'email' => 'Email', + 'password' => 'Fjalëkalimi', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/sq/dashboard.php b/resources/lang/sq/dashboard.php new file mode 100644 index 00000000..decfb3e9 --- /dev/null +++ b/resources/lang/sq/dashboard.php @@ -0,0 +1,251 @@ + 'Paneli', + + // Incidents + 'incidents' => [ + 'title' => 'Incidenti & Planifikuar', + 'incidents' => 'Incidents', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Mirëmbajtje planifikuar', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/sq/forms.php b/resources/lang/sq/forms.php new file mode 100644 index 00000000..231a6334 --- /dev/null +++ b/resources/lang/sq/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Emri i përdoruesit', + 'password' => 'Fjalëkalimi', + 'site_name' => 'Emri Faqes', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Zgjidh orën e zonës tuaj', + 'site_locale' => 'Zgjidhni gjuhën tuaj', + 'enable_google2fa' => 'Aktivizo Dy-Faktorin e identifikimit te Google', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Fjalëkalimi', + '2fauth' => 'Kodi i identifikimit', + 'invalid' => 'Invalid username or password', + 'invalid-token' => '"Token" i pavlefshëm', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Emri', + 'status' => 'Statusi', + 'component' => 'Përbërësit', + 'message' => 'Mesazhi', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Emri', + 'template' => 'Paraqitja', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Emri', + 'status' => 'Statusi', + 'group' => 'Group', + 'description' => 'Përshkrimi', + 'link' => 'Nderlidhja', + 'tags' => 'Etiketa', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Emri', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Emri', + 'suffix' => 'Suffix', + 'description' => 'Përshkrimi', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Emri Faqes', + 'site-url' => 'Nderlidhja Faqes', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'Rreth faqes', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Emri i përdoruesit', + 'email' => 'Email', + 'password' => 'Fjalëkalimi', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Shto', + 'save' => 'Ruaj', + 'update' => ' Përditëso', + 'create' => 'Krijo', + 'edit' => 'Ndrysho', + 'delete' => 'Fshije', + 'submit' => 'Parashtroje', + 'cancel' => 'Anulloje', + 'remove' => 'Hiqe', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/sq/pagination.php b/resources/lang/sq/pagination.php new file mode 100644 index 00000000..67af4811 --- /dev/null +++ b/resources/lang/sq/pagination.php @@ -0,0 +1,28 @@ + '« Mbrapa', + 'next' => 'Para »', + +]; diff --git a/resources/lang/sq/setup.php b/resources/lang/sq/setup.php new file mode 100644 index 00000000..3c9d7e95 --- /dev/null +++ b/resources/lang/sq/setup.php @@ -0,0 +1,23 @@ + 'Instalimi', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator i llogarisë', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Shko tek paneli', +]; diff --git a/resources/lang/sq/validation.php b/resources/lang/sq/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/sq/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/sr/cachet.php b/resources/lang/sr/cachet.php new file mode 100644 index 00000000..9a77a3d7 --- /dev/null +++ b/resources/lang/sr/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Operational', + 2 => 'Performance Issues', + 3 => 'Partial Outage', + 4 => 'Major Outage', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Scheduled Maintenance', + 'scheduled_at' => ', scheduled :timestamp', + 'status' => [ + 0 => 'Scheduled', // TODO: Hopefully remove this. + 1 => 'Investigating', + 2 => 'Identified', + 3 => 'Watching', + 4 => 'Fixed', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Regenerate API Key', + 'revoke' => 'Revoke API Key', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/sr/dashboard.php b/resources/lang/sr/dashboard.php new file mode 100644 index 00000000..4ed89d1d --- /dev/null +++ b/resources/lang/sr/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Incidents', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Scheduled Maintenance', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/sr/forms.php b/resources/lang/sr/forms.php new file mode 100644 index 00000000..c1945012 --- /dev/null +++ b/resources/lang/sr/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Username', + 'password' => 'Password', + 'site_name' => 'Site Name', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Password', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Component', + 'message' => 'Message', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site Name', + 'site-url' => 'Site URL', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/sr/pagination.php b/resources/lang/sr/pagination.php new file mode 100644 index 00000000..add1092a --- /dev/null +++ b/resources/lang/sr/pagination.php @@ -0,0 +1,28 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/sr/setup.php b/resources/lang/sr/setup.php new file mode 100644 index 00000000..044cf2e2 --- /dev/null +++ b/resources/lang/sr/setup.php @@ -0,0 +1,23 @@ + 'Setup', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/sr/validation.php b/resources/lang/sr/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/sr/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/sv-SE/cachet.php b/resources/lang/sv-SE/cachet.php new file mode 100644 index 00000000..e073339f --- /dev/null +++ b/resources/lang/sv-SE/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Fungerar', + 2 => 'Prestandaproblem', + 3 => 'Mindre avbrott', + 4 => 'Större avbrott', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Inga händelser har rapporterats.', + 'past' => 'Tidigare händelser', + 'previous_week' => 'Förra veckan', + 'next_week' => 'Nästa vecka', + 'none' => 'Inga händelser har rapporterats.', + 'scheduled' => 'Planerat underhåll', + 'scheduled_at' => ', schemalagda: tidsstämpel', + 'status' => [ + 0 => 'Schemalagd', // TODO: Hopefully remove this. + 1 => 'Undersöker', + 2 => 'Identifierat', + 3 => 'Bevakar', + 4 => 'Löst', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Generera om API-nyckel', + 'revoke' => 'Återkalla API-nyckel', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Senaste 12 timmarna', + 'weekly' => 'Vecka', + 'monthly' => 'Månad', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Prenumerera för att få de senaste uppdateringarna', + 'button' => 'Prenumerera', + 'email' => [ + 'subscribe' => 'Prenumerera på epost-uppdateringar.', + 'subscribed' => 'Du har börjat prenumerera på e-postmeddelanden, vänligen kontrollera din e-post för att bekräfta din prenumeration.', + 'verified' => 'Din epost-prenumeration har bekräftats. Tack!', + 'unsubscribe' => 'Avbeställ epost-uppdateringar.', + 'unsubscribed' => 'Din epost-prenumeration har avbrutits.', + 'failure' => 'Något blev fel med prenumerationen.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Vänligen bekräfta din epost-prenumeration för: :app_name-statusuppdateringar.\n:link\nTack, :app_name", + 'html-preheader' => 'Vänligen bekräfta din epost-prenumeration på statusuppdateringar för :app_name.', + 'html' => '

Vänligen bekräfta din epost-prenumeration på :app_names statusuppdateringar.

: länk

Tack, :app_name

', + ], + 'maintenance' => [ + 'text' => "Nytt underhåll har schemalagts för :app_name.\nTack du, :app_name", + 'html-preheader' => 'Nytt underhåll har schemalagts för :app_name.', + 'html' => '

Nytt underhåll har schemalagts för :app_name.

', + ], + 'incident' => [ + 'text' => "Nya händelser har rapporterats hos :app_name.\nTack, :app_name", + 'html-preheader' => 'Nya händelser har rapporterats hos :app_name.', + 'html' => '

Nya händelser har rapporterats hos :app_name.

Tack, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "Du har blivit inbjuden till teamet för :app_names statussida, registrera dig genom att trycka på länken.\n:link\nTack, :app_name", + 'html-preheader' => 'Du har blivit inbjuden till teamet för :app_name.', + 'html' => '

Du har blivit inbjuden till teamet :app_names statussida. Registrera dig genom att trycka på den här länken

Tack, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Registrera dig', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Ditt konto har skapats.', + 'failure' => 'Något gick fel med registreringen.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Prenumerera', + ], + ], + + // Other + 'powered_by' => ': app statussida drivs av Cachet.', + 'about_this_site' => 'Om sidan', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Statusflöde', + +]; diff --git a/resources/lang/sv-SE/dashboard.php b/resources/lang/sv-SE/dashboard.php new file mode 100644 index 00000000..03dbd171 --- /dev/null +++ b/resources/lang/sv-SE/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Händelser', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Lägg till händelse', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Redigera en händelse', + 'success' => 'Händelse uppdaterad.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Redigera mall', + 'success' => 'Mallen har uppdaterats!', + 'failure' => 'Något gick fel med uppdateringen av händelsemallen', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Planerat underhåll', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Schemalagd till: tidsstämpel', + 'add' => [ + 'title' => 'Lägg till planerat underhåll', + 'success' => 'Schemat tillagt.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Prenumeranter', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Bekräftad', + 'not_verified' => 'Inte bekräftad', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Uppdatera profil', + 'success' => 'Profil uppdaterad.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Inställningar', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/sv-SE/forms.php b/resources/lang/sv-SE/forms.php new file mode 100644 index 00000000..ad850d76 --- /dev/null +++ b/resources/lang/sv-SE/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Username', + 'password' => 'Password', + 'site_name' => 'Site Name', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Password', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Component', + 'message' => 'Message', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site Name', + 'site-url' => 'Site URL', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Registrera dig', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/sv-SE/pagination.php b/resources/lang/sv-SE/pagination.php new file mode 100644 index 00000000..add1092a --- /dev/null +++ b/resources/lang/sv-SE/pagination.php @@ -0,0 +1,28 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/sv-SE/setup.php b/resources/lang/sv-SE/setup.php new file mode 100644 index 00000000..044cf2e2 --- /dev/null +++ b/resources/lang/sv-SE/setup.php @@ -0,0 +1,23 @@ + 'Setup', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/sv-SE/validation.php b/resources/lang/sv-SE/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/sv-SE/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/tr/cachet.php b/resources/lang/tr/cachet.php new file mode 100644 index 00000000..13625e3d --- /dev/null +++ b/resources/lang/tr/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Çalışıyor', + 2 => 'Performans Sorunları', + 3 => 'Kısmi Kesinti', + 4 => 'Ana Kesinti', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Zamanlanmış bakım', + 'scheduled_at' => ',zamanlanmış :zamandilimi', + 'status' => [ + 0 => 'Zamanlanmış', // TODO: Hopefully remove this. + 1 => 'İnceleniyor', + 2 => 'Tanımlandı', + 3 => 'İzleniyor', + 4 => 'Düzeltildi', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'API Key\'i yeniden oluştur', + 'revoke' => 'API Anahtarı geçersiz kıl', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Abone Ol', + 'email' => [ + 'subscribe' => 'Güncellemeler için abone ol.', + 'subscribed' => 'Bir email bildirimi almış olmalısın, lütfen aboneliğini onaylamak için kontrol et.', + 'verified' => 'E mail aboneliğin kabul edildi. Teşekkürler!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Email aboneliğin iptal edildi.', + 'failure' => 'Bazı şeyler yanlış gitti.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Lütfen email aboneliğinizi onaylayın :app_name Durum Güncellemesi.\n:link\nTeşekkürler", + 'html-preheader' => 'Lütfen email aboneliğinizi :app_name için onaylayın.', + 'html' => '

Lütfen email aboneliğinizi onaylayın :app_name Durum güncellemesi.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'E-posta', + 'password' => 'Parola', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Abone Ol', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/tr/dashboard.php b/resources/lang/tr/dashboard.php new file mode 100644 index 00000000..437489ad --- /dev/null +++ b/resources/lang/tr/dashboard.php @@ -0,0 +1,251 @@ + 'Kontrol paneli', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Incidents', + 'logged' => '{0} Hiç olay yok, tebrikler. |Bir olay rapor ettiniz.|:count olay rapor ettiniz.', + 'incident-create-template' => 'Şablon Oluştur', + 'incident-templates' => 'Olay Şablonları', + 'add' => [ + 'title' => 'Olay Ekle', + 'success' => 'Olay eklendi.', + 'failure' => 'Olayla ilgili bir hata oluştu.', + ], + 'edit' => [ + 'title' => 'Olay Düzenle', + 'success' => 'Olay güncellendi.', + 'failure' => 'Olayla ilgili bir hata oluştu.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Olay Şablonları', + 'add' => [ + 'title' => 'Olay Şablonu Oluştur', + 'message' => 'You should add an Incident Template.', + 'success' => 'Şablon oluşturuldu.', + 'failure' => 'Olay şablonuyla ilgili bir hata oluştu.', + ], + 'edit' => [ + 'title' => 'Şablonu Düzenle', + 'success' => 'Şablon güncellendi!', + 'failure' => 'Olay şablonunu güncellerken bir şeyler ters gitti', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Zamanlanmış bakım', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => ':timestamp zamanı için kaydedildi', + 'add' => [ + 'title' => 'Zamanlanmış Bakım Ekle', + 'success' => 'Zamanlama eklendi.', + 'failure' => 'Zamanlama eklerken bir şeyler ters gitti.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/tr/forms.php b/resources/lang/tr/forms.php new file mode 100644 index 00000000..c7092000 --- /dev/null +++ b/resources/lang/tr/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'E-posta', + 'username' => 'Username', + 'password' => 'Parola', + 'site_name' => 'Site adı', + 'site_domain' => 'Site alan adı', + 'site_timezone' => 'Zaman dilimi seçin', + 'site_locale' => 'Dil seçin', + 'enable_google2fa' => 'Google İki Faktor Doğrulamayı etkinleştir', + 'cache_driver' => 'Önbellek sürücüsü', + 'session_driver' => 'Oturum sürücüsü', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'E-posta', + 'password' => 'Parola', + '2fauth' => 'Onaylama Kodu', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Geçersiz token', + 'cookies' => 'Giriş yapabilmek için çerezleri açmalısın', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'İsim', + 'status' => 'Durum', + 'component' => 'Bileşen', + 'message' => 'Mesaj', + 'message-help' => 'Etiketleme kullanabilirsiniz.', + 'scheduled_at' => 'Bakım ne zaman?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Herkese açık', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'İsim', + 'template' => 'Tema', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'İsim', + 'status' => 'Durum', + 'group' => 'Grup', + 'description' => 'Açıklama', + 'link' => 'Link', + 'tags' => 'Etiketler', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'İsim', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'İsim', + 'suffix' => 'Suffix', + 'description' => 'Açıklama', + 'description-help' => 'Etiketleme kullanabilirsiniz.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Toplam', + 'type_avg' => 'Ortalama', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Değer', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site adı', + 'site-url' => 'Site url', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'Hakkında', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner resim', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'E-posta', + 'password' => 'Parola', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/tr/pagination.php b/resources/lang/tr/pagination.php new file mode 100644 index 00000000..31366d29 --- /dev/null +++ b/resources/lang/tr/pagination.php @@ -0,0 +1,28 @@ + '« Önceki', + 'next' => 'Sonraki »', + +]; diff --git a/resources/lang/tr/setup.php b/resources/lang/tr/setup.php new file mode 100644 index 00000000..197f1ae3 --- /dev/null +++ b/resources/lang/tr/setup.php @@ -0,0 +1,23 @@ + 'Kurulum', + 'title' => 'Cachet\'i Kur', + 'service_details' => 'Hizmet Detayları', + 'env_setup' => 'Ortam kurulumu', + 'status_page_setup' => 'Durum Sayfası Kurulumu', + 'show_support' => 'Cachet için destek ister misiniz?', + 'admin_account' => 'Yönetici Hesabı', + 'complete_setup' => 'Kurulumu tamamla', + 'completed' => 'Cachet başarı ile ayarlandı!', + 'finish_setup' => 'Arayüze git', +]; diff --git a/resources/lang/tr/validation.php b/resources/lang/tr/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/tr/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/uk/cachet.php b/resources/lang/uk/cachet.php new file mode 100644 index 00000000..410c6e4e --- /dev/null +++ b/resources/lang/uk/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Працює', + 2 => 'Проблеми з продуктивністю', + 3 => 'Partial Outage', + 4 => 'Major Outage', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Nothing to report', + 'past' => 'Past Incidents', + 'previous_week' => 'Previous Week', + 'next_week' => 'Next Week', + 'none' => 'Nothing to report', + 'scheduled' => 'Scheduled Maintenance', + 'scheduled_at' => ', scheduled :timestamp', + 'status' => [ + 0 => 'Scheduled', // TODO: Hopefully remove this. + 1 => 'Investigating', + 2 => 'Identified', + 3 => 'Watching', + 4 => 'Fixed', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Regenerate API Key', + 'revoke' => 'Revoke API Key', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Week', + 'monthly' => 'Month', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Subscribe', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Sign Up', + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'success' => 'Your account has been created.', + 'failure' => 'Something went wrong with the signup.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'About This Site', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/uk/dashboard.php b/resources/lang/uk/dashboard.php new file mode 100644 index 00000000..4ed89d1d --- /dev/null +++ b/resources/lang/uk/dashboard.php @@ -0,0 +1,251 @@ + 'Dashboard', + + // Incidents + 'incidents' => [ + 'title' => 'Incidents & Schedule', + 'incidents' => 'Incidents', + 'logged' => '{0} There are no incidents, good work.|You have logged one incident.|You have reported :count incidents.', + 'incident-create-template' => 'Create Template', + 'incident-templates' => 'Incident Templates', + 'add' => [ + 'title' => 'Add an Incident', + 'success' => 'Incident added.', + 'failure' => 'Something went wrong with the incident.', + ], + 'edit' => [ + 'title' => 'Edit an Incident', + 'success' => 'Incident updated.', + 'failure' => 'Something went wrong with the incident.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Incident Templates', + 'add' => [ + 'title' => 'Create an Incident Template', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', + ], + 'edit' => [ + 'title' => 'Edit Template', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Scheduled Maintenance', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', + 'add' => [ + 'title' => 'Add Scheduled Maintenance', + 'success' => 'Schedule added.', + 'failure' => 'Something went wrong adding the schedule.', + ], + 'edit' => [ + 'title' => 'Edit Scheduled Maintenance', + 'success' => 'Schedule has been updated!', + 'failure' => 'Something went wrong editing the schedule.', + ], + 'delete' => [ + 'success' => 'The schedule has been deleted and will not show on your status page.', + 'failure' => 'The schedule could not be deleted. Please try again.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Add a Component', + 'message' => 'You should add a component.', + 'success' => 'Component created.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Edit a Component', + 'success' => 'Component updated.', + 'failure' => 'Something went wrong with the component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Component group added.', + 'failure' => 'Something went wrong with the component group.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Component group updated.', + 'failure' => 'Something went wrong with the component group.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Metrics', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric updated.', + 'failure' => 'Something went wrong with the metric.', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Verified', + 'not_verified' => 'Not Verified', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Something went wrong with the component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Something went wrong when updating.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', + 'description' => 'Team Members will be able to add, modify & edit components and incidents.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Team member added.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Settings', + 'app-setup' => [ + 'app-setup' => 'Application Setup', + 'images-only' => 'Only images may be uploaded.', + 'too-big' => 'The file you uploaded is too big. Upload an image smaller than :size', + ], + 'analytics' => [ + 'analytics' => 'Analytics', + ], + 'localization' => [ + 'localization' => 'Localization', + ], + 'security' => [ + 'security' => 'Security', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Login', + 'logged_in' => 'You\'re logged in.', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', + ], + + // Sidebar footer + 'help' => 'Help', + 'status_page' => 'Status Page', + 'logout' => 'Logout', + + // Notifications + 'notifications' => [ + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', + 'whoops' => 'Whoops.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', + 'close' => 'Just go straight to my dashboard', + 'steps' => [ + 'component' => 'Create components', + 'incident' => 'Create incidents', + 'customize' => 'Customize', + 'team' => 'Add users', + 'api' => 'Generate API token', + 'two-factor' => 'Two Factor Authentication', + ], + ], + +]; diff --git a/resources/lang/uk/forms.php b/resources/lang/uk/forms.php new file mode 100644 index 00000000..c1945012 --- /dev/null +++ b/resources/lang/uk/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Username', + 'password' => 'Password', + 'site_name' => 'Site Name', + 'site_domain' => 'Site Domain', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Password', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Name', + 'status' => 'Status', + 'component' => 'Component', + 'message' => 'Message', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Name', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Name', + 'status' => 'Status', + 'group' => 'Group', + 'description' => 'Description', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Name', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Name', + 'suffix' => 'Suffix', + 'description' => 'Description', + 'description-help' => 'You may also use Markdown.', + 'display-chart' => 'Display chart on status page?', + 'default-value' => 'Default Value', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', + 'places' => 'Decimal Places', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Value', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Site Name', + 'site-url' => 'Site URL', + 'display-graphs' => 'Display graphs on status page?', + 'about-this-page' => 'About this page', + 'days-of-incidents' => 'How many days of incidents to show?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Google Analytics code', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Site Timezone', + 'site-locale' => 'Site Language', + 'date-format' => 'Date Format', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', + ], + 'stylesheet' => [ + 'custom-css' => 'Custom Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Background Color', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Text Color', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Links', + ], + ], + + 'user' => [ + 'username' => 'Username', + 'email' => 'Email', + 'password' => 'Password', + 'api-token' => 'API Token', + 'api-token-help' => 'Regenerating your API token will prevent existing applications from accessing Cachet.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Admin', + 'user' => 'User', + ], + '2fa' => [ + 'help' => 'Enabling two factor authentication increases security of your account. You will need to download Google Authenticator or a similar app on to your mobile device. When you login you will be asked to provide a token generated by the app.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', + 'invite' => 'Invite', + 'signup' => 'Sign Up', + + // Other + 'optional' => '* Optional', +]; diff --git a/resources/lang/uk/pagination.php b/resources/lang/uk/pagination.php new file mode 100644 index 00000000..add1092a --- /dev/null +++ b/resources/lang/uk/pagination.php @@ -0,0 +1,28 @@ + '« Previous', + 'next' => 'Next »', + +]; diff --git a/resources/lang/uk/setup.php b/resources/lang/uk/setup.php new file mode 100644 index 00000000..044cf2e2 --- /dev/null +++ b/resources/lang/uk/setup.php @@ -0,0 +1,23 @@ + 'Setup', + 'title' => 'Setup Cachet', + 'service_details' => 'Service Details', + 'env_setup' => 'Environment Setup', + 'status_page_setup' => 'Status Page Setup', + 'show_support' => 'Show support for Cachet?', + 'admin_account' => 'Administrator Account', + 'complete_setup' => 'Complete Setup', + 'completed' => 'Cachet has been configured successfully!', + 'finish_setup' => 'Go to dashboard', +]; diff --git a/resources/lang/uk/validation.php b/resources/lang/uk/validation.php new file mode 100644 index 00000000..36ab3f30 --- /dev/null +++ b/resources/lang/uk/validation.php @@ -0,0 +1,119 @@ + 'The :attribute must be accepted.', + 'active_url' => 'The :attribute is not a valid URL.', + 'after' => 'The :attribute must be a date after :date.', + 'alpha' => 'The :attribute may only contain letters.', + 'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.', + 'alpha_num' => 'The :attribute may only contain letters and numbers.', + 'array' => 'The :attribute must be an array.', + 'before' => 'The :attribute must be a date before :date.', + 'between' => [ + 'numeric' => 'The :attribute must be between :min and :max.', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', + ], + 'boolean' => 'The :attribute field must be true or false.', + 'confirmed' => 'The :attribute confirmation does not match.', + 'date' => 'The :attribute is not a valid date.', + 'date_format' => 'The :attribute does not match the format :format.', + '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.', + 'email' => 'The :attribute must be a valid email address.', + 'exists' => 'The selected :attribute is invalid.', + 'filled' => 'The :attribute field is required.', + 'image' => 'The :attribute must be an image.', + 'in' => 'The selected :attribute is invalid.', + 'integer' => 'The :attribute must be an integer.', + 'ip' => 'The :attribute must be a valid IP address.', + 'json' => 'The :attribute must be a valid JSON string.', + 'max' => [ + 'numeric' => 'The :attribute may not be greater than :max.', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', + ], + 'mimes' => 'The :attribute must be a file of type: :values.', + 'min' => [ + 'numeric' => 'The :attribute must be at least :min.', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', + ], + 'not_in' => 'The selected :attribute is invalid.', + 'numeric' => 'The :attribute must be a number.', + 'regex' => 'The :attribute format is invalid.', + 'required' => 'The :attribute field is required.', + '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 is 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' => [ + 'numeric' => 'The :attribute must be :size.', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', + ], + 'string' => 'The :attribute must be a string.', + 'timezone' => 'The :attribute must be a valid zone.', + 'unique' => 'The :attribute has already been taken.', + 'url' => 'The :attribute format is invalid.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/vi/cachet.php b/resources/lang/vi/cachet.php new file mode 100644 index 00000000..20bf615e --- /dev/null +++ b/resources/lang/vi/cachet.php @@ -0,0 +1,140 @@ + [ + 'status' => [ + 1 => 'Hoạt động', + 2 => 'Vấn đề hiệu suất', + 3 => 'Ngưng hoạt động một phần', + 4 => 'Ngừng hoạt động toàn bộ', + ], + ], + + // Incidents + 'incidents' => [ + 'none' => 'Không có báo cáo sự cố.', + 'past' => 'Sự số trong quá khứ', + 'previous_week' => 'Tuần trước', + 'next_week' => 'Tuần sau', + 'none' => 'Không có báo cáo sự cố.', + 'scheduled' => 'Bảo trì định kỳ', + 'scheduled_at' => ', định kỳ :timestamp', + 'status' => [ + 0 => 'Đã xếp lịch', // TODO: Hopefully remove this. + 1 => 'Đang điều tra', + 2 => 'Xác định', + 3 => 'Đang xem', + 4 => 'Đã sửa', + ], + ], + + // Service Status + 'service' => [ + 'good' => '[0,1] System operational|[2,Inf] All systems are operational', + 'bad' => '[0,1] The system is currently experiencing issues|[2,Inf] Some systems are experiencing issues', + 'major' => '[0,1] The service experiencing a major outage|[2,Inf] Some systems are experiencing a major outage', + ], + + 'api' => [ + 'regenerate' => 'Tạo lại Khóa API', + 'revoke' => 'Thu hồi Khóa API', + ], + + // Metrics + 'metrics' => [ + 'filter' => [ + 'last_hour' => 'Last Hour', + 'hourly' => 'Last 12 Hours', + 'weekly' => 'Tuần', + 'monthly' => 'Tháng', + ], + ], + + // Subscriber + 'subscriber' => [ + 'subscribe' => 'Subscribe to get the most recent updates', + 'button' => 'Đăng ký', + 'email' => [ + 'subscribe' => 'Subscribe to email updates.', + 'subscribed' => 'You\'ve been subscribed to email notifications, please check your email to confirm your subscription.', + 'verified' => 'Your email subscription has been confirmed. Thank you!', + 'unsubscribe' => 'Unsubscribe from email updates.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', + 'verify' => [ + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', + 'html' => '

Please confirm your email subscription to :app_name status updates.

:link

Thank you, :app_name

', + ], + 'maintenance' => [ + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', + 'html' => '

New maintenance has been scheduled on :app_name.

', + ], + 'incident' => [ + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], + ], + ], + + 'users' => [ + 'email' => [ + 'invite' => [ + 'text' => "You have been invited to the team :app_name status page, to sign up follow the next link.\n:link\nThank you, :app_name", + 'html-preheader' => 'You have been invited to the team :app_name.', + 'html' => '

You have been invited to the team :app_name status page, to sign up follow the next link.

:link

Thank you, :app_name

', + ], + ], + ], + + 'signup' => [ + 'title' => 'Đăng ký', + 'username' => 'Tên người dùng', + 'email' => 'Email', + 'password' => 'Mật khẩu', + 'success' => 'Tài khoản của bạn đã được tạo.', + 'failure' => 'Có lỗi xảy ra khi đăng ký.', + ], + + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Đăng ký', + ], + ], + + // Other + 'powered_by' => ':app Status Page is powered by Cachet.', + 'about_this_site' => 'Về trang web này', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', + +]; diff --git a/resources/lang/vi/dashboard.php b/resources/lang/vi/dashboard.php new file mode 100644 index 00000000..dfadf760 --- /dev/null +++ b/resources/lang/vi/dashboard.php @@ -0,0 +1,251 @@ + 'Bảng điều khiển', + + // Incidents + 'incidents' => [ + 'title' => 'Sự cố & Lịch trình', + 'incidents' => 'Các sự cố', + 'logged' => '{0} Không có sự cố nào, làm việc tốt.|Bạn có một sự cố được ghi nhận.|Bạn có :count sự cố được báo cáo.', + 'incident-create-template' => 'Tạo template', + 'incident-templates' => 'Mẫu sự cố', + 'add' => [ + 'title' => 'Thêm một sự cố', + 'success' => 'Sự cố đã được thêm.', + 'failure' => 'Có lỗi gì đó đã xảy ra khi thêm sự cố.', + ], + 'edit' => [ + 'title' => 'Chỉnh sửa một sự cố', + 'success' => 'Sự cố đã được cập nhật.', + 'failure' => 'Có lỗi gì đó đã xảy ra khi sửa sự cố.', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', + ], + + // Incident templates + 'templates' => [ + 'title' => 'Mẫu sự cố', + 'add' => [ + 'title' => 'Tạo ra một khuôn mẫu khi gặp sự cố', + 'message' => 'You should add an Incident Template.', + 'success' => 'Mẫu đã được tạo.', + 'failure' => 'Có lỗi gì đó xảy ra khi thêm mẫu.', + ], + 'edit' => [ + 'title' => 'Sửa mẫu', + 'success' => 'Template đã được cập nhật thành công !', + 'failure' => 'Có lỗi gì đó xảy ra khi sửa mẫu', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', + ], + ], + ], + + // Incident Maintenance + 'schedule' => [ + 'schedule' => 'Bảo trì định kỳ', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Định kỳ lúc :timestamp', + 'add' => [ + 'title' => 'Thêm lịch bảo trì', + 'success' => 'Lịch đã được thêm.', + 'failure' => 'Có lỗi xảy ra khi thêm lịch.', + ], + 'edit' => [ + 'title' => 'Sửa lịch bảo trì', + 'success' => 'Lịch bảo trì đã được cập nhật.', + 'failure' => 'Có lỗi xảy ra khi sửa lịch bảo trì.', + ], + 'delete' => [ + 'success' => 'Lịch bảo trì đã được xóa, nó sẽ không hiển thị trên trang status của bạn.', + 'failure' => 'Lịch bảo trì chưa thể bị xóa, hãy thử lại.', + ], + ], + + // Components + 'components' => [ + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', + 'add' => [ + 'title' => 'Thêm một thành phần', + 'message' => 'Bạn cần thêm một component.', + 'success' => 'Component đã được tạo.', + 'failure' => 'Điều gì đó không đúng đã xảy ra với các component.', + ], + 'edit' => [ + 'title' => 'Chỉnh sửa một thành phần', + 'success' => 'Component đã được cập nhật.', + 'failure' => 'Điều gì đó không đúng đã xảy ra với các component.', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', + ], + + // Component groups + 'groups' => [ + 'groups' => 'Component group|Component groups', + 'no_components' => 'You should add a component group.', + 'add' => [ + 'title' => 'Add a Component Group', + 'success' => 'Nhóm component đã được thêm.', + 'failure' => 'Điều gì đó sai đã xảy ra với nhóm component.', + ], + 'edit' => [ + 'title' => 'Edit a Component Group', + 'success' => 'Nhóm thành phần đã được cập nhật.', + 'failure' => 'Điều gì đó không đúng đã xảy ra với nhóm thành phần.', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', + ], + ], + ], + + // Metrics + 'metrics' => [ + 'metrics' => 'Các số liệu', + 'add' => [ + 'title' => 'Create a Metric', + 'message' => 'You should add a Metric.', + 'success' => 'Metric đã được tạo.', + 'failure' => 'Có lỗi xảy ra khi thêm metric.', + ], + 'edit' => [ + 'title' => 'Edit a Metric', + 'success' => 'Metric đã được sửa.', + 'failure' => 'Có lỗi xảy ra khi thêm metric', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', + ], + ], + // Subscribers + 'subscribers' => [ + 'subscribers' => 'Subscribers', + 'description' => 'Subscribers will receive email updates when incidents are created.', + 'verified' => 'Đã xác nhận', + 'not_verified' => 'Chưa xác nhận', + 'add' => [ + 'title' => 'Add a New Subscriber', + 'success' => 'Subscriber added.', + 'failure' => 'Điều gì đó không đúng đã xảy ra với các component.', + ], + 'edit' => [ + 'title' => 'Update Subscriber', + 'success' => 'Subscriber updated.', + 'failure' => 'Có lỗi sai gì đó đã xảy ra khi cập nhật.', + ], + ], + + // Team + 'team' => [ + 'team' => 'Nhóm', + 'member' => 'Thành viên', + 'profile' => 'Hồ sơ cá nhân', + 'description' => 'Thành viên trong đội sẽ có thể để thêm, sửa đổi và chỉnh sửa các thành phần và sự cố.', + 'add' => [ + 'title' => 'Add a New Team Member', + 'success' => 'Thành viên đã được add.', + 'failure' => 'Something went wrong with the user.', + ], + 'edit' => [ + 'title' => 'Update Profile', + 'success' => 'Hồ Sơ đã được cập nhật.', + 'failure' => 'Có lỗi sai gì đó đã xảy ra khi cập nhật.', + ], + 'delete' => [ + 'success' => 'User deleted.', + 'failure' => 'Something went wrong when deleting this user.', + ], + 'invite' => [ + 'title' => 'Invite a New Team Member', + 'success' => 'The users invited.', + 'failure' => 'Something went wrong with the invite.', + ], + ], + + // Settings + 'settings' => [ + 'settings' => 'Thiết lập', + 'app-setup' => [ + 'app-setup' => 'Thiết lập ứng dụng', + 'images-only' => 'Chỉ có thể upload ảnh.', + 'too-big' => 'File bạn vừa upload có kích thước quá lớn, hãy upload ảnh có kích thước nhỏ hơn :size', + ], + 'analytics' => [ + 'analytics' => 'Thống kê', + ], + 'localization' => [ + 'localization' => 'Bản địa hoá', + ], + 'security' => [ + 'security' => 'Bảo mật', + 'two-factor' => 'Users without two-factor authentication', + ], + 'stylesheet' => [ + 'stylesheet' => 'Stylesheet', + ], + 'theme' => [ + 'theme' => 'Theme', + ], + 'edit' => [ + 'success' => 'Các setting đã được lưu.', + 'failure' => 'Không thể lưu các settings.', + ], + ], + + // Login + 'login' => [ + 'login' => 'Đăng nhập', + 'logged_in' => 'Bạn đang đăng nhập.', + 'welcome' => 'Chào mừng Quay trở lại!', + 'two-factor' => 'Vui lòng nhập mã token của bạn', + ], + + // Sidebar footer + 'help' => 'Trợ giúp', + 'status_page' => 'Trang trang thái', + 'logout' => 'Đăng xuất', + + // Notifications + 'notifications' => [ + 'notifications' => 'Thông báo', + 'awesome' => 'Tuyệt vời.', + 'whoops' => 'Ôi.', + ], + + // Welcome modal + 'welcome' => [ + 'welcome' => 'Welcome to your status page!', + 'message' => 'Trang trái thái cảu bạn gần như đã sẵn sàng. Bạn có thể muốn cấu hình mình vài thiết lập phụ', + 'close' => 'Chỉ cần đi thẳng đến bảng điều khiển của tôi', + 'steps' => [ + 'component' => 'Tạo thành phần', + 'incident' => 'Tạo sự cố', + 'customize' => 'Tùy chỉnh', + 'team' => 'Thêm người dùng', + 'api' => 'Tạo API token', + 'two-factor' => 'Xác minh 2 bước', + ], + ], + +]; diff --git a/resources/lang/vi/forms.php b/resources/lang/vi/forms.php new file mode 100644 index 00000000..73e89a34 --- /dev/null +++ b/resources/lang/vi/forms.php @@ -0,0 +1,181 @@ + [ + 'email' => 'Email', + 'username' => 'Tên đăng nhập', + 'password' => 'Mật khẩu', + 'site_name' => 'Tến site', + 'site_domain' => 'Domain', + 'site_timezone' => 'Chọn timezone', + 'site_locale' => 'Chọn ngôn ngữ', + 'enable_google2fa' => 'Bật tính năng xác thực 2 bước của google', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', + ], + + // Login form fields + 'login' => [ + 'login' => 'Username or Email', + 'email' => 'Email', + 'password' => 'Mật khẩu', + '2fauth' => 'Mã số xác thực', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Token không hợp lệ', + 'cookies' => 'Bạn phải bật cookie để đăng nhập.', + ], + + // Incidents form fields + 'incidents' => [ + 'name' => 'Tên', + 'status' => 'Trạng thái', + 'component' => 'Component', + 'message' => 'Tin nhắn', + 'message-help' => 'Bạn cũng có thể sử dụng Markdown.', + 'scheduled_at' => 'Khi nào bảo trì định kỳ?', + 'incident_time' => 'When did this incident occur?', + 'notify_subscribers' => 'Notify Subscribers?', + 'visibility' => 'Incident Visibility', + 'public' => 'Viewable by public', + 'logged_in_only' => 'Only visible to logged in users', + 'templates' => [ + 'name' => 'Tên', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', + ], + ], + + // Components form fields + 'components' => [ + 'name' => 'Tên', + 'status' => 'Trạng thái', + 'group' => 'nhóm', + 'description' => 'Miêu tả', + 'link' => 'Liên kết', + 'tags' => 'Thẻ Tag', + 'tags-help' => 'Ngăn cách bởi dấu phẩy.', + 'enabled' => 'Component enabled?', + + 'groups' => [ + 'name' => 'Tên', + 'collapsed' => 'Collapse the group by default?', + ], + ], + + // Metric form fields + 'metrics' => [ + 'name' => 'Tên', + 'suffix' => 'Hậu tố', + 'description' => 'Miêu tả', + 'description-help' => 'Bạn cũng có thể sử dụng Markdown.', + 'display-chart' => 'Hiển thị các biểu đồ trên trang trạng thái?', + 'default-value' => 'Giá trị mặc định', + 'calc_type' => 'Calculation of Metrics', + 'type_sum' => 'Tổng hợp', + 'type_avg' => 'Trung bình', + 'places' => 'Chữ số thập phân', + 'default_view' => 'Default View', + + 'points' => [ + 'value' => 'Giá trị', + ], + ], + + // Settings + 'settings' => [ + /// Application setup + 'app-setup' => [ + 'site-name' => 'Tên trang web', + 'site-url' => 'URL trang web', + 'display-graphs' => 'Hiển thị các biểu đồ trên trang trạng thái?', + 'about-this-page' => 'Về trang này', + 'days-of-incidents' => 'Sự cố này sẽ hiển thị mấy ngày ?', + 'banner' => 'Ảnh banner', + 'banner-help' => "Bạn nên upload ảnh có chiều rộng lớn hơn 930px", + 'subscribers' => 'Allow people to signup to email notifications?', + ], + 'analytics' => [ + 'analytics_google' => 'Mã Google Analytics', + 'analytics_gosquared' => 'GoSquared Analytics code', + 'analytics_piwik_url' => 'URL of your Piwik instance (without http(s)://)', + 'analytics_piwik_siteid' => 'Piwik\'s site id', + ], + 'localization' => [ + 'site-timezone' => 'Múi giờ', + 'site-locale' => 'Ngôn ngữ', + 'date-format' => 'Định dạng ngày', + 'incident-date-format' => 'Incident Timestamp Format', + ], + 'security' => [ + 'allowed-domains' => 'Allowed Domains', + 'allowed-domains-help' => 'Ngăn cách bằng dấu phẩy. Những domain dưới đây được cho phép một cách tự động.', + ], + 'stylesheet' => [ + 'custom-css' => 'Tùy chỉnh Stylesheet', + ], + 'theme' => [ + 'background-color' => 'Màu nền', + 'background-fills' => 'Background Fills (Components, Incidents, Footer)', + 'banner-background-color' => 'Banner Background Color', + 'banner-padding' => 'Banner Padding', + 'fullwidth-banner' => 'Enable fullwidth banner?', + 'text-color' => 'Màu chữ', + 'dashboard-login' => 'Show dashboard button in the footer?', + 'reds' => 'Red (Used for errors)', + 'blues' => 'Blue (Used for information)', + 'greens' => 'Green (Used for success)', + 'yellows' => 'Yellow (Used for alerts)', + 'oranges' => 'Orange (Used for notices)', + 'metrics' => 'Metrics Fill', + 'links' => 'Liên kết', + ], + ], + + 'user' => [ + 'username' => 'Tên người dùng', + 'email' => 'Email', + 'password' => 'Mật khẩu', + 'api-token' => 'API Token', + 'api-token-help' => 'Khi tạo API token mới, các API token cũ sẽ không sử dụng được nữa.', + 'gravatar' => 'Change your profile picture at Gravatar.', + 'user_level' => 'User Level', + 'levels' => [ + 'admin' => 'Quản trị', + 'user' => 'Người dùng', + ], + '2fa' => [ + 'help' => 'Khi enable chức năng xác minh hai lớp ( two factor authentication ) sẽ tăng độ bảo mật cho account của bạn. Bạn cần phải tải Google Authenticator hoặc các ứng dụng tương tự cho điện thoại của bạn. Mỗi khi login, bạn sẽ phải sử dụng phần mềm này để tạo mã, và nhập vào khung đăng nhập.', + ], + 'team' => [ + 'description' => 'Invite your team members by entering their email addresses here.', + 'email' => 'Email #:id', + ], + ], + + // Buttons + 'add' => 'Thêm', + 'save' => 'Lưu thay đổi', + 'update' => 'Cập nhật', + 'create' => 'Tạo mới', + 'edit' => 'Chỉnh sửa', + 'delete' => 'Xoá', + 'submit' => 'Gửi', + 'cancel' => 'Hủy', + 'remove' => 'Xoá', + 'invite' => 'Mời', + 'signup' => 'Đăng ký', + + // Other + 'optional' => '* Tùy chọn', +]; diff --git a/resources/lang/vi/pagination.php b/resources/lang/vi/pagination.php new file mode 100644 index 00000000..e58379b8 --- /dev/null +++ b/resources/lang/vi/pagination.php @@ -0,0 +1,28 @@ + '« Trước', + 'next' => 'Tiếp theo »', + +]; diff --git a/resources/lang/vi/setup.php b/resources/lang/vi/setup.php new file mode 100644 index 00000000..ef7308d9 --- /dev/null +++ b/resources/lang/vi/setup.php @@ -0,0 +1,23 @@ + 'Cài đặt', + 'title' => 'Cài đặt Cachet', + 'service_details' => 'Chi tiết DỊch vụ', + 'env_setup' => 'Thiết lập môi trường', + 'status_page_setup' => 'Cài đặt Trang Trạng thái', + 'show_support' => 'Hiển thị hỗ trợ cho Cachet?', + 'admin_account' => 'Tài khoản người quản trị', + 'complete_setup' => 'Hoàn tất cài đặt', + 'completed' => 'Cachet đã được cấu hình thành công!', + 'finish_setup' => 'Đi đến bảng điều khiển', +]; diff --git a/resources/lang/vi/validation.php b/resources/lang/vi/validation.php new file mode 100644 index 00000000..145399ec --- /dev/null +++ b/resources/lang/vi/validation.php @@ -0,0 +1,119 @@ + ':attribute phải được chấp nhận.', + 'active_url' => ':attribute không phải một URL hợp lệ.', + 'after' => ':attribute phải là một ngày sau :date.', + 'alpha' => ':attribute chỉ có thể chứa các chữ cái.', + 'alpha_dash' => ':attribute chỉ có thể chứa các chữ cái, số, và dấu gạch ngang.', + 'alpha_num' => ':attribute chỉ có thể chứa các chữ cái và số.', + 'array' => ':attribute phải là một mảng.', + 'before' => ':attribute phải là một ngày trước :date.', + 'between' => [ + 'numeric' => ':attribute phải ở giữa :min và :max.', + 'file' => ':attribute phải trong khoảng từ :min đến :max kilobytes.', + 'string' => ':attribute phải trong khoảng từ :min đến :max ký tự.', + 'array' => ':attribute phải trong khoảng :min và :max mục.', + ], + 'boolean' => 'Trường :attribute phải là trua hoặc false.', + 'confirmed' => ':attribute xác nhận không đúng.', + 'date' => 'Kiểu ngày tháng của :attribute không hợp lệ.', + 'date_format' => 'Thuộc tính :attribute phải có cấu trúc giống như :format.', + 'different' => 'Thuộc tính :attribute và :other phải khác nhau.', + 'digits' => 'Thuộc tính :attribute phải :digits số.', + 'digits_between' => 'Thuộc tính :attribute phải có số ký số lớn hơn :min và :max số.', + 'email' => 'Thuộc tính :attribute phải có định dạng là địa chỉ email.', + 'exists' => 'Thuộc tính đã chọn ( :attribute ) không hợp lệ.', + 'filled' => 'Trường :attribute là bắt buộc.', + 'image' => 'Thuộc tính :attribute phải là một file ảnh.', + 'in' => 'Thuộc tính được chọn ( :attribute ) không hợp lệ.', + 'integer' => 'Thuộc tính :attribute phải là số nguyên.', + 'ip' => 'Thuộc tính :attribute phải có dạng IP.', + 'json' => ':attribute phải là một chuỗi JSON hợp lệ.', + 'max' => [ + 'numeric' => ':attribute có thể không lớn hơn :max.', + 'file' => ':attribute có thể không lớn hơn :max kilobytes.', + 'string' => ':attribute có thể không lớn hơn :max ký tự.', + 'array' => ':attribute có thể không có nhiều hơn :max mục.', + ], + 'mimes' => ':attribute phải là một tệp loại: :values.', + 'min' => [ + 'numeric' => ':attribute phải tối thiểu :min.', + 'file' => ':attribute phải tối thiểu :min kilobytes.', + 'string' => ':attribute phải tối thiểu :min ký tự.', + 'array' => ':attribute phải tối thiểu :min mục.', + ], + 'not_in' => ':attribute đã chọn không hợp lệ.', + 'numeric' => ':attribute phải là một số.', + 'regex' => 'Định dạng :attribute không hợp lệ.', + 'required' => 'Trường :attribute là bắt buộc.', + 'required_if' => 'Trường :attribute là bắt buộc khi :other là :value.', + 'required_unless' => 'The :attribute field is required unless :other is in :values.', + 'required_with' => 'Trường :attribute là bắt buộc khi :values là hiện tại.', + 'required_with_all' => 'Trường :attribute là bắt buộc khi :values là hiện tại.', + 'required_without' => 'Trường :attribute là bắt buộc khi :values không phải là hiện tại.', + 'required_without_all' => 'Trường :attribute là bắt buộc khi không có gì của :values là hiện tại.', + 'same' => ':attribute và :other phải khớp nhau.', + 'size' => [ + 'numeric' => ':attribute phải là :size.', + 'file' => ':attribute phải là :size kilobytes.', + 'string' => ':attribute phải là :size ký tự.', + 'array' => ':attribute phải là :size mục.', + ], + 'string' => ':attribute phải là một chuỗi.', + 'timezone' => ':attribute phải là một khu vực hợp lệ.', + 'unique' => ':attribute đã được dùng.', + 'url' => 'Định dạng :attribute không hợp lệ.', + + /* + |-------------------------------------------------------------------------- + | 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 attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => [], + +]; diff --git a/resources/lang/zh-CN/cachet.php b/resources/lang/zh-CN/cachet.php index f25f15ae..f7ab8400 100755 --- a/resources/lang/zh-CN/cachet.php +++ b/resources/lang/zh-CN/cachet.php @@ -15,8 +15,8 @@ return [ 'status' => [ 1 => '运行正常', 2 => '负载较高', - 3 => '部分停运', - 4 => '严重停转', + 3 => 'Partial Outage', + 4 => 'Major Outage', ], ], @@ -26,9 +26,9 @@ return [ 'past' => '历史状态', 'previous_week' => '前一周', 'next_week' => '后一周', - 'none' => '当日无故障', - 'scheduled' => '计划维护', - 'scheduled_at' => ',计划于 :timestamp', + 'none' => '无故障报告', + 'scheduled' => 'Scheduled Maintenance', + 'scheduled_at' => ', scheduled :timestamp', 'status' => [ 0 => '计划中', // TODO: Hopefully remove this. 1 => '确认中', @@ -46,7 +46,7 @@ return [ ], 'api' => [ - 'regenerate' => '重新生成 API 密钥', + 'regenerate' => 'Regenerate API Key', 'revoke' => '注销 API 密钥', ], @@ -63,29 +63,36 @@ return [ // Subscriber 'subscriber' => [ 'subscribe' => '订阅最新的更新。', - 'button' => '订阅', + 'button' => 'Subscribe', 'email' => [ - 'subscribe' => '订阅电子邮件更新。', + 'subscribe' => 'Subscribe to email updates.', 'subscribed' => '您已经订阅电子邮件通知,请检查您的电子邮件,确认您的订阅。', - 'verified' => '您的电子邮件订阅已确认。谢谢!', + 'verified' => 'Your email subscription has been confirmed. Thank you!', 'unsubscribe' => '取消电子邮件订阅。', - 'unsubscribed' => '您的电子邮件订阅已被取消。', - 'failure' => '邮件订阅失败。', - 'already-subscribed' => '邮箱 :email 已加入订阅,请勿重复订阅.', + 'unsubscribed' => 'Your email subscription has been cancelled.', + 'failure' => 'Something went wrong with the subscription.', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', 'verify' => [ - 'text' => '请确认您的 :app_name 电子邮件订阅。\\n:link\\n此致,:app_name', - 'html-preheader' => '请确认您的 :app_name 状态更新邮件订阅。', + 'text' => "Please confirm your email subscription to :app_name status updates.\n:link\nThank you, :app_name", + 'html-preheader' => 'Please confirm your email subscription to :app_name status updates.', 'html' => '

请确认您的 :app_name 电子邮件订阅。

:link

此致,:app_name

', ], 'maintenance' => [ - 'text' => '新的维护计划已被安排在 :app_name 上。\\n此致,:app_name', - 'html-preheader' => '新的维护计划已被安排在 :app_name 上。', + 'text' => "New maintenance has been scheduled on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New maintenance has been scheduled on :app_name.', 'html' => '

新的维护计划已被安排在 :app_name 上。

此致,:app_name

', ], 'incident' => [ - 'text' => ':app_name 有新事件报告。\\n此致,:app_name', - 'html-preheader' => ':app_name 有新事件报告。', - 'html' => '

:app_name 有新事件报告。

此致,:app_name

', + 'text' => "New incident has been reported on :app_name.\nThank you, :app_name", + 'html-preheader' => 'New incident has been reported on :app_name.', + 'html' => '

New incident has been reported on :app_name.

Thank you, :app_name

', + ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', ], ], ], @@ -102,18 +109,32 @@ return [ 'signup' => [ 'title' => '注册', - 'username' => '用户名', - 'email' => '邮箱', - 'password' => '密码', + 'username' => 'Username', + 'email' => '电子邮箱', + 'password' => 'Password', 'success' => '您的账号已注册成功。', 'failure' => '注册失败。', ], + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => 'Subscribe', + ], + ], + // Other 'powered_by' => ':app 状态页托管服务由 Cachet 提供技术支持。', 'about_this_site' => '关于我们', - 'rss-feed' => 'RSS 订阅', - 'atom-feed' => 'Atom 订阅', - 'feed' => '状态源', + 'rss-feed' => 'RSS', + 'atom-feed' => 'Atom', + 'feed' => 'Status Feed', ]; diff --git a/resources/lang/zh-CN/dashboard.php b/resources/lang/zh-CN/dashboard.php index 76d1a5d3..8c78145d 100755 --- a/resources/lang/zh-CN/dashboard.php +++ b/resources/lang/zh-CN/dashboard.php @@ -16,9 +16,9 @@ return [ // Incidents 'incidents' => [ 'title' => '故障和维护计划', - 'incidents' => '故障', + 'incidents' => 'Incidents', 'logged' => '{0} 当前没有故障信息|您已经记录了一个故障|您已经报告了 :count 个故障', - 'incident-create-template' => '创建模板', + 'incident-create-template' => 'Create Template', 'incident-templates' => '故障模板', 'add' => [ 'title' => '添加故障', @@ -28,74 +28,74 @@ return [ 'edit' => [ 'title' => '编辑故障', 'success' => '故障已更新。', - 'failure' => '故障编辑失败。', + 'failure' => '事件编辑失败。', ], 'delete' => [ - 'success' => '该故障已被删除,它将从您的状态页上消失。', - 'failure' => '故障删除失败,请重试。', + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', ], // Incident templates 'templates' => [ - 'title' => '故障模板', + 'title' => '事件模板', 'add' => [ 'title' => '添加故障模板', - 'message' => '没有模板,马上添加一个吧', - 'success' => '模板已创建。', - 'failure' => '创建模板失败。', + 'message' => 'You should add an Incident Template.', + 'success' => 'Template created.', + 'failure' => 'Something went wrong with the incident template.', ], 'edit' => [ 'title' => '编辑模板', - 'success' => '模板已更新!', - 'failure' => '模板修改失败', + 'success' => 'Template has been updated!', + 'failure' => 'Something went wrong updating the incident template', ], 'delete' => [ - 'success' => '该模板已被成功删除。', - 'failure' => '模板删除失败,请重试。', + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', ], ], ], // Incident Maintenance 'schedule' => [ - 'schedule' => '维护计划', - 'scheduled_at' => '计划在 :timestamp', - 'logged' => '{0} 当前没有维护计划|您已经添加了一个维护|您已经添加了 :count 个维护计划', + 'schedule' => '计划维护', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => 'Scheduled at :timestamp', 'add' => [ - 'title' => '添加维护计划', + 'title' => 'Add Scheduled Maintenance', 'success' => '维护计划已添加。', 'failure' => '维护计划添加失败。', ], 'edit' => [ - 'title' => '编辑维护计划', + 'title' => 'Edit Scheduled Maintenance', 'success' => '维护计划已更新!', 'failure' => '维护计划更新失败。', ], 'delete' => [ 'success' => '该维护计划已被删除,它将从您的状态页上消失。', - 'failure' => '无法删除该维护计划。请再试一次。', + 'failure' => 'The schedule could not be deleted. Please try again.', ], ], // Components 'components' => [ - 'components' => '组件', - 'component_statuses' => '组件状态', - 'listed_group' => '根据 :name 分组', + 'components' => 'Components', + 'component_statuses' => 'Component Statuses', + 'listed_group' => 'Grouped under :name', 'add' => [ 'title' => '添加组件', 'message' => '没有组件,马上添加一个吧', 'success' => '组件已添加。', - 'failure' => '组件添加失败。', + 'failure' => 'Something went wrong with the component.', ], 'edit' => [ 'title' => '编辑组件', - 'success' => '组件已更新。', + 'success' => 'Component updated.', 'failure' => '组件编辑失败。', ], 'delete' => [ - 'success' => '该组件已被删除.', - 'failure' => '组件删除失败,请重试.', + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', ], // Component groups @@ -105,40 +105,39 @@ return [ 'add' => [ 'title' => '添加组件分组', 'success' => '组件分组已添加。', - 'failure' => '分组添加失败。', + 'failure' => 'Something went wrong with the component group.', ], 'edit' => [ 'title' => '编辑组件分组', - 'success' => '分组已更新。', + 'success' => 'Component group updated.', 'failure' => '分组更新失败。', ], 'delete' => [ - 'success' => '组件分组已被删除。', - 'failure' => '组件分组删除失败,请重试。', + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', ], ], ], // Metrics 'metrics' => [ - 'metrics' => '图表', + 'metrics' => 'Metrics', 'add' => [ 'title' => '添加图表', - 'message' => '没有图表,马上添加一个吧', - 'success' => '图表已创建。', - 'failure' => '图表创建失败。', + 'message' => 'You should add a Metric.', + 'success' => 'Metric created.', + 'failure' => 'Something went wrong with the metric.', ], 'edit' => [ 'title' => '编辑图表', - 'success' => '图表已更新。', + 'success' => 'Metric updated.', 'failure' => '图表更新失败。', ], 'delete' => [ - 'success' => '该图表已被删除,它将从您的状态页上消失。', - 'failure' => '图表删除失败,请重试。', + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', ], ], - // Subscribers 'subscribers' => [ 'subscribers' => '通知', @@ -148,30 +147,30 @@ return [ 'add' => [ 'title' => '添加邮件订阅', 'success' => '邮件订阅已添加成功。', - 'failure' => '邮件订阅添加失败。', + 'failure' => 'Something went wrong with the component.', ], 'edit' => [ 'title' => '更新订阅者', 'success' => '订阅者信息已更新.', - 'failure' => '更新订阅者信息失败.', + 'failure' => 'Something went wrong when updating.', ], ], // Team 'team' => [ - 'team' => '团队', - 'member' => '成员', - 'profile' => '更改资料', + 'team' => 'Team', + 'member' => 'Member', + 'profile' => 'Profile', 'description' => '团队成员可维护组件和故障信息。', 'add' => [ 'title' => '添加团队成员', - 'success' => '团队成员已添加。', + 'success' => 'Team member added.', 'failure' => '添加组件失败。', ], 'edit' => [ 'title' => '更新配置文件', - 'success' => '配置文件已更新。', - 'failure' => '资料更新失败。', + 'success' => 'Profile updated.', + 'failure' => 'Something went wrong when updating.', ], 'delete' => [ 'success' => '团队成员已删除.', @@ -186,31 +185,31 @@ return [ // Settings 'settings' => [ - 'settings' => '设置', + 'settings' => 'Settings', 'app-setup' => [ 'app-setup' => '网站设置', - 'images-only' => '只能上传图像。', + 'images-only' => 'Only images may be uploaded.', 'too-big' => '您上传的文件太大了。上传的图像大小应小于:size', ], 'analytics' => [ 'analytics' => '第三方统计', ], 'localization' => [ - 'localization' => '国际化', + 'localization' => '本地化', ], 'security' => [ 'security' => '安全设置', - 'two-factor' => '没有启用双因素身份验证的用户', + 'two-factor' => 'Users without two-factor authentication', ], 'stylesheet' => [ 'stylesheet' => '自定义样式', ], 'theme' => [ - 'theme' => '主题设置', + 'theme' => 'Theme', ], 'edit' => [ - 'success' => '设置已保存。', - 'failure' => '无法保存设置。', + 'success' => 'Settings saved.', + 'failure' => 'Settings could not be saved.', ], ], @@ -218,34 +217,34 @@ return [ 'login' => [ 'login' => '登录', 'logged_in' => '您已登录', - 'welcome' => '欢迎回来!', - 'two-factor' => '请输入您的双重验证Token。', + 'welcome' => 'Welcome Back!', + 'two-factor' => 'Please enter your token.', ], // Sidebar footer - 'help' => '帮助', + 'help' => 'Help', 'status_page' => '状态页', 'logout' => '退出', // Notifications 'notifications' => [ - 'notifications' => '通知', - 'awesome' => '太棒了!', + 'notifications' => 'Notifications', + 'awesome' => 'Awesome.', 'whoops' => '抱歉,', ], // Welcome modal 'welcome' => [ - 'welcome' => '欢迎来到Cachet', - 'message' => '您的状态页面即将准备好了!您可能想要配置这些额外的设置', + 'welcome' => 'Welcome to your status page!', + 'message' => 'Your status page is almost ready! You might want to configure these extra settings', 'close' => '您可以直接进入控制台', 'steps' => [ 'component' => '添加组件', 'incident' => '添加故障', 'customize' => '主题设置', - 'team' => '添加用户', + 'team' => 'Add users', 'api' => '生成 API Token', - 'two-factor' => '双因子身份验证', + 'two-factor' => '双因素身份验证', ], ], diff --git a/resources/lang/zh-CN/forms.php b/resources/lang/zh-CN/forms.php index c40de56e..4b57394b 100755 --- a/resources/lang/zh-CN/forms.php +++ b/resources/lang/zh-CN/forms.php @@ -15,78 +15,80 @@ return [ 'setup' => [ 'email' => '电子邮箱', 'username' => '用户名', - 'password' => '密码', - 'site_name' => '网站名称', + 'password' => 'Password', + 'site_name' => '站点名称', 'site_domain' => '域名', - 'site_timezone' => '选择您的时区', - 'site_locale' => '选择您的语言', - 'enable_google2fa' => '启用谷歌双因素身份验证', - 'cache_driver' => '缓存驱动', - 'session_driver' => '会话驱动', + 'site_timezone' => 'Select your timezone', + 'site_locale' => 'Select your language', + 'enable_google2fa' => 'Enable Google Two Factor Authentication', + 'cache_driver' => 'Cache Driver', + 'session_driver' => 'Session Driver', ], // Login form fields 'login' => [ - 'login' => '用户名或电子邮箱', + 'login' => 'Username or Email', 'email' => '电子邮箱', 'password' => '密码', - '2fauth' => '双因素验证代码', - 'invalid' => '无效的电子邮件或密码。', - 'invalid-token' => '无效的令牌。', - 'cookies' => '您必须启用 cookies 来进行登录。', + '2fauth' => 'Authentication Code', + 'invalid' => 'Invalid username or password', + 'invalid-token' => 'Invalid token', + 'cookies' => 'You must enable cookies to login.', ], // Incidents form fields 'incidents' => [ 'name' => '名称', - 'status' => '状态', - 'component' => '组件', + 'status' => 'Status', + 'component' => 'Component', 'message' => '描述', - 'message-help' => '您可以使用Markdown语言。', - 'scheduled_at' => '什么时间安排维护?', + 'message-help' => 'You may also use Markdown.', + 'scheduled_at' => 'When to schedule the maintenance for?', 'incident_time' => '这次故障是什么时候发生的?', 'notify_subscribers' => '通知订阅者', 'visibility' => '故障的可见性', - 'public' => '公共可见', + 'public' => 'Viewable by public', 'logged_in_only' => '仅登录用户可见', 'templates' => [ - 'name' => '故障模板名称', - 'template' => '模板', - 'twig' => '故障模板可使用 Twig 模板引擎的语法.', + 'name' => '事件名', + 'template' => 'Template', + 'twig' => 'Incident Templates can make use of the Twig templating language.', ], ], // Components form fields 'components' => [ - 'name' => '组件名称', - 'status' => '组件状态', + 'name' => '组件名', + 'status' => '状态', 'group' => '组件分组', 'description' => '组件描述', - 'link' => '链接', - 'tags' => '标签', - 'tags-help' => '以逗号分隔。', + 'link' => 'Link', + 'tags' => 'Tags', + 'tags-help' => 'Comma separated.', 'enabled' => '启用', 'groups' => [ - 'name' => '组名', + 'name' => '组名', + 'collapsed' => 'Collapse the group by default?', ], ], // Metric form fields 'metrics' => [ 'name' => '图表名', - 'suffix' => '后缀', + 'suffix' => 'Suffix', 'description' => '描述信息', 'description-help' => '您可以使用Markdown语言。', - 'display-chart' => '在状态页上显示图表?', + 'display-chart' => 'Display chart on status page?', 'default-value' => '默认值', 'calc_type' => '图表计算方法', - 'type_sum' => '求和', - 'type_avg' => '求平均数', + 'type_sum' => 'Sum', + 'type_avg' => 'Average', 'places' => '小数点位数', + 'default_view' => 'Default View', 'points' => [ - 'value' => '数值', + 'value' => 'Value', ], ], @@ -96,18 +98,18 @@ return [ 'app-setup' => [ 'site-name' => '网站名称', 'site-url' => '网址', - 'display-graphs' => '是否在状态页上显示图表', + 'display-graphs' => 'Display graphs on status page?', 'about-this-page' => '关于本页', 'days-of-incidents' => '显示多少天的故障?', - 'banner' => '横幅图像', - 'banner-help' => '建议上传文件宽度不大于930像素。', - 'subscribers' => '允许用户订阅邮件通知吗?', + 'banner' => 'Banner Image', + 'banner-help' => "It's recommended that you upload files no bigger than 930px wide .", + 'subscribers' => 'Allow people to signup to email notifications?', ], 'analytics' => [ 'analytics_google' => 'Google Analytics 代码', 'analytics_gosquared' => 'GoSquared Analytics 代码', 'analytics_piwik_url' => '输入Piwik实例的URL(不含http(s)://)', - 'analytics_piwik_siteid' => 'Piwik 网站的 id', + 'analytics_piwik_siteid' => 'Piwik 的站点 id', ], 'localization' => [ 'site-timezone' => '系统时区', @@ -117,18 +119,18 @@ return [ ], 'security' => [ 'allowed-domains' => '允许的域', - 'allowed-domains-help' => '以逗号分隔。默认情况下,API跨域请求将自动允许以上已设置的域。', + 'allowed-domains-help' => 'Comma separated. The domain set above is automatically allowed by default.', ], 'stylesheet' => [ - 'custom-css' => '自定义样式表', + 'custom-css' => 'Custom Stylesheet', ], 'theme' => [ 'background-color' => '页面背景色', 'background-fills' => '区块填充色(组件, 故障, 页尾)', 'banner-background-color' => '横幅背景色', 'banner-padding' => '横幅Padding值', - 'fullwidth-banner' => '横幅全宽?', - 'text-color' => '文字颜色', + 'fullwidth-banner' => '启用全宽横幅?', + 'text-color' => 'Text Color', 'dashboard-login' => '在页尾显示 管理后台 的入口?', 'reds' => '红 (用于错误类提示)', 'blues' => '蓝 (用于信息类提示)', @@ -141,7 +143,7 @@ return [ ], 'user' => [ - 'username' => '用户名', + 'username' => 'Username', 'email' => '电子邮箱', 'password' => '密码', 'api-token' => 'API Token', @@ -152,7 +154,7 @@ return [ 'admin' => '管理员', 'user' => '普通用户', ], - '2fa' => [ + '2fa' => [ 'help' => '启用双因素身份验证会增加您的帐户安全。您将需要下载 Google Authenticator 或类似的应用到您的移动设备。当您登录时将会要求您提供由应用程序生成的一个短码。', ], 'team' => [ @@ -162,18 +164,18 @@ return [ ], // Buttons - 'add' => '增加', - 'save' => '保存​​', - 'update' => '更新', - 'create' => '创建', - 'edit' => '编辑', - 'delete' => '删除', - 'submit' => '提交', - 'cancel' => '取消', - 'remove' => '移除', + 'add' => 'Add', + 'save' => 'Save', + 'update' => 'Update', + 'create' => 'Create', + 'edit' => 'Edit', + 'delete' => 'Delete', + 'submit' => 'Submit', + 'cancel' => 'Cancel', + 'remove' => 'Remove', 'invite' => '邀请', 'signup' => '注册', // Other - 'optional' => '* 可选', + 'optional' => '* Optional', ]; diff --git a/resources/lang/zh-CN/setup.php b/resources/lang/zh-CN/setup.php index f231a8a5..b2f1e531 100755 --- a/resources/lang/zh-CN/setup.php +++ b/resources/lang/zh-CN/setup.php @@ -10,7 +10,7 @@ */ return [ - 'setup' => '安装设置', + 'setup' => '设置', 'title' => '安装 Cachet', 'service_details' => '服务细节', 'env_setup' => '环境设置', diff --git a/resources/lang/zh-CN/validation.php b/resources/lang/zh-CN/validation.php index 38f2efe8..2333ea44 100755 --- a/resources/lang/zh-CN/validation.php +++ b/resources/lang/zh-CN/validation.php @@ -45,10 +45,12 @@ return [ 'digits_between' => ':attribute 必须在 :min 和 :max 位之间。', 'email' => ':attribute 必须是个有效的邮件地址。', 'exists' => '选择的 :attribute 无效。', + 'filled' => ':attribute 字段必填。', 'image' => ':attribute 必须是图片。', 'in' => '选择的 :attribute 无效。', 'integer' => ':attribute 必须是整数。', 'ip' => ':attribute 必须是一个有效的 IP 地址。', + 'json' => ':attribute 必须是规范的 JSON 字串。', 'max' => [ 'numeric' => ':attribute 不能大于 :max。', 'file' => ':attribute 不能大于 :max KB。', @@ -80,9 +82,9 @@ return [ 'array' => ':attribute 必须包含 :size 个', ], 'string' => ':attribute必须是一个字符串。', + 'timezone' => ':attribute 必须是个有效的区域。', 'unique' => ':attribute 已经被占用', 'url' => ':attribute 的格式无效', - 'timezone' => ':attribute 必须是个有效的区域。', /* |-------------------------------------------------------------------------- diff --git a/resources/lang/zh-TW/cachet.php b/resources/lang/zh-TW/cachet.php index 6f4e5ce1..2da936b3 100644 --- a/resources/lang/zh-TW/cachet.php +++ b/resources/lang/zh-TW/cachet.php @@ -13,10 +13,10 @@ return [ // Components 'components' => [ 'status' => [ - 1 => '正常運轉', - 2 => '性能問題', - 3 => '部分停運', - 4 => '嚴重停轉', + 1 => '正常', + 2 => '效能問題', + 3 => '部分停止運作', + 4 => '停止運作', ], ], @@ -24,16 +24,16 @@ return [ 'incidents' => [ 'none' => '沒有已報告的事件。', 'past' => '過去的事件', - 'previous_week' => '前壹周', - 'next_week' => '後壹周', + 'previous_week' => '上一週', + 'next_week' => '下一週', 'none' => '沒有已報告的事件。', - 'scheduled' => '計劃維護', - 'scheduled_at' => ',計劃於 :timestamp', + 'scheduled' => '排程維護', + 'scheduled_at' => ',於:timestamp', 'status' => [ - 0 => '計劃中', // TODO: Hopefully remove this. + 0 => '排程中的維護', // TODO: Hopefully remove this. 1 => '調查中', - 2 => '已確認', - 3 => '觀察中', + 2 => '已辨明', + 3 => '警戒中', 4 => '已修復', ], ], @@ -46,8 +46,8 @@ return [ ], 'api' => [ - 'regenerate' => '重新生成 API 密鑰', - 'revoke' => '註銷 API 密鑰', + 'regenerate' => '重新產生 API 金鑰', + 'revoke' => '撤銷 API 密鑰', ], // Metrics @@ -55,38 +55,45 @@ return [ 'filter' => [ 'last_hour' => 'Last Hour', 'hourly' => '最近12小時', - 'weekly' => '周', + 'weekly' => '週', 'monthly' => '月', ], ], // Subscriber 'subscriber' => [ - 'subscribe' => '訂閱最新的更新。', + 'subscribe' => '訂閱最新的狀態更新。', 'button' => '訂閱', 'email' => [ - 'subscribe' => '訂閱電子郵件更新。', + 'subscribe' => '訂閱 電子郵件 系統狀態更新。', 'subscribed' => '您已經訂閱電子郵件通知,請檢查您的電子郵件,確認您的訂閱。', 'verified' => '您的電子郵件訂閱已確認。謝謝!', 'unsubscribe' => '取消電子郵件訂閱。', - 'unsubscribed' => '您的電子郵件訂閱已被取消。', + 'unsubscribed' => '您的電子郵件訂閱已取消。', 'failure' => '郵件訂閱失敗。', - 'already-subscribed' => '電子郵件 :email 已經訂閱,請勿重複訂閱。', + 'already-subscribed' => 'Cannot subscribe :email because they\'re already subscribed.', 'verify' => [ - 'text' => '請確認您的 :app_name 電子郵件訂閱。\\n:link\\n此致,:app_name', + 'text' => "請確認您的 :app_name 電子郵件訂閱。\n:link\n此致,:app_name", 'html-preheader' => '請確認您的 :app_name 狀態更新郵件訂閱。', 'html' => '

請確認您的 :app_name 電子郵件訂閱。

:link

此致,:app_name

', ], 'maintenance' => [ - 'text' => '新的維護計劃已被安排在 :app_name 上。\\n此致,:app_name', + 'text' => "新的維護計劃已被安排在 :app_name 上。\n此致,:app_name", 'html-preheader' => '新的維護計劃已被安排在 :app_name 上。', 'html' => '

新的維護計劃已被安排在 :app_name 上。

此致,:app_name

', ], 'incident' => [ - 'text' => ':app_name 有新事件報告。\\n此致,:app_name', + 'text' => ":app_name 有新事件報告。\n此致,:app_name", 'html-preheader' => ':app_name 有新事件報告。', 'html' => '

:app_name 有新事件報告。

此致,:app_name

', ], + 'component' => [ + 'subject' => 'Component Status Update', + 'text' => 'The component :component_name has seen a status change. The component is now at :component_human_status.\nThank you, :app_name', + 'html-preheader' => 'Component Update from :app_name', + 'html' => '

The component :component_name has seen a status change. The component is now at :component_human_status.

Thank you, :app_name

', + 'tooltip-title' => 'Subscribe to notifications for :component_name.', + ], ], ], @@ -103,17 +110,31 @@ return [ 'signup' => [ 'title' => '註冊', 'username' => '用戶名', - 'email' => '郵箱', + 'email' => '電郵地址', 'password' => '密碼', 'success' => '您的賬號已註冊成功。', 'failure' => '註冊失敗。', ], + 'system' => [ + 'update' => 'There is a newer version of Cachet available. You can learn how to update here!', + ], + + // Modal + 'modal' => [ + 'close' => 'Close', + 'subscribe' => [ + 'title' => 'Subscribe to component updates?', + 'body' => 'Enter your email address to subscribe to updates for this component. If you\'re already subscribed, you\'ll receive emails for this component too.', + 'button' => '訂閱', + ], + ], + // Other 'powered_by' => ':app 應用狀態頁面由 Cachet提供支持。', 'about_this_site' => '關於此站點', 'rss-feed' => 'RSS 訂閱', 'atom-feed' => 'Atom 訂閱', - 'feed' => '狀態源', + 'feed' => 'Status 訂閱', ]; diff --git a/resources/lang/zh-TW/dashboard.php b/resources/lang/zh-TW/dashboard.php index 29ee02e5..d2ce3740 100644 --- a/resources/lang/zh-TW/dashboard.php +++ b/resources/lang/zh-TW/dashboard.php @@ -11,24 +11,28 @@ return [ - 'dashboard' => '儀表盤', + 'dashboard' => '儀表板', // Incidents 'incidents' => [ - 'title' => '事件和維護計劃', + 'title' => '事件與排程', 'incidents' => '事件', - 'logged' => '{0} 目前沒有問題 幹得漂亮!|您已經記錄了壹個事件|您已經報告了 :count 個事件', - 'incident-create-template' => '創建模板', + 'logged' => '{0} 做得好,沒有任何事件。|你記錄了一個事件。|你回報了 :count 個事件。', + 'incident-create-template' => '新增模板', 'incident-templates' => '事件模板', 'add' => [ 'title' => '添加事件', - 'success' => '事件已添加', - 'failure' => '事件添加失敗。', + 'success' => '事件新增成功。', + 'failure' => '新增事件時遇到一些問題。', ], 'edit' => [ 'title' => '編輯事件', - 'success' => '事件已更新。', - 'failure' => '事件編輯失敗。', + 'success' => '事件更新成功。', + 'failure' => '更新事件時遇到一些問題。', + ], + 'delete' => [ + 'success' => 'The incident has been deleted and will not show on your status page.', + 'failure' => 'The incident could not be deleted. Please try again.', ], // Incident templates @@ -36,34 +40,40 @@ return [ 'title' => '事件模板', 'add' => [ 'title' => '添加事件模板', - 'success' => '模板已創建。', - 'failure' => '創建模板失敗。', + 'message' => 'You should add an Incident Template.', + 'success' => '事件模板新增成功。', + 'failure' => '新增事件模板時遇到一些問題。', ], 'edit' => [ 'title' => '編輯模板', - 'success' => '模板已更新!', - 'failure' => '模板修改失敗', + 'success' => '事件模板更新成功!', + 'failure' => '更新事件模板時遇到一些問題。', + ], + 'delete' => [ + 'success' => 'The tmplate has been deleted.', + 'failure' => 'The template could not be deleted. Please try again.', ], ], ], // Incident Maintenance 'schedule' => [ - 'schedule' => '維護計劃', - 'scheduled_at' => '計劃在 :timestamp', + 'schedule' => '排程維護', + 'logged' => '{0} There are no schedules, good work.|You have logged one schedule.|You have reported :count schedules.', + 'scheduled_at' => '排程於 :timestamp', 'add' => [ - 'title' => '添加維護計劃', - 'success' => '維護計劃已添加。', - 'failure' => '維護計劃添加失敗。', + 'title' => '新增排程維護', + 'success' => '排程維護新增成功。', + 'failure' => '新增排程維護時遇到一些問題。', ], 'edit' => [ - 'title' => '編輯維護計劃', - 'success' => '維護計劃已更新!', - 'failure' => '維護計劃更新失敗。', + 'title' => '修改排程維護', + 'success' => '排程維護修改成功!', + 'failure' => '修改排程維護時遇到一些問題。', ], 'delete' => [ - 'success' => '維護計劃已被刪除,它將從您的狀態頁上消失。', - 'failure' => '無法刪除該維護計劃。請再試壹次。', + 'success' => '成功删除了排程維護!該排程維護將不會出現在狀態頁上。', + 'failure' => '無法刪除該排程維護。請稍後再試。', ], ], @@ -71,51 +81,63 @@ return [ 'components' => [ 'components' => '組件', 'component_statuses' => '組件狀態', - 'listed_group' => '根據 :name 分組', + 'listed_group' => '屬於:name組', 'add' => [ 'title' => '添加組件', - 'message' => '您應該添加壹個組件。', - 'success' => '組件已添加。', - 'failure' => '組件添加失敗。', + 'message' => '你應該先新增一個組件。', + 'success' => '組件新增成功。', + 'failure' => '新增組件時遇到一些問題。', ], 'edit' => [ 'title' => '編輯組件', - 'success' => '組件已更新。', - 'failure' => '組件編輯失敗。', + 'success' => '組件修改成功。', + 'failure' => '修改組件時遇到一些問題。', + ], + 'delete' => [ + 'success' => 'Component deleted.', + 'failure' => 'The Component could not be deleted. Please try again.', ], // Component groups 'groups' => [ - 'groups' => '組件分組|組件分組', + 'groups' => '組件組|組件組', 'no_components' => '您應添加壹個組件分組。', 'add' => [ 'title' => '添加組件分組', - 'success' => '組件分組已添加。', - 'failure' => '分組添加失敗。', + 'success' => '組件組新增成功。', + 'failure' => '新增組件組時遇到一些問題。', ], 'edit' => [ 'title' => '編輯組件分組', - 'success' => '分組已更新。', - 'failure' => '分組更新失敗。', + 'success' => '組件組修改成功。', + 'failure' => '修改組件組時遇到一些問題。', + ], + 'delete' => [ + 'success' => 'Component Group deleted.', + 'failure' => 'The Component Group could not be deleted. Please try again.', ], ], ], // Metrics 'metrics' => [ - 'metrics' => '圖表', + 'metrics' => '效能度量', 'add' => [ 'title' => '添加圖表', - 'success' => '圖表已創建。', - 'failure' => '圖表創建失敗。', + 'message' => 'You should add a Metric.', + 'success' => '指標新增成功。', + 'failure' => '新增指標時遇到一些問題。', ], 'edit' => [ 'title' => '編輯圖表', - 'success' => '圖表已更新。', - 'failure' => '圖表更新失敗。', + 'success' => '指標修改成功。', + 'failure' => '修改指標時遇到一些問題。', + ], + 'delete' => [ + 'success' => 'The metric has been deleted and will not show on your status page.', + 'failure' => 'The metric could not be deleted. Please try again.', ], ], - // Subscribers 'subscribers' => [ 'subscribers' => '訂閱者', @@ -125,12 +147,12 @@ return [ 'add' => [ 'title' => '添加訂閱者', 'success' => '訂閱者已添加成功.', - 'failure' => '訂閱者添加失敗.', + 'failure' => '新增組件時遇到一些問題。', ], 'edit' => [ 'title' => '更新訂閱者', 'success' => '訂閱者信息已更新.', - 'failure' => '更新訂閱者信息失敗.', + 'failure' => '更新時遇到一些問題。', ], ], @@ -138,17 +160,17 @@ return [ 'team' => [ 'team' => '團隊', 'member' => '成員', - 'profile' => '更改資料', - 'description' => '團隊成員將能夠添加、修改和編輯組件和事件。', + 'profile' => '個人檔案', + 'description' => '團隊成員可以新增、修改、或更新組件和事件。', 'add' => [ 'title' => '添加團隊成員', - 'success' => '團隊成員已添加。', + 'success' => '成功新增團隊成員。', 'failure' => '添加組件失敗。', ], 'edit' => [ 'title' => '更新配置文件', - 'success' => '配置文件已更新。', - 'failure' => '資料更新失敗。', + 'success' => '成功修改個人檔案。', + 'failure' => '更新時遇到一些問題。', ], 'delete' => [ 'success' => '團隊成員已刪除.', @@ -163,11 +185,11 @@ return [ // Settings 'settings' => [ - 'settings' => '設置', + 'settings' => '設定', 'app-setup' => [ - 'app-setup' => '系統設置', - 'images-only' => '只能上傳圖像。', - 'too-big' => '您上傳的文件太大了。上傳的圖像大小應小於:size', + 'app-setup' => '應用程式設定', + 'images-only' => '你只能上載圖片。', + 'too-big' => '檔案大小過大。請嘗試上載一張大小小於 :size 的圖片。', ], 'analytics' => [ 'analytics' => '第三方統計', @@ -176,52 +198,52 @@ return [ 'localization' => '國際化', ], 'security' => [ - 'security' => '安全設置', - 'two-factor' => '沒有啟用雙因素身份驗證的用戶', + 'security' => '安全', + 'two-factor' => '下列用戶未使用雙重認證', ], 'stylesheet' => [ - 'stylesheet' => '自定義樣式', + 'stylesheet' => '樣式表', ], 'theme' => [ - 'theme' => '主題設置', + 'theme' => '主題', ], 'edit' => [ - 'success' => '設置已保存。', - 'failure' => '無法保存設置。', + 'success' => '設定已儲存。', + 'failure' => '設定儲存失敗。', ], ], // Login 'login' => [ - 'login' => '登錄', - 'logged_in' => '您已登錄', + 'login' => '登入', + 'logged_in' => '你已經登錄。', 'welcome' => '歡迎回來!', - 'two-factor' => '請輸入您的雙重驗證Token。', + 'two-factor' => '請輸入驗證碼。', ], // Sidebar footer 'help' => '幫助', - 'status_page' => '狀態頁面', - 'logout' => '註銷', + 'status_page' => '狀態頁', + 'logout' => '登出', // Notifications 'notifications' => [ 'notifications' => '通知', - 'awesome' => '太棒了!', - 'whoops' => '哎呦!', + 'awesome' => '太好了。', + 'whoops' => '唉呀。', ], // Welcome modal 'welcome' => [ - 'welcome' => '歡迎來到Cachet', - 'message' => '您的狀態頁面即將準備好了!您可能想要配置這些額外的設置', - 'close' => '您可以直接進入儀表盤', + 'welcome' => 'Welcome to your status page!', + 'message' => '你的狀態頁快準備好了!不過你也許先想調整一下以下設定。', + 'close' => '直接前往儀表板', 'steps' => [ - 'component' => '創建組件', - 'incident' => '創建事件', - 'customize' => '自定義', - 'team' => '添加用戶', - 'api' => '生成 API 令牌。', + 'component' => '新增組件', + 'incident' => '新增事件', + 'customize' => '定制化', + 'team' => '新增用戶', + 'api' => '生成 API 密鑰', 'two-factor' => '雙因素身份驗證', ], ], diff --git a/resources/lang/zh-TW/forms.php b/resources/lang/zh-TW/forms.php index 2131363e..3e889dcb 100644 --- a/resources/lang/zh-TW/forms.php +++ b/resources/lang/zh-TW/forms.php @@ -13,14 +13,14 @@ return [ // Setup form fields 'setup' => [ - 'email' => '電子郵箱', + 'email' => '電郵地址', 'username' => '用戶名', 'password' => '密碼', - 'site_name' => '站點名稱', - 'site_domain' => '站點域名', - 'site_timezone' => '選擇您的時區', - 'site_locale' => '選擇您的語言', - 'enable_google2fa' => '啟用谷歌雙因素身份驗證', + 'site_name' => '網站名稱', + 'site_domain' => '網站域名', + 'site_timezone' => '選擇你的時區', + 'site_locale' => '選擇你的語言', + 'enable_google2fa' => '啟用 Google 兩步驗證', 'cache_driver' => '緩存驅動', 'session_driver' => '會話驅動', ], @@ -28,65 +28,67 @@ return [ // Login form fields 'login' => [ 'login' => 'Username or Email', - 'email' => '電子郵箱', + 'email' => '電郵地址', 'password' => '密碼', - '2fauth' => '雙因素驗證代碼', - 'invalid' => '無效的電子郵件或密碼。', - 'invalid-token' => '無效的令牌。', + '2fauth' => '驗證碼', + 'invalid' => 'Invalid username or password', + 'invalid-token' => '錯誤的驗證碼', 'cookies' => '您必須啟用 cookies 來進行登錄。', ], // Incidents form fields 'incidents' => [ - 'name' => '事件名', + 'name' => '名稱', 'status' => '狀態', 'component' => '組件', - 'message' => '消息', - 'message-help' => '您可以使用Markdown語言。', - 'scheduled_at' => '什麽時間安排維護?', + 'message' => '訊息', + 'message-help' => '你可以使用 Markdown 。', + 'scheduled_at' => '排期在什麼時候進行維護?', 'incident_time' => '這次事件是什麽時候發生的?', 'notify_subscribers' => '通知訂閱者', 'visibility' => '事件的可見性', 'public' => '公共可見', 'logged_in_only' => '僅登錄用戶可見', 'templates' => [ - 'name' => '事件模板名', - 'template' => '模板', + 'name' => '名稱', + 'template' => '範本', 'twig' => 'Incident Templates can make use of the Twig templating language.', ], ], // Components form fields 'components' => [ - 'name' => '組件名', + 'name' => '名稱', 'status' => '狀態', - 'group' => '組件分組', + 'group' => '組別', 'description' => '描述', - 'link' => '鏈接', - 'tags' => '標簽', - 'tags-help' => '以逗號分隔。', + 'link' => '連結', + 'tags' => '標籤', + 'tags-help' => '請以半角逗號分隔。', 'enabled' => '啟用', 'groups' => [ - 'name' => '組名', + 'name' => '名稱', + 'collapsed' => 'Collapse the group by default?', ], ], // Metric form fields 'metrics' => [ - 'name' => '圖表名', + 'name' => '名稱', 'suffix' => '後綴', - 'description' => '描述信息', - 'description-help' => '您可以使用Markdown語言。', - 'display-chart' => '在狀態頁上顯示圖表?', + 'description' => '描述', + 'description-help' => '你也可以使用 Markdown', + 'display-chart' => '在狀態頁上顯示圖表?', 'default-value' => '默認值', 'calc_type' => '圖表計算方法', - 'type_sum' => '求和', - 'type_avg' => '求平均數', + 'type_sum' => '總和', + 'type_avg' => '平均', 'places' => '小數點位數', + 'default_view' => 'Default View', 'points' => [ - 'value' => '數值', + 'value' => '值', ], ], @@ -94,13 +96,13 @@ return [ 'settings' => [ /// Application setup 'app-setup' => [ - 'site-name' => '站點名稱', - 'site-url' => '站點URL', - 'display-graphs' => '是否在狀態頁上顯示圖表', - 'about-this-page' => '關於這個頁面', - 'days-of-incidents' => '顯示多少天的事件?', - 'banner' => '橫幅圖像', - 'banner-help' => '建議上傳文件寬度不大於930像素。', + 'site-name' => '網站名稱', + 'site-url' => '網站 URL', + 'display-graphs' => '在狀態頁上顯示圖片?', + 'about-this-page' => '關於本站', + 'days-of-incidents' => '顯示多少天前的事件?', + 'banner' => '圖片橫幅', + 'banner-help' => "橫幅寬度建議少於 930px 。", 'subscribers' => '允許用戶訂閱郵件通知嗎?', ], 'analytics' => [ @@ -117,13 +119,13 @@ return [ ], 'security' => [ 'allowed-domains' => '允許的域', - 'allowed-domains-help' => '以逗號分隔。默認情況下,API跨域請求將自動允許以上已設置的域。', + 'allowed-domains-help' => '請以半角逗號分隔。以上域名將會自動允許訪問。', ], 'stylesheet' => [ 'custom-css' => '自定義樣式表', ], 'theme' => [ - 'background-color' => '頁面背景色', + 'background-color' => '背景顏色', 'background-fills' => '區塊填充色(組件, 事件, 頁尾)', 'banner-background-color' => '横幅背景色', 'banner-padding' => '横幅Padding值', @@ -142,18 +144,18 @@ return [ 'user' => [ 'username' => '用戶名', - 'email' => '電子郵箱', + 'email' => '電郵地址', 'password' => '密碼', - 'api-token' => 'API Token', - 'api-token-help' => '重新生成您的 API Token 將阻止現有的應用程序訪問Cachet。', + 'api-token' => 'API 密鑰', + 'api-token-help' => '重新生成 API 密鑰將會導致現存的應用程序無法訪問 Cachet 。', 'gravatar' => '修改您的 Gravatar 頭像。', 'user_level' => '用戶等級', 'levels' => [ 'admin' => '管理員', 'user' => '普通用戶', ], - '2fa' => [ - 'help' => '啟用雙因素身份驗證會增加您的帳戶安全。您將需要下載 Google Authenticator 或類似的應用到您的移動設備。當您登錄時將會要求您提供由應用程序生成的壹個短碼。', + '2fa' => [ + 'help' => '啟用兩步認證會使得你的賬戶更加安全。您需要下載 Google Authenticator 或類似的應用程序到您的設備上。啓用後,你需要提供由該應用程序生成的驗證碼方可登錄。', ], 'team' => [ 'description' => '請輸入您要邀請的團隊成員的郵件地址:', @@ -163,17 +165,17 @@ return [ // Buttons 'add' => '增加', - 'save' => '保存​​', + 'save' => '儲存', 'update' => '更新', - 'create' => '創建', + 'create' => '建立', 'edit' => '編輯', 'delete' => '刪除', - 'submit' => '提交', + 'submit' => '送出', 'cancel' => '取消', 'remove' => '移除', 'invite' => '邀請', 'signup' => '註冊', // Other - 'optional' => '* 可選', + 'optional' => '* 可選項目', ]; diff --git a/resources/lang/zh-TW/pagination.php b/resources/lang/zh-TW/pagination.php index 902e6411..57b293ae 100644 --- a/resources/lang/zh-TW/pagination.php +++ b/resources/lang/zh-TW/pagination.php @@ -22,7 +22,7 @@ return [ | */ - 'previous' => '« 上壹個', - 'next' => '下壹個 »', + 'previous' => '« 上一頁', + 'next' => '下一頁 »', ]; diff --git a/resources/lang/zh-TW/setup.php b/resources/lang/zh-TW/setup.php index f231a8a5..6db5de8b 100644 --- a/resources/lang/zh-TW/setup.php +++ b/resources/lang/zh-TW/setup.php @@ -10,14 +10,14 @@ */ return [ - 'setup' => '安装设置', - 'title' => '安装 Cachet', - 'service_details' => '服务细节', + 'setup' => '安裝', + 'title' => '安裝 Cachet', + 'service_details' => '服務詳細信息', 'env_setup' => '环境设置', - 'status_page_setup' => '状态页面设置', + 'status_page_setup' => '設置狀態頁面', 'show_support' => '您想支持Cachet么?', - 'admin_account' => '管理员帐户', - 'complete_setup' => '设置完成', - 'completed' => 'Cachet已成功配置!', - 'finish_setup' => '前往控制面板', + 'admin_account' => '管理員帳戶', + 'complete_setup' => '完成安裝', + 'completed' => '成功安裝 Cachet !', + 'finish_setup' => '前往儀表板', ]; diff --git a/resources/lang/zh-TW/validation.php b/resources/lang/zh-TW/validation.php index 9ca00250..e9fd6019 100644 --- a/resources/lang/zh-TW/validation.php +++ b/resources/lang/zh-TW/validation.php @@ -22,67 +22,69 @@ return [ | */ - 'accepted' => ':attribute 必須是可以接受的。', - 'active_url' => ':attribute 不是壹個有效的URL網址。', - 'after' => ':attribute 必須在 :date 之後。', - 'alpha' => ':attribute 只能包含字母。', - 'alpha_dash' => ':attribute 只能包含字母,數字和破折號。', - 'alpha_num' => ':attribute 只允許包含字母和數字。', - 'array' => ':attribute 必須是個數組。', - 'before' => ':attribute 必須在 :date 之前。', + 'accepted' => '這個 :attribute 必須被接受', + 'active_url' => '這個 :attribute 不是一個有效的網址', + 'after' => ':attribute 必須在 :date 之後', + 'alpha' => ':attribute 只能包含字母', + 'alpha_dash' => ':attribute 只能包含字母、數字、破折號', + 'alpha_num' => ':attribute 只能包含字母及數字', + 'array' => ':attribute 必須是一個陣列', + 'before' => ':attribute 必須在 :date 之前', 'between' => [ - 'numeric' => ':attribute 必須在 :min 到 :max 之間。', - 'file' => ':attribute 必須在 :min 到 :max KB 之間。', - 'string' => ':attribute 必須在 :min 到 :max 字符之間。', - 'array' => ':attribute 必須在 :min 到 :max 個數目之間。', + 'numeric' => ':attribute 必須介於 :min 到 :max 之間', + 'file' => 'The :attribute must be between :min and :max kilobytes.', + 'string' => 'The :attribute must be between :min and :max characters.', + 'array' => 'The :attribute must have between :min and :max items.', ], - 'boolean' => ':attribute 必須為 true(正確) 或者 false(錯誤)', - 'confirmed' => ':attribute 與確認項目不匹配', - 'date' => ':attribute 不是個有效日期', + 'boolean' => ':attribute 欄位必須是 true 或 false', + 'confirmed' => ':attribute 確認不符合', + 'date' => ':attribute 不是一個有效的日期', 'date_format' => ':attribute 不符合 :format 的格式', - 'different' => ':attribute 和 :other 不能相同。', - 'digits' => ':attribute 必須是 :digits 位數。', - 'digits_between' => ':attribute 必須在 :min 和 :max 位之間。', - 'email' => ':attribute 必須是個有效的郵件地址。', - 'exists' => '選擇的 :attribute 無效。', - 'image' => ':attribute 必須是圖片。', - 'in' => '選擇的 :attribute 無效。', - 'integer' => ':attribute 必須是整數。', - 'ip' => ':attribute 必須是壹個有效的 IP 地址。', + 'different' => ':attribute 與 :other 必須不同', + 'digits' => ':attribute 必須是 :digits 位數', + 'digits_between' => ':attribute 必須介於 :min 到 :max 位數之間', + 'email' => ':attribute 必須是一個有效的電子郵件地址', + 'exists' => '選擇的 :attribute 是無效的', + 'filled' => ':attribute 欄位是必須的', + 'image' => ':attribute 必須是圖片', + 'in' => '選擇的 :attribute 是無效的', + 'integer' => ':attribute 必須是整數', + 'ip' => ':attribute 必須是有效的 IP 位址', + 'json' => 'The :attribute must be a valid JSON string.', 'max' => [ - 'numeric' => ':attribute 不能大於 :max。', - 'file' => ':attribute 不能大於 :max KB。', - 'string' => ':attribute 不能大於 :max 個字符。', - 'array' => ':attribute 不能超過 :max 個。', + 'numeric' => ':attribute 不能大於 :max', + 'file' => 'The :attribute may not be greater than :max kilobytes.', + 'string' => 'The :attribute may not be greater than :max characters.', + 'array' => 'The :attribute may not have more than :max items.', ], - 'mimes' => ':attribute 文件類型必須是 :values。', + 'mimes' => ':attribute 檔案類型必須是 :values ', 'min' => [ - 'numeric' => ':attribute 最少是 :min。', - 'file' => ':attribute 至少需要 :min KB。', - 'string' => ':attribute 最少需要 :min個字符。', - 'array' => ':attribute 最少需要 :min 個。', + 'numeric' => ':attribute 至少要 :min', + 'file' => 'The :attribute must be at least :min kilobytes.', + 'string' => 'The :attribute must be at least :min characters.', + 'array' => 'The :attribute must have at least :min items.', ], - 'not_in' => '選擇的 :attribute 無效。', - 'numeric' => ':attribute 必須是數字。', - 'regex' => ':attribute 格式無效。', - 'required' => ':attribute 字段必填。', - 'required_if' => ':attribute 項在 :other 是 :value 時是必須填寫的。', + 'not_in' => '選擇的 :attribute 是無效的', + 'numeric' => ':attribute 必須是數字', + 'regex' => ':attribute 格式無效', + 'required' => ':attribute 欄位是必須的', + 'required_if' => ':attribute 欄位在 :other 為 :value 時,是必填的', 'required_unless' => 'The :attribute field is required unless :other is in :values.', - 'required_with' => '當含有 :values 時, :attribute 是必需的。', - 'required_with_all' => '當含有 :values 時, :attribute 是必需的。', - 'required_without' => '當 :values 不存在時, :attribute 是必需的。', - 'required_without_all' => '壹項:values 也沒有時 :attribute 區域是必填的。', - 'same' => ':attribute 和 :other 必需匹配。', + 'required_with' => ':attribute 欄位在 :values 存在時,是必填的', + 'required_with_all' => ':attribute 欄位在 :values 存在時,是必填的', + 'required_without' => ':attribute 欄位在 :values 不存在時,是必填的', + 'required_without_all' => ':attribute 欄位在沒有 :values 存在時,是必填的', + 'same' => ':attribute 及 :other 必須相符', 'size' => [ - 'numeric' => ':attribute 必須是 :size', - 'file' => ':attribute 必須是 :size KB大小', - 'string' => ':attribute 必須是 :size 個字符', - 'array' => ':attribute 必須包含 :size 個', + 'numeric' => ':attribute 必須為 :size', + 'file' => 'The :attribute must be :size kilobytes.', + 'string' => 'The :attribute must be :size characters.', + 'array' => 'The :attribute must contain :size items.', ], - 'string' => ':attribute必須是壹個字符串。', - 'unique' => ':attribute 已經被占用', - 'url' => ':attribute 的格式無效', - 'timezone' => ':attribute 必須是個有效的區域。', + 'string' => '這個 :attribute 必須是一個字串', + 'timezone' => ':attribute 必須是有效的區域', + 'unique' => ':attribute 已經被佔用', + 'url' => ':attribute 格式無效', /* |-------------------------------------------------------------------------- @@ -97,7 +99,7 @@ return [ 'custom' => [ 'attribute-name' => [ - 'rule-name' => '自定義消息', + 'rule-name' => '自訂訊息', ], ],