Revision [4602]
This is an old revision of KeepHistory made by ChristianBarthelemy on 2005-01-13 18:21:30.
Keep the browsing history
It could be nice to have a simple way to follow all the WikiPages that we have been browsing over one or several sessions. It is not always obvious to retrieve quickly a WikiPage we opened a few minutes or hours ago.I found a good idea to provide such a feature at http://www.wikini.net/wakka.php?wiki=HistoriqueNavigation. The author Jean-Marie Griess has an implementation at http://www.arkheia.com/wikini/wakka.php?wiki=PagePrincipale∞ (even if it is in french, you can try browsing several pages and you will understand the principle).
My solution
The solution here above is using cookies and I would prefer something not relying on cookies so that you can keep your history using different computers or using light clients or not cookie-enabled browsers. This could as well stored in a dedicated wikka table - yet I do not think we should overload Wikka Core with things that may not be useful for all.So in the same way I did for UserMenus or ACLsWithUserGroups I would rather rely on WikiPage:
The principle would be:
- If you are logged as a registered user and
- If a WikiPage UserLogonHistory exists then each time you open a new WikiPage:
- The system would add a line on top of the UserLogonHistory page with the name of the WikiPage and the timestamp
- The system would then remove all lines further to line X, X being the maximum number of links we want to keep in the history
Dependancy
None.The code
To be built. Should be very simple...Maybe a handler would do. Instead of calling WikiPage, the system would call WikiPage/KeepHistory if the conditions are fulfilled.
How to use it?
- The user has first to create an history page and setup the ACLs as wished- he could setup the number of pages he wants to keep in the history (or this could be a system parameter for all users)
To Do
Needs to be coded...The user should be allowed to delete his UserLogonHistory page if he wants.
CategoryDevelopment