thescrat / contao-loginlink

GNU Lesser General Public License v3.0
2 stars 2 forks source link

Update bundle to work in contao version 4.13 #6

Closed agonyz closed 2 years ago

agonyz commented 2 years ago

Hallo, ich habe mir mal die Codebasis angesehen und ein paar Veränderung eingepflegt und diese lokal in meiner frischen Contao 4.13 Version getestet.

Ein paar Anmerkungen:

composers.json

Hier habe ich die meisten requires herausgenommen, da diese schon von anderen Core-Elementen von Contao required werden. Bedeutet, da dein Bundle explizit als Contao Bundle deklariert ist, sind diese Abhängigkeiten immer vorhanden. Du kannst diese aber auch, wenn gewünscht, manuell erneut requiren und eben auf die verwendete Version von Contao referenzieren.

Namespaces

Ich habe die Namespaces der gängigen Namespace Konvention angepasst. Hierfür musste ich nur den Vendor vom Paket groß schreiben, also statt thescrat -> Thescrat

loadUserByIdentifier

Die Methode loadUserByUsername und die zugehörige Exception ist mittlerweile deprecated. Ich habe diese durch loadUserByIdentifier ersetzt.

Wenn Du das Bundle später noch weiter verbessern möchtest, würde ich dir nochmal die Contao Dokumentation empfehlen. Dort kannst Du beispielsweise deinen save_callback aus den dca-Files herausnehmen, denn dort hat der eigentlich nichts mehr zu suchen. Oder auch statt array_insert mal den PalettenManipulator von Contao verwenden.

thescrat commented 2 years ago

Hi, vielen Dank für deine Arbeit. Ich hab das ganze mittlerweile geprüft (lokal) und es funktioniert hervorragend.

Die Erweiterung mit dem LoginLink gibt es schon ewig und stammt noch aus Contao3 Anfangszeiten. Die Contao4 war eine Notlösung. Da ich mich bisher nicht intensiv mit Symfony beschäftigt habe, nahm ich ein bestehendes Bundle was den Loginprozess enthielt und habe hier lediglich die Logik und die dcas drüber geknallt, Pfade ersetzt, fertig. Und dafür lief das jetzt echt lang sehr gut ;-)

Mit dem PaletteManipulator hat du natürlich vollkommen recht. Ebenso mit dem array_insert, welches von Contao\ArrayUtil::arrayInsert ersetzt wurde.... das passe ich noch sauber an vor dem neuen release.

Bzgl. den save_callbacks werde ich da jetzt jedoch nichts rummachen, solange Contao gefühlt noch hunderte save_callbacks in den dcas verwendet, wird es schon nicht so verkehrt sein :-)

Danke nochmal für deine Hilfe