TPAC added content integration
authorBill Erickson <berick@esilibrary.com>
Mon, 14 May 2012 19:22:08 +0000 (15:22 -0400)
committerMike Rylander <mrylander@gmail.com>
Fri, 25 May 2012 12:57:05 +0000 (08:57 -0400)
commit5a6956654d190aab736366bee72501eef06d09be
treea8f73205c3f59e609b454c38a816140dcf649a10
parentb53d7120da33d7f027b535cf64feca7828178618
TPAC added content integration

https://bugs.launchpad.net/evergreen/+bug/984963

This adds a new tab on the detail page called Additional Content
(suggestions welcome).  When the tab is expanded, available content is
presented to the user via a series of sub-tabs.

At the start of loading the record detail page, kick off a series of
asynchronous HTTP HEAD requests, one per type of added content.  At the
end of context loading, read the results of the HTTP requests for any
that have completed.  If the status for a type is 200, the type is
marked as available.  If it's not 200 (usually 404) it's marked as not
available.  Otherwise, it's marked as unknown.

In the template, available content produces a link the user can click
to view the content.  Non-available content produces no links.  Unknown
content produces a link that may lead to content or no content when
JS/dojo is disabled.  When dojo is enabled, unknown content sends a
series of JS queries to determine the state of the content
asynchronously and results in displayed links for any type that is later
determined to have content.

TODO: when the user expands the Additional Content tab, no type is
chosen by default.  A default (available) type needs to be selected on
initial display.

TODO: better styling, particularly in the sub-tabs.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm
Open-ILS/src/templates/opac/parts/js.tt2
Open-ILS/src/templates/opac/parts/record/addedcontent.tt2 [new file with mode: 0644]
Open-ILS/src/templates/opac/parts/record/body.tt2
Open-ILS/src/templates/opac/parts/record/extras.tt2
Open-ILS/web/css/skin/default/opac/style.css