Seite 2 von 2

Re: Namensänderung acp_info

Verfasst: 30.09.2025 23:07
von Mike-on-Tour
Wenn ich die Validierungsbemerkung richtig verstehe, geht es hier um die Dateien im Verzeichnis /ext/vendor/name/acp.
Nach dem alten Schema waren die ja für jedes ACP-Modul so aufgebaut, dass in der modul_info.php die Definition stand und in der modul_module.php der Code, der beim Aufruf des Moduls - also des ACP-Links - ausgeführt wurde. Dabei mussten die Klassen für dieses Beispiel modul_info bzw. modul_module heißen.

Was die Valis jetzt wollen, ist statt diese beiden Dateien für jedes Modul insgesamt nur noch eine Info- und eine Module-Datei, die dann zur sauberen Unterscheidung nach der Erweiterung benannt werden sollen, ich nehme jetzt als Beispiel mal meine Usermap, dort habe ich beim Übergang von ver 1.1.3 zu ver 1.2.0 die insgesamt 10 alten Dateien durch zwei ersetzt, die mot_usermap_info.php und mot_usermap_module.php heißen und mit den entsprechenden identischen Klassennamen arbeiten.

Dazu waren zwei Migrationsdateien notwendig, deren erste die alten Module mit den von Patrick genannten Methoden entfernt bzw. in der Funktion revert_data wieder einfügt, damit die Rückabwicklung der Migrationen beim Löschen der Erweiterungsdaten korrekt funktioniert.
Mit der zweiten Migrationsdatei werden die neuen Module aus den neuen Dateien dann eingefügt bzw. in revert_data wieder entfernt.

Diesen Schritt habe ich dann auch gleich genutzt, um die ACP-Funktionen auf Controller umzustellen.

Ihr könnt das ja auf GitHub für die Usermap nachvollziehen.

Re: Namensänderung acp_info

Verfasst: 30.09.2025 23:23
von LukeWCS
Mike, jetzt wo du es erwähnst, erinnere ich mich wieder. Du warst hier einer der ersten, die ACP Module auf Controller Basis umgestellt haben. Und ich hatte mich damals in euer Gespräch mit eingeklinkt, weil mir der Vorteil der "neuen" Methode unklar war, wenn man nur ein einziges Modul hat.

Und stimmt, beim alten Schema mussten Info Dateien auf _info.php enden und die Module entsprechend auf _module.php. Da gab es aber keine verbindlichen Vorgaben für den vorderen Teil der Dateinamen, das war wahlfrei. Und genau das scheint man jetzt anders zu wollen. Ich habe bei EMP damals zwar auch auf Controller umgestellt, aber quasi das alte Namensschema beibehalten. Daher kommt das, dass ich

Code: Alles auswählen

settings_info.php
settings_module.php
verwendet habe. Was aber auch im Nachhinein betrachtet eigentlich sinnfrei war, denn da es eh nur noch 2 Dateien für multiple Module gibt, ist eine individuelle Benennung (der vordere Namensteil) gar nicht mehr relevant.

Re: Namensänderung acp_info

Verfasst: 30.09.2025 23:29
von Mike-on-Tour
LukeWCS hat geschrieben: 30.09.2025 23:23 Und genau das scheint man jetzt anders zu wollen.
Das ist es vermutlich. Ich hatte mich damals dazu entschlossen, für den vorderen Teil den Erweiterungsnamen zu verwenden, weil ich dann auch am Dateinamen erkennen kann, in welcher Erweiterung ich mich gerade bewege.

Hat bisher auch bei keiner Validierung zu einer Bemerkung geführt.

Re: Namensänderung acp_info

Verfasst: 30.09.2025 23:40
von IMC
Hallo Mike,
so hatte ich es zu Anfang probiert. Ich habe aber die Meldung bekommen das die \imcger\currenttime\acp\acp_module nicht gefunden wurde. Ich war der Meinung das die Meldung von der alten Migration getriggert wurde weil das acp_module in acp_ctwc_module umbenannt wurde. Ich teste dies in der nächsten Woche nochmal. Vielleicht hatte ich auch irgendwo einen Tippfehler.

Die nächsten Tage muss ich an anderer Stelle einen Wartungstau beseitigen damit ich Freitag los komme.

Edit:
Eben einen schnellen Test gemacht.
Zusätzliche Migrationsdatei gemacht um das Löschen der alten Module zu testen. Funktioniert
Die Klassen acp_info und acp_module umbenannt. Dann kommt beim aktivieren diese Fehlermeldung.

Code: Alles auswählen

Something went wrong during the request and an exception was thrown.
The changes made before the error occurred were reversed to the best of our abilities, but you should check the board for errors.

A required module info file is missing: \imcger\currenttime\acp\acp_module

Re: Namensänderung acp_info

Verfasst: 01.10.2025 09:30
von Kirk
Nur so ne Vermutung, hast du in der info Datei jenes auch geändert?

Code: Alles auswählen

'filename'	=> '\imcger\currenttime\acp\acp_module',

Re: Namensänderung acp_info

Verfasst: 01.10.2025 15:17
von IMC
Ja, hatte ich geändert. Es liegt eindeutig an dem module_basename in der Migration. Wenn ich diesen ebenfalls ändere läuft die Migration glatt durch.

Mein Plan ist jetzt:
  1. Ich ändere den Namen auch in der alten Migration.
  2. Lösche die Module in den neuen Migrationsdateien.
  3. Erstelle neue Module in den neuen Migrationsdateien.
  4. Teste verschiedene Installationszustände.
  5. Wenn alles zur Zufriedenheit arbeit heißt es abwarten um zu lesen was die Validatoren dazu schreiben.