Heiya Tony,
I just had a look at the extension and deployed it to my prototype wiki. A lot of cool stuff was added most notably, from my point of view, the ability to hide, the name of the namespace from the trail element and the ability to filter out repeatedly visited pages (this one was on the wish list of a couple of users for a long time) and last but not least the possibility for users to manipulate the behaviour of the bread crumbs in their preferences.
There are three things I would like to add:
- filtering out repeatedly visited pages: The extension filters out correctly the duplicates, however it does not change the position of the element. I would be great if the currently visited page is always at the end of the trail. The duplicate should be removed from the previous position instead of preventing it from being displayed a second time at the end of the trail. Thus the trail would become more intuitive.
- setting preferences for bread crumbs by the user: Sometimes there are wikis with a highly adapted skin which means that a different setting by a user may break the standard look and feel of the skin. In these cases an administrator would like to disable the ability to allow users to change the standard settings. I would therefore be great if there would be a parameter which controls the user's ability to set preferences, e.g. something like
$wgBreadCrumbsAllowUPOs = true;
- storing history in the database: In your features file you mentioned this as a thing to do in the future. I guess this is an excellent idea, since I think that this will overcome this extension's need to invalidate page caches all the time to work properly. The ability to restore the trails as the user logs in, appeals to me too.
It would be very cool to see these changes become reality and making it an even better piece of work as it is already. :) However, I have no idea regarding the effort this would take. So ... Hmm, I added these wishes in the opposite order of their importance. Never mind. O_o
So far I have encountered one major regression in comparison to version v0.1. Previously it was possible to manipulate the trail via CSS using #BreadCrumbsTrail
. This possibility was abandoned and instead a standard class is used. I believe that it is always the best solution to provide a separate class for CSS manipulation. This is closely related to point 2 (see above).
I realised that you took the I18n file from the JSBreadcrumbs extension to relieve the translators from doing heaps of double work. I guess this change will be rejected, since this also means that existing translations for the v0.1 version of this extension was abandoned. I advise to revert back to the old file and just add the new messages to the English language section. The I18n process via translatewiki.net and the handling over there is very good (including translation suggestions based on already existing translations) and you will see that the translations for all major languages will roll in pretty soon.
Cheers and thank you for your effort you put into coding for this extensions. I very much appreciate this.