Univention Bugzilla – Bug 20714
Browser history back/next buttons are not correctly integrated
Last modified: 2015-11-10 10:16:50 CET
Wird in der UMC per Browse-History (vor/zurück) zu früheren Seiten gesprungen, so wird dies nicht korrekt im Web-Interface erkannt und stattdessen eine ältere Seite als "aktuell" angesehen. Beispiele: a) Ein Klick auf Icon "System-Statistiken", dann History-Zurück, dann auf "Prozessübersicht" führt wieder zu "System-Statistiken" b) Ein Klcik auf Reiter "Wizards", dann History-Zurück, dann auf "System-Statistiken" führt zu "Nagios-Konfiguration"
In Dojo gibt es Unterstützung für solche Mechanismen, bspw.: http://dojotoolkit.org/documentation/tutorials/1.8/hash/ http://dojotoolkit.org/reference-guide/1.7/dojo/back.html Hier ist ein Link mit Infos wie GitHub einen ähnlichen Effekt implementiert hat: https://github.com/blog/760-the-tree-slider
Auch noch akut unter UCS 3.x da wir eine One-Page-Richt-Internet-Application haben.
*** Bug 7330 has been marked as a duplicate of this bug. ***
History.js is a JS module, that offers a cross browser HTML5 like API for this task: https://github.com/browserstate/history.js/
See also [Ticket#2015051321000257].
Created attachment 7053 [details] Patch for simple integration of backward/forward browser buttons. This issue has been again noted during our last usability test. I attached a little patch that implements the browser history navigation via dojo/hash in a simple manner. It even works when issuing a page reload. The patch only takes the current open module into account.
I added a basic functionality for the browser back/next history navigation using URL fragments (i.e., starting with "#"). The implementation also supports navigating between the same module type opened several times, category choices are respected, as well. Also, a particular module can be opened directly with a corresponding hash string. For the future, I added the attribute "moduleState" to _ModuleMixin. This attribute allows UMC modules to mark particular module states which are stored via the URL fragment part, as well. Consequently, the browser history navigation can be also integrated into modules (e.g., searches, opening a particular user etc.). univention-management-console-frontend (4.1.106-80): r62433 | Bug #20714: Add support for browser back/next button r62432 | Bug #20714: first integration of browser back/next button via dojo/hash 2015-05-28-univention-management-console-frontend.yaml: r62434 | Bug #20714: added YAML entry The changes have been merged to 4.1 accordingly: univention-management-console-frontend (5.0.3-1): r62436 | Bug #20714: Add support for browser back/next button r62435 | Bug #20714: first integration of browser back/next button via dojo/hash
* Please remove the URL encoding of the fragment. It is not necessary and doesn't look nice. * Please map javascripts undefined to "" for the flavor * The module search cannot be removed/emptied anymore
(In reply to Florian Best from comment #8) > * Please remove the URL encoding of the fragment. It is not necessary and > doesn't look nice. > * Please map javascripts undefined to "" for the flavor > * The module search cannot be removed/emptied anymore True. I fixed these issues. The only problem I currently see is when switching very fast back/forth in the history. But this should be IMHO ok as a first step. univention-management-console-frontend (4.1.106-81): r62438 | Bug #20714: fixed fragment decoding, flavor mapping and live search Cherry pick for 4.1-0: univention-management-console-frontend (5.0.4-1): r62439 | Bug #20714: fixed fragment decoding, flavor mapping and live search Packages are building...
As discussed with Florian, I committed the integration of the history navigation for the UDM module into the 4.1 branch (Bug 39033).
Fix: OK: FF, chromium, IE11 FYI: if the login dialog is shown due to session timeout the next/back buttons are still clickable. YAML: OK
<http://errata.univention.de/ucs/4.0/266.html>