diff --git a/docs/version_check.json b/docs/version_check.json index f25c5ad..420817c 100644 --- a/docs/version_check.json +++ b/docs/version_check.json @@ -1,7 +1,7 @@ { "stable": { - "1.0": { - "current": "1.0.8", + "1.1": { + "current": "1.1.0", "announcement": "https://github.com/LukeWCS/ext-mgr-plus/releases", "eol": null, "security": false diff --git a/ext-mgr-plus_build_changelog.md b/ext-mgr-plus_build_changelog.md index ae9680e..15d6d15 100644 --- a/ext-mgr-plus_build_changelog.md +++ b/ext-mgr-plus_build_changelog.md @@ -1,15 +1,22 @@ ### 1.1.0 -#### 1.1.0-b11 +#### 1.1.0 * Release * Core: - * Bei der Auswertung von `is_enableable` wird jetzt strikt nach phpBB Version unterschieden: Bei <3.3.0 genügt ein implizites `true`. Bei >=3.3.0 muss es ein explizites `true` sein. + * Bei der Prüfung der Bedingungen für die Speicherung der Checkboxen wird jetzt auch "Letzten Zustand merken" berücksichtigt. +* Sprachdateien: + * In der Erklärung von "Kontrollkästchen setzen" wird das FA Checkbox Icon jetzt per Platzhalter in der Sprachvariable eingefügt. + * Bei den Erklärungen für "Reihenfolge" und "Ignorieren" wird das FA Icon jetzt ebenfalls per Platzhalter in der Sprachvariable eingefügt. + +#### 1.1.0-b11 +* Core: + * Bei der Auswertung von `is_enableable` wird jetzt strikt nach phpBB Version unterschieden. Unverändert muss bei >=3.3.0 ein explizites `true` zurückgegeben werden, damit eine Erweiterung aktiviert werden kann. Bei <3.3.0 genügt jetzt auch ein implizites `true`. * Mehrere Template-Variablen umbenannt. * Code Optimierung. * ACP-Template: * An umbenannte Template-Variablen angepasst. * Twig optimiert. - * Icons der Link-Leiste werden beim überfahren nicht mehr unterstrichen und verhalten sich damit wie die Schnellzugriff-Leiste. Ausserdem Icons etwas grösser definiert. + * Icons der Link-Leiste werden beim überfahren nicht mehr unterstrichen und verhalten sich damit wie die Icons der Schnellzugriff-Leiste. Ausserdem Icons etwas grösser definiert. #### 1.1.0-b10 * Migration geändert, vorherige Betas müssen deinstalliert werden. @@ -29,7 +36,7 @@ #### 1.1.0-b9 * Ist "Letzten Zustand merken" aktiv, kann jetzt jederzeit die aktuelle Checkbox-Auswahl gespeichert werden, unabhängig von Deaktivieren/Aktivieren. * ACP-Template: - * Oben rechts ein Link eingefügt, mit dem die aktuelle Checkbox-Auswahl gespeichert werden kann. Der Link ist von "Letzten Zustand merken" abhängig. + * Oben rechts ein Link eingefügt, mit dem die aktuelle Checkbox-Auswahl gespeichert werden kann. Der Zustand des Links ist von "Letzten Zustand merken" abhängig. * JS: * Neue Funktion für das Speichern der Checkboxen hinzugefügt. Damit wird ein spezifischer Submit-Button innerhalb eines Formulars simuliert, indem dynamisch eine `hidden` Eigenschaft zum DOM hinzugefügt wird. Dieser Kniff ist nötig, da sich das aufrufende Element ausserhalb des Formulars befindet und zudem ein normaler Link ist, kein Submit-Button. * Sprachdateien: diff --git a/ext-mgr-plus_changelog_de.md b/ext-mgr-plus_changelog_de.md index 6e6a998..ed7cef7 100644 --- a/ext-mgr-plus_changelog_de.md +++ b/ext-mgr-plus_changelog_de.md @@ -1,5 +1,5 @@ ### 1.1.0 -GH (2023-02-) +GH (2023-02-24) / CDB (2023--) * Für die Handhabung der Auswahl-Kontrollkästchen steht eine neue Eigenschaft zur Verfügung die es erlaubt, den letzten Zustand aller Kontrollkästchen speichern zu können. Das ist insbesondere bei phpBB Updates hilfreich wenn man alle Erweiterungen deaktivieren will, aber auch Erweiterungen hat, die nur fallweise aktiviert werden sollen. Es werden automatisch alle Kontrollkästchen gespeichert, wenn die Aktion "Ausgewählte deaktivieren" oder "Ausgewählte aktivieren" ausgeführt wird. Zusätzlich kann auch in der Link-Leiste oberhalb der Erweiterungen-Liste mit der Aktion "Speichern" jederzeit die aktuelle Auswahl gespeichert werden. * Erweiterungen-Liste: @@ -11,23 +11,21 @@ GH (2023-02-) * Einstellungen - Reihenfolge und Ignorieren: * Die Beschreibungen von Reihenfolge und Ignorieren werden nebeneinander statt untereinander dargestellt. [Vorschlag von Kirk] * Unterhalb der Erweiterungen-Liste wird ebenfalls ein Absenden-Button eingefügt. [Vorschlag von Kirk] -* In allen Fehlermeldungen die beim Deaktivieren oder Aktivieren auftreten können, wird jetzt auch die Version der betroffen Erweiterung angezeigt. +* Bisher wurde zum Ermitteln neuer Migrationen die Migrator Klasse von phpBB verwendet. Diese wurde entfernt, da sie mehrere Nachteile hat: 1) Die Klassen aller ermittelten Migrationen werden dauerhaft zur Laufzeit geladen (inkludiert) und zum Programm-Kontext hinzugefügt, wodurch unnötig Speicher belegt wird. 2) Erhöhtes Fehlerpotential, da beim Inkludieren eine defekte Migration zu einem Absturz (Fatal) von phpBB und damit von EMP führen kann. Um diese Probleme zu beheben, wurden eigene Funktionen für die Handhabung von Migrationen implementiert: + * Für den Abgleich der lokalen Migrationen der Erweiterungen mit der Datenbank. Dabei wird festgestellt, welche Migrationen noch nicht ausgeführt wurden. + * Für die Prüfung ob eine Migrationsdatei tatsächlich eine Migration ist. Damit werden Dateien ausgefiltert, die lediglich eine Helfer-Klasse beinhalten. +* In allen Fehlermeldungen die beim Deaktivieren oder Aktivieren auftreten können, wird jetzt auch immer die Version der betroffen Erweiterung angezeigt. Das ist relevant, wenn im Supportfall Fehlermeldungen per Copy&Paste in Beiträgen eingefügt werden. * Die Link-Leiste so gestaltet wie die Schnellzugriff-Leiste im Forenindex mit individuellen Icons für jede Aktion. -* Bisher wurde zum Ermitteln neuer Migrationen die Migrator Klasse von phpBB verwendet. Diese wurde entfernt, da sie mehrere Nachteile hat: - * Die Klassen aller ermittelten Migrationen werden dauerhaft zur Laufzeit geladen (inkludiert) und zum Programm-Kontext hinzugefügt, wodurch unnötig Speicher belegt wird. - * Erhöhtes Fehlerpotential, da beim Inkludieren eine defekte Migration zu einem Absturz (Fatal) von phpBB und damit von EMP führen kann. -* Um die oben genannten Probleme zu beheben, wurden eigene Funktionen für die Handhabung von Migrationen implementiert: - * Für den Abgleich der lokalen Migrationen der Erweiterungen mit der Datenbank. - * Für die Prüfung ob eine Migrationsdatei tatsächlich eine Migration ist. * Code Optimierung. * Anzahl der MySQL Abfragen reduziert; Etliche Funktionen und deren Aufrufe so geändert, dass Zugriffe auf `config_text` minimiert werden. - * Mehrere Funktionsaufrufe reduziert, unter anderem durch Verwendung alternativer Funktionen. + * Mehrere Funktionsaufrufe reduziert, unter anderem durch Verwendung alternativer Funktionen und Neuordnung von Code. * Viele kleinere Verbesserungen. -* Text Änderungen: - * "Migrationsdateien" zu "Migrationen" geändert. - * "Reihenfolge/Ignorieren" zu "Reihenfolge & Ignorieren" geändert. * PHP Maximal-Version auf 8.2 erhöht. -* Für Erweiterung-Autoren: Bei der Auswertung von `is_enableable` wird jetzt strikt nach phpBB Version unterschieden. Unverändert muss bei >=3.3.0 ein explizites `true` zurückgegeben werden. Bei <3.3.0 genügt jetzt ein implizites `true`. Damit verhält sich EMP identisch zur jeweiligen phpBB Minor Version. +* Sprachdateien: + * "Migrationsdateien" global zu "Migrationen" geändert. + * 9 Variablen hinzugefügt, 3 umbenannt, 1 entfernt. + * Kleine Änderungen. +* Für Erweiterung-Autoren: Bei der Auswertung von `is_enableable` wird jetzt strikt nach phpBB Version unterschieden. Unverändert muss bei >=3.3.0 ein explizites `true` zurückgegeben werden, damit eine Erweiterung aktiviert werden kann. Bei <3.3.0 genügt jetzt auch ein implizites `true`. Damit verhält sich EMP identisch zur jeweiligen phpBB Minor Version auf der es installiert ist. ### 1.0.8 GH (2023-02-01) diff --git a/lukewcs/extmgrplus/adm/style/acp_ext_mgr_plus_acp_ext_list.html b/lukewcs/extmgrplus/adm/style/acp_ext_mgr_plus_acp_ext_list.html index 6d2c1a2..2bcf661 100644 --- a/lukewcs/extmgrplus/adm/style/acp_ext_mgr_plus_acp_ext_list.html +++ b/lukewcs/extmgrplus/adm/style/acp_ext_mgr_plus_acp_ext_list.html @@ -1,11 +1,11 @@ - +#} {% INCLUDE 'overall_header.html' %} @@ -93,6 +93,7 @@

{{ lang('EXTENSIONS_ADMIN') }}

+ {{ S_FORM_TOKEN }} @@ -123,7 +124,7 @@

{{ lang('EXTENSIONS_ADMIN') }}


- {{ lang('EXTMGRPLUS_CHECKBOX_MODE_EXPLAIN') }} + {{ lang('EXTMGRPLUS_CHECKBOX_MODE_EXPLAIN', _self.icon('fa-check-square-o')) }}
{{ _self.select('extmgrplus_select_checkbox_mode', EXTMGRPLUS_SELECT_CHECKBOX_MODE, EXTMGRPLUS_SELECT_CHECKBOX_MODE_OPTIONS) }} @@ -191,6 +192,7 @@

{{ lang('EXTENSIONS_ADMIN') }}

+ {{ S_FORM_TOKEN }} @@ -201,18 +203,18 @@

{{ lang('EXTENSIONS_ADMIN') }}


- {{ _self.icon('fa-sort') }} {{ lang('EXTMGRPLUS_ORDER_EXPLAIN') }} + {{ lang('EXTMGRPLUS_ORDER_EXPLAIN', _self.icon('fa-sort')) }}

- {{ _self.icon('fa-ban') }} {{ lang('EXTMGRPLUS_IGNORE_EXPLAIN') }} + {{ lang('EXTMGRPLUS_IGNORE_EXPLAIN', _self.icon('fa-ban')) }}
{{ lang('ACP_SUBMIT_CHANGES') }}

-   +

@@ -226,8 +228,8 @@

{{ lang('EXTENSIONS_ADMIN') }}

{{ lang('CURRENT_VERSION') }} - - {{ _self.icon('fa-arrow-up') }}{{ lang('EXTMGRPLUS_COL_MIGRATION_FILES') }} + + {{ _self.icon('fa-arrow-up') }}{{ lang('EXTMGRPLUS_COL_MIGRATIONS') }} {{ lang('EXTENSION_OPTIONS') }} @@ -246,8 +248,9 @@

{{ lang('EXTENSIONS_ADMIN') }}

+ - {% if loops.enabled|length %} + {% if enabled|length %} {{ lang('EXTENSIONS_ENABLED') ~ lang('COLON') ~ ' ' ~ EXTMGRPLUS_COUNT_ENABLED }}{% EVENT acp_ext_list_enabled_title_after %} @@ -270,44 +273,44 @@

{{ lang('EXTENSIONS_ADMIN') }}

- {% for enabled in loops.enabled %} + {% for ext_enabled in enabled %} - {{ _self.name(enabled) }}{% EVENT acp_ext_list_enabled_name_after %} + {{ _self.name(ext_enabled) }}{% EVENT acp_ext_list_enabled_name_after %} - {{ _self.version(enabled, attribute(EXTMGRPLUS_LIST_VERSIONCHECK, enabled.NAME)) }} + {{ _self.version(ext_enabled, attribute(EXTMGRPLUS_LIST_VERSIONCHECK, ext_enabled.NAME)) }} - {{ _self.details(enabled) }} + {{ _self.details(ext_enabled) }} - {{ _self.actions(enabled) }} + {{ _self.actions(ext_enabled) }} {{ _self.checkbox_select( 'enabled', - enabled.NAME, - (enabled.NAME != 'lukewcs/extmgrplus' || EXTMGRPLUS_SWITCH_SELF_DISABLE) && (EXTMGRPLUS_LIST_IGNORE[enabled.NAME] is not defined || !EXTMGRPLUS_SWITCH_ORDER_AND_IGNORE), - EXTMGRPLUS_SELECT_CHECKBOX_MODE == 1 || EXTMGRPLUS_LIST_SELECTED[enabled.NAME] is defined + ext_enabled.NAME, + (ext_enabled.NAME != 'lukewcs/extmgrplus' || EXTMGRPLUS_SWITCH_SELF_DISABLE) && (EXTMGRPLUS_LIST_IGNORE[ext_enabled.NAME] is not defined || !EXTMGRPLUS_SWITCH_ORDER_AND_IGNORE), + EXTMGRPLUS_SELECT_CHECKBOX_MODE == 1 || EXTMGRPLUS_LIST_SELECTED[ext_enabled.NAME] is defined ) }} - {% if enabled.NAME != 'lukewcs/extmgrplus' %} + {% if ext_enabled.NAME != 'lukewcs/extmgrplus' %} {{ _self.inputbox( - enabled.NAME, - EXTMGRPLUS_LIST_ORDER[enabled.NAME] ?? '', - EXTMGRPLUS_LIST_IGNORE[enabled.NAME] is defined + ext_enabled.NAME, + EXTMGRPLUS_LIST_ORDER[ext_enabled.NAME] ?? '', + EXTMGRPLUS_LIST_IGNORE[ext_enabled.NAME] is defined ) }} {% endif %} - {% if enabled.NAME != 'lukewcs/extmgrplus' %} + {% if ext_enabled.NAME != 'lukewcs/extmgrplus' %} {{ _self.checkbox_ignore( - enabled.NAME, - EXTMGRPLUS_LIST_IGNORE[enabled.NAME] is defined + ext_enabled.NAME, + EXTMGRPLUS_LIST_IGNORE[ext_enabled.NAME] is defined ) }} {% endif %} @@ -315,7 +318,7 @@

{{ lang('EXTENSIONS_ADMIN') }}

{% endfor %} {% endif %} - {% if loops.disabled|length %} + {% if disabled|length %} {% if EXTMGRPLUS_COUNT_DISABLED %} @@ -340,8 +343,8 @@

{{ lang('EXTENSIONS_ADMIN') }}

{% endif %} - {% for disabled in loops.disabled %} - {% if disabled.actions|length == 1 && !section_not_installed %} + {% for ext_disabled in disabled %} + {% if ext_disabled.actions|length == 1 && !section_not_installed %} {% set section_not_installed = true %} @@ -359,54 +362,55 @@

{{ lang('EXTENSIONS_ADMIN') }}

{% endif %} - {{ _self.name(disabled) }}{% EVENT acp_ext_list_disabled_name_after %} + {{ _self.name(ext_disabled) }}{% EVENT acp_ext_list_disabled_name_after %} - {{ _self.version(disabled, attribute(EXTMGRPLUS_LIST_VERSIONCHECK, disabled.NAME)) }} + {{ _self.version(ext_disabled, attribute(EXTMGRPLUS_LIST_VERSIONCHECK, ext_disabled.NAME)) }} - {{ EXTMGRPLUS_SWITCH_MIGRATION_COL ? _self.has_migration(EXTMGRPLUS_LIST_MIGRATIONS_INACTIVE[disabled.NAME] ?? '') }} + {{ EXTMGRPLUS_SWITCH_MIGRATION_COL ? _self.has_migration(EXTMGRPLUS_LIST_MIGRATIONS_INACTIVE[ext_disabled.NAME] ?? '') }} - {{ _self.details(disabled) }} + {{ _self.details(ext_disabled) }} - {{ _self.actions(disabled) }} + {{ _self.actions(ext_disabled) }} - {% if disabled.actions|length == 2 %} + {% if ext_disabled.actions|length == 2 %} {{ _self.checkbox_select( 'disabled', - disabled.NAME, - (EXTMGRPLUS_LIST_MIGRATIONS_INACTIVE[disabled.NAME] is not defined || EXTMGRPLUS_SWITCH_MIGRATIONS) && (EXTMGRPLUS_LIST_IGNORE[disabled.NAME] is not defined || !EXTMGRPLUS_SWITCH_ORDER_AND_IGNORE), - EXTMGRPLUS_SELECT_CHECKBOX_MODE == 1 || EXTMGRPLUS_LIST_SELECTED[disabled.NAME] is defined + ext_disabled.NAME, + (EXTMGRPLUS_LIST_MIGRATIONS_INACTIVE[ext_disabled.NAME] is not defined || EXTMGRPLUS_SWITCH_MIGRATIONS) && (EXTMGRPLUS_LIST_IGNORE[ext_disabled.NAME] is not defined || !EXTMGRPLUS_SWITCH_ORDER_AND_IGNORE), + EXTMGRPLUS_SELECT_CHECKBOX_MODE == 1 || EXTMGRPLUS_LIST_SELECTED[ext_disabled.NAME] is defined ) }} {% endif %} {{ _self.inputbox( - disabled.NAME, - EXTMGRPLUS_LIST_ORDER[disabled.NAME] ?? '', - EXTMGRPLUS_LIST_IGNORE[disabled.NAME] is defined + ext_disabled.NAME, + EXTMGRPLUS_LIST_ORDER[ext_disabled.NAME] ?? '', + EXTMGRPLUS_LIST_IGNORE[ext_disabled.NAME] is defined ) }} {{ _self.checkbox_ignore( - disabled.NAME, - EXTMGRPLUS_LIST_IGNORE[disabled.NAME] is defined + ext_disabled.NAME, + EXTMGRPLUS_LIST_IGNORE[ext_disabled.NAME] is defined ) }} {% endfor %} {% endif %} + @@ -452,6 +456,22 @@

{{ lang('EXTENSIONS_ADMIN') }}

{% INCLUDECSS '@lukewcs_extmgrplus/acp_ext_mgr_plus.css' %} {% INCLUDECSS '@lukewcs_extmgrplus/acp_toggle.css' %} +{% macro icon(classes, decorative = true) -%} + +{%- endmacro %} + +{% macro switch(name, checked = false) -%} + +{%- endmacro %} + +{% macro select(name, value, options) -%} + +{%- endmacro %} + {% macro name(ext_obj) -%} {{ ext_obj.META_DISPLAY_NAME }} {%- endmacro %} @@ -522,19 +542,3 @@

{{ lang('EXTENSIONS_ADMIN') }}

{% macro inputbox(ext_name, value, inactive = false) -%} {%- endmacro %} - -{% macro icon(classes, decorative = true) -%} - -{%- endmacro %} - -{% macro switch(name, checked = false) -%} - -{%- endmacro %} - -{% macro select(name, value, options) -%} - -{%- endmacro %} diff --git a/lukewcs/extmgrplus/adm/style/acp_ext_mgr_plus_confirm_body.html b/lukewcs/extmgrplus/adm/style/acp_ext_mgr_plus_confirm_body.html index 4a83d86..9ab311c 100644 --- a/lukewcs/extmgrplus/adm/style/acp_ext_mgr_plus_confirm_body.html +++ b/lukewcs/extmgrplus/adm/style/acp_ext_mgr_plus_confirm_body.html @@ -18,6 +18,7 @@

{MESSAGE_TITLE}

+ {{ S_FORM_TOKEN }} diff --git a/lukewcs/extmgrplus/composer.json b/lukewcs/extmgrplus/composer.json index c2ebc5c..30b3e99 100644 --- a/lukewcs/extmgrplus/composer.json +++ b/lukewcs/extmgrplus/composer.json @@ -3,8 +3,8 @@ "type": "phpbb-extension", "description": "Extends the Extension Manager with the ability to disable and re-enable all installed extensions at once. An individual selection can also be made using checkboxes. Furthermore, sequence groups can be defined or extensions can be ignored. Additional information is also displayed in the Extension Manager.", "homepage": "https://github.com/LukeWCS/ext-mgr-plus", - "version": "1.1.0-b11", - "time": "2023-02-21", + "version": "1.1.0", + "time": "2023-02-24", "license": "GPL-2.0-only", "authors": [ { diff --git a/lukewcs/extmgrplus/core/ext_mgr_plus.php b/lukewcs/extmgrplus/core/ext_mgr_plus.php index 31de7d2..4f813fc 100644 --- a/lukewcs/extmgrplus/core/ext_mgr_plus.php +++ b/lukewcs/extmgrplus/core/ext_mgr_plus.php @@ -159,7 +159,7 @@ public function ext_manager_before($event): void trigger_error($this->language->lang('EXTMGRPLUS_MSG_ORDER_AND_IGNORE_SAVED') . adm_back_link($this->u_action), E_USER_NOTICE); } - else if ($this->request->is_set_post('extmgrplus_save_checkboxes')) + else if ($this->request->is_set_post('extmgrplus_save_checkboxes') && $this->config['extmgrplus_select_checkbox_mode'] == self::CHECKBOX_MODE_LAST) { $this->check_form_key_error(); @@ -312,10 +312,10 @@ public function ext_manager_after($event): void 'EXTMGRPLUS_SWITCH_CONFIRMATION' => $this->config['extmgrplus_switch_confirmation'], 'EXTMGRPLUS_SELECT_CHECKBOX_MODE' => $this->config['extmgrplus_select_checkbox_mode'], 'EXTMGRPLUS_SELECT_CHECKBOX_MODE_OPTIONS' => [ - '0' => 'EXTMGRPLUS_CHECKBOX_MODE_OFF', - '1' => 'EXTMGRPLUS_CHECKBOX_MODE_ALL', - '2' => 'EXTMGRPLUS_CHECKBOX_MODE_LAST', - ], + '0' => 'EXTMGRPLUS_CHECKBOX_MODE_OFF', + '1' => 'EXTMGRPLUS_CHECKBOX_MODE_ALL', + '2' => 'EXTMGRPLUS_CHECKBOX_MODE_LAST', + ], 'EXTMGRPLUS_SWITCH_ORDER_AND_IGNORE' => $this->config['extmgrplus_switch_order_and_ignore'], 'EXTMGRPLUS_SWITCH_SELF_DISABLE' => $this->config['extmgrplus_switch_self_disable'], 'EXTMGRPLUS_SWITCH_MIGRATION_COL' => $this->config['extmgrplus_switch_migration_col'], @@ -445,8 +445,8 @@ private function exts_disable(): void $start_time = time(); $safe_time_exceeded = false; - $ext_list_marked = $this->request->variable('ext_mark_enabled', ['']); - $ext_list_enabled = array_flip($ext_list_marked); + $ext_mark_enabled = $this->request->variable('ext_mark_enabled', ['']); + $ext_list_enabled = array_flip($ext_mark_enabled); $ext_count_enabled = count($ext_list_enabled); $ext_count_success = 0; @@ -518,8 +518,8 @@ private function exts_enable(): void $start_time = time(); $safe_time_exceeded = false; - $ext_list_marked = $this->request->variable('ext_mark_disabled', ['']); - $ext_list_disabled = array_flip($ext_list_marked); + $ext_mark_disabled = $this->request->variable('ext_mark_disabled', ['']); + $ext_list_disabled = array_flip($ext_mark_disabled); $ext_count_disabled = count($ext_list_disabled); $ext_count_success = 0; diff --git a/lukewcs/extmgrplus/language/de/acp_ext_mgr_plus.php b/lukewcs/extmgrplus/language/de/acp_ext_mgr_plus.php index f2af491..b43565b 100644 --- a/lukewcs/extmgrplus/language/de/acp_ext_mgr_plus.php +++ b/lukewcs/extmgrplus/language/de/acp_ext_mgr_plus.php @@ -49,7 +49,7 @@ 'EXTMGRPLUS_CONFIRMATION' => 'Rückfrage', 'EXTMGRPLUS_CONFIRMATION_EXPLAIN' => 'Hier kannst du festlegen, ob bei den Aktionen „Ausgewählte aktivieren“ und „Ausgewählte deaktivieren“ eine Rückfrage erfolgen soll, die bestätigt werden muss.', 'EXTMGRPLUS_CHECKBOX_MODE' => 'Kontrollkästchen setzen', - 'EXTMGRPLUS_CHECKBOX_MODE_EXPLAIN' => 'Bei der Auswahl „Alle setzen“ werden automatisch alle Kontrollkästchen gesetzt. Bei der Auswahl „Letzten Zustand merken“ wird der Zustand aller Kontrollkästchen gespeichert, wenn die Aktion „Ausgewählte aktivieren“ oder „Ausgewählte deaktivieren“ ausgeführt wird. Zusätzlich kann der Zustand aller Kontrollkästchen auch über den Link „Speichern“ gespeichert werden.', + 'EXTMGRPLUS_CHECKBOX_MODE_EXPLAIN' => 'Bei der Auswahl „Alle setzen“ werden automatisch alle Kontrollkästchen gesetzt. Bei der Auswahl „Letzten Zustand merken“ wird der Zustand aller Kontrollkästchen gespeichert, wenn die Aktion „Ausgewählte aktivieren“ oder „Ausgewählte deaktivieren“ ausgeführt wird. Zusätzlich kann der Zustand aller Kontrollkästchen auch über den Link „%s Speichern“ gespeichert werden.', 'EXTMGRPLUS_CHECKBOX_MODE_OFF' => 'Aus', 'EXTMGRPLUS_CHECKBOX_MODE_ALL' => 'Alle setzen', 'EXTMGRPLUS_CHECKBOX_MODE_LAST' => 'Letzten Zustand merken', @@ -73,9 +73,9 @@ // settings order and ignore 'EXTMGRPLUS_ORDER' => 'Reihenfolge', - 'EXTMGRPLUS_ORDER_EXPLAIN' => 'In dieser Spalte kannst du Reihenfolge-Gruppen im Bereich 0 bis 99 für die Aktion „Ausgewählte aktivieren“ definieren. Damit können Erweiterungen, von denen andere Erweiterungen abhängig sind, vor diesen aktiviert werden, um Fehlermeldungen zu vermeiden. Erweiterungen die zu einer solchen Gruppe gehören, werden zuerst aktiviert und zwar beginnend bei Gruppe 0, dann Gruppe 1 und so weiter. Erweiterungen ohne Gruppe werden als letztes aktiviert.', + 'EXTMGRPLUS_ORDER_EXPLAIN' => '%s In dieser Spalte kannst du Reihenfolge-Gruppen im Bereich 0 bis 99 für die Aktion „Ausgewählte aktivieren“ definieren. Damit können Erweiterungen, von denen andere Erweiterungen abhängig sind, vor diesen aktiviert werden, um Fehlermeldungen zu vermeiden. Erweiterungen die zu einer solchen Gruppe gehören, werden zuerst aktiviert und zwar beginnend bei Gruppe 0, dann Gruppe 1 und so weiter. Erweiterungen ohne Gruppe werden als letztes aktiviert.', 'EXTMGRPLUS_IGNORE' => 'Ignorieren', - 'EXTMGRPLUS_IGNORE_EXPLAIN' => 'In dieser Spalte kannst du festlegen, welche Erweiterungen bei den Aktionen „Ausgewählte aktivieren“ und „Ausgewählte deaktivieren“ ignoriert werden sollen. Ignorierte Erweiterungen können in der Erweiterungen-Liste nicht mehr ausgewählt werden. Wenn bei einer ignorierten Erweiterung eine Reihenfolge-Gruppe definiert wurde, dann bleibt diese erhalten, sie hat jedoch keine Bedeutung mehr.', + 'EXTMGRPLUS_IGNORE_EXPLAIN' => '%s In dieser Spalte kannst du festlegen, welche Erweiterungen bei den Aktionen „Ausgewählte aktivieren“ und „Ausgewählte deaktivieren“ ignoriert werden sollen. Ignorierte Erweiterungen können in der Erweiterungen-Liste nicht mehr ausgewählt werden. Wenn bei einer ignorierten Erweiterung eine Reihenfolge-Gruppe definiert wurde, dann bleibt diese erhalten, sie hat jedoch keine Bedeutung mehr.', 'EXTMGRPLUS_ORDER_AND_IGNORE_SAVE' => 'Speichern', // info table @@ -98,7 +98,7 @@ 'EXTMGRPLUS_TOOLTIP_SELECT' => 'Erweiterung auswählen.', // columns - 'EXTMGRPLUS_COL_MIGRATION_FILES' => 'Neue Migrationen', + 'EXTMGRPLUS_COL_MIGRATIONS' => 'Neue Migrationen', 'EXTMGRPLUS_COL_SELECT' => 'Auswählen', 'EXTMGRPLUS_COL_ORDER' => 'Reihenfolge', 'EXTMGRPLUS_COL_IGNORE' => 'Ignorieren', @@ -106,7 +106,7 @@ // misc 'EXTMGRPLUS_LINK_ORDER_AND_IGNORE' => 'Reihenfolge & Ignorieren', 'EXTMGRPLUS_LINK_SAVE_CHECKBOXES' => 'Speichern', - 'EXTMGRPLUS_EXTENSION_PLURAL' => [ + 'EXTMGRPLUS_EXTENSION_PLURAL' => [ 0 => '0 Erweiterungen', 1 => '1 Erweiterung', 2 => '%u Erweiterungen', @@ -117,13 +117,13 @@ 'EXTMGRPLUS_MSG_CONFIRM_ENABLE' => 'Bist du dir sicher, dass du %s aktivieren möchtest?', 'EXTMGRPLUS_MSG_CONFIRM_MIGRATIONS' => 'Bist du dir sicher, dass du die Aktivierung von Erweiterungen mit neuen Migrationen erlauben möchtest?', 'EXTMGRPLUS_MSG_SETTINGS_SAVED' => 'ExtMgrPlus: Einstellungen erfolgreich gespeichert.', - 'EXTMGRPLUS_MSG_ORDER_AND_IGNORE_SAVED' => 'ExtMgrPlus: Spalten für Reihenfolge/Ignorieren erfolgreich gespeichert.', + 'EXTMGRPLUS_MSG_ORDER_AND_IGNORE_SAVED' => 'ExtMgrPlus: Spalten für Reihenfolge und Ignorieren erfolgreich gespeichert.', 'EXTMGRPLUS_MSG_CHECKBOXES_SAVED' => 'ExtMgrPlus: Auswahl der Kontrollkästchen erfolgreich gespeichert.', 'EXTMGRPLUS_MSG_PROCESS_ABORTED' => 'ExtMgrPlus: Der Vorgang „%s“ wurde von folgender Erweiterung unterbrochen:', - 'EXTMGRPLUS_MSG_ACTIVATION_FAILED' => 'Die folgenden Erweiterungen konnten nicht aktiviert werden:', 'EXTMGRPLUS_MSG_DEACTIVATION' => 'ExtMgrPlus: %1$u von %2$u aktivierten Erweiterungen wurden deaktiviert.', 'EXTMGRPLUS_MSG_ACTIVATION' => 'ExtMgrPlus: %1$u von %2$u deaktivierten Erweiterungen wurden aktiviert.', - 'EXTMGRPLUS_MSG_LANGUAGEPACK_OUTDATED' => 'Hinweis: Das Sprachpaket der Erweiterung %1$s ist nicht mehr aktuell. (vorhanden: %2$s / benötigt: %3$s)', + 'EXTMGRPLUS_MSG_ACTIVATION_FAILED' => 'Die folgenden Erweiterungen konnten nicht aktiviert werden:', 'EXTMGRPLUS_MSG_SAFE_TIME_EXCEEDED' => 'Der Toleranzbereich (%u Sekunden) der maximalen PHP Ausführungszeit wurde überschritten.', + 'EXTMGRPLUS_MSG_LANGUAGEPACK_OUTDATED' => 'Hinweis: Das Sprachpaket der Erweiterung %1$s ist nicht mehr aktuell. (vorhanden: %2$s / benötigt: %3$s)', 'EXTMGRPLUS_MSG_SELF_DISABLE' => 'Hinweis: Die Erweiterung „Extension Manager Plus“ wird ebenfalls deaktiviert.', ]); diff --git a/lukewcs/extmgrplus/language/de_x_sie/acp_ext_mgr_plus.php b/lukewcs/extmgrplus/language/de_x_sie/acp_ext_mgr_plus.php index 8ac9fcb..8a35379 100644 --- a/lukewcs/extmgrplus/language/de_x_sie/acp_ext_mgr_plus.php +++ b/lukewcs/extmgrplus/language/de_x_sie/acp_ext_mgr_plus.php @@ -49,7 +49,7 @@ 'EXTMGRPLUS_CONFIRMATION' => 'Rückfrage', 'EXTMGRPLUS_CONFIRMATION_EXPLAIN' => 'Hier können Sie festlegen, ob bei den Aktionen „Ausgewählte aktivieren“ und „Ausgewählte deaktivieren“ eine Rückfrage erfolgen soll, die bestätigt werden muss.', 'EXTMGRPLUS_CHECKBOX_MODE' => 'Kontrollkästchen setzen', - 'EXTMGRPLUS_CHECKBOX_MODE_EXPLAIN' => 'Bei der Auswahl „Alle setzen“ werden automatisch alle Kontrollkästchen gesetzt. Bei der Auswahl „Letzten Zustand merken“ wird der Zustand aller Kontrollkästchen gespeichert, wenn die Aktion „Ausgewählte aktivieren“ oder „Ausgewählte deaktivieren“ ausgeführt wird. Zusätzlich kann der Zustand aller Kontrollkästchen auch über den Link „Speichern“ gespeichert werden.', + 'EXTMGRPLUS_CHECKBOX_MODE_EXPLAIN' => 'Bei der Auswahl „Alle setzen“ werden automatisch alle Kontrollkästchen gesetzt. Bei der Auswahl „Letzten Zustand merken“ wird der Zustand aller Kontrollkästchen gespeichert, wenn die Aktion „Ausgewählte aktivieren“ oder „Ausgewählte deaktivieren“ ausgeführt wird. Zusätzlich kann der Zustand aller Kontrollkästchen auch über den Link „%s Speichern“ gespeichert werden.', 'EXTMGRPLUS_CHECKBOX_MODE_OFF' => 'Aus', 'EXTMGRPLUS_CHECKBOX_MODE_ALL' => 'Alle setzen', 'EXTMGRPLUS_CHECKBOX_MODE_LAST' => 'Letzten Zustand merken', @@ -73,9 +73,9 @@ // settings order and ignore 'EXTMGRPLUS_ORDER' => 'Reihenfolge', - 'EXTMGRPLUS_ORDER_EXPLAIN' => 'In dieser Spalte können Sie Reihenfolge-Gruppen im Bereich 0 bis 99 für die Aktion „Ausgewählte aktivieren“ definieren. Damit können Erweiterungen, von denen andere Erweiterungen abhängig sind, vor diesen aktiviert werden, um Fehlermeldungen zu vermeiden. Erweiterungen die zu einer solchen Gruppe gehören, werden zuerst aktiviert und zwar beginnend bei Gruppe 0, dann Gruppe 1 und so weiter. Erweiterungen ohne Gruppe werden als letztes aktiviert.', + 'EXTMGRPLUS_ORDER_EXPLAIN' => '%s In dieser Spalte können Sie Reihenfolge-Gruppen im Bereich 0 bis 99 für die Aktion „Ausgewählte aktivieren“ definieren. Damit können Erweiterungen, von denen andere Erweiterungen abhängig sind, vor diesen aktiviert werden, um Fehlermeldungen zu vermeiden. Erweiterungen die zu einer solchen Gruppe gehören, werden zuerst aktiviert und zwar beginnend bei Gruppe 0, dann Gruppe 1 und so weiter. Erweiterungen ohne Gruppe werden als letztes aktiviert.', 'EXTMGRPLUS_IGNORE' => 'Ignorieren', - 'EXTMGRPLUS_IGNORE_EXPLAIN' => 'In dieser Spalte können Sie festlegen, welche Erweiterungen bei den Aktionen „Ausgewählte aktivieren“ und „Ausgewählte deaktivieren“ ignoriert werden sollen. Ignorierte Erweiterungen können in der Erweiterungen-Liste nicht mehr ausgewählt werden. Wenn bei einer ignorierten Erweiterung eine Reihenfolge-Gruppe definiert wurde, dann bleibt diese erhalten, sie hat jedoch keine Bedeutung mehr.', + 'EXTMGRPLUS_IGNORE_EXPLAIN' => '%s In dieser Spalte können Sie festlegen, welche Erweiterungen bei den Aktionen „Ausgewählte aktivieren“ und „Ausgewählte deaktivieren“ ignoriert werden sollen. Ignorierte Erweiterungen können in der Erweiterungen-Liste nicht mehr ausgewählt werden. Wenn bei einer ignorierten Erweiterung eine Reihenfolge-Gruppe definiert wurde, dann bleibt diese erhalten, sie hat jedoch keine Bedeutung mehr.', 'EXTMGRPLUS_ORDER_AND_IGNORE_SAVE' => 'Speichern', // info table @@ -98,7 +98,7 @@ 'EXTMGRPLUS_TOOLTIP_SELECT' => 'Erweiterung auswählen.', // columns - 'EXTMGRPLUS_COL_MIGRATION_FILES' => 'Neue Migrationen', + 'EXTMGRPLUS_COL_MIGRATIONS' => 'Neue Migrationen', 'EXTMGRPLUS_COL_SELECT' => 'Auswählen', 'EXTMGRPLUS_COL_ORDER' => 'Reihenfolge', 'EXTMGRPLUS_COL_IGNORE' => 'Ignorieren', @@ -106,7 +106,7 @@ // misc 'EXTMGRPLUS_LINK_ORDER_AND_IGNORE' => 'Reihenfolge & Ignorieren', 'EXTMGRPLUS_LINK_SAVE_CHECKBOXES' => 'Speichern', - 'EXTMGRPLUS_EXTENSION_PLURAL' => [ + 'EXTMGRPLUS_EXTENSION_PLURAL' => [ 0 => '0 Erweiterungen', 1 => '1 Erweiterung', 2 => '%u Erweiterungen', @@ -117,13 +117,13 @@ 'EXTMGRPLUS_MSG_CONFIRM_ENABLE' => 'Sind Sie sich sicher, dass Sie %s aktivieren möchten?', 'EXTMGRPLUS_MSG_CONFIRM_MIGRATIONS' => 'Sind Sie sich sicher, dass Sie die Aktivierung von Erweiterungen mit neuen Migrationen erlauben möchten?', 'EXTMGRPLUS_MSG_SETTINGS_SAVED' => 'ExtMgrPlus: Einstellungen erfolgreich gespeichert.', - 'EXTMGRPLUS_MSG_ORDER_AND_IGNORE_SAVED' => 'ExtMgrPlus: Spalten für Reihenfolge/Ignorieren erfolgreich gespeichert.', + 'EXTMGRPLUS_MSG_ORDER_AND_IGNORE_SAVED' => 'ExtMgrPlus: Spalten für Reihenfolge und Ignorieren erfolgreich gespeichert.', 'EXTMGRPLUS_MSG_CHECKBOXES_SAVED' => 'ExtMgrPlus: Auswahl der Kontrollkästchen erfolgreich gespeichert.', 'EXTMGRPLUS_MSG_PROCESS_ABORTED' => 'ExtMgrPlus: Der Vorgang „%s“ wurde von folgender Erweiterung unterbrochen:', - 'EXTMGRPLUS_MSG_ACTIVATION_FAILED' => 'Die folgenden Erweiterungen konnten nicht aktiviert werden:', 'EXTMGRPLUS_MSG_DEACTIVATION' => 'ExtMgrPlus: %1$u von %2$u aktivierten Erweiterungen wurden deaktiviert.', 'EXTMGRPLUS_MSG_ACTIVATION' => 'ExtMgrPlus: %1$u von %2$u deaktivierten Erweiterungen wurden aktiviert.', - 'EXTMGRPLUS_MSG_LANGUAGEPACK_OUTDATED' => 'Hinweis: Das Sprachpaket der Erweiterung %1$s ist nicht mehr aktuell. (vorhanden: %2$s / benötigt: %3$s)', + 'EXTMGRPLUS_MSG_ACTIVATION_FAILED' => 'Die folgenden Erweiterungen konnten nicht aktiviert werden:', 'EXTMGRPLUS_MSG_SAFE_TIME_EXCEEDED' => 'Der Toleranzbereich (%u Sekunden) der maximalen PHP Ausführungszeit wurde überschritten.', + 'EXTMGRPLUS_MSG_LANGUAGEPACK_OUTDATED' => 'Hinweis: Das Sprachpaket der Erweiterung %1$s ist nicht mehr aktuell. (vorhanden: %2$s / benötigt: %3$s)', 'EXTMGRPLUS_MSG_SELF_DISABLE' => 'Hinweis: Die Erweiterung „Extension Manager Plus“ wird ebenfalls deaktiviert.', ]); diff --git a/lukewcs/extmgrplus/language/en/acp_ext_mgr_plus.php b/lukewcs/extmgrplus/language/en/acp_ext_mgr_plus.php index b3e59e3..0d90928 100644 --- a/lukewcs/extmgrplus/language/en/acp_ext_mgr_plus.php +++ b/lukewcs/extmgrplus/language/en/acp_ext_mgr_plus.php @@ -48,8 +48,8 @@ 'EXTMGRPLUS_LOG_EXPLAIN' => 'Here you can specify whether an entry should be added to the administrator log for the actions “Enable selected” and “Disable selected”.', 'EXTMGRPLUS_CONFIRMATION' => 'Confirmation', 'EXTMGRPLUS_CONFIRMATION_EXPLAIN' => 'Here you can specify whether the actions “Enable selected” and “Disable selected” should be prompted and must be confirmed.', - 'EXTMGRPLUS_CHECKBOX_MODE' => 'Set check boxes.', - 'EXTMGRPLUS_CHECKBOX_MODE_EXPLAIN' => 'If you select “Set all”, all check boxes are automatically set. If you choose “Remember last state”, the state of all checkboxes is saved when the “Enable selected” or “Disable selected” action is performed. In addition, the state of all checkboxes can also be saved via the “Save” link.', + 'EXTMGRPLUS_CHECKBOX_MODE' => 'Set check boxes', + 'EXTMGRPLUS_CHECKBOX_MODE_EXPLAIN' => 'If you select “Set all”, all check boxes are automatically set. If you choose “Remember last state”, the state of all checkboxes is saved when the “Enable selected” or “Disable selected” action is performed. In addition, the state of all checkboxes can also be saved via the “%s Save” link.', 'EXTMGRPLUS_CHECKBOX_MODE_OFF' => 'Off', 'EXTMGRPLUS_CHECKBOX_MODE_ALL' => 'Set all', 'EXTMGRPLUS_CHECKBOX_MODE_LAST' => 'Remember last state', @@ -73,9 +73,9 @@ // settings order and ignore 'EXTMGRPLUS_ORDER' => 'Order', - 'EXTMGRPLUS_ORDER_EXPLAIN' => 'This column allows you to define order groups in the range 0 to 99 for the “Enable selected” action. This allows extensions that other extensions depend on to be activated before them to avoid error messages. Extensions belonging to such a group are activated first, starting with group 0, then group 1 and so on. Extensions without a group are activated last.', + 'EXTMGRPLUS_ORDER_EXPLAIN' => '%s This column allows you to define order groups in the range 0 to 99 for the “Enable selected” action. This allows extensions that other extensions depend on to be activated before them to avoid error messages. Extensions belonging to such a group are activated first, starting with group 0, then group 1 and so on. Extensions without a group are activated last.', 'EXTMGRPLUS_IGNORE' => 'Ignore', - 'EXTMGRPLUS_IGNORE_EXPLAIN' => 'This column allows you to specify which extensions should be ignored during the “Enable selected” and “Disable selected” actions. Ignored extensions can no longer be selected in the extensions list. If an order group was defined for an ignored extension, then this is retained, but it no longer has any meaning.', + 'EXTMGRPLUS_IGNORE_EXPLAIN' => '%s This column allows you to specify which extensions should be ignored during the “Enable selected” and “Disable selected” actions. Ignored extensions can no longer be selected in the extensions list. If an order group was defined for an ignored extension, then this is retained, but it no longer has any meaning.', 'EXTMGRPLUS_ORDER_AND_IGNORE_SAVE' => 'Save', // info table @@ -86,7 +86,7 @@ // ext manager 'EXTMGRPLUS_ALL_DISABLE' => 'Disable selected', 'EXTMGRPLUS_ALL_ENABLE' => 'Enable selected', - 'EXTMGRPLUS_EXTENSIONS_NOT_INSTALLED' => 'Not installed extensions', + 'EXTMGRPLUS_EXTENSIONS_NOT_INSTALLED' => 'Not installed Extensions', // tooltips 'EXTMGRPLUS_TOOLTIP_HAS_MIGRATION' => 'This extension has new migrations that are applied when activating the extension.', @@ -98,7 +98,7 @@ 'EXTMGRPLUS_TOOLTIP_SELECT' => 'Select extension.', // columns - 'EXTMGRPLUS_COL_MIGRATION_FILES' => 'New migrations', + 'EXTMGRPLUS_COL_MIGRATIONS' => 'New migrations', 'EXTMGRPLUS_COL_SELECT' => 'Select', 'EXTMGRPLUS_COL_ORDER' => 'Order', 'EXTMGRPLUS_COL_IGNORE' => 'Ignore', @@ -106,7 +106,7 @@ // misc 'EXTMGRPLUS_LINK_ORDER_AND_IGNORE' => 'Order & Ignore', 'EXTMGRPLUS_LINK_SAVE_CHECKBOXES' => 'Save', - 'EXTMGRPLUS_EXTENSION_PLURAL' => [ + 'EXTMGRPLUS_EXTENSION_PLURAL' => [ 0 => '0 extensions', 1 => '1 extension', 2 => '%u extensions', @@ -117,13 +117,13 @@ 'EXTMGRPLUS_MSG_CONFIRM_ENABLE' => 'Are you sure that you wish to enable %s?', 'EXTMGRPLUS_MSG_CONFIRM_MIGRATIONS' => 'Are you sure you want to allow activation of extensions with new migrations?', 'EXTMGRPLUS_MSG_SETTINGS_SAVED' => 'ExtMgrPlus: Settings saved successfully.', - 'EXTMGRPLUS_MSG_ORDER_AND_IGNORE_SAVED' => 'ExtMgrPlus: Order/Ignore columns saved successfully.', + 'EXTMGRPLUS_MSG_ORDER_AND_IGNORE_SAVED' => 'ExtMgrPlus: Order and Ignore columns saved successfully.', 'EXTMGRPLUS_MSG_CHECKBOXES_SAVED' => 'ExtMgrPlus: Selection of checkboxes saved successfully.', 'EXTMGRPLUS_MSG_PROCESS_ABORTED' => 'ExtMgrPlus: The “%s” operation was interrupted by the following extension:', - 'EXTMGRPLUS_MSG_ACTIVATION_FAILED' => 'The following extensions could not be activated:', 'EXTMGRPLUS_MSG_DEACTIVATION' => 'ExtMgrPlus: %1$u of %2$u enabled extensions have been disabled.', 'EXTMGRPLUS_MSG_ACTIVATION' => 'ExtMgrPlus: %1$u of %2$u disabled extensions have been enabled.', - 'EXTMGRPLUS_MSG_LANGUAGEPACK_OUTDATED' => 'Note: The language pack for the extension %1$s is no longer up-to-date. (installed: %2$s / needed: %3$s)', + 'EXTMGRPLUS_MSG_ACTIVATION_FAILED' => 'The following extensions could not be activated:', 'EXTMGRPLUS_MSG_SAFE_TIME_EXCEEDED' => 'The tolerance range (%u seconds) of the maximum PHP execution time has been exceeded.', + 'EXTMGRPLUS_MSG_LANGUAGEPACK_OUTDATED' => 'Note: The language pack for the extension %1$s is no longer up-to-date. (installed: %2$s / needed: %3$s)', 'EXTMGRPLUS_MSG_SELF_DISABLE' => 'Note: The “Extension Manager Plus” extension will also be disabled.', ]);