From 82011595b3586538a11e1b3a2ddc7b305a480dc8 Mon Sep 17 00:00:00 2001 From: erickson Date: Wed, 25 Jan 2006 18:59:38 +0000 Subject: [PATCH] bookbag view now has a home git-svn-id: svn://svn.open-ils.org/ILS/trunk@2830 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/web/opac/common/js/opac_utils.js | 4 +- Open-ILS/web/opac/extras/bbags.js | 47 ++++++++++++++++ Open-ILS/web/opac/extras/bbags.xml | 60 +++++++++++++++++++++ Open-ILS/web/opac/skin/default/js/myopac.js | 2 +- 4 files changed, 110 insertions(+), 3 deletions(-) create mode 100644 Open-ILS/web/opac/extras/bbags.js create mode 100644 Open-ILS/web/opac/extras/bbags.xml diff --git a/Open-ILS/web/opac/common/js/opac_utils.js b/Open-ILS/web/opac/common/js/opac_utils.js index b5f089a5d7..b2293923a1 100644 --- a/Open-ILS/web/opac/common/js/opac_utils.js +++ b/Open-ILS/web/opac/common/js/opac_utils.js @@ -151,8 +151,8 @@ function buildImageLink(name, ssl) { return findBaseURL(ssl) + "../../../../images/" + name; } -function buildContribLink(name, ssl) { - return findBaseURL(ssl) + "../../../../contrib/" + name; +function buildExtrasLink(name, ssl) { + return findBaseURL(ssl) + "../../../../extras/" + name; } function buildOPACLink(args, slim, ssl) { diff --git a/Open-ILS/web/opac/extras/bbags.js b/Open-ILS/web/opac/extras/bbags.js new file mode 100644 index 0000000000..610fdb05e6 --- /dev/null +++ b/Open-ILS/web/opac/extras/bbags.js @@ -0,0 +1,47 @@ + +/* XXX allow to pass in a 'local' var so the links back into the opac can be localized */ +/* maybe also a 'skin' var */ + +function bbInit() { + var cgi = new CGI(); + var bb = cgi.param('bb'); + if(!bb) { unHideMe($('not_found')); return; } + var req = new Request(FLESH_PUBLIC_CONTAINER, 'biblio', bb); + req.callback( bbShow ); + req.send(); +} + + +var template; +function bbShow(r) { + + var bb = r.getResultObject(); + if(!bb || !bb.public()) { unHideMe($('not_found')); return; } + $('bb_name').appendChild(text(bb.name())); + + var tbody = $('tbody'); + if(!template) template = tbody.removeChild($('row_template')); + + for( var i in bb.items() ) + tbody.appendChild(bbShowItem( template, bb.items()[i] )); +} + +function bbShowItem( template, item ) { + var row = template.cloneNode(true); + + var req = new Request( FETCH_RMODS, item.target_biblio_record_entry() ); + req.request.tlink = $n(row, 'title'); + req.request.alink = $n(row, 'author'); + req.request.blink = $n(row, 'by'); + + req.callback( function(r) { + var rec = r.getResultObject(); + buildTitleDetailLink(rec, r.tlink); + r.tlink.setAttribute('href', '/opac/en-US/skin/default/xml/rdetail.xml?r='+rec.doc_id()); + r.alink.appendChild(text(rec.author())); + unHideMe(r.blink); + }); + + req.send(); + return row; +} diff --git a/Open-ILS/web/opac/extras/bbags.xml b/Open-ILS/web/opac/extras/bbags.xml new file mode 100644 index 0000000000..50091e9b86 --- /dev/null +++ b/Open-ILS/web/opac/extras/bbags.xml @@ -0,0 +1,60 @@ + + + + + Evergreen: Bookbag Viewer + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+ Items in Bookbag + +
+ + By +
+ No Bookbag found! +
+ + + + + diff --git a/Open-ILS/web/opac/skin/default/js/myopac.js b/Open-ILS/web/opac/skin/default/js/myopac.js index 7c23f0c162..78f804c198 100644 --- a/Open-ILS/web/opac/skin/default/js/myopac.js +++ b/Open-ILS/web/opac/skin/default/js/myopac.js @@ -553,7 +553,7 @@ function myOPACShowBookbags(force) { if( cont.public() ) { unHideMe($n(row, 'myopac_bb_published_yes')); var link = $n(row, 'myopac_bb_published_view'); - link.setAttribute('href', buildContribLink( 'bbags.xml?bb='+cont.id(), false)); + link.setAttribute('href', buildExtrasLink( 'bbags.xml?bb='+cont.id(), false)); link.setAttribute('target', '_blank' ); unHideMe(link); -- 2.43.2