feat: VivesPOS landing on Winter CMS 1.2 — theme + plugin + Dockerfile
Some checks are pending
Module sub-split / Sub-split (push) Waiting to run

- Base: wintercms/winter branch 1.2 (full framework)
- Theme vivespos: Canvas 7 + Bootstrap 5 CDN, custom CSS
- Layout: deferred GTM/GA4 tracking, JSON-LD SoftwareApplication
- Partials: hero (offline-first), features, modes (offline/nube toggle),
  screenshots, pricing (3 planes), comparison, FAQ, CTA
- Plugin VivesPOS.Site with ContactForm
- Dockerfile: PHP 8.2 Apache, port 80, healthcheck
- Added winter/wn-pages, blog, sitemap, seo plugins
- Active theme set to vivespos
This commit is contained in:
2026-08-21 19:29:00 -06:00
commit 1f72193a64
3266 changed files with 531480 additions and 0 deletions

View File

@@ -0,0 +1,105 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Client-side Language Lines
|--------------------------------------------------------------------------
|
| These are messages made available to the client browser via JavaScript.
| To compile this file run: php artisan winter:util compile lang
|
*/
'markdowneditor' => [
'formatting' => 'Formatierung',
'quote' => 'Zitat',
'code' => 'Code',
'header1' => 'Überschrift 1',
'header2' => 'Überschrift 2',
'header3' => 'Überschrift 3',
'header4' => 'Überschrift 4',
'header5' => 'Überschrift 5',
'header6' => 'Überschrift 6',
'bold' => 'Fett',
'italic' => 'Kursiv',
'unorderedlist' => 'Normale Liste',
'orderedlist' => 'Nummerierte Liste',
'video' => 'Video',
'image' => 'Bild',
'link' => 'Link',
'horizontalrule' => 'Horizontale Linie',
'fullscreen' => 'Vollbild',
'preview' => 'Vorschau',
],
'mediamanager' => [
'insert_link' => 'Link aus Medienbibliothek',
'insert_image' => 'Bild aus Medienbibliothek',
'insert_video' => 'Video aus Medienbibliothek',
'insert_audio' => 'Audio aus Medienbibliothek',
'invalid_file_empty_insert' => 'Bitte Datei auswählen.',
'invalid_file_single_insert' => 'Bitte nur eine Datei wählen.',
'invalid_image_empty_insert' => 'Bitte ein Bilddatei auswählen.',
'invalid_video_empty_insert' => 'Bitte ein Videodatei auswählen.',
'invalid_audio_empty_insert' => 'Bitte eine Audiodatei auswählen.',
],
'alert' => [
'confirm_button_text' => 'OK',
'cancel_button_text' => 'Abbrechen',
'widget_remove_confirm' => 'Dieses Widget entfernen?',
],
'datepicker' => [
'previousMonth' => 'Vorheriger Monat',
'nextMonth' => 'Nächsten Monat',
'months' => ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'],
'weekdays' => ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'],
'weekdaysShort' => ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],
],
'colorpicker' => [
'last_color' => 'Benutze die zuletzt ausgewählte Farbe',
'aria_palette' => 'Farbauswahl-Palette',
'aria_hue' => 'Farbtonwahl-Regler',
'aria_opacity' => 'Transparenz-Regler',
],
'filter' => [
'group' => [
'all' => 'Alle',
],
'scopes' => [
'apply_button_text' => 'Anwenden',
'clear_button_text' => 'Löschen',
],
'dates' => [
'all' => 'Alle',
'filter_button_text' => 'Filter',
'reset_button_text' => 'Zurücksetzen',
'date_placeholder' => 'Datum',
'after_placeholder' => 'Nach',
'before_placeholder' => 'Vor'
],
'numbers' => [
'all' => 'Alle',
'filter_button_text' => 'Filter',
'reset_button_text' => 'Zurücksetzen',
'min_placeholder' => 'Min',
'max_placeholder' => 'Max',
],
],
'eventlog' => [
'show_stacktrace' => 'Stacktrace anzeigen',
'hide_stacktrace' => 'Stacktrace ausblenden',
'tabs' => [
'formatted' => 'Formatiert',
'raw' => 'Raw',
],
'editor' => [
'title' => 'Quellcode-Editor',
'description' => 'Das Betriebssystem sollte so konfiguriert sein, dass es auf eines dieser URL-Schemas hört.',
'openWith' => 'Öffnen mit',
'remember_choice' => 'Ausgewählte Option für diese Session merken',
'open' => 'Öffnen',
'cancel' => 'Abbrechen',
],
],
];

