diff --git a/resources/lang/de-DE/cachet.php b/resources/lang/de-DE/cachet.php
index eed8feb4..c64afe57 100644
--- a/resources/lang/de-DE/cachet.php
+++ b/resources/lang/de-DE/cachet.php
@@ -23,8 +23,8 @@ return [
'group' => [
'other' => 'Andere Komponenten',
],
- 'select_all' => 'Select All',
- 'deselect_all' => 'Deselect All',
+ 'select_all' => 'Alles auswählen',
+ 'deselect_all' => 'Alles abwählen',
],
// Incidents
@@ -56,8 +56,8 @@ return [
// Service Status
'service' => [
'good' => '[0,1]System funktioniert|[2,*]Alle Systeme funktionieren',
- 'bad' => '[0,1]The system is experiencing issues|[2,*]Some systems are experiencing issues',
- 'major' => '[0,1]The system is experiencing major issues|[2,*]Some systems are experiencing major issues',
+ 'bad' => '[0,1] Das System hat momentan Probleme|[2,*] Mehrere Systeme haben momentan Probleme',
+ 'major' => '[0,1] Das System hat ein schwerwiegendes Problem|[2,*] Mehrere Systeme haben ein schwerwiegendes Problem',
],
'api' => [
@@ -77,17 +77,17 @@ return [
// Subscriber
'subscriber' => [
- 'subscribe' => 'Subscribe to status changes and incident updates',
- 'unsubscribe' => 'Unsubscribe',
+ 'subscribe' => 'Abonniere Status- und Vorfalländerungen',
+ 'unsubscribe' => 'Abmelden',
'button' => 'Abonnieren',
- 'manage_subscription' => 'Manage subscription',
+ 'manage_subscription' => 'Abonnements verwalten',
'manage' => [
'notifications' => 'Benachrichtigungen',
- 'notifications_for' => 'Manage notifications for',
+ 'notifications_for' => 'Verwalten von Benachrichtigungen für',
'no_subscriptions' => 'Du hast im Augenblick alle Updates abonniert.',
- 'update_subscription' => 'Update Subscription',
+ 'update_subscription' => 'Update-Abonnement',
'my_subscriptions' => 'Du hast im Augenblick folgende Updates abonniert.',
- 'manage_at_link' => 'Manage your subscriptions at :link',
+ 'manage_at_link' => 'Verwalte deine Abonnements unter :link',
],
'email' => [
'subscribe' => 'Aktualisierungen per E-Mail abonnieren.',
@@ -128,8 +128,8 @@ return [
'meta' => [
'description' => [
'incident' => 'Details und Aktualisierung über den :name Vorfall, die am :date aufgetreten sind',
- 'schedule' => 'Details about the scheduled maintenance period :name starting :startDate',
- 'subscribe' => 'Subscribe to :app in order to receive updates of incidents and scheduled maintenance periods',
+ 'schedule' => 'Details zu den geplanten Wartungszeitraum :name beginnend ab :startDate',
+ 'subscribe' => 'Abonniere :app um Updates von Vorfällen und geplanten Wartungszeiten zu erhalten',
'overview' => 'Bleiben sie auf dem Laufenden mit den neuesten Service-Updates von :app.',
],
],
diff --git a/resources/lang/de-DE/dashboard.php b/resources/lang/de-DE/dashboard.php
index f0ecac73..eb266348 100644
--- a/resources/lang/de-DE/dashboard.php
+++ b/resources/lang/de-DE/dashboard.php
@@ -16,26 +16,26 @@ return [
// Incidents
'incidents' => [
- 'title' => 'Incidents & Maintenance',
+ 'title' => 'Vorfälle & Wartungsarbeiten',
'incidents' => 'Ereignisse',
- 'logged' => '{0}There are no incidents, good work.|[1]You have logged one incident.|[2,*]You have reported :count incidents.',
+ 'logged' => '{0}Es gibt keine Ereignisse, gute Arbeit.|[1]Du hast ein Ereignis gemeldet.|[2,*]Du hast :count Ereignisse gemeldet.',
'incident-create-template' => 'Vorlage erstellen',
'incident-templates' => 'Ereignis Vorlagen',
'updates' => [
- 'title' => 'Incident updates for :incident',
- 'count' => '{0}Zero Updates|[1]One Update|[2]Two Updates|[3,*]Several Updates',
+ 'title' => 'Vorfall Updates für :incident',
+ 'count' => '{0}Keine Updates|[1]Ein Update|[2]Zwei Updates|[3,*]Mehrere Updates',
'add' => [
'title' => 'Vorfall-Update erstellen',
- 'success' => 'Your new incident update has been created.',
- 'failure' => 'Something went wrong with the incident update.',
+ 'success' => 'Dein Vorfall Update wurde erstellt.',
+ 'failure' => 'Etwas ist mit dem Vorfall Update schief gelaufen.',
],
'edit' => [
- 'title' => 'Edit incident update',
- 'success' => 'The incident update has been updated.',
- 'failure' => 'Something went wrong updating the incident update',
+ 'title' => 'Vorfall Update bearbeiten',
+ 'success' => 'Vorfall wurde aktualisiert.',
+ 'failure' => 'Etwas ist mit dem Aktualisieren des Vorfall Updates schief gelaufen',
],
],
- 'reported_by' => 'Reported by :user',
+ 'reported_by' => 'Gemeldet von :user',
'add' => [
'title' => 'Ereignis hinzufügen',
'success' => 'Ereignis hinzugefügt.',
@@ -56,7 +56,7 @@ return [
'title' => 'Ereignis Vorlagen',
'add' => [
'title' => 'Ereignisvorlage erstellen',
- 'message' => 'Create your first incident template.',
+ 'message' => 'Du solltest eine Ereignis-Vorlage hinzufügen.',
'success' => 'Deine neue Ereignis-Vorlage wurde angelegt.',
'failure' => 'Etwas ist mit der Ereignis-Vorlage schief gelaufen.',
],
@@ -74,22 +74,22 @@ return [
// Incident Maintenance
'schedule' => [
- 'schedule' => 'Maintenance',
- 'logged' => '{0}There has been no Maintenance, good work.|[1]You have logged one schedule.|[2,*]You have reported :count schedules.',
+ 'schedule' => 'Wartungsarbeiten',
+ 'logged' => '{0}Es gibt keine geplanten Wartungen, gute Arbeit.|[1]Du hast einen Eintrag erstellt.|[2,*]Du hast :count Einträge erstellt.',
'scheduled_at' => 'Geplant am :timestamp',
'add' => [
- 'title' => 'Add Maintenance',
- 'success' => 'Maintenance added.',
- 'failure' => 'Something went wrong adding the Maintenance, please try again.',
+ 'title' => 'Wartungsarbeiten hinzufügen',
+ 'success' => 'Wartungsarbeiten hinzugefügt.',
+ 'failure' => 'Etwas lief schief mit dem Hinzufügen des Zeitplans. Bitte versuchen Sie es erneut.',
],
'edit' => [
- 'title' => 'Edit Maintenance',
- 'success' => 'Maintenance has been updated!',
- 'failure' => 'Something went wrong editing the Maintenance, please try again.',
+ 'title' => 'Planmäßige Wartung bearbeiten',
+ 'success' => 'Wartungsarbeiten wurden aktualisiert!',
+ 'failure' => 'Etwas lief schief mit dem Editieren des Zeitplans. Bitte versuchen Sie es erneut.',
],
'delete' => [
- 'success' => 'The Maintenance has been deleted and will not show on your status page.',
- 'failure' => 'The Maintenance could not be deleted, please try again.',
+ '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.',
],
],
@@ -158,12 +158,12 @@ return [
'subscribers' => [
'subscribers' => 'Abonnenten',
'description' => 'Abonnenten erhalten E-Mail Updates, wenn Vorfälle erstellt oder Komponenten bearbeitet werden.',
- 'description_disabled' => 'To use this feature, you need allow people to signup for notifications.',
+ 'description_disabled' => 'Um diese Funktion nutzen zu können, musst du zulassen, dass sich Personen für Benachrichtigungen anmelden dürfen.',
'verified' => 'Bestätigt',
'not_verified' => 'Nicht Bestätigt',
'subscriber' => ':email, abonniert am :date',
'no_subscriptions' => 'Aktualisierungen per E-Mail abonnieren',
- 'global' => 'Globally subscribed',
+ 'global' => 'Alles abonniert',
'add' => [
'title' => 'Einen neuen Abonnenten hinzufügen',
'success' => 'Abonnent hinzugefügt.',
diff --git a/resources/lang/de-DE/forms.php b/resources/lang/de-DE/forms.php
index d0b3ea40..cff4ed8e 100644
--- a/resources/lang/de-DE/forms.php
+++ b/resources/lang/de-DE/forms.php
@@ -49,12 +49,12 @@ return [
'name' => 'Name',
'status' => 'Status',
'component' => 'Komponente',
- 'component_status' => 'Component Status',
+ 'component_status' => 'Komponentenstatus',
'message' => 'Nachricht',
'message-help' => 'Sie können auch Markdown verwenden.',
'occurred_at' => 'Wann ist dieser Vorfall aufgetreten?',
'notify_subscribers' => 'Abonnenten benachrichtigen',
- 'notify_disabled' => 'Due to scheduled maintenance, notifications about this incident or its components will be suppressed.',
+ 'notify_disabled' => 'Aufgrund von Wartungsarbeiten werden Benachrichtigungen über diesen Vorfall oder seiner Komponenten unterdrückt.',
'visibility' => 'Ereignis Sichtbarkeit',
'stick_status' => 'Vorfall anpinnen',
'stickied' => 'Angepinnt',
@@ -153,16 +153,16 @@ return [
'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?',
- 'time_before_refresh' => 'Status page refresh rate (in seconds)',
- 'major_outage_rate' => 'Major outage threshold (in %)',
+ 'time_before_refresh' => 'Aktualisierungsrate der Statusseite (in Sekunden)',
+ 'major_outage_rate' => 'Grenzwert für schwerwiegende Ausfälle (in %)',
'banner' => 'Banner Bild',
- 'banner-help' => "It's recommended that you upload files no bigger than 930px wide",
+ '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?',
- 'suppress_notifications_in_maintenance' => 'Suppress notifications when incident occurs during maintenance period?',
+ 'suppress_notifications_in_maintenance' => 'Möchten Sie Benachrichtigungen über einen Vorfall während des Zeitraumes der Wartungsarbeiten unterdrücken?',
'skip_subscriber_verification' => 'Verifizierung der Nutzer überspringen? (Warnung, du könntest gespammt werden)',
'automatic_localization' => 'Die Status-Seite automatisch auf die Sprache deiner Besucher anpassen?',
'enable_external_dependencies' => 'Drittanbieter Abhängigkeiten erlauben (Google Schriftarten, Tracker, etc...)',
- 'show_timezone' => 'Show the timezone the status page is running in',
+ 'show_timezone' => 'Zeitzone in der sich die Status-Seite befindet anzeigen',
'only_disrupted_days' => 'Im Verlauf nur Tage mit Vorfällen anzeigen?',
],
'analytics' => [
@@ -180,8 +180,8 @@ return [
'security' => [
'allowed-domains' => 'Erlaubte Domains',
'allowed-domains-help' => 'Durch Kommata trennen. Die oben genannte Domain ist standardmäßig erlaubt.',
- 'always-authenticate' => 'Always authenticate',
- 'always-authenticate-help' => 'Require login to view any Cachet page',
+ 'always-authenticate' => 'Immer anmelden',
+ 'always-authenticate-help' => 'Anmeldung für alle Cachet Seiten erzwingen',
],
'stylesheet' => [
'custom-css' => 'Benutzerdefiniertes Stylesheet',
@@ -191,7 +191,7 @@ return [
'background-fills' => 'Hintergrunddateien (Komponenten, Vorfälle, Footer)',
'banner-background-color' => 'Banner Background Color',
'banner-padding' => 'Banner Padding',
- 'fullwidth-banner' => 'Enable full width banner?',
+ 'fullwidth-banner' => 'Banner über komplette Breite?',
'text-color' => 'Schriftfarbe',
'dashboard-login' => 'Dashboard-Button im Footer anzeigen?',
'reds' => 'Rot (Genutzt für Fehler)',
@@ -221,7 +221,7 @@ return [
],
'team' => [
'description' => 'Invite your team members by entering their email addresses here.',
- 'email' => 'Your Team Members Email Address',
+ 'email' => 'Die E-Mail Adresse deines Teammitgliedes',
],
],
@@ -241,7 +241,7 @@ return [
'remove' => 'Entfernen',
'invite' => 'Einladen',
'signup' => 'Registrieren',
- 'manage_updates' => 'Manage Updates',
+ 'manage_updates' => 'Updates verwalten',
// Other
'optional' => '* optional',
diff --git a/resources/lang/de-DE/notifications.php b/resources/lang/de-DE/notifications.php
index 6a65c6bd..f497f755 100644
--- a/resources/lang/de-DE/notifications.php
+++ b/resources/lang/de-DE/notifications.php
@@ -13,84 +13,84 @@ return [
'component' => [
'status_update' => [
'mail' => [
- 'subject' => 'Component Status Updated',
- 'greeting' => 'A component\'s status was updated!',
- 'content' => ':name status changed from :old_status to :new_status.',
- 'action' => 'View',
+ 'subject' => 'Status der Komponente aktualisiert',
+ 'greeting' => 'Ein Komponentenstatus wurde aktualisiert!',
+ 'content' => ':name Status wurde von :old_status zu :new_status geändert.',
+ 'action' => 'Anzeigen',
],
'slack' => [
- 'title' => 'Component Status Updated',
- 'content' => ':name status changed from :old_status to :new_status.',
+ 'title' => 'Status der Komponente aktualisiert',
+ 'content' => ':name Status wurde von :old_status zu :new_status geändert.',
],
'sms' => [
- 'content' => ':name status changed from :old_status to :new_status.',
+ 'content' => ':name Status wurde von :old_status zu :new_status geändert.',
],
],
],
'incident' => [
'new' => [
'mail' => [
- 'subject' => 'New Incident Reported',
- 'greeting' => 'A new incident was reported at :app_name.',
- 'content' => 'Incident :name was reported',
- 'action' => 'View',
+ 'subject' => 'Neuer Vorfall gemeldet',
+ 'greeting' => 'Ein neuer Vorfall wurde auf der :app_name Status Seite gemeldet.',
+ 'content' => 'Vorfall :name wurde gemeldet',
+ 'action' => 'Anzeigen',
],
'slack' => [
- 'title' => 'Incident :name Reported',
- 'content' => 'A new incident was reported at :app_name',
+ 'title' => 'Vorfall :name gemeldet',
+ 'content' => 'Ein neuer Vorfall wurde auf der :app_name Status Seite gemeldet',
],
'sms' => [
- 'content' => 'A new incident was reported at :app_name.',
+ 'content' => 'Ein neuer Vorfall wurde auf der :app_name Status Seite gemeldet.',
],
],
'update' => [
'mail' => [
- 'subject' => 'Incident Updated',
- 'content' => ':name was updated',
- 'title' => ':name was updated to :new_status',
- 'action' => 'View',
+ 'subject' => 'Vorfall aktualisiert',
+ 'content' => ':name wurde aktualisiert',
+ 'title' => ':name wurde auf :new_status aktualisiert',
+ 'action' => 'Anzeigen',
],
'slack' => [
- 'title' => ':name Updated',
- 'content' => ':name was updated to :new_status',
+ 'title' => ':name aktualisiert',
+ 'content' => ':name wurde auf :new_status aktualisiert',
],
'sms' => [
- 'content' => 'Incident :name was updated',
+ 'content' => 'Vorfall :name wurde aktualisiert',
],
],
],
'schedule' => [
'new' => [
'mail' => [
- 'subject' => 'New Schedule Created',
- 'content' => ':name was scheduled for :date',
- 'title' => 'A new scheduled maintenance was created.',
- 'action' => 'View',
+ 'subject' => 'Neuer Zeitplan erstellt',
+ 'content' => ':name wurde für :date geplant',
+ 'title' => 'Eine neue geplante Wartung wurde erstellt.',
+ 'action' => 'Anzeigen',
],
'slack' => [
- 'title' => 'New Schedule Created!',
- 'content' => ':name was scheduled for :date',
+ 'title' => 'Neuer Zeitplan erstellt!',
+ 'content' => ':name wurde für :date geplant',
],
'sms' => [
- 'content' => ':name was scheduled for :date',
+ 'content' => ':name wurde für :date geplant',
],
],
],
'subscriber' => [
'verify' => [
'mail' => [
- 'subject' => 'Verify Your Subscription',
- 'content' => 'Click to verify your subscription to :app_name status page.',
- 'title' => 'Verify your subscription to :app_name status page.',
- 'action' => 'Verify',
+ 'subject' => 'Bitte bestätigen Sie Ihr Abonnement',
+ 'content' => 'Klicken Sie, um Ihr Abonnement von :app_name Statusseite zu bestätigen.',
+ 'title' => 'Bestätigen Sie Ihr Abonnement für die :app_name Statusseite.',
+ 'action' => 'Bestätigen',
],
],
],
'system' => [
'test' => [
'mail' => [
- 'subject' => 'Ping from Cachet!',
- 'content' => 'This is a test notification from Cachet!',
+ 'subject' => 'Ping von Cachet!',
+ 'content' => 'Dies ist eine Test-Benachrichtigung von Cachet!',
'title' => '🔔',
],
],
@@ -98,10 +98,10 @@ return [
'user' => [
'invite' => [
'mail' => [
- 'subject' => 'Your invitation is inside...',
- 'content' => 'You have been invited to join :app_name status page.',
- 'title' => 'You\'re invited to join :app_name status page.',
- 'action' => 'Accept',
+ 'subject' => 'Ihre Einladung wartet auf Sie...',
+ 'content' => 'Sie wurden eingeladen, um der :app_name Statusseite beizutreten.',
+ 'title' => 'Sie sind dazu eingeladen, der :app_name Statusseite beizutreten.',
+ 'action' => 'Akzeptieren',
],
],
],
diff --git a/resources/lang/mn-MN/cachet.php b/resources/lang/mn-MN/cachet.php
new file mode 100644
index 00000000..0efae29c
--- /dev/null
+++ b/resources/lang/mn-MN/cachet.php
@@ -0,0 +1,146 @@
+ [
+ 'last_updated' => 'Last updated :timestamp',
+ 'status' => [
+ 0 => 'Unknown',
+ 1 => 'Operational',
+ 2 => 'Performance Issues',
+ 3 => 'Partial Outage',
+ 4 => 'Major Outage',
+ ],
+ 'group' => [
+ 'other' => 'Other Components',
+ ],
+ 'select_all' => 'Select All',
+ 'deselect_all' => 'Deselect All',
+ ],
+
+ // Incidents
+ 'incidents' => [
+ 'none' => 'No incidents reported',
+ 'past' => 'Past Incidents',
+ 'stickied' => 'Stickied Incidents',
+ 'scheduled' => 'Maintenance',
+ 'scheduled_at' => ', scheduled :timestamp',
+ 'posted' => 'Posted :timestamp',
+ 'posted_at' => 'Posted at :timestamp',
+ 'status' => [
+ 1 => 'Investigating',
+ 2 => 'Identified',
+ 3 => 'Watching',
+ 4 => 'Fixed',
+ ],
+ ],
+
+ // Schedule
+ 'schedules' => [
+ 'status' => [
+ 0 => 'Upcoming',
+ 1 => 'In Progress',
+ 2 => 'Complete',
+ ],
+ ],
+
+ // Service Status
+ 'service' => [
+ 'good' => '[0,1]System operational|[2,*]All systems are operational',
+ 'bad' => '[0,1]The system is experiencing issues|[2,*]Some systems are experiencing issues',
+ 'major' => '[0,1]The system is experiencing major issues|[2,*]Some systems are experiencing major issues',
+ ],
+
+ '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 status changes and incident updates',
+ 'unsubscribe' => 'Unsubscribe',
+ 'button' => 'Subscribe',
+ 'manage_subscription' => 'Manage subscription',
+ 'manage' => [
+ 'notifications' => 'Notifications',
+ 'notifications_for' => 'Manage notifications for',
+ 'no_subscriptions' => 'You\'re currently subscribed to all updates.',
+ 'update_subscription' => 'Update Subscription',
+ 'my_subscriptions' => 'You\'re currently subscribed to the following updates.',
+ 'manage_at_link' => 'Manage your subscriptions at :link',
+ ],
+ '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!',
+ 'manage' => 'Manage your subscription',
+ '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.',
+ ],
+ ],
+
+ '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 already receive emails for this component.',
+ 'button' => 'Subscribe',
+ ],
+ ],
+
+ // Meta descriptions
+ 'meta' => [
+ 'description' => [
+ 'incident' => 'Details and updates about the :name incident that occurred on :date',
+ 'schedule' => 'Details about the scheduled maintenance period :name starting :startDate',
+ 'subscribe' => 'Subscribe to :app in order to receive updates of incidents and scheduled maintenance periods',
+ 'overview' => 'Stay up to date with the latest service updates from :app.',
+ ],
+ ],
+
+ // Other
+ 'home' => 'Home',
+ 'powered_by' => 'Powered by Cachet.',
+ 'timezone' => 'Times are shown in :timezone.',
+ 'about_this_site' => 'About This Site',
+ 'rss-feed' => 'RSS',
+ 'atom-feed' => 'Atom',
+ 'feed' => 'Status Feed',
+
+];
diff --git a/resources/lang/mn-MN/dashboard.php b/resources/lang/mn-MN/dashboard.php
new file mode 100644
index 00000000..3f70a368
--- /dev/null
+++ b/resources/lang/mn-MN/dashboard.php
@@ -0,0 +1,304 @@
+ 'Dashboard',
+ 'writeable_settings' => 'The Cachet settings directory is not writeable. Please make sure that ./bootstrap/cachet is writeable by the web server.',
+
+ // Incidents
+ 'incidents' => [
+ 'title' => 'Incidents & Maintenance',
+ 'incidents' => 'Incidents',
+ 'logged' => '{0}There are no incidents, good work.|[1]You have logged one incident.|[2,*]You have reported :count incidents.',
+ 'incident-create-template' => 'Create Template',
+ 'incident-templates' => 'Incident Templates',
+ 'updates' => [
+ 'title' => 'Incident updates for :incident',
+ 'count' => '{0}Zero Updates|[1]One Update|[2]Two Updates|[3,*]Several Updates',
+ 'add' => [
+ 'title' => 'Create new incident update',
+ 'success' => 'Your new incident update has been created.',
+ 'failure' => 'Something went wrong with the incident update.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit incident update',
+ 'success' => 'The incident update has been updated.',
+ 'failure' => 'Something went wrong updating the incident update',
+ ],
+ ],
+ 'reported_by' => 'Reported by :user',
+ 'add' => [
+ 'title' => 'Report an incident',
+ 'success' => 'Incident added.',
+ 'failure' => 'There was an error adding the incident, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit an incident',
+ 'success' => 'Incident updated.',
+ 'failure' => 'There was an error editing the incident, please try again.',
+ ],
+ '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' => 'Create your first incident template.',
+ 'success' => 'Your new incident template has been created.',
+ 'failure' => 'Something went wrong with the incident template.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit Template',
+ 'success' => 'The incident template has been updated.',
+ 'failure' => 'Something went wrong updating the incident template',
+ ],
+ 'delete' => [
+ 'success' => 'The incident template has been deleted.',
+ 'failure' => 'The incident template could not be deleted, please try again.',
+ ],
+ ],
+ ],
+
+ // Incident Maintenance
+ 'schedule' => [
+ 'schedule' => 'Maintenance',
+ 'logged' => '{0}There has been no Maintenance, good work.|[1]You have logged one schedule.|[2,*]You have reported :count schedules.',
+ 'scheduled_at' => 'Scheduled at :timestamp',
+ 'add' => [
+ 'title' => 'Add Maintenance',
+ 'success' => 'Maintenance added.',
+ 'failure' => 'Something went wrong adding the Maintenance, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit Maintenance',
+ 'success' => 'Maintenance has been updated!',
+ 'failure' => 'Something went wrong editing the Maintenance, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'The Maintenance has been deleted and will not show on your status page.',
+ 'failure' => 'The Maintenance 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 group, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit a component',
+ 'success' => 'Component updated.',
+ 'failure' => 'Something went wrong with the component group, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'The component has been 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, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit a component group',
+ 'success' => 'Component group updated.',
+ 'failure' => 'Something went wrong with the component group, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'Component group has been 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, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit a metric',
+ 'success' => 'Metric updated.',
+ 'failure' => 'Something went wrong with the metric, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'The metric has been deleted and will no longer display 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 or components are updated.',
+ 'description_disabled' => 'To use this feature, you need allow people to signup for notifications.',
+ 'verified' => 'Verified',
+ 'not_verified' => 'Not verified',
+ 'subscriber' => ':email, subscribed :date',
+ 'no_subscriptions' => 'Subscribed to all updates',
+ 'global' => 'Globally subscribed',
+ 'add' => [
+ 'title' => 'Add a new subscriber',
+ 'success' => 'Subscriber has been added!',
+ 'failure' => 'Something went wrong adding the subscriber, please try again.',
+ 'help' => 'Enter each subscriber on a new line.',
+ ],
+ 'edit' => [
+ 'title' => 'Update subscriber',
+ 'success' => 'Subscriber has been updated!',
+ 'failure' => 'Something went wrong editing the subscriber, please try again.',
+ ],
+ ],
+
+ // 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' => 'The team member could not be added, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Update profile',
+ 'success' => 'Profile updated.',
+ 'failure' => 'Something went wrong updating the profile, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'Team member has been deleted and will no longer have access to the dashboard!',
+ 'failure' => 'The team member could not be added, please try again.',
+ ],
+ 'invite' => [
+ 'title' => 'Invite a new team member',
+ 'success' => 'An invite has been sent',
+ 'failure' => 'The invite could not be sent, please try again.',
+ ],
+ ],
+
+ // 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',
+ ],
+ 'log' => [
+ 'log' => 'Log',
+ ],
+ 'localization' => [
+ 'localization' => 'Localization',
+ ],
+ 'customization' => [
+ 'customization' => 'Customization',
+ 'header' => 'Custom Header HTML',
+ 'footer' => 'Custom Footer HTML',
+ ],
+ 'mail' => [
+ 'mail' => 'Mail',
+ 'test' => 'Test',
+ 'email' => [
+ 'subject' => 'Test notification from Cachet',
+ 'body' => 'This is a test notification from Cachet.',
+ ],
+ ],
+ '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.',
+ ],
+ 'credits' => [
+ 'credits' => 'Credits',
+ 'contributors' => 'Contributors',
+ 'license' => 'Cachet is a BSD-3-licensed open source project, released by Alt Three Services Limited.',
+ 'backers-title' => 'Backers & Sponsors',
+ 'backers' => 'If you\'d like to support future development, check out the Cachet Patreon campaign.',
+ 'thank-you' => 'Thank you to each and every one of the :count contributors.',
+ ],
+ ],
+
+ // 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.',
+ ],
+
+ // Widgets
+ 'widgets' => [
+ 'support' => 'Support Cachet',
+ 'support_subtitle' => 'Check out our Patreon page!',
+ 'news' => 'Latest News',
+ 'news_subtitle' => 'Get the latest update',
+ ],
+
+ // Welcome modal
+ 'welcome' => [
+ 'welcome' => 'Welcome to your new status page, :username!',
+ 'message' => 'You\'re almost ready but you might want to configure these extra settings first...',
+ 'close' => 'I\'m good thanks!',
+ 'steps' => [
+ 'component' => 'Add your components',
+ 'incident' => 'Create an incident',
+ 'customize' => 'Customize your page',
+ 'team' => 'Add your team',
+ 'api' => 'Generate an API token',
+ 'two-factor' => 'Setup Two Factor Authentication',
+ ],
+ ],
+
+];
diff --git a/resources/lang/mn-MN/forms.php b/resources/lang/mn-MN/forms.php
new file mode 100644
index 00000000..47a1a3e7
--- /dev/null
+++ b/resources/lang/mn-MN/forms.php
@@ -0,0 +1,248 @@
+ [
+ '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',
+ 'queue_driver' => 'Queue Driver',
+ 'session_driver' => 'Session Driver',
+ 'mail_driver' => 'Mail Driver',
+ 'mail_host' => 'Mail Host',
+ 'mail_address' => 'Mail From Address',
+ 'mail_username' => 'Mail Username',
+ 'mail_password' => 'Mail Password',
+ ],
+
+ // 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.',
+ 'rate-limit' => 'Rate limit exceeded.',
+ 'remember_me' => 'Remember me',
+ ],
+
+ // Incidents form fields
+ 'incidents' => [
+ 'name' => 'Name',
+ 'status' => 'Status',
+ 'component' => 'Component',
+ 'component_status' => 'Component Status',
+ 'message' => 'Message',
+ 'message-help' => 'You may also use Markdown.',
+ 'occurred_at' => 'When did this incident occur?',
+ 'notify_subscribers' => 'Notify subscribers?',
+ 'notify_disabled' => 'Due to scheduled maintenance, notifications about this incident or its components will be suppressed.',
+ 'visibility' => 'Incident Visibility',
+ 'stick_status' => 'Stick Incident',
+ 'stickied' => 'Stickied',
+ 'not_stickied' => 'Not Stickied',
+ '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.',
+ ],
+ ],
+
+ 'schedules' => [
+ 'name' => 'Name',
+ 'status' => 'Status',
+ 'message' => 'Message',
+ 'message-help' => 'You may also use Markdown.',
+ 'scheduled_at' => 'When is this maintenance scheduled for?',
+ 'completed_at' => 'When did this maintenance complete?',
+ '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',
+ 'collapsing' => 'Expand/Collapse options',
+ 'visible' => 'Always expanded',
+ 'collapsed' => 'Collapse the group by default',
+ 'collapsed_incident' => 'Collapse the group, but expand if there are issues',
+ 'visibility' => 'Visibility',
+ 'visibility_public' => 'Visible to public',
+ 'visibility_authenticated' => 'Visible only to logged in users',
+ ],
+ ],
+
+ // Action form fields
+ 'actions' => [
+ 'name' => 'Name',
+ 'description' => 'Description',
+ 'start_at' => 'Schedule start time',
+ 'timezone' => 'Timezone',
+ 'schedule_frequency' => 'Schedule frequency (in seconds)',
+ 'completion_latency' => 'Completion latency (in seconds)',
+ 'group' => 'Group',
+ 'active' => 'Active?',
+ 'groups' => [
+ 'name' => 'Group Name',
+ ],
+ ],
+
+ // 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',
+ 'threshold' => 'How many minutes of threshold between metric points?',
+ 'visibility' => 'Visibility',
+ 'visibility_authenticated' => 'Visible to authenticated users',
+ 'visibility_public' => 'Visible to everybody',
+ 'visibility_hidden' => 'Always hidden',
+
+ '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?',
+ 'time_before_refresh' => 'Status page refresh rate (in seconds)',
+ 'major_outage_rate' => 'Major outage threshold (in %)',
+ '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?',
+ 'suppress_notifications_in_maintenance' => 'Suppress notifications when incident occurs during maintenance period?',
+ 'skip_subscriber_verification' => 'Skip verifying of users? (Be warned, you could be spammed)',
+ 'automatic_localization' => 'Automatically localise your status page to your visitor\'s language?',
+ 'enable_external_dependencies' => 'Enable Third Party Dependencies (Google Fonts, Trackers, etc...)',
+ 'show_timezone' => 'Show the timezone the status page is running in',
+ 'only_disrupted_days' => 'Only show days containing incidents in the timeline?',
+ ],
+ '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.',
+ 'always-authenticate' => 'Always authenticate',
+ 'always-authenticate-help' => 'Require login to view any Cachet page',
+ ],
+ '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 full width 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' => 'Your Team Members Email Address',
+ ],
+ ],
+
+ 'general' => [
+ 'timezone' => 'Select Timezone',
+ ],
+
+ // Buttons
+ 'add' => 'Add',
+ 'save' => 'Save',
+ 'update' => 'Update',
+ 'create' => 'Create',
+ 'edit' => 'Edit',
+ 'delete' => 'Delete',
+ 'submit' => 'Submit',
+ 'cancel' => 'Cancel',
+ 'remove' => 'Remove',
+ 'invite' => 'Invite',
+ 'signup' => 'Sign Up',
+ 'manage_updates' => 'Manage Updates',
+
+ // Other
+ 'optional' => '* Optional',
+];
diff --git a/resources/lang/mn-MN/notifications.php b/resources/lang/mn-MN/notifications.php
new file mode 100644
index 00000000..6a65c6bd
--- /dev/null
+++ b/resources/lang/mn-MN/notifications.php
@@ -0,0 +1,108 @@
+ [
+ 'status_update' => [
+ 'mail' => [
+ 'subject' => 'Component Status Updated',
+ 'greeting' => 'A component\'s status was updated!',
+ 'content' => ':name status changed from :old_status to :new_status.',
+ 'action' => 'View',
+ ],
+ 'slack' => [
+ 'title' => 'Component Status Updated',
+ 'content' => ':name status changed from :old_status to :new_status.',
+ ],
+ 'sms' => [
+ 'content' => ':name status changed from :old_status to :new_status.',
+ ],
+ ],
+ ],
+ 'incident' => [
+ 'new' => [
+ 'mail' => [
+ 'subject' => 'New Incident Reported',
+ 'greeting' => 'A new incident was reported at :app_name.',
+ 'content' => 'Incident :name was reported',
+ 'action' => 'View',
+ ],
+ 'slack' => [
+ 'title' => 'Incident :name Reported',
+ 'content' => 'A new incident was reported at :app_name',
+ ],
+ 'sms' => [
+ 'content' => 'A new incident was reported at :app_name.',
+ ],
+ ],
+ 'update' => [
+ 'mail' => [
+ 'subject' => 'Incident Updated',
+ 'content' => ':name was updated',
+ 'title' => ':name was updated to :new_status',
+ 'action' => 'View',
+ ],
+ 'slack' => [
+ 'title' => ':name Updated',
+ 'content' => ':name was updated to :new_status',
+ ],
+ 'sms' => [
+ 'content' => 'Incident :name was updated',
+ ],
+ ],
+ ],
+ 'schedule' => [
+ 'new' => [
+ 'mail' => [
+ 'subject' => 'New Schedule Created',
+ 'content' => ':name was scheduled for :date',
+ 'title' => 'A new scheduled maintenance was created.',
+ 'action' => 'View',
+ ],
+ 'slack' => [
+ 'title' => 'New Schedule Created!',
+ 'content' => ':name was scheduled for :date',
+ ],
+ 'sms' => [
+ 'content' => ':name was scheduled for :date',
+ ],
+ ],
+ ],
+ 'subscriber' => [
+ 'verify' => [
+ 'mail' => [
+ 'subject' => 'Verify Your Subscription',
+ 'content' => 'Click to verify your subscription to :app_name status page.',
+ 'title' => 'Verify your subscription to :app_name status page.',
+ 'action' => 'Verify',
+ ],
+ ],
+ ],
+ 'system' => [
+ 'test' => [
+ 'mail' => [
+ 'subject' => 'Ping from Cachet!',
+ 'content' => 'This is a test notification from Cachet!',
+ 'title' => '🔔',
+ ],
+ ],
+ ],
+ 'user' => [
+ 'invite' => [
+ 'mail' => [
+ 'subject' => 'Your invitation is inside...',
+ 'content' => 'You have been invited to join :app_name status page.',
+ 'title' => 'You\'re invited to join :app_name status page.',
+ 'action' => 'Accept',
+ ],
+ ],
+ ],
+];
diff --git a/resources/lang/mn-MN/pagination.php b/resources/lang/mn-MN/pagination.php
new file mode 100644
index 00000000..0ee724cf
--- /dev/null
+++ b/resources/lang/mn-MN/pagination.php
@@ -0,0 +1,28 @@
+ 'Previous',
+ 'next' => 'Next',
+
+];
diff --git a/resources/lang/mn-MN/setup.php b/resources/lang/mn-MN/setup.php
new file mode 100644
index 00000000..bdc2a457
--- /dev/null
+++ b/resources/lang/mn-MN/setup.php
@@ -0,0 +1,23 @@
+ 'Setup',
+ 'title' => 'Install 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/mn-MN/validation.php b/resources/lang/mn-MN/validation.php
new file mode 100644
index 00000000..7d196d98
--- /dev/null
+++ b/resources/lang/mn-MN/validation.php
@@ -0,0 +1,122 @@
+ '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.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'filled' => 'The :attribute field is required.',
+ 'image' => 'The :attribute must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field does not exist in :other.',
+ 'integer' => 'The :attribute must be an integer.',
+ 'ip' => 'The :attribute must be a valid IP address.',
+ '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.',
+ 'present' => 'The :attribute field must be present.',
+ '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/nl-NL/cachet.php b/resources/lang/nl-NL/cachet.php
index d716d4bb..95130961 100644
--- a/resources/lang/nl-NL/cachet.php
+++ b/resources/lang/nl-NL/cachet.php
@@ -23,8 +23,8 @@ return [
'group' => [
'other' => 'Andere componenten',
],
- 'select_all' => 'Select All',
- 'deselect_all' => 'Deselect All',
+ 'select_all' => 'Alles selecteren',
+ 'deselect_all' => 'Alles deselecteren',
],
// Incidents
@@ -77,15 +77,15 @@ return [
// Subscriber
'subscriber' => [
- 'subscribe' => 'Subscribe to status changes and incident updates',
- 'unsubscribe' => 'Unsubscribe',
+ 'subscribe' => 'Abonneer je op statuswijzigingen en incident updates',
+ 'unsubscribe' => 'Abonnement opzeggen',
'button' => 'Abonneren',
- 'manage_subscription' => 'Manage subscription',
+ 'manage_subscription' => 'Abonnement beheren',
'manage' => [
'notifications' => 'Notificaties',
- 'notifications_for' => 'Manage notifications for',
+ 'notifications_for' => 'Beheer meldingen voor',
'no_subscriptions' => 'Je bent momenteel geabonneerd op alle updates.',
- 'update_subscription' => 'Update Subscription',
+ 'update_subscription' => 'Abonnement bijwerken',
'my_subscriptions' => 'Je bent momenteel geabonneerd op de volgende updates.',
'manage_at_link' => 'Beheer uw abonnementen op: link',
],
diff --git a/resources/lang/nl-NL/dashboard.php b/resources/lang/nl-NL/dashboard.php
index da930522..17f85c38 100644
--- a/resources/lang/nl-NL/dashboard.php
+++ b/resources/lang/nl-NL/dashboard.php
@@ -35,7 +35,7 @@ return [
'failure' => 'Er is een fout opgetreden bij het wijzigen van de incident update',
],
],
- 'reported_by' => 'Gemeld door: gebruiker',
+ 'reported_by' => 'Gemeld door :user',
'add' => [
'title' => 'Meld een incident',
'success' => 'Incident toegevoegd.',
@@ -56,7 +56,7 @@ return [
'title' => 'Incident Sjablonen',
'add' => [
'title' => 'Creëer een incident template',
- 'message' => 'Create your first incident template.',
+ 'message' => 'Voeg een incident template toe.',
'success' => 'Je nieuwe incident template is aangemaakt.',
'failure' => 'Er is iets misgegaan met de incident template.',
],
@@ -227,11 +227,11 @@ return [
'footer' => 'Aangepaste voettekst HTML',
],
'mail' => [
- 'mail' => 'Mail',
+ 'mail' => 'E-mail',
'test' => 'Test',
'email' => [
- 'subject' => 'Test notification from Cachet',
- 'body' => 'This is a test notification from Cachet.',
+ 'subject' => 'Test notificatie van Cachet',
+ 'body' => 'Dit is een test notificatie van Cachet.',
],
],
'security' => [
diff --git a/resources/lang/nl-NL/forms.php b/resources/lang/nl-NL/forms.php
index 36c68c1c..4a364882 100644
--- a/resources/lang/nl-NL/forms.php
+++ b/resources/lang/nl-NL/forms.php
@@ -154,9 +154,9 @@ return [
'about-this-page' => 'Over deze pagina',
'days-of-incidents' => 'Hoeveel dagen moeten incidenten getoond worden?',
'time_before_refresh' => 'Statuspagina verversingssnelheid (in seconden)',
- 'major_outage_rate' => 'Major outage threshold (in %)',
+ 'major_outage_rate' => 'Drempelwaarde voor grote onderbreking (in %)',
'banner' => 'Banner afbeelding',
- 'banner-help' => 'Bij voorkeur geen afbeeldingen breder dan 930 pixels uploaden',
+ 'banner-help' => "Bij voorkeur geen afbeeldingen breder dan 930 pixels uploaden",
'subscribers' => 'Bezoekers toestaan om te abonneren op e-mail notificaties?',
'suppress_notifications_in_maintenance' => 'Onderdruk meldingen wanneer incident tijdens de onderhoudingsperiode voordoet?',
'skip_subscriber_verification' => 'Verificatie van gebruikers overslaan? (Let op, je kunt gespamd worden)',
@@ -180,8 +180,8 @@ return [
'security' => [
'allowed-domains' => 'Toegestane domeinen',
'allowed-domains-help' => 'Door komma\'s gescheiden. Het hierboven ingestelde domein is automatisch standaard toegelaten.',
- 'always-authenticate' => 'Always authenticate',
- 'always-authenticate-help' => 'Require login to view any Cachet page',
+ 'always-authenticate' => 'Altijd aanmelden',
+ 'always-authenticate-help' => 'Aanmelding vereist om ieder Cachet pagina te bekijken',
],
'stylesheet' => [
'custom-css' => 'Aangepaste Stylesheet',
diff --git a/resources/lang/nl-NL/validation.php b/resources/lang/nl-NL/validation.php
index 860e2bd4..55541862 100644
--- a/resources/lang/nl-NL/validation.php
+++ b/resources/lang/nl-NL/validation.php
@@ -32,59 +32,59 @@ return [
'before' => ':attribute moet een datum vóór :date zijn.',
'between' => [
'numeric' => ':attribute moet tussen :min en de :max zijn.',
- 'file' => 'The :attribute must be between :min and :max kilobytes.',
- 'string' => 'The :attribute must be between :min and :max characters.',
+ 'file' => ':attribute moet tussen de :min en de :max aantal kilobytes zijn.',
+ 'string' => ':attribute moet tussen de :min en :max karakters lang zijn.',
'array' => ':attribute moet tussen :min en :max items hebben.',
],
- '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.',
+ 'boolean' => 'Het :attribute veld moet waar of onwaar zijn.',
+ 'confirmed' => 'De :attribute bevestiging komt niet overeen.',
+ 'date' => ':attribute is geen geldige datum.',
+ 'date_format' => ':attribute komt niet overeen met het volgende formaat :format.',
+ 'different' => ':attribute en :other mogen niet hetzelfde zijn.',
+ 'digits' => ':attribute moet uit :digits cijfers bestaan.',
+ 'digits_between' => ':attribute moet tussen de :min en :max cijfers zijn.',
+ 'email' => ':attribute moet een geldig e-mail adres zijn.',
+ 'exists' => 'Het geselecteerde :attribute is ongeldig.',
'distinct' => 'Het :attribute veld heeft een dubbele waarde.',
- 'filled' => 'The :attribute field is required.',
+ 'filled' => 'Het :attribute veld is verplicht.',
'image' => ':attribute moet een afbeelding zijn.',
- 'in' => 'The selected :attribute is invalid.',
+ 'in' => 'Het geselecteerde :attribute is ongeldig.',
'in_array' => 'Het :attribute veld bestaat niet in :other.',
- 'integer' => 'The :attribute must be an integer.',
- 'ip' => 'The :attribute must be a valid IP address.',
+ 'integer' => ':attribute moet een geheel getal zijn.',
+ 'ip' => 'Het :attribute moet een geldig IP-adres zijn.',
'json' => ':attribute moet een valide JSON tekst zijn.',
'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' => ':attribute mag niet groter zijn dan :max.',
+ 'file' => ':attribute mag niet groter zijn dan :max kilobytes.',
+ 'string' => ':attribute mag niet groter zijn dan :max tekens.',
'array' => ':attribute mag niet meer dan :max items hebben.',
],
- 'mimes' => 'The :attribute must be a file of type: :values.',
+ 'mimes' => ':attribute moet een :values bestand zijn.',
'min' => [
- 'numeric' => 'The :attribute must be at least :min.',
+ 'numeric' => ':attribute moet tenminste :min zijn.',
'file' => ':attribute moet minstens :min kilobytes groot zijn.',
- 'string' => 'The :attribute must be at least :min characters.',
- 'array' => 'The :attribute must have at least :min items.',
+ 'string' => ':attribute moet minimaal :min tekens zijn.',
+ 'array' => ':attribute moet tenminste :min onderdelen hebben.',
],
- 'not_in' => 'The selected :attribute is invalid.',
- 'numeric' => 'The :attribute must be a number.',
+ 'not_in' => 'Het geselecteerde :attribute is ongeldig.',
+ 'numeric' => ':attribute moet een getal zijn.',
'present' => 'Het :attribute veld moet aanwezig zijn.',
'regex' => 'Het :attribute-formaat is ongeldig.',
- 'required' => 'The :attribute field is required.',
- 'required_if' => 'The :attribute field is required when :other is :value.',
+ 'required' => 'Het :attribute veld is verplicht.',
+ 'required_if' => 'Het :attribute veld is verplicht als :other :value is.',
'required_unless' => 'Het :attribute veld is verplicht tenzij :other is in :values.',
'required_with' => ':attribute veld is verplicht wanneer :values aanwezig zijn.',
'required_with_all' => ':attribute veld is verplicht wanneer :values aanwezig zijn.',
- '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' => 'Het :attribute veld is verplicht als er geen :values zijn.',
+ 'required_without_all' => 'Het :attribute veld is verplicht als geen van :values aanwezig zijn.',
+ 'same' => ':attribute en :other moeten overeenkomen.',
'size' => [
- 'numeric' => 'The :attribute must be :size.',
+ 'numeric' => ':attribute moet :size zijn.',
'file' => ':attribute moet :size kilobytes groot zijn.',
'string' => ':attribute moet :size karakters zijn.',
- 'array' => 'The :attribute must contain :size items.',
+ 'array' => ':attribute moet :size onderdelen bevatten.',
],
- 'string' => 'The :attribute must be a string.',
+ 'string' => ':attribute moet een woord zijn.',
'timezone' => ':attribute moet een geldige zone zijn.',
'unique' => ':attribute is reeds in gebruik.',
'url' => 'Het :attribute-formaat is ongeldig.',
diff --git a/resources/lang/sl-SI/cachet.php b/resources/lang/sl-SI/cachet.php
new file mode 100644
index 00000000..0efae29c
--- /dev/null
+++ b/resources/lang/sl-SI/cachet.php
@@ -0,0 +1,146 @@
+ [
+ 'last_updated' => 'Last updated :timestamp',
+ 'status' => [
+ 0 => 'Unknown',
+ 1 => 'Operational',
+ 2 => 'Performance Issues',
+ 3 => 'Partial Outage',
+ 4 => 'Major Outage',
+ ],
+ 'group' => [
+ 'other' => 'Other Components',
+ ],
+ 'select_all' => 'Select All',
+ 'deselect_all' => 'Deselect All',
+ ],
+
+ // Incidents
+ 'incidents' => [
+ 'none' => 'No incidents reported',
+ 'past' => 'Past Incidents',
+ 'stickied' => 'Stickied Incidents',
+ 'scheduled' => 'Maintenance',
+ 'scheduled_at' => ', scheduled :timestamp',
+ 'posted' => 'Posted :timestamp',
+ 'posted_at' => 'Posted at :timestamp',
+ 'status' => [
+ 1 => 'Investigating',
+ 2 => 'Identified',
+ 3 => 'Watching',
+ 4 => 'Fixed',
+ ],
+ ],
+
+ // Schedule
+ 'schedules' => [
+ 'status' => [
+ 0 => 'Upcoming',
+ 1 => 'In Progress',
+ 2 => 'Complete',
+ ],
+ ],
+
+ // Service Status
+ 'service' => [
+ 'good' => '[0,1]System operational|[2,*]All systems are operational',
+ 'bad' => '[0,1]The system is experiencing issues|[2,*]Some systems are experiencing issues',
+ 'major' => '[0,1]The system is experiencing major issues|[2,*]Some systems are experiencing major issues',
+ ],
+
+ '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 status changes and incident updates',
+ 'unsubscribe' => 'Unsubscribe',
+ 'button' => 'Subscribe',
+ 'manage_subscription' => 'Manage subscription',
+ 'manage' => [
+ 'notifications' => 'Notifications',
+ 'notifications_for' => 'Manage notifications for',
+ 'no_subscriptions' => 'You\'re currently subscribed to all updates.',
+ 'update_subscription' => 'Update Subscription',
+ 'my_subscriptions' => 'You\'re currently subscribed to the following updates.',
+ 'manage_at_link' => 'Manage your subscriptions at :link',
+ ],
+ '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!',
+ 'manage' => 'Manage your subscription',
+ '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.',
+ ],
+ ],
+
+ '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 already receive emails for this component.',
+ 'button' => 'Subscribe',
+ ],
+ ],
+
+ // Meta descriptions
+ 'meta' => [
+ 'description' => [
+ 'incident' => 'Details and updates about the :name incident that occurred on :date',
+ 'schedule' => 'Details about the scheduled maintenance period :name starting :startDate',
+ 'subscribe' => 'Subscribe to :app in order to receive updates of incidents and scheduled maintenance periods',
+ 'overview' => 'Stay up to date with the latest service updates from :app.',
+ ],
+ ],
+
+ // Other
+ 'home' => 'Home',
+ 'powered_by' => 'Powered by Cachet.',
+ 'timezone' => 'Times are shown in :timezone.',
+ 'about_this_site' => 'About This Site',
+ 'rss-feed' => 'RSS',
+ 'atom-feed' => 'Atom',
+ 'feed' => 'Status Feed',
+
+];
diff --git a/resources/lang/sl-SI/dashboard.php b/resources/lang/sl-SI/dashboard.php
new file mode 100644
index 00000000..3f70a368
--- /dev/null
+++ b/resources/lang/sl-SI/dashboard.php
@@ -0,0 +1,304 @@
+ 'Dashboard',
+ 'writeable_settings' => 'The Cachet settings directory is not writeable. Please make sure that ./bootstrap/cachet is writeable by the web server.',
+
+ // Incidents
+ 'incidents' => [
+ 'title' => 'Incidents & Maintenance',
+ 'incidents' => 'Incidents',
+ 'logged' => '{0}There are no incidents, good work.|[1]You have logged one incident.|[2,*]You have reported :count incidents.',
+ 'incident-create-template' => 'Create Template',
+ 'incident-templates' => 'Incident Templates',
+ 'updates' => [
+ 'title' => 'Incident updates for :incident',
+ 'count' => '{0}Zero Updates|[1]One Update|[2]Two Updates|[3,*]Several Updates',
+ 'add' => [
+ 'title' => 'Create new incident update',
+ 'success' => 'Your new incident update has been created.',
+ 'failure' => 'Something went wrong with the incident update.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit incident update',
+ 'success' => 'The incident update has been updated.',
+ 'failure' => 'Something went wrong updating the incident update',
+ ],
+ ],
+ 'reported_by' => 'Reported by :user',
+ 'add' => [
+ 'title' => 'Report an incident',
+ 'success' => 'Incident added.',
+ 'failure' => 'There was an error adding the incident, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit an incident',
+ 'success' => 'Incident updated.',
+ 'failure' => 'There was an error editing the incident, please try again.',
+ ],
+ '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' => 'Create your first incident template.',
+ 'success' => 'Your new incident template has been created.',
+ 'failure' => 'Something went wrong with the incident template.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit Template',
+ 'success' => 'The incident template has been updated.',
+ 'failure' => 'Something went wrong updating the incident template',
+ ],
+ 'delete' => [
+ 'success' => 'The incident template has been deleted.',
+ 'failure' => 'The incident template could not be deleted, please try again.',
+ ],
+ ],
+ ],
+
+ // Incident Maintenance
+ 'schedule' => [
+ 'schedule' => 'Maintenance',
+ 'logged' => '{0}There has been no Maintenance, good work.|[1]You have logged one schedule.|[2,*]You have reported :count schedules.',
+ 'scheduled_at' => 'Scheduled at :timestamp',
+ 'add' => [
+ 'title' => 'Add Maintenance',
+ 'success' => 'Maintenance added.',
+ 'failure' => 'Something went wrong adding the Maintenance, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit Maintenance',
+ 'success' => 'Maintenance has been updated!',
+ 'failure' => 'Something went wrong editing the Maintenance, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'The Maintenance has been deleted and will not show on your status page.',
+ 'failure' => 'The Maintenance 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 group, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit a component',
+ 'success' => 'Component updated.',
+ 'failure' => 'Something went wrong with the component group, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'The component has been 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, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit a component group',
+ 'success' => 'Component group updated.',
+ 'failure' => 'Something went wrong with the component group, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'Component group has been 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, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Edit a metric',
+ 'success' => 'Metric updated.',
+ 'failure' => 'Something went wrong with the metric, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'The metric has been deleted and will no longer display 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 or components are updated.',
+ 'description_disabled' => 'To use this feature, you need allow people to signup for notifications.',
+ 'verified' => 'Verified',
+ 'not_verified' => 'Not verified',
+ 'subscriber' => ':email, subscribed :date',
+ 'no_subscriptions' => 'Subscribed to all updates',
+ 'global' => 'Globally subscribed',
+ 'add' => [
+ 'title' => 'Add a new subscriber',
+ 'success' => 'Subscriber has been added!',
+ 'failure' => 'Something went wrong adding the subscriber, please try again.',
+ 'help' => 'Enter each subscriber on a new line.',
+ ],
+ 'edit' => [
+ 'title' => 'Update subscriber',
+ 'success' => 'Subscriber has been updated!',
+ 'failure' => 'Something went wrong editing the subscriber, please try again.',
+ ],
+ ],
+
+ // 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' => 'The team member could not be added, please try again.',
+ ],
+ 'edit' => [
+ 'title' => 'Update profile',
+ 'success' => 'Profile updated.',
+ 'failure' => 'Something went wrong updating the profile, please try again.',
+ ],
+ 'delete' => [
+ 'success' => 'Team member has been deleted and will no longer have access to the dashboard!',
+ 'failure' => 'The team member could not be added, please try again.',
+ ],
+ 'invite' => [
+ 'title' => 'Invite a new team member',
+ 'success' => 'An invite has been sent',
+ 'failure' => 'The invite could not be sent, please try again.',
+ ],
+ ],
+
+ // 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',
+ ],
+ 'log' => [
+ 'log' => 'Log',
+ ],
+ 'localization' => [
+ 'localization' => 'Localization',
+ ],
+ 'customization' => [
+ 'customization' => 'Customization',
+ 'header' => 'Custom Header HTML',
+ 'footer' => 'Custom Footer HTML',
+ ],
+ 'mail' => [
+ 'mail' => 'Mail',
+ 'test' => 'Test',
+ 'email' => [
+ 'subject' => 'Test notification from Cachet',
+ 'body' => 'This is a test notification from Cachet.',
+ ],
+ ],
+ '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.',
+ ],
+ 'credits' => [
+ 'credits' => 'Credits',
+ 'contributors' => 'Contributors',
+ 'license' => 'Cachet is a BSD-3-licensed open source project, released by Alt Three Services Limited.',
+ 'backers-title' => 'Backers & Sponsors',
+ 'backers' => 'If you\'d like to support future development, check out the Cachet Patreon campaign.',
+ 'thank-you' => 'Thank you to each and every one of the :count contributors.',
+ ],
+ ],
+
+ // 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.',
+ ],
+
+ // Widgets
+ 'widgets' => [
+ 'support' => 'Support Cachet',
+ 'support_subtitle' => 'Check out our Patreon page!',
+ 'news' => 'Latest News',
+ 'news_subtitle' => 'Get the latest update',
+ ],
+
+ // Welcome modal
+ 'welcome' => [
+ 'welcome' => 'Welcome to your new status page, :username!',
+ 'message' => 'You\'re almost ready but you might want to configure these extra settings first...',
+ 'close' => 'I\'m good thanks!',
+ 'steps' => [
+ 'component' => 'Add your components',
+ 'incident' => 'Create an incident',
+ 'customize' => 'Customize your page',
+ 'team' => 'Add your team',
+ 'api' => 'Generate an API token',
+ 'two-factor' => 'Setup Two Factor Authentication',
+ ],
+ ],
+
+];
diff --git a/resources/lang/sl-SI/forms.php b/resources/lang/sl-SI/forms.php
new file mode 100644
index 00000000..47a1a3e7
--- /dev/null
+++ b/resources/lang/sl-SI/forms.php
@@ -0,0 +1,248 @@
+ [
+ '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',
+ 'queue_driver' => 'Queue Driver',
+ 'session_driver' => 'Session Driver',
+ 'mail_driver' => 'Mail Driver',
+ 'mail_host' => 'Mail Host',
+ 'mail_address' => 'Mail From Address',
+ 'mail_username' => 'Mail Username',
+ 'mail_password' => 'Mail Password',
+ ],
+
+ // 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.',
+ 'rate-limit' => 'Rate limit exceeded.',
+ 'remember_me' => 'Remember me',
+ ],
+
+ // Incidents form fields
+ 'incidents' => [
+ 'name' => 'Name',
+ 'status' => 'Status',
+ 'component' => 'Component',
+ 'component_status' => 'Component Status',
+ 'message' => 'Message',
+ 'message-help' => 'You may also use Markdown.',
+ 'occurred_at' => 'When did this incident occur?',
+ 'notify_subscribers' => 'Notify subscribers?',
+ 'notify_disabled' => 'Due to scheduled maintenance, notifications about this incident or its components will be suppressed.',
+ 'visibility' => 'Incident Visibility',
+ 'stick_status' => 'Stick Incident',
+ 'stickied' => 'Stickied',
+ 'not_stickied' => 'Not Stickied',
+ '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.',
+ ],
+ ],
+
+ 'schedules' => [
+ 'name' => 'Name',
+ 'status' => 'Status',
+ 'message' => 'Message',
+ 'message-help' => 'You may also use Markdown.',
+ 'scheduled_at' => 'When is this maintenance scheduled for?',
+ 'completed_at' => 'When did this maintenance complete?',
+ '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',
+ 'collapsing' => 'Expand/Collapse options',
+ 'visible' => 'Always expanded',
+ 'collapsed' => 'Collapse the group by default',
+ 'collapsed_incident' => 'Collapse the group, but expand if there are issues',
+ 'visibility' => 'Visibility',
+ 'visibility_public' => 'Visible to public',
+ 'visibility_authenticated' => 'Visible only to logged in users',
+ ],
+ ],
+
+ // Action form fields
+ 'actions' => [
+ 'name' => 'Name',
+ 'description' => 'Description',
+ 'start_at' => 'Schedule start time',
+ 'timezone' => 'Timezone',
+ 'schedule_frequency' => 'Schedule frequency (in seconds)',
+ 'completion_latency' => 'Completion latency (in seconds)',
+ 'group' => 'Group',
+ 'active' => 'Active?',
+ 'groups' => [
+ 'name' => 'Group Name',
+ ],
+ ],
+
+ // 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',
+ 'threshold' => 'How many minutes of threshold between metric points?',
+ 'visibility' => 'Visibility',
+ 'visibility_authenticated' => 'Visible to authenticated users',
+ 'visibility_public' => 'Visible to everybody',
+ 'visibility_hidden' => 'Always hidden',
+
+ '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?',
+ 'time_before_refresh' => 'Status page refresh rate (in seconds)',
+ 'major_outage_rate' => 'Major outage threshold (in %)',
+ '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?',
+ 'suppress_notifications_in_maintenance' => 'Suppress notifications when incident occurs during maintenance period?',
+ 'skip_subscriber_verification' => 'Skip verifying of users? (Be warned, you could be spammed)',
+ 'automatic_localization' => 'Automatically localise your status page to your visitor\'s language?',
+ 'enable_external_dependencies' => 'Enable Third Party Dependencies (Google Fonts, Trackers, etc...)',
+ 'show_timezone' => 'Show the timezone the status page is running in',
+ 'only_disrupted_days' => 'Only show days containing incidents in the timeline?',
+ ],
+ '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.',
+ 'always-authenticate' => 'Always authenticate',
+ 'always-authenticate-help' => 'Require login to view any Cachet page',
+ ],
+ '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 full width 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' => 'Your Team Members Email Address',
+ ],
+ ],
+
+ 'general' => [
+ 'timezone' => 'Select Timezone',
+ ],
+
+ // Buttons
+ 'add' => 'Add',
+ 'save' => 'Save',
+ 'update' => 'Update',
+ 'create' => 'Create',
+ 'edit' => 'Edit',
+ 'delete' => 'Delete',
+ 'submit' => 'Submit',
+ 'cancel' => 'Cancel',
+ 'remove' => 'Remove',
+ 'invite' => 'Invite',
+ 'signup' => 'Sign Up',
+ 'manage_updates' => 'Manage Updates',
+
+ // Other
+ 'optional' => '* Optional',
+];
diff --git a/resources/lang/sl-SI/notifications.php b/resources/lang/sl-SI/notifications.php
new file mode 100644
index 00000000..6a65c6bd
--- /dev/null
+++ b/resources/lang/sl-SI/notifications.php
@@ -0,0 +1,108 @@
+ [
+ 'status_update' => [
+ 'mail' => [
+ 'subject' => 'Component Status Updated',
+ 'greeting' => 'A component\'s status was updated!',
+ 'content' => ':name status changed from :old_status to :new_status.',
+ 'action' => 'View',
+ ],
+ 'slack' => [
+ 'title' => 'Component Status Updated',
+ 'content' => ':name status changed from :old_status to :new_status.',
+ ],
+ 'sms' => [
+ 'content' => ':name status changed from :old_status to :new_status.',
+ ],
+ ],
+ ],
+ 'incident' => [
+ 'new' => [
+ 'mail' => [
+ 'subject' => 'New Incident Reported',
+ 'greeting' => 'A new incident was reported at :app_name.',
+ 'content' => 'Incident :name was reported',
+ 'action' => 'View',
+ ],
+ 'slack' => [
+ 'title' => 'Incident :name Reported',
+ 'content' => 'A new incident was reported at :app_name',
+ ],
+ 'sms' => [
+ 'content' => 'A new incident was reported at :app_name.',
+ ],
+ ],
+ 'update' => [
+ 'mail' => [
+ 'subject' => 'Incident Updated',
+ 'content' => ':name was updated',
+ 'title' => ':name was updated to :new_status',
+ 'action' => 'View',
+ ],
+ 'slack' => [
+ 'title' => ':name Updated',
+ 'content' => ':name was updated to :new_status',
+ ],
+ 'sms' => [
+ 'content' => 'Incident :name was updated',
+ ],
+ ],
+ ],
+ 'schedule' => [
+ 'new' => [
+ 'mail' => [
+ 'subject' => 'New Schedule Created',
+ 'content' => ':name was scheduled for :date',
+ 'title' => 'A new scheduled maintenance was created.',
+ 'action' => 'View',
+ ],
+ 'slack' => [
+ 'title' => 'New Schedule Created!',
+ 'content' => ':name was scheduled for :date',
+ ],
+ 'sms' => [
+ 'content' => ':name was scheduled for :date',
+ ],
+ ],
+ ],
+ 'subscriber' => [
+ 'verify' => [
+ 'mail' => [
+ 'subject' => 'Verify Your Subscription',
+ 'content' => 'Click to verify your subscription to :app_name status page.',
+ 'title' => 'Verify your subscription to :app_name status page.',
+ 'action' => 'Verify',
+ ],
+ ],
+ ],
+ 'system' => [
+ 'test' => [
+ 'mail' => [
+ 'subject' => 'Ping from Cachet!',
+ 'content' => 'This is a test notification from Cachet!',
+ 'title' => '🔔',
+ ],
+ ],
+ ],
+ 'user' => [
+ 'invite' => [
+ 'mail' => [
+ 'subject' => 'Your invitation is inside...',
+ 'content' => 'You have been invited to join :app_name status page.',
+ 'title' => 'You\'re invited to join :app_name status page.',
+ 'action' => 'Accept',
+ ],
+ ],
+ ],
+];
diff --git a/resources/lang/sl-SI/pagination.php b/resources/lang/sl-SI/pagination.php
new file mode 100644
index 00000000..0ee724cf
--- /dev/null
+++ b/resources/lang/sl-SI/pagination.php
@@ -0,0 +1,28 @@
+ 'Previous',
+ 'next' => 'Next',
+
+];
diff --git a/resources/lang/sl-SI/setup.php b/resources/lang/sl-SI/setup.php
new file mode 100644
index 00000000..bdc2a457
--- /dev/null
+++ b/resources/lang/sl-SI/setup.php
@@ -0,0 +1,23 @@
+ 'Setup',
+ 'title' => 'Install 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/sl-SI/validation.php b/resources/lang/sl-SI/validation.php
new file mode 100644
index 00000000..7d196d98
--- /dev/null
+++ b/resources/lang/sl-SI/validation.php
@@ -0,0 +1,122 @@
+ '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.',
+ 'distinct' => 'The :attribute field has a duplicate value.',
+ 'filled' => 'The :attribute field is required.',
+ 'image' => 'The :attribute must be an image.',
+ 'in' => 'The selected :attribute is invalid.',
+ 'in_array' => 'The :attribute field does not exist in :other.',
+ 'integer' => 'The :attribute must be an integer.',
+ 'ip' => 'The :attribute must be a valid IP address.',
+ '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.',
+ 'present' => 'The :attribute field must be present.',
+ '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' => [],
+
+];