Patch für Live-Plugin: Offene Knoten im Aufnahmen-Baum persistent machen

  • Hallo,


    UPDATE 29.10.: Neuen Patch v3 hinzugefügt, welcher nur aufgeräumter ist vom Coding her, aber sich sonst nicht von v2 unterscheidet.
    UPDATE 09.09.: Habe ein Ticket im Bugtracker von VDR Live angelegt für den Patch: http://projects.vdr-developer.org/issues/1479
    UPDATE 08.09.: Neuen Patch v2 hinzugefügt, welcher meines Erachtens fehlerfrei laufen sollte und die Buttons "Alle Ordner aufklappen" und "Alle Ordner einklappen" einbindet.


    hier ein Patch, der dafür sorgen soll, dass man im Live-Plugin in der Aufnahmenliste nicht immer wieder dieselben Ordnerknoten aufklicken muss, um immer wieder zum gleichen Unterordner vorzudringen. Die offenen Knoten werden damit in einem Cookie gespeichert.
    Auch ist er mit den Buttons für "Alle Ordner aufklappen" und "Alle Ordner einklappen" verzahnt.


    Was funktionieren sollte, ist das: Man klappt ein paar Ordner auf, verlässt die Aufnahmen-Seite und kehrt zurück: Die Ordner sollten nun den gleichen Zustand haben wie vor dem Verlassen der Seite. Man kann natürlich auch einzelne offene Ordner wieder zuklappen, die sind dann bei späterer Rückkehr wie erwartet zu.


    Viele Grüße
    hepi


    Nur der Patch v3 wird benötigt, er ersetzt die Vorgänger.

  • thx
    das ist schon mal praktisch wenn man ne aufnahme sucht

  • Dankeschön... funzt prima!


    iNOB

  • Ich werde später eine zweite Version des obigen Patches posten, bin weitergekommen und habe alle mir bekannten Bugs behoben (hoffentlich) - bis auf ein Grundproblem:


    Wenn ich die IDs aller geöffneten Ordner in einem Browser-Cookie speichere, dann kann es theoretisch passieren, dass die maximal mögliche Länge eines Cookies überschritten wird, die bei 4 KB liegt. Pro geöffnetem Folder fallen momentan knapp 40 Character an (md5-hash + ein paar Zeichen), also kann man Pi mal Daumen 100 offene Ordner problemlos im Cookie speichern. Wenn es mehr als 4KB wird, gibt es ein Problem, dann wird der Cookie je nach Browser verworfen. Nun ist die Frage, wer denn eigentlich 100 Ordner offen haben will in der Praxis. Es gibt aber den Button "Alle Ordner aufklappen" und da werden - tja - alle Ordner aufgeklappt. Wenn es mehr sind als 4KB, wird kein Cookie gespeichert, und es sollten sonst keine Probleme auftreten, denke ich.


    Ich bin der Meinung, dass ich keine Energie auf dieses Problem investieren möchte, da es in der Praxis nicht wirklich auftaucht. VDR-Live ist ein tolles Web-Frontend mit unheimlich vielen praktischen Features, aber die Code-Basis ist schon viele Jahre alt und es lohnt sich meines Erachtens nicht, hier umfangreiche Änderungen zu machen und sowas wie HTML5 LocalStorage zu nutzen. Das mache ich lieber zusammen mit dem restfulapi-Plugin.


    Gruß
    hepi

  • Moin,


    Mir würde schon ein Ordner reichen, wenn ich ein paar Aufnahmen lösche und dann die Seite neu aufgebaut wird.
    Wer klappt schon alles auf, wenn er mehr als 100 Ordner hat... :)


    Ach ja, packst du das bei Gelegenheit nach unstable? Oder ist es dort schon?


    Lars.

  • Ok. :)


    Aber merken muss man sich den Zustand ja nicht - man kann sie mit einem Klick ja wieder alle aufklappen.
    Ich wollte dir damit nur zustimmen, in diese Richtung nicht zu viel Zeit zu investieren.


    Lars.

  • D'accord. Man kann ja mit dem Button "alle öffnen" genau diesen Zustand mit einem Klick erreichen und es macht nicht viel aus, wenn dann beim nächsten Aufruf der Recordings-Seite alle Folder zu sein sollten, weil man wieder nur einen Mausklick braucht, um alle zu öffnen.


    Gruß
    hepi

  • Du darfst das Paket in unstable ruhig überfahren, das ist nicht lebenswichtig... :)
    Ich hab heute noch keine Zeit dafür.


    Lars

  • Erledigt, neue Precise-Pakete basierend auf einem aktuellen git clone sind in unstable-vdr (haben gebaut, warten to be published).


    Dann mal ein paar Mutige vor und testen. Dann kann ich das zügig nach testing bringen.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • auch wenn OT: gibt es zu live einen bugtracker um ein FR zu platzieren? - Vllt könnte man zu den Aufnahmen mal die Bilder anzeigen lassen wie bein EPG? Vllt auch gleich so das sich live, nOpacity und graphtft dann gleich auf eine einheitliche Benennung der selben jpg einigen


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • auch wenn OT: gibt es zu live einen bugtracker um ein FR zu platzieren? - Vllt könnte man zu den Aufnahmen mal die Bilder anzeigen lassen wie bein EPG? Vllt auch gleich so das sich live, nOpacity und graphtft dann gleich auf eine einheitliche Benennung der selben jpg einigen


    Christian


    Dafür hatte ich mal einen Patch gebastelt, der auch bei mir läuft. Tadi wollte den Patch sich eigentlich anschauen, anpassen und aufnehmen, aber irgendwie seh ichs noch nicht. [live] Patch für Recording Images

    - Client1: Thermaltake DH 102 mit 7" TouchTFT * Debian Stretch/vdr-2.4.0/graphtft/MainMenuHooks-Patch * Zotac H55-ITX WiFi * Core i3 540 * 4GB RAM ** Zotac GT630 * 1 TB System HDD * 4 GB RAM * Harmony 900 * satip-Plugin

    - Client2: Alfawise H96 Pro Plus * KODI
    - Server: Intel Pentium G3220 * DH87RL * 16GB RAM * 4x4TB 3.5" WD RED + 1x500GB 2.5" * satip-Plugin
    - SAT>IP: Inverto iLNB

  • danke Chief schraub ich mir rein. - scheint ja eh schon seit nem halben Jahr im Bugtracker zu versauern


    Bitte über den anderen Patch im von TheChief verlinkten Thread weiterdiskutieren! Danke!


    Gruß
    hepi


    gibt nix zu diskutieren, hab ja bekommen was ich wollte. - einen Kommentar zu deinem Hinweis verkneif ich mir lieber, ist Montagmorgen da bin ich noch nicht in Stimmung


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Also, ich habe das unstable-vdr-Paket (https://launchpad.net/~yavdr/+…avdr1%7Eprecise_amd64.deb) nun seit einer Stunde getestet und bin der Meinung, dass es so läuft, wie ich es mir wünsche. Allerdings bitte ich alle, die mit Launchpad umgehen können, mal über den Diff drüberzuschauen, ob ich da grobe Fehler gemacht habe beim Paketbau. Ich bemerke keine Probleme, aber es mag ja welche geben, die ich nicht entdeckt habe.


    Viele Grüße
    hepi

  • Du hast das .git-Verzeichnis irgendwie mit eingepackt. Stört nicht weiter, ist aber einfach etwas unschön.
    Ich ziehe das bei Gelegenheit gerade, baue eh' gerade den vdr 2.0.3, da will ich die Plugins sowieso neubauen.
    Ein erster Test verlief hier ansonsten positiv, danke dafür!


    Lars.

  • Moin!


    Hier mal eine kleine Anleitung, wie ich ein Plugin aus einem git und einem vorhandenen Debian-Paket aktualisiere:


    Dadurch, dass das debian-Verzeichnis in einem eigenen Branch liegt, kann man das Original schön einfach exportieren. Mittels einer .gitattributes-Datei kann man da aber auch festlegen, welche Verzeichnisse evtl. nicht mit exportiert werden sollen. Das braucht man, wenn man das ganze Debian-Paket in einem git pflegt (wie z.B. unsere yavdr-Pakete).
    https://github.com/yavdr/yavdr…lob/master/.gitattributes

    Code
    .gitattributes export-ignore
    .gitignore export-ignore
    /debian export-ignore


    Die obigen Schritte macht man natürlich nur beim ersten mal. Wenn man sein eigenes git schon hat:


    Das Geheimnis bei git ist eigentlich, wenn man ein fremdes git klont, dann immer zuerst einen neuen Branch erstellen, der nach dem benannt ist, was man gerne ändern möchte. Das macht anschließende Merges leichter, wenn dein master dem Original-Master entspricht.


    Lars.

    vdr2: yaVDR 0.5/softhddevice @ G540, Intel DH67BLB3, Asus GT610/2GB, DDBridge + 2x DuoFlex C/T
    hdvdr: yaVDR unstable/softhddevice @ E8400, Asus P5Q SE Plus, 1x L4M-TwinCI + Flex C/T, 1x Sundtek MediaTV Pro, GT520
    Plugins: | avahi4vdr | dbus2vdr | dynamite | epg2timer | noepg | pvrinput | sundtek |

    Einmal editiert, zuletzt von mini73 () aus folgendem Grund: debuild um dput erweitert

Jetzt mitmachen!

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