View File

@@ -0,0 +1,422 @@
<?php
return [
'app' => [
'name' => 'Winter CMS',
'tagline' => 'Zurück zum Wesentlichen',
],
'directory' => [
'create_fail' => 'Konnte Verzeichnis: :name nicht erstellen',
],
'file' => [
'create_fail' => 'Konnte Datei :name nicht erstellen',
],
'combiner' => [
'not_found' => 'Die Combiner-Datei ":name" wurde nicht gefunden.',
],
'system' => [
'name' => 'System',
'menu_label' => 'System',
'categories' => [
'cms' => 'CMS',
'misc' => 'Verschiedenes',
'logs' => 'Logs',
'mail' => 'Mail',
'shop' => 'Shop',
'team' => 'Team',
'users' => 'Benutzer',
'system' => 'System',
'social' => 'Social',
'backend' => 'Backend',
'events' => 'Events',
'customers' => 'Kunden',
'my_settings' => 'Meine Einstellungen',
'notifications' => 'Benachrichtigungen',
],
],
'theme' => [
'label' => 'Theme',
'unnamed' => 'Unbenanntes Theme',
'name' => [
'label' => 'Theme-Name',
'help' => 'Benennen Sie das Theme mit einem eindeutigen Code. Zum Beispiel: Winter.Vanilla',
],
],
'themes' => [
'install' => 'Themes installieren',
'search' => 'Suche Themes zum installieren...',
'installed' => 'Installierte Themes',
'no_themes' => 'Es sind keine Themes vom Marketplace installiert.',
'recommended' => 'Empfohlen',
'remove_confirm' => 'Sind Sie siche, dass Sie dieses Theme entfernen wollen?',
],
'plugin' => [
'label' => 'Plugin',
'unnamed' => 'Unbenanntes Plugin',
'name' => [
'label' => 'Plugin-Name',
'help' => 'Benennen Sie das Plugin mit einem eindeutigen Code. Zum Beispiel: Winter.Blog',
],
'by_author' => 'Von :name',
],
'plugins' => [
'manage' => 'Plugins verwalten',
'install' => 'Plugins installieren',
'install_products' => 'Produkte installieren',
'search' => 'Suche Plugins zum installieren...',
'installed' => 'Installierte Plugins',
'no_plugins' => 'Es sind keine Plugins vom Marketplace installiert.',
'recommended' => 'Empfohlen',
'plugin_label' => 'Plugin',
'unknown_plugin' => 'Das Plugin wurde vom Dateisystem entfernt.',
'select_label' => 'Aktion auswählen...',
'bulk_actions_label' => 'Massenaktionen',
'check_yes' => 'Ja',
'check_no' => 'Nein',
'unfrozen' => 'Updates aktiviert',
'enabled' => 'Plugin aktiviert',
'freeze' => 'deaktiviere Updates für',
'unfreeze' => 'aktiviere Updates für',
'enable' => 'aktivieren',
'disable' => 'deaktivieren',
'refresh' => 'Zurücksetzen',
'remove' => 'Löschen',
'freeze_label' => 'Deaktiviere Updates',
'unfreeze_label' => 'Aktiviere Updates',
'enable_label' => 'Aktiviere Plugins',
'disable_label' => 'Deaktiviere Plugins',
'refresh_label' => 'Plugin-Daten zurücksetzen',
'action_confirm' => 'Sind Sie sicher, dass Sie :action für die Plugins wollen?',
'freeze_success' => 'Updates wurden erfolgreich für die ausgewählten Plugins deaktiviert.',
'unfreeze_success' => 'Updates wurden erfolgreich für die ausgewählten Plugins aktiviert.',
'enable_success' => 'Updates wurden erfolgreich für das ausgewählte Plugin aktiviert.',
'disable_success' => 'Updates wurden erfolgreich für das ausgewählte Plugin deaktiviert.',
'refresh_confirm' => 'Sind Sie sicher, dass Sie die ausgewählten Plugins zurücksetzen wollen? Dies setzt von jedem Plugin die Plugin-Daten zurück, so dass der Ursprungszustand wiederhergestellt wird.',
'refresh_success' => 'Die ausgewählten Plugins wurden erfolgreich zurückgesetzt.',
'remove_confirm' => 'Sind Sie sicher, dass Sie die ausgewählten Plugins löschen wollen? Dies löscht die mit den Plugins verknüften Daten ebenfalls.',
'remove_success' => 'Die ausgewählten Plugins wurden erfolgreich gelöscht.',
'replace' => [
'multi_install_error' => 'Das Ersetzen von mehreren Plugins wird derzeit nicht unterstützt.',
],
],
'project' => [
'name' => 'Projekt',
'owner_label' => 'Besitzer',
'attach' => 'Projekt verbinden',
'detach' => 'Projekt trennen',
'none' => 'Keins',
'id' => [
'label' => 'Projekt-ID',
'help' => 'Wie Sie Ihre Projekt-ID finden',
'missing' => 'Bitte geben Sie eine Projekt-ID an.',
],
'detach_confirm' => 'Möchtest du dieses Projekt wirklich trennen?',
'unbind_success' => 'Projekt wurde erfolgreich getrennt (detached).',
],
'settings' => [
'menu_label' => 'Einstellungen',
'not_found' => 'Die gesuchten Einstellungen können nicht gefunden werden.',
'missing_model' => 'Der Einstellungsseite fehlt eine Model-Definition.',
'update_success' => 'Einstellung für :name wurde erfolgreich aktualisiert.',
'test_subject' => 'Test des E-Mail-Treibers',
'test_content' => 'Dies ist eine Test-E-Mail, um zu bestätigen, dass die angegeben Einstellungen für den E-Mail-Versand funktionieren.',
'test_confirm' => 'Dies speichert Ihre momentane Konfiguration und sendet eine Test-E-Mail an :email.',
'return' => 'Zurück zu den Einstellungen',
'search' => 'Suche',
],
'mail' => [
'log_file' => 'Log-Datei',
'menu_label' => 'Mail-Einstellungen',
'menu_description' => 'Mail-Einstellungen verwalten.',
'general' => 'Allgemein',
'method' => 'Mail-Methode',
'sender_name' => 'Absender-Name',
'sender_email' => 'Absender-E-Mail',
'php_mail' => 'PHP-Mail',
'smtp' => 'SMTP',
'smtp_address' => 'SMTP-Adresse',
'smtp_authorization' => 'SMTP-Autorisierung erforderlich',
'smtp_authorization_comment' => 'Bitte auswählen, wenn der SMTP-Server eine SMTP-Autorisierung erfordert.',
'smtp_username' => 'Benutzername',
'smtp_password' => 'Passwort',
'smtp_port' => 'SMTP-Port',
'sendmail' => 'Sendmail',
'sendmail_path' => 'Sendmail-Pfad',
'sendmail_path_comment' => 'Bitte geben Sie den (absoluten) Pfad zum Sendmail-Programm an.',
'drivers_hint_content' => 'Schauen Sie in die <a href=":url" target="_blank">Dokumentation</a> um eine Liste von anderen unterstützten Mail-Methoden zu erhalten und erfahren Sie, wie diese aktivert werden können.',
],
'mail_templates' => [
'menu_label' => 'Mail-Vorlagen',
'menu_description' => 'Verwalten Sie die Mail-Vorlagen, die für Mails an Benutzer und Administratoren verwendet werden und verwalten Sie die Mail-Layouts.',
'new_template' => 'Neue Vorlage',
'new_layout' => 'Neues Layout',
'new_partial' => 'Neues Partial',
'template' => 'Vorlage',
'templates' => 'Vorlagen',
'partial' => 'Partial',
'partials' => 'Partials',
'menu_layouts_label' => 'Mail-Layouts',
'menu_partials_label' => 'Mail-Partials',
'layout' => 'Layout',
'layouts' => 'Layouts',
'no_layout' => '-- Kein Layout --',
'name' => 'Name',
'name_comment' => 'Eindeutiger Name um diese Vorlage zu referenzieren',
'code' => 'Code',
'code_comment' => 'Eindeutiger Code um diese Vorlage zu referenzieren',
'subject' => 'Betreff',
'subject_comment' => 'E-Mail-Betreff',
'description' => 'Beschreibung',
'content_html' => 'HTML',
'content_css' => 'CSS',
'content_text' => 'Nur Text',
'test_send' => 'Testnachricht senden',
'test_success' => 'Die Testnachricht wurde erfolgreich versandt.',
'test_confirm' => 'Eine Testnachricht wird an :email gesandt. Fortfahren?',
'creating' => 'Erstelle Vorlage...',
'creating_layout' => 'Erstelle Layout...',
'saving' => 'Speichere Vorlage...',
'saving_layout' => 'Speichere Layout...',
'delete_confirm' => 'Möchtest Du diese Vorlage wirklich löschen?',
'delete_layout_confirm' => 'Möchtest Du dieses Layout wirklich löschen?',
'deleting' => 'Lösche Vorlage...',
'deleting_layout' => 'Lösche Layout...',
'sending' => 'Sende Test-Nachricht...',
'return' => 'Zurück zur Vorlagen-Liste',
'options' => 'Optionen',
'disable_auto_inline_css' => 'Automtische Inline-CSS deaktivieren',
],
'mail_brand' => [
'menu_label' => 'Mail-Branding',
'menu_description' => 'Ändern Sie die Farben und Darstellung von E-Mail-Vorlagen.',
'page_title' => 'E-Mail-Darstellung personalisieren',
'sample_template' => [
'heading' => 'Überschrift',
'paragraph' => 'Das ist ein Absatz gefüllt mit Lorem Ipsum und einem Link. Cumque dicta <a>doloremque eaque</a>, enim error laboriosam pariatur possimus tenetur veritatis voluptas.',
'table' => [
'item' => 'Artikel',
'description' => 'Beschreibung',
'price' => 'Preis',
'centered' => 'Zentriert',
'right_aligned' => 'Rechtsbündig',
],
'buttons' => [
'primary' => 'Primärer Button',
'positive' => 'Positiver Button',
'negative' => 'Negativer Button',
],
'panel' => 'Wie genial ist dieses Panel?',
'more' => 'Noch etwas Text',
'promotion' => 'Coupon-Code: WINTER',
'subcopy' => 'Das ist die Tagline der E-Mail',
'thanks' => 'Danke',
],
'fields' => [
'_section_background' => 'Hintergrund',
'body_bg' => 'Body-Hintergrund',
'content_bg' => 'Inhalts-Hintergrund',
'content_inner_bg' => 'Innerer Inhalts-Hintergrund',
'_section_buttons' => 'Buttons',
'button_text_color' => 'Button Textfarbe',
'button_primary_bg' => 'Primärer Button-Hintergrund',
'button_positive_bg' => 'Positiver Button-Hintergrund',
'button_negative_bg' => 'Negativer Button-Hintergrund',
'_section_type' => 'Typografie',
'header_color' => 'Header-Farbe',
'heading_color' => 'Überschriften-Farbe',
'text_color' => 'Text-Farbe',
'link_color' => 'Link-Farbe',
'footer_color' => 'Footer-Farbe',
'_section_borders' => 'Ränder',
'body_border_color' => 'Body-Randfarbe',
'subcopy_border_color' => 'Tagline-Randfarbe',
'table_border_color' => 'Tabellen-Randfarbe',
'_section_components' => 'Komponenten',
'panel_bg' => 'Panel-Hintergrund',
'promotion_bg' => 'Promotion-Hintergrund',
'promotion_border_color' => 'Promotion-Randfarbe',
],
],
'install' => [
'project_label' => 'Mit Projekt verbinden',
'plugin_label' => 'Plugin installieren',
'theme_label' => 'Theme installieren',
'missing_plugin_name' => 'Bitte geben Sie den Namen des zu installierenden Plugin an.',
'missing_theme_name' => 'Bitte geben Sie den Namen des zu installierenden Themes an.',
'install_completing' => 'Schließe Installationsprozess ab',
'install_success' => 'Das Plugin wurde erfolgreich installiert.',
],
'updates' => [
'title' => 'Aktualisierungen verwalten',
'name' => 'Software-Aktualisierung',
'menu_label' => 'Aktualisierungen',
'menu_description' => 'System aktualisieren, Plugins und Themes verwalten und installieren.',
'return_link' => 'Zurück zu System-Aktualisierungen',
'check_label' => 'Auf Aktualisierungen überprüfen',
'retry_label' => 'Erneut versuchen',
'plugin_name' => 'Name',
'plugin_description' => 'Beschreibung',
'plugin_version' => 'Version',
'plugin_author' => 'Autor',
'plugin_not_found' => 'Plugin nicht gefunden',
'plugin_version_not_found' => 'Pluginversion nicht gefunden',
'core_current_build' => 'Aktueller Build',
'core_view_changelog' => 'Zeige Changelog',
'core_build' => 'Build :build',
'core_build_help' => 'Aktuellster Build ist verfügbar.',
'core_downloading' => 'Applikationsdaten werden heruntergeladen',
'core_extracting' => 'Applikationsdaten werden entpackt',
'core_set_build' => 'Setze Build-Nummer',
'update_warnings_title' => 'Einige Probleme wurden erkannt und erfordern Ihre Aufmerksamkeit:',
'update_warnings_plugin_missing' => 'Das Plugin :parent_code erfordert die vorherige Installtion von :code, bevor es funktioniert.',
'update_warnings_plugin_replace' => 'Das Plugin :plugin ersetzt :alias, bitte entfernen Sie :alias, um sicherzustellen, dass es nicht zu Konflikten kommt.',
'update_warnings_plugin_replace_cli' => 'Das Plugin ersetzt :alias, bitte entfernen Sie :alias, um sicherzustellen, dass es nicht zu Konflikten kommt.',
'changelog' => 'Changelog',
'changelog_view_details' => 'Zeige Details',
'plugins' => 'Plugins',
'themes' => 'Themes',
'disabled' => 'Deaktiviert',
'plugin_downloading' => 'Lade Plugin herunter: :name',
'plugin_extracting' => 'Entpacke Plugin: :name',
'plugin_version_none' => 'Neues Plugin',
'plugin_current_version' => 'Aktuelle Version',
'theme_new_install' => 'Installation eines neuen Themes.',
'theme_downloading' => 'Theme herunterladen: :name',
'theme_extracting' => 'Theme entpacken: :name',
'update_label' => 'Aktualisieren',
'update_completing' => 'Schließe Aktualisierung ab',
'update_loading' => 'Lade verfügbare Aktualisierungen...',
'update_success' => 'Aktualisierungsvorgang erfolgreich.',
'update_failed_label' => 'Aktualisierungsvorgang fehlgeschlagen',
'force_label' => 'Aktualisierung erzwingen',
'found' => [
'label' => 'Neue Aktualisierungen gefunden!',
'help' => '"Aktualisieren" klicken um Prozess zu starten ',
],
'none' => [
'label' => 'Keine Aktualisierungen',
'help' => 'Es wurden keine Aktualisierungen gefunden.',
],
'important_action' => [
'empty' => 'Aktion wählen',
'confirm' => 'Aktualisierung bestätigen',
'skip' => 'Überspringe die Aktualisierung (einmalig)',
'ignore' => 'Überspringe die Aktualisierung (Alle)',
],
'important_action_required' => 'Aktion benötigt',
'important_view_guide' => 'Zeige die Anleitung zur Aktualisierung',
'important_view_release_notes' => 'Versionshinweise anzeigen',
'important_alert_text' => 'Einige Aktualisierungen benötigen Ihre Aufmerksamkeit.',
'details_title' => 'Plugin-Details',
'details_view_homepage' => 'Zeige Homepage',
'details_readme' => 'Dokumentation',
'details_readme_missing' => 'Es wurde keine Dokumentation bereitgestellt.',
'details_changelog' => 'Changelog',
'details_changelog_missing' => 'Es wurde kein Changelog bereitgestellt.',
'details_upgrades' => 'Anleitung zur Aktualisierung',
'details_upgrades_missing' => 'Es wurde keine Anleitung zur Aktualisierung bereitgestellt.',
'details_licence' => 'Lizenz',
'details_licence_missing' => 'Es wurde Lizenz bereitgestellt.',
'details_current_version' => 'Aktuelle Version',
'details_author' => 'Autor',
],
'server' => [
'connect_error' => 'Fehler beim Verbinden mit dem Server.',
'response_not_found' => 'Der Aktualisierungs-Server kann nicht gefunden werden.',
'response_invalid' => 'Ungültige Antwort vom Server.',
'response_empty' => 'Leere Antwort vom Server.',
'file_error' => 'Server konnte Paket nicht bereitstellen.',
'file_corrupt' => 'Die heruntergeladene Datei ist fehlerhaft.',
],
'behavior' => [
'missing_property' => 'Die Klasse :class muss die Eingenschaft $:property besitzen, da sie vom Verhalten (Behaviour) :behavior benötigt wird.',
],
'config' => [
'not_found' => 'Es konnte keine Konfigurationsdatei :file gefunden werden, die für :location definiert ist.',
'required' => 'Die Konfiguration, die in :location benutzt wird, muss den Wert :property zur Verfügung stellen.',
],
'zip' => [
'extract_failed' => 'Konnte Core-Datei ":file" nicht entpacken.',
],
'event_log' => [
'hint' => 'Dieses Event-Log listet potentielle Fehler in der Anwendung, wie Exceptions und Debugging-Informationen auf.',
'menu_label' => 'Event-Log',
'menu_description' => 'Rufe den Event-Log mit Zeitangaben und Fehlerdetails auf.',
'empty_link' => 'Event-Log zurücksetzen',
'empty_loading' => 'Event-Log wird zurückgesetzt...',
'empty_success' => 'Event-Log erfolgreich zurückgesetzt.',
'return_link' => 'Zurück zum Event-Log',
'id' => 'ID',
'id_label' => 'Event-ID',
'created_at' => 'Datum & Zeit',
'message' => 'Nachricht',
'level' => 'Level',
'preview_title' => 'Event',
],
'request_log' => [
'hint' => 'Dieses Request-Log listet Browser-Anfragen, die Ihrer Aufmerksamkeit bedürfen könnten. Falls zum Beispiel ein Besucher eine nicht existierende CMS-Seite öffnet, wird ein Eintrag mit dem Fehler 404 angelegt.',
'menu_label' => 'Request-Log',
'menu_description' => 'Liste fehlerhafte Requests auf, z.B. Seite nicht gefunden (404).',
'empty_link' => 'Request-Log zurücksetzen',
'empty_loading' => 'Request-Log wird zurückgesetzt...',
'empty_success' => 'Request-Log erfolgreich zurückgesetzt.',
'return_link' => 'Zurück zum Request-Log',
'id' => 'ID',
'id_label' => 'Log-ID',
'count' => 'Zähler',
'referer' => 'Referer',
'url' => 'URL',
'status_code' => 'Status',
'preview_title' => 'Request',
],
'permissions' => [
'name' => 'System',
'manage_system_settings' => 'Systemeinstellungen verwalten',
'manage_software_updates' => 'Software-Aktualisierungen verwalten',
'access_logs' => 'Systemprotokolle einsehen',
'manage_mail_templates' => 'E-Mail-Templates verwalten',
'manage_mail_settings' => 'E-Mail-Einstellungen verwalten',
'manage_other_administrators' => 'Andere Administratoren verwalten',
'impersonate_users' => 'Benutzer imitieren',
'manage_preferences' => 'Backend-Einstellungen verwalten',
'manage_editor' => 'Code-Editor-Einstellungen verwalten',
'manage_own_editor' => 'Persönliche Code-Editor-Einstellungen verwalten',
'view_the_dashboard' => 'Dashboard einsehen',
'manage_default_dashboard' => 'Standard-Dashboard verwalten',
'manage_branding' => 'Backend individualisieren',
],
'log' => [
'menu_label' => 'Log-Einstellungen',
'menu_description' => 'Definieren Sie welche Bereiche loggen sollen.',
'default_tab' => 'Logging',
'log_events' => 'Log-System-Events',
'log_events_comment' => 'Speichere System-Events zusätzlich zum dateibasierten Log in der Datenbank.',
'log_requests' => 'Logge Bad Requests',
'log_requests_comment' => 'Browser Requests die möglicherweise Ihre Aufmerksamkeit erfordern, wie zum Beispiel 404-Fehler.',
'log_theme' => 'Logge Änderungen im Theme',
'log_theme_comment' => 'Wenn eine Änderung im Theme über das Backend gemacht wird.',
],
'media' => [
'invalid_path' => 'Ungültiger Dateipfad: ":path".',
'folder_size_items' => 'Datei(en)',
],
'page' => [
'custom_error' => [
'label' => 'Seitenfehler',
'help' => 'Es tut uns leid, irgendetwas ist falsch gelaufen und die Seite kann nicht angezeigt werden.',
],
'invalid_token' => [
'label' => 'Ungültiges Sicherheitstoken',
],
'maintenance' => [
'label' => 'Wir sind gleich zurück!',
'help' => 'Aufgrund von Wartungsarbeiten ist die Webseite gerade nicht erreichbar, kommen Sie später wieder!',
'message' => 'Nachricht:',
'available_at' => 'Versuchen Sie es wieder nach:',
],
],
'pagination' => [
'previous' => 'Zurück',
'next' => 'Vor',
],
];

