In Entwicklung: DataTables

Hier landen ältere Beiträge aus dem Forum "Module & Templates" sowie den dazugehörigen Unterforen. Ruhig auch mal reinschauen.
Benutzeravatar
shadowcat
Administrator
Beiträge: 4055
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

In Entwicklung: DataTables

Beitrag von shadowcat » Fr 11. Nov 2016, 12:28

Ich hatte neulich eine Anfrage bezüglich des WB-Moduls SorTable (siehe http://forum.blackcat-cms.org/viewtopic.php?f=28&t=605). Das hat mich auf die Idee gebracht, ein entsprechendes Modul für BC zu schreiben. :mrgreen:

Grundidee

Es geht um die Darstellung einer sortier- und filterbaren Tabelle, die im Backend leicht befüllt und verwaltet werden kann. SorTable gibt hierfür fest eine Spaltenzahl von 12 vor; DataTable erlaubt die Konfiguration der Spaltenanzahl. Sobald Daten vorhanden sind, kann die Spaltenzahl nur noch erhöht, aber nicht mehr reduziert werden.

Für jede Spalte kann eine Beschriftung eingegeben werden. Standard ist "field#", wobei # der Nummer der Spalte entspricht.

Bild

Außerdem kann für jede Spalte angegeben werden, ob sie einen Wert enthalten muß. (Haken bei "required".)

Das Hinzufügen von Zeilen erfolgt dann einfach über ein Eingabeformular.

Bild

Verbesserungen gegenüber SorTable
  • Für BC komplett neu geschrieben und daher technisch auf dem neuesten Stand
  • Viele Möglichkeiten durch Verwendung des jQuery Plugins DataTables (https://www.datatables.net/) - z.B. Paging, Live-Filterung, Sortierung
  • Leere Spalten können im Frontend ausgeblendet werden (DataTables Plugin)
  • Spaltenzahl einstellbar
  • Spalten können als Pflichtfeld markiert werden
  • CSV-Im- und Export
Edit: Name in DataTables (statt DataTable) geändert. Der Modulname kann bei Bedarf _vor_ der Installation in der info.php geändert werden.
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
shadowcat
Administrator
Beiträge: 4055
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: In Entwicklung: DataTable

Beitrag von shadowcat » Fr 11. Nov 2016, 16:07

Hier mal ein Screenshot vom CSV-Import.
2016-11-11 16_02_54.png
2016-11-11 16_02_54.png (31.02 KiB) 1489 mal betrachtet
  • Die CSV-Datei muss vorher über die Medienverwaltung hochgeladen werden.
  • Hat die CSV-Datei mehr Spalten als für die Tabelle konfiguriert wurde, und wurde die Anzahl der Spalten nicht bei den Import-Einstellungen entsprechend konfiguriert, gibt's eine Fehlermeldung.
  • Der Haken bei "Erste Zeile beinhaltet Spaltenüberschriften" sorgt nur dafür, dass die erste Zeile übersprungen wird. Es wird nicht daraus abgeleitet, welche Spalte in der CSV-Datei welcher Spalte in der Tabelle entspricht.
  • Es wird immer in der Reihenfolge der Spalten importiert. Also Spalte 1 in der CSV entspricht Spalte 1 in der DataTable, Spalte 2 entspricht Spalte 2, usw.
  • Stimmt das Trennzeichen nicht, wird der komplette Inhalt einer Zeile in die erste Spalte importiert.
  • Es gibt keine Vorschau vor dem Import.
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
shadowcat
Administrator
Beiträge: 4055
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: In Entwicklung: DataTable

Beitrag von shadowcat » Fr 11. Nov 2016, 16:19

Die besagte Fehlermeldung bei zu vielen Spalten.
Dateianhänge
2016-11-11 16_19_22.png
2016-11-11 16_19_22.png (47.07 KiB) 1490 mal betrachtet
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
shadowcat
Administrator
Beiträge: 4055
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: In Entwicklung: DataTable

Beitrag von shadowcat » Mo 14. Nov 2016, 18:33

Ein paar Änderungen.

Beim CSV-Import können vorhandene Daten jetzt vorher gelöscht werden.
2016-11-14 18_30_57.png
2016-11-14 18_30_57.png (32.02 KiB) 1485 mal betrachtet
Sind in der CSV-Datei mehr Spalten vorhanden, als für die Tabelle konfiguriert, gibt's jetzt die Möglichkeit des Mappings.
2016-11-14 18_33_28.png
2016-11-14 18_33_28.png (52.1 KiB) 1485 mal betrachtet
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
shadowcat
Administrator
Beiträge: 4055
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: In Entwicklung: DataTable

Beitrag von shadowcat » Mo 14. Nov 2016, 18:38

Auch mit ein bißchen Konsistenzchecking...
Dateianhänge
2016-11-14 18_37_50.png
2016-11-14 18_37_50.png (56.62 KiB) 1483 mal betrachtet
2016-11-14 18_37_38.png
2016-11-14 18_37_38.png (34.9 KiB) 1483 mal betrachtet
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
creativecat
Beiträge: 842
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: In Entwicklung: DataTables

Beitrag von creativecat » Mo 14. Nov 2016, 19:16

Wahnsinn! Du haust da in der Kürze ein Ding raus :-P

Benutzeravatar
shadowcat
Administrator
Beiträge: 4055
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: In Entwicklung: DataTables

Beitrag von shadowcat » Di 15. Nov 2016, 16:53

Naja, alles schon mal irgendwo gemacht. :roll:
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
shadowcat
Administrator
Beiträge: 4055
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: In Entwicklung: DataTables

Beitrag von shadowcat » Do 17. Nov 2016, 18:03

So, inzwischen gibt es schon wieder ein paar Neuigkeiten.

Neue Einstellungen:
2016-11-17 17_59_26.png
2016-11-17 17_59_26.png (34.1 KiB) 1467 mal betrachtet
Die unteren drei beziehen sich auf Optionen des DataTables Plugins und funktionieren folgerichtig nur, wenn dieses auch vorhanden ist.

Darstellung im Backend:
2016-11-17 18_01_48.png
2016-11-17 18_01_48.png (32.12 KiB) 1467 mal betrachtet
Im Backend wird jetzt auch das DataTables Plugin geladen. Derzeit habe ich damit noch ein Problem, das Paging funktioniert nicht, es werden immer alle Einträge angezeigt. (Fehler in jQuery.) Alles andere funktioniert aber.
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
shadowcat
Administrator
Beiträge: 4055
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: In Entwicklung: DataTables

Beitrag von shadowcat » Mi 14. Dez 2016, 16:41

My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
Morpheus
Beiträge: 916
Registriert: Do 8. Aug 2013, 10:49
Kontaktdaten:

Re: In Entwicklung: DataTables

Beitrag von Morpheus » Mi 28. Dez 2016, 11:56

mal getestet:

- ich kann die Spaltenanzahl nicht ändern, bleibt immer auf 8
- leere Spalten ausblenden, hat keine Auswirkung
- wo ist denn die Import/CSV Geschichte?

BC Version 1.1.3
Modulversion : 0.6
Keiner ist unnütz, er kann immer noch als schlechtes Beispiel dienen!

Antworten