WebsiteBaker Community Forum

WebsiteBaker Support (2.13.x) => Modules => Topic started by: sternchen8875 on February 24, 2023, 03:12:01 PM

Title: Accordion überarbeitet
Post by: sternchen8875 on February 24, 2023, 03:12:01 PM
Accordion-Module, neueste Version -> https://addon.WebsiteBaker.org/pages/en/browse-add-ons.php?id=00CB2195

In den letzten Tagen haben wir uns zusammengesetzt und das bekannte Accordion-Modul überarbeitet. Die Funktionsweise im Frontend bleibt unverändert. Auf Grund des Posts von Lara wurden ein paar Sortiermöglichkeite n eingebaut.

Stark verändert hat sich die Optik im Backend. Basis sind hier TWIG-Templates und ein neues Konzept, das wohl nach und nach bei den Modulen Einzug halten wird. Dieses Konzept ermöglicht es, für jede Section eigene Templates zu erstellen. Mitgeliefert wird ein Basis-Template, das der Ausgabe in den älteren Versionen entspricht. Das gilt auch für das CSS der alten Version. Wer die Optik über das CSS in der Datei frontend.css an seine Webseite angepasst hat, sollte sich diesen Code vor dem Modul-Upgrade in eine neu anzulegende Datei frontendUser.css kopieren, damit alles erhalten bleibt. Diese Datei wird bei späteren Modul-Upgrades nicht überschrieben (gilt seit Längerem für alle Module und Templates in WebsiteBaker)

Das Backend
- funktioniert wie in der alten Version. Frage/Antwort hinzufügen, Moduleinstellungen - wie gehabt
- Neu wäre die Option, Einträge durch Klick auf den grünen Punkt aktiv bzw passiv zu schalten. So lassen sich Einträge ausblenden, ohne, das sie gleich gelöscht werden müßten.
- in den Moduleinstellungen kann die Sortierfolge eingestellt werden, nach Position, alphabetisch nach Frage sowie nach Datum der letzten Änderung (z.b. Neueste zuerst), alle Methoden natürlich auf- und abwärts
- ist eine aufsteigende Methode gewählt (A-Z bzw 0 - 9), können die Beiträge über den Doppelpfeil links per Drag&Drop sortiert werden. Für die absteigenden Methode wurde diese Funktion deaktiviert, weil es in der Bedienung absolut verwirrend ist. Immer möglich ist aber eine Verschiebung per Pfeiltasten am rechten Rand.
- das Modulkonzept sieht vor, das es neben den altbekannten Dateien frontend.css und backend.css für jedes eingesetzte Frontend-Template eine Kopie des mitgelieferten default-Themes geben wird. Inklusive der User-eigenen Datei frontendUser.css sind das dann 5 CSS-Dateien, die über einen eingebauten Editor direkt im Addon bearbeitet werden können.

für versierte Nutzer gibt es in den Moduleinstellungen zwei Schalter, einer schaltet den internen Templateeditor ein, der zweite legt fest, ob und welches der in der Datenbank gespeicherten Templates man benutzen möchte. Auszeichnungssprach e für die Templates ist TWIG. Ist der Templateeditor aktiviert, erscheint unten in der Übersicht eine Liste der bereits angelegten Templates und ein Menü-Button zum Anlegen neuer Templates. Aktuell wird noch an den Übersetzungen für ein paar Erklärungen zum Modul-Editor gearbeitet, für TWIG-Kenner ist das bereits vorinstallierte Template aber selbsterklärend.

Das Modul ist getestet bis PHP 8.2.2, ein Test mit der neuesten Version PHP 8.2.3 erfolgt über das Wochenende. Getestet wurde mit allen WB 2.13er Versionen inkl. der aktuellen Testversion für die kommende WB 2.14

Noch ein Nachtrag: Das Modul-Konzept ermöglicht es, in allen aktiven Frontend-Templates, für die im Ordner /templates eine Kopie angelegt wurde, eigene Sprachvariablen zu verwenden, die bei einem Upgrade nicht überschrieben werden. Wer es also im Backend lieber bayrisch oder sächsisch mag, kopiert sich den Ordner languages in das jeweilige Theme und passt die Sprachvariablen entsprechend an.