View File

@@ -0,0 +1,150 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| such as the size rules. Feel free to tweak each of these messages.
|
*/
'accepted' => ':attribute muss bestätigt werden.',
'active_url' => ':attribute ist keine gültige URL.',
'after' => ':attribute muss ein Datum nach :date sein.',
'after_or_equal' => ':attribute muss ein Datum nach oder gleich :date sein.',
'alpha' => ':attribute darf nur Buchstaben enthalten.',
'alpha_dash' => ':attribute darf nur Buchstaben, Ziffern und Bindestriche enthalten.',
'alpha_num' => ':attribute darf nur Buchstaben und Ziffern enthalten.',
'array' => ':attribute muss ein Array sein.',
'before' => ':attribute muss ein Datum vor :date sein.',
'before_or_equal' => ':attribute muss ein Datum vor oder gleich :date sein.',
'between' => [
'numeric' => ':attribute muss zwischen :min und :max liegen.',
'file' => ':attribute muss zwischen :min und :max Kilobytes groß sein.',
'string' => ':attribute muss eine Zeichenanzahl zwischen :min und :max haben.',
'array' => ':attribute muss eine Elementanzahl zwischen :min und :max haben.',
],
'boolean' => ':attribute muss true oder false sein.',
'confirmed' => 'Bestätigung zu :attribute stimmt nicht überein',
'date' => ':attribute ist kein gültiges Datum.',
'date_equals' => ':attribute muss gleich :date sein.',
'date_format' => ':attribute entspricht nicht dem gültiges Datumsformat :format.',
'different' => ':attribute und :other müssen sich unterscheiden.',
'digits' => ':attribute benötigt :digits Ziffern.',
'digits_between' => ':attribute muss eine Zeichenanzahl zwischen :min und :max haben.',
'dimensions' => ':attribute has invalid image dimensions.',
'distinct' => ':attribute enthält einen doppelten Wert.',
'email' => 'Das Format von :attribute ist ungültig.',
'ends_with' => ':attribute muss mit einem der folgenden Werte enden: :values.',
'exists' => 'Das ausgewählte Attribut :attribute ist ungültig.',
'file' => ':attribute muss eine Datei sein.',
'filled' => ':attribute muss einen Wert haben.',
'gt' => [
'numeric' => ':attribute muss größer sein als :value.',
'file' => ':attribute muss größer sein als :value Kilobytes.',
'string' => ':attribute muss mehr als :value Zeichen haben.',
'array' => ':attribute muss mehr als :value Elemente haben.',
],
'gte' => [
'numeric' => ':attribute muss mindestens :value sein.',
'file' => ':attribute muss mindestens :value Kilobytes groß sein.',
'string' => ':attribute muss mindestens :value Zeichen haben.',
'array' => ':attribute muss mindestens :value Elemente haben.',
],
'image' => ':attribute muss ein Bild sein.',
'in' => 'Das ausgewählte Attribut :attribute ist ungültig.',
'in_array' => ':attribute existiert nicht in :other.',
'integer' => ':attribute muss eine Ganzzahl (integer) sein.',
'ip' => ':attribute muss eine gültige IP-Adresse sein.',
'ipv4' => ':attribute muss eine gültige IPv4-Adresse sein.',
'ipv6' => ':attribute muss eine gültige IPv6-Adresse sein.',
'json' => ':attribute muss ein gültiger JSON-String sein.',
'lt' => [
'numeric' => ':attribute muss kleiner sein als :value.',
'file' => ':attribute muss kleiner sein als :value Kilobytes.',
'string' => ':attribute muss weniger als :value Zeichen haben.',
'array' => ':attribute muss weniger als :value Elemente haben.',
],
'lte' => [
'numeric' => ':attribute darf maximal :value sein.',
'file' => ':attribute darf maximal :value Kilobytes groß sein.',
'string' => ':attribute darf maximal :value Zeichen haben.',
'array' => ':attribute darf maximal :value Elemente haben.',
],
'max' => [
'numeric' => ':attribute darf nicht größer als :max sein.',
'file' => ':attribute darf nicht größer als :max Kilobytes sein.',
'string' => ':attribute darf nicht mehr als :max Zeichen haben.',
'array' => ':attribute darf nicht mehr als :max Elemente haben.',
],
'mimes' => ':attribute muss eine Datei des Typs: :values sein.',
'mimetypes' => ':attribute muss eine Datei des Typs: :values sein.',
'min' => [
'numeric' => ':attribute muss mindestens :min sein.',
'file' => ':attribute darf nicht kleiner als :min Kilobytes sein.',
'string' => ':attribute darf nicht weniger als :min Zeichen haben.',
'array' => ':attribute darf nicht weniger als :min Elemente haben.',
],
'not_in' => 'Das ausgewählte Attribut :attribute ist ungültig.',
'not_regex' => 'Das Format von :attribute ist ungültig.',
'numeric' => ':attribute muss eine Zahl sein.',
'present' => ':attribute muss gegeben sein.',
'regex' => 'Das Format von :attribute ist ungültig.',
'required' => ':attribute wird benötigt.',
'required_if' => ':attribute wird benötigt, wenn :other den Wert :value hat.',
'required_unless' => ':attribute wird benötigt, wenn nicht :other den Wert :values hat.',
'required_with' => ':attribute wird benötigt, wenn :values existiert.',
'required_with_all' => ':attribute wird benötigt, wenn :values existiert.',
'required_without' => ':attribute wird benötigt, wenn :values nicht existiert.',
'required_without_all' => ':attribute wird benötigt, wenn keine der Werte :values existieren.',
'same' => ':attribute und :other müssen übereinstimmen.',
'size' => [
'numeric' => ':attribute muss :size groß sein.',
'file' => ':attribute muss :size Kilobytes groß sein.',
'string' => ':attribute muss :size Zeichen haben.',
'array' => ':attribute muss :size Elemente haben.',
],
'starts_with' => ':attribute muss mit einem der folgenden Werte beginnen: :values.',
'string' => ':attribute muss eine Zeichenkette (String) sein.',
'timezone' => ':attribute muss eine gültige Zeitzone sein.',
'unique' => ':attribute muss eindeutig sein.',
'uploaded' => ':attribute konnte nicht hochgeladen werden.',
'url' => 'Format von :attribute ist ungültig.',
'uuid' => ':attribute muss eine gültige UUID sein.',
/*
|--------------------------------------------------------------------------
| 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' => [],
];