Extension:JSBreadCrumbs

The JSBreadCrumbs extension is a simple extension that adds a jQuery based Javascript file and a CSS file to your wiki's output that will add a trail of navigation breadcrumbs below the navigation tabs. The idea is for a simpler history than your back button that only tracks navigation inside of the wiki. Unlike the browser's back button, it will only track GET requests, not POSTs, and will remove duplicate entries from the list.

Requirements

 * MediaWiki 1.16+
 * The Vector skin, as it is the only one that includes jQuery
 * Specifically the UsabilityInitiative extension version of Vector, as it has the jquery cookie library

Installation
Add the following to the end of LocalSettings.php:

Configuration
Like most MediaWiki configuration, you can set these options by adding changes to the bottom of LocalSettings.php.

Defaults shown below:

Using as a Gadget instead of as an extension
Since this extension simply adds a Javascript and CSS file, it can easily be added as a gadget, if your wiki is using the Extension:Gadgets extension. To do so, take the JavaScript, and add it as a gadget; then take the CSS and add it to MediaWiki:Vector.css.

Roadmap

 * 0.6
 * nothing yet

Changelog

 * 0.5
 * Changed the display of site names to (sitename) from sitename: to make a visual difference between project namespace, and site name


 * 0.4
 * Added different site name support (when breadcrumbs are enabled on wiki farma, and they share the same cookie path)
 * Added support for preferences
 * Users can enable/disable bread crumbs
 * Users can enable/disable prepending sitename on titles
 * Users can set the number of bread crumbs to display
 * Delete cookies on log out
 * Removed some global preferences (replaced with default user options)
 * Fixed localization issue with namespaces
 * Only output Javascript/CSS when using the Vector skin


 * 0.3
 * Display wgTitle instead of wgPage to avoid url encoded titles
 * Fix issue where wgJSBreadCrumbsMaxCrumbs + 1 number of bread crumbs were shown instead wgJSBreadCrumbsMaxCrumbs
 * Strip empty title and url when it exists
 * Change the output of the leading description to look like "Leading description:" instead of "Leading description " + wgJSBreadCrumbsSeparator, to make it more clear that it isn't part of the history.
 * Change the character used to split and join in cookies to '|' since it is illegal in urls and page titles, and therefore is guaranteed to work, unlike using the user overridable separator
 * Make addResources in JSBreadCrumbs.hooks.php public and static to get rid of php warning


 * 0.2
 * Allow the separator character to be localized
 * Add preceding string to the breadcrumbs to describe their purpose on initial page load


 * 0.1
 * Initial commit