(https://i.gyazo.com/4729f63833d2baaae5e3f1f27b2926cc.png)

Noch ein kleines Gimmick zum Abschluß: Mitgeliefert werden 24 Farb-Themes. Langfristiger Plan ist hier, das irgendwann mal eine zentrale Umschaltung der Farben möglich ist. Wer damit spielen möchte, die Einbindung erfolgt in der Datei /themes/default/css/backend_default.css. Die Themes sind dann im Unterordner wb_themes. Eigene Themes können unter W3-CSS Themes (https://www.w3schools.com/w3css/w3css_color_themes.asp) ausgesucht werden oder mit dem Color-Theme-Generator (https://www.w3schools.com/w3css/w3css_color_generator.asp) selbst erstellt werden
Title: Re: Accordion überarbeitet
Post by: dbs on February 24, 2023, 05:53:49 PM
Erstmal super, dass sich jemand um das Modul kümmert, setze es öfter ein. Danke dafür.
Kleines Feedback nach einem Upgrade, bin ich mir nicht sicher ob es so sein soll:
Latest WB, PHP8.1, keine Fehlermeldungen im Modul.
- Auswahl Accordion oder Toggle, hat im Frontend immer Accordion Effekt. 
  Accordion = eins öffnen schließt das andere
  Toggle = man könnte alle nacheinander öffnen oder schließen, je nachdem was der vorherige Zustand war
- "Neuen Abschnitt hinzufügen" passt nicht ganz in den Button
- ein "Drag'N'Drop" Effekt ist bei mir immer da, also auch bei absteigender Standardsortierung.
  Allerdings greift man hier gleich alle Einträge gleichzeitig und kann sie hin- und her bewegen auf der Seite.
- Bei Auswahl der Sortierung könnte auch kleiner Hinweis bei aufsteigend stehen, dass damit DragDrop möglich ist 
  Ich persönlich finde es verwirrender, dass DragDrop nicht immer möglich ist.
- "Diese Frage ist aktiv?" - Der Abstand zwischen Ja / Nein ist gefühlt riesig

Schön, dass die nicht mehr benötigten Ordner/Dateien automatisch entfernt wurden. Ich musste nur noch meine backendUser.css deaktivieren um die Speichern/Abbrechen Buttons ordentlich sehen zu können.
Habe noch nicht alles getestet. Läuft erstmal. Gute Arbeit.  (Y)
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on February 25, 2023, 01:42:03 AM
Zuerst Danke für's Testen und berichten

- die Toggle-Funktion ist scheinbar an uns vorbei gegangen und hat in der Ausgabe komplett gefehlt - ist repariert in v2.6.0
- beim Button-Text zeigt sich wohl, wie verwöhnt man schon mit großen Monitoren ist. :-(
 habe zur Lösung media-queries für die Buttons angelegt, am Ende mußten aber doch die langen Texte weichen
- Radio-Button-Abstand ist nun überall korrigiert
- Drag&Drop-Hinweis war in der Übersicht hinter dem Fragezeichen, ist in den Modulsettings jetzt dauerhaft sichtbar

Zum Drag&Drop allgemein - das gleiche Problem besteht ja auch z.b. im News-Modul oder überall dort, wo man die Sortierfolge ändern kann und Drag&Drop einsetzt, egal, mit welcher Methode. Die ORDER-Klasse aus dem Core kennt nur die Richtungen auf und ab. Mehr braucht es ja auch nicht. In der Datenbank gibt es aber nur eine Reihenfolge: der erste Eintrag steht oben, alle weiteren werden darunter angeordnet. Wir haben zwar die Möglichkeit, unsere Ansicht einer Tabelle bzw ihre Kopie in der Modulübersicht nach unseren Erfordernissen anzupassen, es ändert aber nicht die reale Reihenfolge in der Datenbank. Ein zuletzt hinzugefügter Eintrag steht dort immer unten. Drehen wir nun die Sortierung um und lassen uns den letzten Eintrag oben anzeigen, ist dieser immernoch Letzter in der MySQL-Tabelle. Verschiebt man diesen dann nach unten, gibt es einen Fehler, weil dieser Eintrag ja in der Mysql-Tabelle schon letzter ist.
Das Problem besteht bei den älteren Module wie z.b. Accordion v 2.4.1 (mit der nachgerüsteten Sortierfunktion) auch bei den Pfeilen. Im News-Modul wurde zur Lösung eine Kombination mehrerer PHP-Abfragen eingebaut, mit TWIG reicht da eine Abfrage, um die Bedingung umzukehren

Zum Drag&Drop-Fehler (alle Fragen mit einmal gegriffen)
Das Drag&Drop ist eine modernisierte Form der OFA-Lösung und arbeitet über CSS-Klassen, die innerhalb von Listenelementen (ul->li) angegeben sind - jede Frage ein Listenelement und jedes Listenelement ein unikater IDKey. Ausschauen sollte es so wie im Bild unten, der Mouse-Cursor ist im Bild ausgeblendet.

(https://i.gyazo.com/dfde50d1b50ba52d5f1ffb681df0d85b.png)

Wäre es möglich, mit den Tasten STRG + F5 noch einmal den Browsercache zu löschen?

Zu den Drag&Drop-Pfeilen, die immer erscheinen:
die 6 verschiedenen Sortiermöglichkeite n (siehe Moduleinstellungen) sind von 1-6 durchnumeriert, 1 = nach Position abwärts, 2 = nach Position aufwärts usw.
Bei den geraden Zahlen 2, 4 und 6 soll der Drag&Drop-Pfeil nicht erscheinen, nur bei den ungeraden Werten, da darf er .
Habe aber gesehen, das bei den unteren Fragen beim Überfahren des Bereichs der (ausgeblendeten) Doppelpfeile der Cursor doch zum MOVE wechselt und ein Verschieben somit möglich war. Zur Lösung habe ich die settings-Abfrage auf diese CSS-Klassen erweitert.
Kam es vorher zu einer Fehlfunktion, muß nun aber der Browser-Cache gelöscht werden.

Zum Module-Upgrade:

Da niemand beim Upgrade weiß, ob der Anwender nicht schon das in die Datenbank geschriebene Template für sich angepasst hat, möchte ich das nicht überschreiben. Wer aber das Template aus der Datenbank benutzt, hat in diesem Template keine Toggle-Funktion.
Abhilfe wäre das Löschen dieses Templates in der Templateliste - es wird dann automatisch neu installiert

Info: ist der Stern nicht gelb, ist dieses Template nicht als aktives Frontend-Template. Der Inhalt des Frontends kommt dann aus der view.twig im templates-Ordner des Addons.
Title: Re: Accordion überarbeitet
Post by: dbs on February 25, 2023, 07:08:51 AM
Moin, nach Upgrade 2.6.0 zeigt das BE nun:
(Template Einstellungen hatte ich nach dem ersten Upgrade 2.5.9 nicht verändert)

Quote
There was an uncatched exception
 Table '"meine_test_db".wb_mod_accordion_templates' doesn't exist
 in line (821) of (/framework/class.database.php):

errorlog:
[E_USER_NOTICE] /framework/frontend.functions.php:[319]  from /framework/frontend.functions.php:[319] trigger_error "[319] You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1"



Anschließendes manuelles Upgrade zeigt:

'Accordion backup old settings' FAILED
 'Accordion has no old settings' FAILED
 'Accordion couldn't updated' FAILED
 [230] 'Accordion backup old settings' FAILED

 'Accordion has no old settings' FAILED

 'Accordion couldn't updated' FAILED

 
    [220] upgrade accordion konnte nicht ausgeführt werden
'Accordion backup old settings' FAILED
 'Accordion has no old settings' FAILED
 'Accordion couldn't updated' FAILED
Title: Re: Accordion überarbeitet
Post by: ruebenwurzel on February 25, 2023, 09:30:46 AM
Hallo,

ein Neuinstall der Version 2.6.0 unter WB 2.13.3 r174 und PHP 8.2 wirft folgende Fehlermeldung raus:

(https://www.familie-gallas.de/media/Image/accordion.jpg)

in der install-data.sql.php steht in Zeile 21:

Code: [Select]
INSERT INTO `wb_mod_accordion_templates`
Das "wb_" müsste meiner Meinung nach ersetzt werden durch sowas wie {TABLE_PREFIX}
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on February 25, 2023, 10:18:19 AM
Quote
Das "wb_" müsste meiner Meinung nach ersetzt werden durch sowas wie {TABLE_PREFIX}

genau so war es - Danke für's Testen und Sorry für die Umstände
 eine Version v2.6.1 ist im Addons -> https://addon.WebsiteBaker.org/pages/en/browse-add-ons.php?id=00CB2195
Title: Re: Accordion überarbeitet
Post by: dbs on February 25, 2023, 12:03:52 PM
Das klappt jetzt.  (Y)

Speichern nach CSS Editieren, zeigt:
#FBTEXT_CSS_SUCCESSFULL_SAVED missing#

Neue Frage/Titel hat noch den großen Abstand drin bei "Diese Frage ist aktiv?".
Beim Editieren siehts dagegen jetzt gut aus.

Hat man mehrere Abschnitte vom Modul auf der Seite, werden in den Einstellungen bei "Icon:" keine Icons angezeigt, nur Text.
Nur beim Obersten/Ersten Abschnitt sind sie zu sehen.

Nochmal zum (bei mir) komischen Drag&Drop Effekt. Egal ob aufsteigend/absteigend sortiert, ich kann irgendwo neben dem Titel im freien Raum die Maus ansetzen und alle Titel gleichzeitig greifen/bewegen. Nach Loslassen flutscht es wieder hin wo es war. Hat also keinen negativen Effekt. Nur bei mir so?

edit:
Bei mehreren Abschnitten ist das Editieren schwierig (außer beim Obersten/Ersten).
Klickt man auf einen Titel oder auf den Stift, öffnet sich eine neue Frage/Titel, leer, aber mit Meldung drunter:
ModifyQuestion - Missing IDKey Sicherheitsverletzu ng!! Zugriff wurde verweigert!
Mehrere Abschnitte vom Modul auf der Seite sollten möglich sein?
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on February 25, 2023, 02:13:53 PM
Zuerst Danke für die Geduld!!  (Y)

Quote
#FBTEXT_CSS_SUCCESSFULL_SAVED missing#

*grummel
ein Copy&Paste Fehler....

Quote
Neue Frage/Titel hat noch den großen Abstand drin bei "Diese Frage ist aktiv?".

ist korrigiert - Danke

Quote
Drag&Drop
im übergeordnetem DIV-Block war noch eine CSS-Klasse, die zum Drag&Drop gehört. Da hab ich noch einen Schalter eingebaut. Der beschriebene Effekt ist nun nicht mehr möglich (hoffe ich)

Quote
mehrere Abschnitte
ich glaube, das hat noch vorher garkeiner getestet. Hier braucht es eigentlich eine zentrale Lösung im Core, die die Section-Anker mit übergibt.
Ich habe eine Lösung eingebaut, die sich in der Zukunft sicher noch einmal ändert wird, aber erstmal multiple Sections erlaubt.

In dieser Lösung sind alle Übersichten des Accordion-Moduls zu sehen, wie es auch sein sollte. Bearbeitet man aber in der einen Section etwas, schließt sich die jeweils andere(n) Section(en) gleichen Typs mit diesem Hinweis
(https://i.gyazo.com/1da533c7912c2f2f2efe40daf826d3f7.png)
Kommt man nach Abschluß der Bearbeitung oder nach Abbruch wieder auf die Übersicht, öffnet sich die andere Section wieder.

Etwas gewöhnungsbedürftig ist aber, das man beim Rücksprung immer bei der ersten Accordion-Section landet und nicht bei der, die gerade bearbeitet wurde. Liegen beide Sectionen beieinander, ist das sicher kein Problem. Befinden sich aber noch andere Sectionen dazwischen, muß man erst scrollen

Neue Version v2.6.2 im Addons-Bereich (https://addon.WebsiteBaker.org/pages/en/browse-add-ons.php?id=00CB2195)

Title: Re: Accordion überarbeitet
Post by: ruebenwurzel on February 25, 2023, 02:45:56 PM
Hallo,

Habe gerade eine Seite, auf der ich ein manuell angelegtes Accordion hatte auf das Modul umgestellt. Bin begeistert, super Arbeit.

Wer mich kennt weiß abar, dass mir trotzdem immer was einfällt.

1.) im default-template wird noch <br /> verwendet. Das sollte man html5 konform auf <br> ändern. Dietmar hat WB und alle Core Module diesbezüglich in der r174 schon umgestellt. Bei den Modulen (für guestbook, another image Gallery und minigal2 hab ich die patches schon fertig) muss da noch nachgezogen werden.
2.) Ich verzichte bei meinen Seiten bewusst auf das komplette w3-Geraffel. Hab ich bei mir überall rausgeschmissen. Beim Accordion dachte ich also, es genügt, wenn ich in der frontend_default.cs s meines templates den import der w3.css rausschmeiße. Das genügt aber halt leider nicht, da die w3.css durch die frontend_default.cs s im templates Ordner des Modules trotzdem geladen wird. (selbes gilt für die Fontawesome.css) Erst wenn ich die da auch rausschmeiße bin ich den Kram los, zumindest bis zum nächsten update. Ich komm damit klar, andere User könnten aber darüber stolpern, warum Änderungen in der frontend_default.cs s nur bedingt wirksam sind.
3.) Ein Wunsch hätte ich: Ich hätte gern die Option, den WYSIWYG Editor bei den Antworten dauerhaft zu deaktivieren.
4.) Last but not least wird im templates Ordner des Modules ein Ordner "Hortal" angelegt, obwohl ich dieses Template überhaupt nicht installiert habe. Wo kommt das her?
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on February 25, 2023, 03:24:17 PM
Quote
Wer mich kennt weiß abar, dass mir trotzdem immer was einfällt.
Immer ran damit.

Quote
im default-template wird noch <br /> verwendet
wird geändert - ist an mir vorrüber gegangen, das das nicht mehr valide ist

Quote
Ich verzichte bei meinen Seiten bewusst auf das komplette w3-Geraffel
so sind die Geschmäcker halt   :wink:
Im Backend ist es drin, weil es Hauptbestandteil von WB ist. Das es separat eingebunden ist, stammt aus den Zeiten, wo es in WB noch anders eingebunden wurde. Im Frontend schaut das anders aus, da wurde das übernommen, was in der Ausgangsversion geschrieben war.
Da W3CSS mittlerweile über den Outputfilter schaltbar ist, könnte man darauf verzichten, es im /templates-Ordner noch einmal separat einzubinden. Im Falle der zentralen Deaktivierung stimmt das Template dann natürlich überhaupt nicht mehr.
Es wäre kein Problem, ein zweites (oder auch drittes) Template in die Datenbank zu schreiben, aber dann muß der Anwender das auch von Hand umstellen.
Beim CSS lassen sich ja mehrere Varianten bequem in einer Datei zusammenfassen.

Quote
Ich hätte gern die Option, den WYSIWYG Editor bei den Antworten dauerhaft zu deaktivieren
sollte kein Problem darstellen. Per default wäre er aber an, weil es in diesem Modul schon immer einen wysiwyg-Editor gab

Quote
...ein Ordner "Hortal" angelegt, .... Wo kommt das her?
Mein Fehler, hab ich beim Zippen wohl übersehen. Wird korrigiert

aber jetzt ist erstmal Fußball-Zeit ;-)

Title: Re: Accordion überarbeitet
Post by: dbs on February 25, 2023, 04:45:09 PM
Glaube im letzten ZIP ist deine neue Accordion/Toggle Abfrage in der view.twig nicht mehr drin.

Drag&Drop Effekt hat sich gebessert. Ist nur noch möglich so komisch alle zu verschieben, wenn auch deine Verschiebe-Pfeile zu sehen sind, also Einstellung aufsteigend.

Nach dem letzten Upgrade waren meine Header/Footer Felder leer. (mehrere Abschnitte des Moduls auf der Seite)
Zusätzlich war im view.twig (wo auch die accordion/toggle Abfrage fehlte), die Abfrage für <header> falsch.
{% if setting.footer is not empty %}
    <header>
          ...
Title: Re: Accordion überarbeitet
Post by: dbs on March 02, 2023, 12:09:21 PM
Habe hier php 8.1.
Auf einer Seite mit einem Wysiwyg-Abschnitt folgt ein Abschnitt mit Modul Accordion.
Im Quellcode Modus ist kein Codemirror zu sehen (im Wysiwygabschnitt darüber gehts).
Will man ein Bild im Editor einfügen, fehlt "Server durchsuchen" Button (im Wysiwygabschnitt darüber gehts).
Hab die Abschnitte auch mal getauscht um zu sehen ob es daran liegt.
Was kann das Problem sein?
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on March 02, 2023, 12:31:07 PM
ui.... eine interessante Sache, auf die wohl noch nie jemand geachtet hatte. "Aus der Ferne" vermute ich ein Cache-Problem, der Wysiwyg-Editor im Wysiwyg-Modul und der im Accordion benutzen unterschiedliche Konfigurationen, einmal die include.php bzw wb_ckconfig im ckeditor-Ordner für's Wysiwyg und einen die Konfiguration aus dem Ordner ckeditor/ckeditor_config. Das Konzept hab ich von Dietmar übernommen. Ich denk, die Einbindung in TWIG war da ausschlaggebend.

Ich komme aktuell nicht an meine Daten, da die Festplatte immer aussteigt, wenn ich drauf zugreife. Die neue HDD liegt im Post-Auto, das hier in der nächsten Stunde eintrudeln wird. Ich hab wohl im Test-WB eine solche Struktur mit je 3 abwechselnden Sektionen Wysiwyg und Accordion, hatte aber nie ins Wysiwyg geschaut
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on March 02, 2023, 12:44:39 PM
ich kann ja auch online auf meiner Domain nachschauen...

wie vermutet, sind es unterschiedliche Konfigurationen. Ich werde mal schauen, ob ich das über die Modul-interne Konfiguration lösen kann. Wenn nicht, wäre Dietmar dran, die Datei im Ordner ckeditor/ckeditor_config/settings_config.js zu aktualisieren
Title: Re: Accordion überarbeitet
Post by: dbs on March 02, 2023, 01:08:32 PM
Für mich sah es so aus als ob die gedachte Toolbar (WB_Miniaddons) nicht die ist, die da zu sehen ist.
Deshalb evtl. geht da irgendwas grundsätzlich nicht so wie es soll.
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on March 02, 2023, 03:07:30 PM
Harald hatte eben ein paar schnelle Test's gemacht und das Problem scheint doch etwas größer zu sei. Im Frontend kommt es zu unschönen Überlagerungen mit anderen Sectionen, was wohl hauptsächlich am fehlenden CSS liegt. Das ist eigentlich 1:1 übernommen von der Ausgangsversion. Im Backend ist es eher eine Einstellungssache, ich muß aber warten, bis alles auf die neue Festplatte kopiert wurde.

Den Download im Addons haben wir bis zur Lösung erstmal deaktiviert  :cry:
Title: Re: Accordion überarbeitet
Post by: dbs on March 02, 2023, 03:59:32 PM
Ja, schade, wollte es gerade im Projekt einsetzen.
Aber da du da dran bleibst, wird es irgendwann schon was werden. Das ist die Hauptsache.
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on March 02, 2023, 04:31:14 PM
Im Gegensatz zu Harald habe ich online keinerlei Probleme, keine Verschiebungen, keine Überlagerungen, nix. (nur getestet mit dem DefaultTemplate)
In den beiden Templates in der view.twig und in dem der Datenbank fehlt je ein Leerzeichen, sonst bleibt ein toggle-Abschnitt, der als offen eingestellt ist, nicht vom Laden an offen

Das wäre diese Zeile gleich zu Beginn
alt:
Code: [Select]
{% if setting.accordion_method == 'accordion' %}{% set Accordion, acc_method = 'accordion:true,', '' %}{% else %}{% set Accordion, acc_method = '', '0' %}{% endif %}
muß geändert werden in
Code: [Select]
{% if setting.accordion_method == 'accordion' %}{% set Accordion, acc_method = 'accordion:true,', '' %}{% else %}{% set Accordion, acc_method = '', ' 0' %}{% endif %}
(es geht um die Null zum Ende der Zeile)

Für das Backend braucht es aber etwas Zeit zum Probieren. Ich hänge die nicht korrigierte Version aber noch einmal mit an
Title: Re: Accordion überarbeitet
Post by: dbs on March 02, 2023, 10:54:41 PM
Nach jedem Upgrade verliert er die "Einstellungen" komplett.
Scheinbar läd er dann irgendwelche Defaults?

Das wird wohl an der Zeile liegen in der install-upgrade.sql.php
Code: [Select]
DROP TABLE IF EXISTS `{TABLE_PREFIX}mod_accordion_settings`;
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on March 03, 2023, 12:11:57 AM
In den alten Versionen hatte die settings-Tabelle eine andere Struktur, um diese dann auf die neue Struktur umzuwandeln, ist dieses Drop Table zwingend erforderlich. Der Ablauf wäre, einfach beschrieben, in etwa so
- lese die alten Tabelleneinträge und speichere sie temporär ab
- ist in der Tabelle eine Spalte mit Namen "page_id" vorhanden, ist es die alte Struktur, dann schreibe diese Daten um in die neue Struktur
- ist diese Spalte nicht vorhanden, ist es schon die neue Struktur, dann lese diese Daten, packe sie in ein zweites Array und vergleiche diese temporären Daten mit den Default-Werten und ergänze Werte, die eventuell fehlen
- schreibe das Ergebnis als neuen Datensatz in die nun leere Tabelle mit der neuen Struktur.

Was auf jeden Fall funktioniert, ist das Erkennen und Schreiben der Werte aus der alten Struktur in die neue Struktur, aber so wie du es beschreibst, scheint es bei Einlesen und Schreiben von Neu auf Neu Probleme zu geben. Ich werde mal ein paar Dump's setzen, um zu schauen, wo da etwas abhanden kommt
Title: Re: Accordion überarbeitet
Post by: dbs on March 03, 2023, 07:50:56 AM
Verstehe.
Habe nun mal testweise die Einträge mit page_id aus der DB gelöscht (falls das script denkt das ist alte Struktur :) ).
Nach upgrade waren die aber wieder drin. Dafür waren die Settings erhalten geblieben.
Noch ein Upgrade und die Settings waren wieder weg.
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on March 03, 2023, 06:32:12 PM
Habe nun mal testweise die Einträge mit page_id aus der DB gelöscht

nur zur Erklärung: FIELDS sind in der Datenbank die Spaltennamen, eine Spalte mit Namen = "page_id" gab es im Accordion-Modul bis Version 2.4.1
Ab Version ist es gewechselt auf "s_name" / "s_value" und dort gibt es auch eine Zeile mit einem Wert zu "page_id"

Aber egal, du hattest Recht, das Script hat den schon vorhandenen Datensatz nach neuer Struktur nicht geschrieben, die Tabelle blieb einfach leer.  :oops:
Und ist die Settingstabelle leer, wird eine neue mit den Default-Werten geschrieben.
Ich denke, das Problem ist nun gelöst.
Ebenso gelöst ist die CKEditor-Anbindung. Ich verzichte auf die modul-eigene Konfigurationsmögli chkeit und nutze jetzt den zentralen Editor mit seinen bekannten Einstellungen über dessen include.php bzw den Möglichkeiten mit den wb_ckconfig.js

Die im Post #15 beschriebenen Überlagerungen beim Einsatz von Bilder in einer Wysiwyg-Section vor einer Accordion-Sektion hatte ihre Ursache in einem clear:left im IMG-Tag

Frage zum Ausgabe-Template und den Header- bzw Footer-Felder in den Accordion-Settings:
Je nach Geschmack möchten manche Nutzer ein DIV drum herum, das in alter Gewohnheit im Headerfeld geöffnet wird und im Footer wieder geschlossen wird. Der aktuelle Templateaufbau erzeugt da m.E. etwas Quatsch, z.b. so

Code: [Select]
    <header>
        <div class="header">{{ setting.header|raw }}
        </div>
    </header>

Definiere ich den Header z.b. so
Code: [Select]
<div class="accordion-block">
wäre der komplette Code so
Code: [Select]
    <header>
        <div class="header"><div class="accordion-block">
        </div>
    </header>

was moderne Browser natürlich korrigieren und das accordion-block-DIV gleich wieder schließen.
In den alten Modul-Versionen stand der definierte Header allein, also so wie definiert und das wäre wohl die bessere Methode, oder?
Title: Re: Accordion überarbeitet
Post by: dbs on March 03, 2023, 09:18:39 PM
Dass mit Fields die Spaltennamen gemeint waren dachte ich mir.
Manchmal probiert man trotzdem um etwas zu bestätigen. Die Settings blieben erhalten.

Quote
In den alten Modul-Versionen stand der definierte Header allein, also so wie definiert und das wäre wohl die bessere Methode, oder?
Scheint mir auch so. Andererseits, wer ein Div drumrum braucht, könnte das WB Section Div ansprechen (falls nicht deaktiviert).
Title: Re: Accordion überarbeitet
Post by: hgs on March 13, 2023, 01:46:26 PM
Aktuelle gefixte Version ist hier zum download bereit.
aktuelle Version (https://addon.WebsiteBaker.org/pages/en/browse-add-ons.php?download=00CB2195)
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on May 15, 2023, 05:10:04 PM
Nachtrag: Leider hat sich in der Version 2.7.0 ein Fehler eingeschlichen. Habe vergessen, die ID der Antwort beim Auslesen mit zu übergeben, so das immer nur der erste Eintrag bearbeitet werden konnte.
Desweiteren hat sich ergeben, das bei mehrfachen Einsatz des Moduls in einem Projekt immer nur die zuletzt bearbeitete Section so angezeigt wurde, wie geplant. Ursache war hier ein kleiner, fehlender Eintrag in der Settings-Tabelle des Moduls


engl (Translated by Deepl)
Addendum: Unfortunately, an error has crept into the version 2.7.0. I have forgotten to pass the ID of the response when reading out, so that only the first entry could be processed.
Furthermore, it turned out that multiple use of the module in a project always only the last edited section was displayed as planned. The reason for this was a small, missing entry in the settings table of the module.

Latest Version: im Addons (https://addon.WebsiteBaker.org/pages/en/browse-add-ons.php?id=00CB2195)
Title: Re: Accordion überarbeitet
Post by: LudwigSt on May 16, 2023, 10:29:55 AM
Eine Kleinigkeit ist mir gerade beim Quellcode Lesen aufgefallen. In der view.php kann die Zeile 19 weg. Sie ist identisch mit Zeile 23:

Code: [Select]
$sAddonPath = __DIR__;
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on May 16, 2023, 10:38:19 AM
 (Y)

Danke
Title: Re: Accordion überarbeitet
Post by: CodeALot on November 28, 2023, 10:14:13 AM
Leider gibt Accordion 2.7.1 unter WB 2.13.4 r199 auf PHP-Version 8.2.8 bei mir einen leeren Admin-Bildschirm. Keine Fehlermeldungen, aber alle Labels sind weg?

(https://i.imgur.com/mhN5ilx.jpg)
Title: Re: Accordion überarbeitet
Post by: dbs on November 28, 2023, 10:49:34 AM
Die Version 2.6.2 unter PHP 8.2.13 mit WB 2.13.5 r213 läuft wie immer.
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on November 28, 2023, 11:05:03 AM
Leider gibt Accordion 2.7.1 unter WB 2.13.4 r199 auf PHP-Version 8.2.8 bei mir einen leeren Admin-Bildschirm. Keine Fehlermeldungen, aber alle Labels sind weg?

Bitte einmal ins WB-Infofenster und dort auf den Punkt: Clear Translate-Cache

(https://i.gyazo.com/3db10914379f72d50839b4bc7e649226.png)
Title: Re: Accordion überarbeitet
Post by: CodeALot on November 28, 2023, 01:44:39 PM
Leider hat sich das nicht verbessert...
Title: Re: Accordion überarbeitet
Post by: hgs on November 28, 2023, 02:00:02 PM
Probiere mal bitte diese Version.
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on November 28, 2023, 02:22:53 PM
Was ist deine Sprache im Backend? Ich vermute da etwas....
Title: Re: Accordion überarbeitet
Post by: CodeALot on November 28, 2023, 02:33:04 PM
Probiere mal bitte diese Version.

Das funktioniert, danke!
Title: Re: Accordion überarbeitet
Post by: hgs on November 28, 2023, 02:34:55 PM
Probiere mal bitte diese Version.

Sorry, hab in der info.php die VersionsNr nicht geändert.
Im Anhang mit angepasster info.php
Title: Re: Accordion überarbeitet
Post by: CodeALot on November 28, 2023, 02:35:27 PM
Was ist deine Sprache im Backend? Ich vermute da etwas....


Daran habe ich auch schon gedacht und meine Spracheinstellung auf Deutsch gestellt, aber es hat nichts gebracht. Mit 2.7.2 funktioniert es jetzt. Danke fürs Mitdenken!
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on November 28, 2023, 02:48:18 PM
Problem ist ein Fehler in der WB 2.13.4 R199, der es unmöglich macht, die sog Translate-class einzubinden. Die Tester haben seit ein paar Tagen nach dem Release schon eine WB-Version, die diesen Fehler korrigiert, aber ich sehe nicht ein, das ich nun all meine Module dahin korrigieren sollte, um das in den versprochenen "ein paar Tagen" bis zum Release der Korrektur wieder retour zu machen. Darum bin ich da raus

@ hgs: bitte bei solchen Änderungen auch immer die Versionsnummer hochsetzen. Ist in jeder Datei 1x zu tun und in der info.php ein zweites Mal
Title: Re: Accordion überarbeitet
Post by: hgs on November 28, 2023, 03:16:57 PM
Ok, ich verstehe.
In der kommenden WB 2.13.5 ist der Fehler weg und deine super Version von Accordion 2.7.1 funktioniert wieder so wie sie soll.
Ich verstehe deinen Unmut. 
Title: Re: Accordion überarbeitet
Post by: CodeALot on November 28, 2023, 04:09:13 PM
Problem ist ein Fehler in der WB 2.13.4 R199, der es unmöglich macht, die sog Translate-class einzubinden. Die Tester haben seit ein paar Tagen nach dem Release schon eine WB-Version, die diesen Fehler korrigiert, aber ich sehe nicht ein, das ich nun all meine Module dahin korrigieren sollte, um das in den versprochenen "ein paar Tagen" bis zum Release der Korrektur wieder retour zu machen. Darum bin ich da raus

@ hgs: bitte bei solchen Änderungen auch immer die Versionsnummer hochsetzen. Ist in jeder Datei 1x zu tun und in der info.php ein zweites Mal

Es war keineswegs meine Absicht, "rogue" Bearbeitungen durch Dritte zu provozieren. Modulentwickler wie Sie sind der Korken, auf dem WB schwimmt, und denken Sie daran, dass Ihre Arbeit unglaublich geschätzt wird!
Title: Re: Accordion überarbeitet
Post by: sternchen8875 on November 28, 2023, 04:42:32 PM
Es war keineswegs meine Absicht, "rogue" Bearbeitungen durch Dritte zu provozieren.

Alles gut  ;-)
es sind rein organisatorische Dinge wie eben eine neue Versionsnummer, die notwendig sind, um die Übersicht zu behalten