Bug 9916 - Use DataTables in the OPAC

The OPAC still uses the old tablesorter plugin which isn't being
actively maintained. We use DataTables in the staff client and should in
the OPAC too. The plugin was added a while ago but never implemented on
any pages. This patch upgrades the plugin to the latest version and
places it in opac-tmpl/lib for cross-theme access. The patch implements
DataTables on all pages which previously used the tablesorter plugin.

The old tablesorter plugin is removed.

The customized DataTable configuration script, datatables.js, has been
trimmed-down from the staff client version in order to limit it to only
that functionality required in the OPAC.

Sorting based on date is done based on the data's enclosing <span> title
attribute as it is in the staff client:

<span title=" [% iso date %]">[% date | $KohaDates %]</span>

Slight modifications to Serials.pm and opac-search-history.pl have been
made to accommodate this change.

To test, view each page in the OPAC which uses JS-based table sorting:

- The bibliographic detail page
- The cart
- The search history page
- The suggestions page
- The tags page (logged in as a user who has entered tags)
- The "most popular" page (opac-topissues.pl)
- The logged in user summary page (opac-user.pl)
- The subscription "full history" page (opac-serial-issues.pl?selectview=full)
- The self-checkout main page (with existing checkouts)

Table sorting should work correctly on all pages in both the prog and
ccsr themes. Sorting should work for dates whatever your dateformat
system preference setting. Tables listing titles should exclude articles
("a," "an," and "the" in English) when sorting.

Also test the serial collection page in the staff client, which is
affected by the change to Serials.pm. Confirm that dates are displayed
and sorted correctly.

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Passes koha-qa.pl, works as advertised!

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works really nicely on all pages.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 9916: (follow-up) restore default sort order for OPAC "most popular" page

Set the primary default sort order to descending number of checkouts,
matching the situation prior to the introduction of DataTables. This
patch also sets the default secondary sort to ascending title.

To test:

[1] Ensure that OpacTopissue is ON.
[2] Go to the OPAC "most popular" page.
[3] Verify that the items are sorted in order of descending
    checkout count.  If two items have the same number of
    checkouts, verify that they are sorted in ascending
    title order.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
bug 9916: (follow-up) restore default sort order for OPAC search history

To test:

[1] Go to the search history page on the OPAC.
[2] Verify that the searches are sorted in order of decreasing time.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
bug 9916: (follow-up) restore default sort order for self-check loan list

To test:

[1] Log into web-based selfcheck.
[2] Enter the barcode of a patron that has at least two loans.
[3] Verify that the loan list sorts them in order of descending
    due date by default, with a secondary sort order of ascending
    title.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
bug 9916: (follow-up) restore default sort order on OPAC tags list

(As a side-note, I actually prefer descending date as the default
sort order, but better to do that explicitly rather than have the
patch series for bug 9916 change visible default sorts.)

To test:

[1] Log into the OPAC, then go to the list of OPAC tags.
[2] Verify that the default sort order is ascending date
    added.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Bug 10701: fix display of transit status on the bibliographic detail page

The patch for Bug 10083 incorrectly changed some template variable names
so that in-transit details could not be shown on the biblio detail page.
This patch corrects the error.

To test, perform any action that will trigger an transfer between
libraries (for instance, check in an item from Library A at Library B).
View the detail page for that title and look for the transfer details in
the status column of the holdings table. It should show correct
information:

"In transit from Athens to Nelsonville since 08/08/2013"

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Comment: Work as described, no errors.
Before patch incorrect information: "In transit from to since"
after patch correct information.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works perfectly and passes all tests.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>