Plugin-Update führt zu fehlendem BBCode-Icon und -Titel

  • Betroffene App
    WoltLab Suite Core

    Hallo!

    Das Lexikon von VieCode bringt den BBCode [lexicon] mit. Dieser BBCode hat standardmäßig keine Schaltfläche im Editor und somit auch kein Icon und keinen Titel für den Button.

    Im ACP habe ich eingestellt, dass für den BBCode die Schaltfläche gezeigt werden soll und entsprechend ein FA-Icon festgelegt und einen Titel vergeben - soweit so gut.

    Sobald ein Plugin-Update des Lexikons irgendwas am BBCode verändert (war gerade für WSC 3.0.10 notwendig), verliert der BBCode sein Icon und den Titel. Die Schaltfläche bleibt vorhanden, aber ohne Icon. Kann man dieses Verhalten verbessern? Müsste VieCode bei den Updates etwas anders machen, oder kann man das im WSC besser lösen?

    Dieser kleine Fehler ist für mich als Admin zwar immer wieder leicht zu beheben, aber man muss erst mal wieder auf die Idee kommen (also bemerken), dass im Editor etwas nicht stimmt.

    Gruß aus Südhessen

    • Offizieller Beitrag

    Ich bin bei so etwas immer ein bisschen hin und her gerissen, denn das Verhindern der von dir gesprochenen Auswirkungen schränkt zugleich den Entwickler ein.

    Ein Beispiel: Bei Seiten hat der Entwickler nur sehr geringe Änderungsmöglichkeiten, will er davon abweichende Änderungen machen, muss er die Seite explizit löschen und neu anlegen. Dies geht gleichzeitig mit dem Verlust der Änderungen durch den Nutzer einher und ist daher bewusst so restriktiv ausgelegt.

    Es gibt im wesentlichen zwei Probleme die es zu bewältigen gibt:

    1. Je mehr Änderungen geschützt sind, desto weniger kann der Entwickler nachträglich in einem Update anpassen bzw. korrigieren (!).
    2. Der Entwickler kann nur angeben, dass die BBCodes aktualisiert werden sollen, nicht aber, dass nur ein bestimmtes Detail verändert werden soll. Man kann also nicht sagen, dass Änderung A auf jeden Fall umgesetzt werden soll, Änderung B sich aber nur auf Neuinstallationen auswirkt. Eine entsprechende Steuermöglichkeit einzubauen würde aus verschiedenen Gründen so ziemlich den Rahmen sprengen und die Komplexität deutlich erhöhen.

    Allerdings sollte man auch berücksichtigen, dass - wie bereits von dir angemerkt - derartige Änderungen sehr schnell offensichtlich werden, und in sehr kurzer Zeit wieder korrigiert werden könnten. Die zu Grunde liegende technische Implementierung besteht so bereits seit WCF 1.x (mit leichten Änderungen seit WCF 2.0), damit verbundende Probleme erscheinen mir nur sehr selten aufzutreten.


    Um es mal auf den Punkt zu bringen:

    Das Verhalten ist suboptimal und bringt zusätzlichen Aufwand für den Betreiber mit sich, dessen Vermeidung wünschenswert ist. Eine kurzfristige Lösung wäre nur bedingt unter Beibehaltung der Kompatibilität möglich, und würde obendrein zu Inkonsistenzen in der Verhaltensweise im Vergleich zu anderen PIPs erzeugen.

    Langfristig möchten wir die Funktionsweise der PIPs überarbeiten, vereinfachen und vereinheitlichen. Die aktuelle Architektur ist für das angesprochene Problem anfällig und bedarf einer grundlegenden Änderungen, um eine belastbare Lösung darzustellen. Eine kurz- bzw. mittelfristige Anpassung ist daher aktuell ausgeschlossen.

    Alexander Ebert
    Senior Developer WoltLab® GmbH

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!