var PARAM_TFORM = 'tf'; /* temporary format for title result pages */
var PARAM_RDEPTH = 'rd';
var PARAM_REDIR = 're'; /* true if we have been redirected by IP (we're at a real lib) */
+var PARAM_AVAIL = 'av'; /* limit search results to available items */
/* URL param values (see comments above) */
var TERM;
var LANGUAGE;
var TFORM;
var RDEPTH;
+var AVAIL;
/* cookie values */
var SBEXTRAS;
var COOKIE_FONT = "fnt";
var COOKIE_SKIN = "skin";
var COOKIE_RIDS = "rids"; /* list of record ids */
+var COOKIE_SEARCH = 'sr';
/* pages */
var MRESULT = "mresult";
var PREF_DEF_DEPTH = 'opac.default_search_depth';
+/** If enabled, added content attribution links will be
+ made visible where appropriate. The added content vendor name
+ and URL are defined in the entities in opac.dtd
+ */
+var ENABLE_ADDED_CONTENT_ATTRIB_LINKS = false;
+
+
/* container for global variables shared accross pages */
var G = {};
G.user = null; /* global user object */
var SEARCH_MRS = 'open-ils.search:open-ils.search.metabib.multiclass:1';
var SEARCH_RS = 'open-ils.search:open-ils.search.biblio.multiclass:1';
+var SEARCH_MRS_QUERY = 'open-ils.search:open-ils.search.metabib.multiclass.query:1';
+var SEARCH_RS_QUERY = 'open-ils.search:open-ils.search.biblio.multiclass.query:1';
var FETCH_SEARCH_RIDS = "open-ils.search:open-ils.search.biblio.record.class.search:1";
var FETCH_MRMODS = "open-ils.search:open-ils.search.biblio.metarecord.mods_slim.retrieve";
var FETCH_MODS_FROM_COPY = "open-ils.search:open-ils.search.biblio.mods_from_copy";
LANGUAGE = cgi.param(PARAM_LANGUAGE);
TFORM = cgi.param(PARAM_TFORM);
RDEPTH = cgi.param(PARAM_RDEPTH);
+ AVAIL = cgi.param(PARAM_AVAIL);
/* set up some sane defaults */
- //if(isNaN(DEPTH)) DEPTH = 0;
- if(isNaN(RDEPTH)) RDEPTH = 0;
- if(isNaN(OFFSET)) OFFSET = 0;
- if(isNaN(COUNT)) COUNT = 10;
+ //if(isNaN(DEPTH)) DEPTH = 0;
+ if(isNaN(RDEPTH)) RDEPTH = 0;
+ if(isNaN(OFFSET)) OFFSET = 0;
+ if(isNaN(COUNT)) COUNT = 10;
if(isNaN(HITCOUNT)) HITCOUNT = 0;
if(isNaN(MRID)) MRID = 0;
- if(isNaN(RID)) RID = 0;
+ if(isNaN(RID)) RID = 0;
if(isNaN(ORIGLOC)) ORIGLOC = 0; /* so we know it hasn't been set */
if(isNaN(AUTHTIME)) AUTHTIME = 0;
- if(ADVTERM==null) ADVTERM = "";
+ if(ADVTERM==null) ADVTERM = "";
+ if(isNaN(AVAIL)) AVAIL = 0;
}
function clearSearchParams() {
- TERM = null;
- STYPE = null;
- FORM = null;
- OFFSET = 0;
- HITCOUNT = 0;
- ADVTERM = null;
- ADVTYPE = null;
- MRID = null;
- RID = null;
- RTYPE = null;
- SORT = null;
- SORT_DIR = null;
- RLIST = null;
- CALLNUM = null;
- LITFORM = null;
- ITEMFORM = null;
- ITEMTYPE = null;
- AUDIENCE = null;
- SEARCHES = null;
- LANGUAGE = null;
- RDEPTH = null;
+ TERM = null;
+ STYPE = null;
+ FORM = null;
+ OFFSET = 0;
+ HITCOUNT = 0;
+ ADVTERM = null;
+ ADVTYPE = null;
+ MRID = null;
+ RID = null;
+ RTYPE = null;
+ SORT = null;
+ SORT_DIR = null;
+ RLIST = null;
+ CALLNUM = null;
+ LITFORM = null;
+ ITEMFORM = null;
+ ITEMTYPE = null;
+ AUDIENCE = null;
+ SEARCHES = null;
+ LANGUAGE = null;
+ RDEPTH = null;
+ AVAIL = null;
}
scaleFonts(font);
if(font) FONTSIZE = font;
SKIN = cookieManager.read(COOKIE_SKIN);
+ if(findCurrentPage() == HOME)
+ cookieManager.remove(COOKIE_SEARCH);
+
+
}
/* URL param accessors */
function getSearches() { return SEARCHES; }
function getLanguage() { return LANGUAGE; }
function getRdepth() { return RDEPTH; }
+function getAvail() { return AVAIL; }
function findBasePath() {
string += _appendParam(SORT, PARAM_SORT, args, getSort, string);
if(getSortDir() != null)
string += _appendParam(SORT_DIR, PARAM_SORT_DIR, args, getSortDir, string);
+ if(getAvail())
+ string += _appendParam(AVAIL, PARAM_AVAIL, args, getAvail, string);
return string.replace(/\&$/,'').replace(/\?\&/,"?");
}
cookieManager.remove(COOKIE_RIDS);
cookieManager.remove(COOKIE_SES);
cookieManager.remove(COOKIE_SKIN);
+ cookieManager.remove(COOKIE_SEARCH);
checkUserSkin("default");
COUNT = 10;
}
+function getTableRows(tbody) {
+ var rows = [];
+ if(!tbody) return rows;
+ var children = tbody.childNodes;
+ if(!children) return rows;
+
+ for(var i = 0; i < children.length; i++) {
+ var child = children[i];
+ if(child.nodeName.match(/^tr$/i))
+ rows.push(child);
+ }
+ return rows;
+}
+
+function getObjectKeys(obj) {
+ keys = []
+ for(var k in obj)
+ keys.push(k)
+ return keys;
+}
<!ENTITY staff.cat.opac.marc_view.label "MARC View">
<!ENTITY staff.cat.opac.mark_for_overlay.accesskey "M">
<!ENTITY staff.cat.opac.mark_for_overlay.label "Mark for Overlay">
+<!ENTITY staff.cat.opac.delete_record.accesskey "D">
+<!ENTITY staff.cat.opac.delete_record.label "Delete Record">
<!ENTITY staff.cat.opac.menu.accesskey "A">
<!ENTITY staff.cat.opac.menu.label "Actions for this Record">
<!ENTITY staff.cat.opac.opac_view.accesskey "O">
"The password must be at least 7 characters in length,
contain at least one letter (a-z/A-Z),
and contain at least one number.">
+<!ENTITY common.a2z.title "Title: A to Z">
+<!ENTITY common.z2a.title "Title: Z to A">
+<!ENTITY common.a2z.author "Author: A to Z">
+<!ENTITY common.z2a.author "Author: Z to A">
+<!ENTITY common.new2old.pubdate "Date: Newest to Oldest">
+<!ENTITY common.old2new.pubdate "Date: Oldest to Newest">
<!ENTITY opac.style.reddish "Reddish">
================================================================= -->
<!ENTITY myopac.holds.formats "Formats">
<!ENTITY myopac.holds.location "Pickup Location">
-<!ENTITY myopac.holds.edit.cancel "Edit/Cancel">
+<!ENTITY myopac.holds.edit "Edit">
<!ENTITY myopac.holds.status.none "You have no items on hold at this time">
<!ENTITY myopac.holds.status.waiting "Waiting for copy">
<!ENTITY myopac.holds.status.intransit "In Transit">
<!ENTITY myopac.holds.edit "Edit">
<!ENTITY myopac.holds.cancel "Cancel">
<!ENTITY myopac.holds.verify "If you wish to cancel the selected hold, click OK, otherwise click Cancel.">
+<!ENTITY myopac.holds.freeze_selected "Freeze">
+<!ENTITY myopac.holds.thaw_selected "Un-freeze">
+<!ENTITY myopac.holds.thaw_date_selected "Set Un-freeze date">
+<!ENTITY myopac.holds.cancel_selected "Cancel">
+<!ENTITY myopac.holds.processing "Processing holds... This may take a moment.">
+<!ENTITY myopac.holds.actions 'Actions for selected holds'>
+<!ENTITY myopac.holds.cancel.confirm 'Are you sure you wish to cancel the selected holds?'>
+<!ENTITY myopac.holds.freeze.confirm 'Are you sure you wish to freeze the selected holds?
+Note that if an item has already been selected to fulfill the hold, it will not be frozen'>
+<!ENTITY myopac.holds.thaw.confirm 'Are you sure you wish to un-freeze the selected holds?'>
+<!ENTITY myopac.holds.thaw_date.confirm 'Are you sure you wish to change the un-freeze date for the selected holds?'>
+<!ENTITY myopac.holds.freeze.select_thaw "Select an 'Un-Freeze' date. This is the date at which the holds will become active again.
+If no date is chosen, the holds will remain frozen until they are manually un-frozen.">
+
+<!ENTITY opac.holds.freeze "Freeze this hold">
+<!ENTITY opac.holds.freeze.help "A 'frozen' will retain its place in the queue, but will not be fulfilled until it has been unfrozen.">
+<!ENTITY opac.holds.freeze.thaw_date "Automatically un-freeze hold on:">
+<!ENTITY opac.holds.freeze.thaw_date.format "YYYY-MM-DD">
<!-- =================================================================
MyOPAC Preferences Page
<!ENTITY myopac.prefs.help "This setting defines how you will be notified of holds that are ready to be picked up from the library.
By default, holds will use the notification style you choose here.
However, you will still have the option to change individual holds regardless of this setting.">
+<!ENTITY myopac.holds.unfrozen "Un-Frozen">
+<!ENTITY myopac.holds.frozen.until "Frozen Until">
<!-- =================================================================
MyOPAC Summary page
<!ENTITY rdetail.noneAvailable " * There are no copies in this location">
<!ENTITY rdetail.summary.online "Online Resources">
+<!ENTITY result.sort_by "Sort Results by Relevance">
+<!ENTITY result.sort_by.title "Sort Results by Title">
+<!ENTITY result.sort_by.author "Sort Results by Author">
+<!ENTITY result.sort_by.pubdate "Sort Results by Publicate Date">
+
+<!ENTITY result.limit2avail "Limit to Available">
<!ENTITY result.info.copies "Available copies / Total copies">
<!ENTITY result.info.no.items "No items with the selected format were found in this location.">
<!ENTITY result.info.format.items "Listed below are all items in the catalog with the chosen format.">
<!ENTITY common.email.enable "Enable email notifications for this hold?">
<!ENTITY common.email.none "(Patron has no configured email address)">
<!ENTITY common.email.set "(See <a class='classic_link' id='holds.no_email.my_account'>My Account</a> for setting your email address)">
+<!ENTITY common.keywords.label "Keywords:">
<!ENTITY common.physical.label "Physical Description:">
+<!ENTITY common.series.label "Series:">
+<!ENTITY common.subject.label "Subject:">
<!ENTITY common.title.label "Title:">
<!ENTITY common.author.label "Author:">
<!ENTITY common.format.label "Format:">
<!ENTITY login.failed "Login failed. The username or password provided was not valid.
Ensure Caps-Lock is off and try again or contact your local library.">
<!ENTITY button.go "Go!">
+
+<!-- =================================================================
+ Slimpac Simple Search
+ ================================================================= -->
+<!ENTITY slimpac.start.title "Simple Search">
+<!ENTITY slimpac.start.nowSearching "Now searching: ">
+<!ENTITY slimpac.start.dynamic "Dynamic Catalog">
+
+<!-- =================================================================
+ Slimpac Advanced Search
+ ================================================================= -->
+<!ENTITY slimpac.advanced.language "Item Language">
+<!ENTITY slimpac.advanced.create_date "Record Creation Date">
+<!ENTITY slimpac.advanced.edit_date "Record Edit Date">
+
+<!ENTITY opac.image_provided "Image provided by">
+<!ENTITY vendor.name "Amazon">
+<!ENTITY vendor.base_link "http://amazon.com/dp/">
#searchbar_table { border-collapse: collapse; }
.search_box_container { width: 240px; padding: 3px; }/* border: 1px solid #A0A0A0;' class='color_2'>*/
+#search_box { width: 260px; }
/* ---------------------------------------------------------------------- */
.copy_more_info { padding-left: 6px; color: #804070; }
-
.invalid_hold { background: #F0F0D0; }
.myopac_summary_table td { padding : 3px; }
+
+.jacket_attrib { font-size: 7pt; }
+
+/* block that contains footer links and copyright */
+#copyright_block {
+ width: 100%;
+ text-align: center;
+ vertical-align: bottom;
+ margin-top: 10px;
+}
+
+/* block that contains the footer links */
+#footer_links {
+ width: 80%;
+ text-align: center;
+ padding: 10px;
+ margin: auto;
+}
+
+/* span for each link in the footer */
+.footer-link {
+ margin-left: 10px;
+ margin-right: 10px;
+}
+
+/* block that contains the copyright text */
+#copyright_text {
+ margin-top: 4px;
+}
+
+/* block that contains the logo */
+#footer_logo {
+ text-align: center;
+ margin: auto;
+}
+
+#opac.result.sort { margin-left: 5px; }
+
+
var input = $n($('adv_global_trow'), 'term');
input.focus();
setEnterFunc(input, advSubmitGlobal);
+
+ if(getSort() && getSortDir()) {
+ setSelector($('adv_global_sort_by'), getSort());
+ setSelector($('adv_global_sort_dir'), getSortDir());
+ if(getSort() != 'rel')
+ $('adv_global_sort_dir').disabled = false;
+ }
+
+ if(getAvail())
+ $('opac.result.limit2avail').checked = true;
+
+ initSearchBoxes();
+}
+
+function initSearchBoxes() {
+ /* loads the compiled search from the search cookie
+ and sets the widgets accordingly */
+
+ search = cookieManager.read(COOKIE_SEARCH);
+ if(!search) return;
+ _debug("loaded compiled search cookie: " + search);
+
+ search = JSON2js(search);
+ if(!search) return;
+
+ var types = getObjectKeys(search.searches);
+
+ /* pre-add the needed rows */
+ while($('adv_global_tbody').getElementsByTagName('tr').length - 1 < types.length)
+ advAddGblRow();
+
+ var rows = $('adv_global_tbody').getElementsByTagName('tr');
+ for(var t = 0; t < types.length; t++) {
+ var row = rows[t];
+ setSelector($n(row, 'type'), types[t]);
+ var term = search.searches[types[t]].term;
+
+ /* if this is a single -<term> search, set the selector to nocontains */
+ if(match = term.match(/^-(\w+)$/)) {
+ term = match[1];
+ setSelector($n(row, 'contains'), 'nocontains');
+ }
+ $n(row, 'term').value = term;
+ }
}
function advAddGblRow() {
var itemtypes = advGetVisSelectorVals('adv_global_item_type');
var audiences = advGetVisSelectorVals('adv_global_audience');
var languages = getSelectedList($('adv_global_lang')) + '';
+ var limit2avail = $('opac.result.limit2avail').checked ? 1 : ''
var searches = advBuildSearchBlob();
if(!searches) return;
args[PARAM_LITFORM] = litforms;
args[PARAM_AUDIENCE] = audiences;
args[PARAM_LANGUAGE] = languages;
- args[PARAM_SEARCHES] = js2JSON(searches); /* break these out */
+ //args[PARAM_SEARCHES] = js2JSON(searches); /* break these out */
args[PARAM_DEPTH] = depthSelGetDepth();
args[PARAM_LOCATION] = depthSelGetNewLoc();
args[PARAM_SORT] = sortby;
args[PARAM_SORT_DIR] = sortdir;
args[PARAM_ADVTYPE] = ADVTYPE_MULTI;
args[PARAM_STYPE] = "";
- args[PARAM_TERM] = "";
+ args[PARAM_TERM] = searches;
+ args[PARAM_AVAIL] = limit2avail;
/* pubdate sorting causes a record (not metarecord) search */
if( sortby == SORT_TYPE_PUBDATE || !$('adv_group_titles').checked ) {
function advBuildSearchBlob() {
- var searches;
+ var searches = '';
var tbody = $('adv_global_tbody');
var rows = tbody.getElementsByTagName('tr');
if(!term) continue;
var string = "";
-
- if(!searches) searches = {};
-
- if(searches[stype])
- string = searches[stype].term;
- else
- searches[stype] = { term : "" };
-
switch(contains) {
case 'contains' :
string += " " + term;
if(string) {
string = string.replace(/'/g,' ');
string = string.replace(/\\/g,' ');
- searches[stype].term = string;
+ string = string.replace(/^\s*/,'');
+ string = string.replace(/\s*$/,'');
+ //searches[stype].term = string;
+ if(searches) searches += ' ';
+ searches += stype + ':'+ string;
}
}
+ _debug("created search query " + searches);
return searches;
}
function advInit() {
/* propogate these? */
- clearSearchParams();
depthSelInit();
setEnterFunc( $n( $('advanced.marc.tbody'), 'advanced.marc.value'), advMARCRun );
function advMARCRun() {
+ clearSearchParams();
+
var div = $('adv_marc_search_sidebar');
var tbodies = div.getElementsByTagName('tbody');
var searches = [];
}
function advGenericSearch() {
+ clearSearchParams();
var type = getSelectorVal($('adv_quick_type'));
var term = $('adv_quick_text').value;
var status = holdArgs.status;
var orgsel = $('holds_org_selector');
+ var frozenbox = $('holds_frozen_chkbox');
+
setSelector(orgsel, hold.pickup_lib());
- if( hold.capture_time() || status > 2 )
+ if( hold.capture_time() || status > 2 ) {
orgsel.disabled = true;
- else
+ frozenbox.disabled = true;
+ $('holds_frozen_thaw_input').disabled = true;
+
+ } else {
orgsel.disabled = false;
+ frozenbox.disabled = false;
+ }
$('holds_submit').onclick = holdsEditHold;
} else {
$('holds_enable_email').checked = false;
}
+
+ /* populate the hold freezing info */
+ if(!frozenbox.disabled && isTrue(hold.frozen())) {
+ frozenbox.checked = true;
+ unHideMe($('hold_frozen_thaw_row'));
+ if(hold.thaw_date()) {
+ $('holds_frozen_thaw_input').value = hold.thaw_date();
+ } else {
+ $('holds_frozen_thaw_input').value = '';
+ }
+ } else {
+ frozenbox.checked = false;
+ $('holds_frozen_thaw_input').value = '';
+ hideMe($('hold_frozen_thaw_row'));
+ }
}
function holdsEditHold() {
hold.target(target);
hold.hold_type(holdArgs.type);
+ // see if this hold should be frozen and for how long
+ if($('holds_frozen_chkbox').checked) {
+ hold.frozen('t');
+ unHideMe($('hold_frozen_thaw_row'));
+ thawDate = $('holds_frozen_thaw_input').value;
+ if(thawDate)
+ hold.thaw_date(thawDate);
+ else
+ hold.thaw_date(null);
+ }
+
//check for alternate hold formats
var fstring = holdsSetSelectedFormats();
if(fstring) {
}
function _mresultCollectIds() {
- resultCollectSearchIds(true, SEARCH_MRS, mresultHandleMRIds );
+ resultCollectSearchIds(true, SEARCH_MRS_QUERY, mresultHandleMRIds );
}
function mresultCollectAdvIds() {
- resultCollectSearchIds(false, SEARCH_MRS, mresultHandleMRIds );
+ resultCollectSearchIds(false, SEARCH_MRS_QUERY, mresultHandleMRIds );
}
if( getOffset() == 0 ) HITCOUNT = res.count;
runEvt('result', 'hitCountReceived');
}
+ cookieManager.write(COOKIE_SEARCH, js2JSON(res.compiled_search), -1);
runEvt('result', 'idsReceived', res.ids);
}
var fleshedUser = null;
var fleshedContainers = {};
var holdCache = {};
+var holdStatusCache = {};
function clearNodes( node, keepArray ) {
var req = new Request(FETCH_HOLDS, G.user.session, G.user.id());
req.callback(myOPACDrawHolds);
req.send();
+ $('myopac_holds_actions_none').selected = true;
}
var holdsTemplateRowOrig;
var holdsTemplateRow;
+var myopacForceHoldsRedraw = false;
function myOPACDrawHolds(r) {
var tbody = $("myopac_holds_tbody");
- if(holdsTemplateRow) return;
+ if(holdsTemplateRow && !myopacForceHoldsRedraw) return;
+ myopacForceHoldsRedraw = false;
+
if(holdsTemplateRowOrig) {
holdsTemplateRow = holdsTemplateRowOrig;
removeChildren(tbody);
tbody.appendChild(row);
- $n(row,'myopac_holds_cancel_link').setAttribute(
- 'href','javascript:myOPACCancelHold("'+ h.id()+'");');
-
$n(row,'myopac_holds_edit_link').setAttribute(
'href','javascript:myOPACEditHold("'+ h.id()+'");');
+ if(isTrue(h.frozen())) {
+ hideMe($n(row, 'myopac_hold_unfrozen_true'))
+ unHideMe($n(row, 'myopac_hold_unfrozen_false'))
+ if(h.thaw_date()) {
+ var d = Date.parseIso8601(h.thaw_date());
+ $n(row, 'myopac_holds_frozen_until').appendChild(text(d.iso8601Format('YMD')));
+ }
+ } else {
+ unHideMe($n(row, 'myopac_hold_unfrozen_true'))
+ hideMe($n(row, 'myopac_hold_unfrozen_false'))
+ }
+
+ $n(row, 'myopac_holds_selected_chkbx').checked = false;
+
unHideMe(row);
myOPACDrawHoldTitle(h);
}
-function myOPACCancelHold(holdid) {
- if( confirm($('myopac_holds_cancel_verify').innerHTML) ) {
- holdsCancel(holdid);
- holdsTemplateRow = null
- myOPACShowHolds();
- }
-}
-
-
function myOPACDrawHoldStatus(hold) {
var req = new Request(FETCH_HOLD_STATUS, G.user.session, hold.id() );
req.callback(myOShowHoldStatus);
var hold = r.hold;
var status = r.getResultObject();
+ holdStatusCache[hold.id()] = status;
+
var row = $("myopac_holds_row_" + r.hold.id());
if( status < 3 )
if(copy) $n(row, 'copy').appendChild(text(copy.barcode()));
}
- /*var form = $("myopac_holds_form_" + hold.id() + '_' + record.doc_id());*/
var form = $("myopac_holds_form_" + hold.id());
if(form) {
myOPACShowChecked();
}
+/** ---- batch hold processing ------------ */
+
+
+/* myopac_holds_checkbx */
+function myopacSelectAllHolds() {
+ var rows = getTableRows($("myopac_holds_tbody"));
+ for(var i = 0; i < rows.length; i++) {
+ cb = $n(rows[i], 'myopac_holds_selected_chkbx');
+ if(cb) cb.checked = true;
+ }
+}
+
+function myopacSelectNoneHolds() {
+ var rows = getTableRows($("myopac_holds_tbody"));
+ for(var i = 0; i < rows.length; i++) {
+ cb = $n(rows[i], 'myopac_holds_selected_chkbx');
+ if(cb) cb.checked = false;
+ }
+}
+function myopacSelectedHoldsRows() {
+ var r = [];
+ var rows = getTableRows($("myopac_holds_tbody"));
+ for(var i = 0; i < rows.length; i++) {
+ cb = $n(rows[i], 'myopac_holds_selected_chkbx');
+ if(cb && cb.checked)
+ r.push(rows[i]);
+ }
+ return r;
+}
+
+var myopacProcessedHolds = 0;
+var myopacTotalHoldsToProcess = 0;
+function myopacDoHoldAction() {
+
+ var selectedRows = myopacSelectedHoldsRows();
+ action = getSelectorVal($('myopac_holds_actions'));
+ $('myopac_holds_actions_none').selected = true;
+ if(selectedRows.length == 0) return;
+
+ myopacProcessedHolds = 0;
+
+ if(!confirmId('myopac.holds.'+action+'.confirm')) return;
+
+ myopacSelectNoneHolds(); /* clear the selection */
+
+
+ /* first, let's collect the holds that actually need processing and
+ collect the full process count while we're at it */
+ var holds = [];
+ for(var i = 0; i < selectedRows.length; i++) {
+ hold = holdCache[myopacHoldIDFromRow(selectedRows[i])];
+ var status = holdStatusCache[hold.id()];
+ switch(action) {
+ case 'cancel':
+ holds.push(hold);
+ break;
+ case 'thaw_date':
+ case 'thaw':
+ if(isTrue(hold.frozen()))
+ holds.push(hold);
+ break;
+ case 'freeze':
+ if(!isTrue(hold.frozen()) && status < 3)
+ holds.push(hold);
+ break;
+ }
+ }
+ myopacTotalHoldsToProcess = holds.length;
+ if(myopacTotalHoldsToProcess == 0) return;
+ myopacShowHoldProcessing();
+
+ var thawDate = null;
+ var thawDateSet = false;
+
+ /* now we process them */
+ for(var i = 0; i < holds.length; i++) {
+
+ hold = holds[i];
+
+ var req;
+ switch(action) {
+
+ case 'cancel':
+ req = new Request(CANCEL_HOLD, G.user.session, hold.id());
+ break;
+
+ case 'thaw':
+ hold.frozen('f');
+ hold.thaw_date(null);
+ req = new Request(UPDATE_HOLD, G.user.session, hold);
+ break;
+
+ case 'thaw_date':
+ if(!thawDateSet)
+ thawDate = prompt($('myopac.holds.freeze.select_thaw').innerHTML) || null;
+ thawDateSet = true;
+ hold.thaw_date(thawDate);
+ req = new Request(UPDATE_HOLD, G.user.session, hold);
+ break;
+
+
+ case 'freeze':
+ if(!thawDateSet)
+ thawDate = prompt($('myopac.holds.freeze.select_thaw').innerHTML);
+ thawDateSet = true;
+ hold.frozen('t');
+ if(thawDate)
+ hold.thaw_date(thawDate);
+ req = new Request(UPDATE_HOLD, G.user.session, hold);
+ break;
+
+ }
+
+ req.callback(myopacBatchHoldCallback);
+ req.send();
+ req = null;
+ }
+}
+
+function myopacHoldIDFromRow(row) {
+ return row.id.replace(/.*_(\d+)$/, '$1');
+}
+
+function myopacShowHoldProcessing() {
+ unHideMe($('myopac_holds_processing'));
+ hideMe($('myopac_holds_main_table'));
+}
+
+function myopacHideHoldProcessing() {
+ hideMe($('myopac_holds_processing'));
+ unHideMe($('myopac_holds_main_table'));
+}
+
+function myopacBatchHoldCallback(r) {
+ r.getResultObject();
+ if(++myopacProcessedHolds >= myopacTotalHoldsToProcess) {
+ myopacHideHoldProcessing();
+ holdCache = {};
+ holdStatusCache = {};
+ myopacForceHoldsRedraw = true;
+ myOPACShowHolds();
+ }
+}
G.ui.rdetail.pubdate.appendChild(text(record.pubdate()));
G.ui.rdetail.publisher.appendChild(text(record.publisher()));
$('rdetail_physical_desc').appendChild(text(record.physical_description()));
- G.ui.rdetail.tor.appendChild(text(record.types_of_resource()[0]));
- setResourcePic( G.ui.rdetail.tor_pic, record.types_of_resource()[0]);
+ r = record.types_of_resource();
+ if(r) {
+ G.ui.rdetail.tor.appendChild(text(r[0]));
+ setResourcePic( G.ui.rdetail.tor_pic, r[0]);
+ }
G.ui.rdetail.abstr.appendChild(text(record.synopsis()));
+ try{
+ if(record.isbn()) {
+ if(ENABLE_ADDED_CONTENT_ATTRIB_LINKS) {
+ unHideMe($('rdetail.jacket_attrib_div'));
+ var href = $('rdetail.jacket_attrib_link').getAttribute('href') +cleanISBN(record.isbn());
+ $('rdetail.jacket_attrib_link').setAttribute('href', href);
+ }
+ } else {
+ hideMe($("rdetail.jacket_attrib_div"));
+ hideMe($("rdetail_img_link"));
+ }
+ } catch(E) {}
+
// see if the record has any external links
var links = record.online_loc();
}
-
$('rdetail_place_hold').setAttribute(
'href','javascript:holdsDrawEditor({record:"'+record.doc_id()+'",type:"T"});');
var args = {};
if( type ) {
- args.searches = {};
- args.searches[getStype()] = {};
- var term = getTerm();
- if( term ) {
- term = term.replace(/'/g,' ');
- term = term.replace(/\\/g,' ');
- args.searches[getStype()].term = term;
- }
-
var form = parseForm(getForm());
item_type = form.item_type;
item_form = form.item_form;
} else {
- args.searches = JSON2js(getSearches());
item_type = (getItemType()) ? getItemType().split(/,/) : null;
item_form = (getItemForm()) ? getItemForm().split(/,/) : null;
}
args.limit = limit;
args.offset = getOffset();
args.visibility_limit = 3000;
+ args.default_class = getStype();
if(sort) args.sort = sort;
if(sortdir) args.sort_dir = sortdir;
if(item_type) args.item_type = item_type;
if(item_form) args.item_form = item_form;
+ if(getAvail()) args.available = 1;
if(getAudience()) args.audience = getAudience().split(/,/);
if(getLitForm()) args.lit_form = getLitForm().split(/,/);
if(getLanguage()) args.language = getLanguage().split(/,/);
- //alert(js2JSON(args));
+ _debug('Search args: ' + js2JSON(args));
+ _debug('Raw query: ' + getTerm());
- _debug('SEARCH: \n' + js2JSON(args) + '\n\n');
- var req = new Request(method, args, 1);
+ var req = new Request(method, args, getTerm(), 1);
req.callback(handler);
req.send();
}
sreq.callback(resultSuggestSpelling);
sreq.send();
+ /* XXX patch to use the search results */
+
var words = getTerm().split(' ');
var word;
while( word = words.shift() ) {
rresultCollectIds();
}
-function rresultCachedSearch() {
-
- /* XXX */
- return false;
-
- /*
- if(!getOffset()) {
- cookieManager.remove(COOKIE_SRIDS);
- return false;
- }
-
- var data = JSON2js(cookieManager.read(COOKIE_SRIDS));
- //alert('cached count = ' + data.count);
-
- if( data && data.ids[getOffset()] != null &&
- data.ids[resultFinalPageIndex()] != null ) {
- _rresultHandleIds( data.ids, data.count );
- return true;
- }
-
- return false;
- */
-}
-
function rresultCollectIds() {
var ids;
- if(rresultCachedSearch()) return;
-
switch(getRtype()) {
case RTYPE_COOKIE:
runEvt("result", "preCollectRecords");
var x = 0;
- var base = getOffset();
+ //var base = getOffset();
+ var base = 0;
if( rresultIsPaged ) base = 0;
for( var i = base; i!= getDisplayCount() + base; i++ ) {
function rresultDoRecordSearch() {
rresultIsPaged = true;
- resultCollectSearchIds(true, SEARCH_RS, rresultFilterSearchResults );
+ resultCollectSearchIds(true, SEARCH_RS_QUERY, rresultFilterSearchResults );
}
function rresultDoRecordMultiSearch() {
rresultIsPaged = true;
- resultCollectSearchIds(false, SEARCH_RS, rresultFilterSearchResults );
+ resultCollectSearchIds(false, SEARCH_RS_QUERY, rresultFilterSearchResults );
}
for( var i = 0; i != result.ids.length; i++ )
ids.push(result.ids[i][0]);
}
+
+ cookieManager.write(COOKIE_SEARCH, js2JSON(result.compiled_search), -1);
_rresultHandleIds( ids, result.count );
}
attachEvt('common','depthChanged', searchBarSubmit);
}
+ if( (limit = $('opac.result.limit2avail')) ) {
+ if(getAvail()) limit.checked = true;
+ if(getSort() && getSortDir())
+ setSelector($('opac.result.sort'), getSort()+'.'+getSortDir());
+ }
}
function searchBarSubmit() {
var d = (newSearchDepth != null) ? newSearchDepth : depthSelGetDepth();
if(isNaN(d)) d = 0;
- //text = text.replace(/'/,'');
-
var args = {};
if(SHOW_MR_DEFAULT) {
args[PARAM_DEPTH] = d;
args[PARAM_FORM] = _fs.options[_fs.selectedIndex].value;
+ if($('opac.result.limit2avail')) {
+ args[PARAM_AVAIL] = ($('opac.result.limit2avail').checked) ? 1 : '';
+ if( (val = getSelectorVal($('opac.result.sort'))) ) {
+ args[PARAM_SORT] = val.split('.')[0]
+ args[PARAM_SORT_DIR] = val.split('.')[1]
+ }
+ }
+
goTo(buildOPACLink(args));
}
</select>
<!-- search term -->
- <input type='text' size='18' name='term' style='margin-right: 3px;'> </input>
+ <input type='text' size='18' name='term' style='margin-right: 3px;' />
<!-- Remove this row -->
<button
.adv_adv_link { font-size: 8pt; color: red; }
</style>
- <script src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/adv_global.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/adv_global.js'> </script>
<tr style='border-bottom: none;'>
</thead>
<tbody id='adv_global_tbody'>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.common.now_searching = 'now_searching_location';
</script>
<td rowspan='2'>
- <!--
- <table width='100%' style='margin-bottom: 3px;'>
- <thead>
- <tr>
- <td colspan='2' align='center'>
- <span>Group Formats and Editions</span>
- <input id='adv_group_titles' type='checkbox' checked='checked'> </input>
- </td>
- </tr>
- </thead>
- </table>
- -->
-
- <table with='100%'>
+ <table width='100%'>
<thead>
<tr><td colspan='2' align='center'>&advanced.search.filters;</td></tr>
</thead>
<tbody>
- <!--
- <tr>
- <td align='right'>Search Range</td>
- <td aligh='left'>
- < #include virtual="../common/libselect.xml" >
- </td>
- </tr>
- -->
<tr>
<td align='right'>
<span>&advanced.item.form;</span>
</td>
- <td aligh='left'>
- <select multiple='true' size='3' id='adv_global_item_form'>
+ <td align='left'>
+ <select multiple='multiple' size='3' id='adv_global_item_form'>
</select>
</td>
</tr>
'>&advanced.basic.link;</a>
</td>
- <td aligh='left'>
- <select multiple='true' size='3' id='adv_global_item_type' class='hide_me'>
+ <td align='left'>
+ <select multiple='multiple' size='3' id='adv_global_item_type' class='hide_me'>
</select>
- <select multiple='true' size='3' id='adv_global_item_type_basic'>
+ <select multiple='multiple' size='3' id='adv_global_item_type_basic'>
<option value='at'>&opac.search.books;</option>
<option value='i'>&opac.search.audioBooks;</option>
<option value='g'>&opac.search.videoRecordings;</option>
hideMe(this);
'>&advanced.basic.link;</a>
</td>
- <td aligh='left'>
- <select multiple='true' size='3' id='adv_global_lit_form' class='hide_me'>
+ <td align='left'>
+ <select multiple='multiple' size='3' id='adv_global_lit_form' class='hide_me'>
</select>
- <select multiple='true' size='3' id='adv_global_lit_form_basic'>
+ <select multiple='multiple' size='3' id='adv_global_lit_form_basic'>
<option value='0 '>&advanced.non.fiction;</option>
<option value='1'>&advanced.fiction;</option>
</select>
</td>
<td align='left'>
- <select multiple='true' size='3' id='adv_global_lang'>
+ <select multiple='multiple' size='3' id='adv_global_lang'>
<!--#include virtual="../../../../../common/xml/item_lang_options.xml"-->
</select>
</td>
</td>
<td align='left'>
- <select multiple='true' size='3' id='adv_global_audience' class='hide_me'>
+ <select multiple='multiple' size='3' id='adv_global_audience' class='hide_me'>
</select>
- <select multiple='true' size='3' id='adv_global_audience_basic'>
+ <select multiple='multiple' size='3' id='adv_global_audience_basic'>
<option value='e '>&advanced.adult;</option>
<option value='abcdj'>&advanced.juvenile;</option>
<option value='fg '>&advanced.general;</option>
<tr style='border-top: none;'>
<td align='center' valign='bottom' style='border-top: none;'>
- <!--
- <table width='100%' style='padding: 1px;'>
- <thead>
- <tr>
- <td colspan='2' align='center'>
- <span>Group Formats and Editions</span>
- <input id='adv_group_titles' type='checkbox' checked='checked'> </input>
- </td>
- </tr>
- </thead>
- </table>
- -->
-
-
<table style='border: none; width: 100%;'>
<tr>
<td align='center' width='100%'>
<tbody>
<tr>
- <script>
+ <script language='javascript' type='text/javascript'>
function __setsortsel() {
var sel = $('adv_global_sort_by')
if(sel.selectedIndex == 0) {
</td>
<!-- force the enable/disable sort dir code to run -->
- <script>__setsortsel();</script>
+ <script language='javascript' type='text/javascript'>__setsortsel();</script>
<td align='center'>
<!--#include virtual="../common/libselect.xml"-->
</tr>
<tr>
- <td colspan='2' align='center'>
+ <td align='center'>
<span>&advanced.frbrize;</span>
- <!--
- <input id='adv_group_titles' type='checkbox' checked='checked'> </input>
- -->
- <input id='adv_group_titles' type='checkbox'> </input>
+ <input id='adv_group_titles' type='checkbox' />
</td>
+ <td align='center'>
+ <span>&result.limit2avail;</span>
+ <input type='checkbox' id='opac.result.limit2avail'/>
+ </td>
</tr>
</tbody>
</table>
<tr id='advanced.marc.template'>
<td>
<span>&opac.advanced.marc.tag;: </span>
- <input name='advanced.marc.tag' maxlength='3' size='3'> </input>
+ <input name='advanced.marc.tag' maxlength='3' size='3' />
</td>
<td>
<span>&opac.advanced.marc.subfield;: </span>
- <input name='advanced.marc.subfield' maxlength='1' size='1'> </input>
+ <input name='advanced.marc.subfield' maxlength='1' size='1' />
</td>
<td>
<span>&opac.advanced.marc.value;: </span>
- <input name='advanced.marc.value' size='36'> </input>
+ <input name='advanced.marc.value' size='36' />
</td>
<td>
var tbody = row.parentNode;
if(tbody.getElementsByTagName("tr").length > 2)
tbody.removeChild(row);
- '> </input>
+ ' />
</td>
</tr>
<tr id='advanced.marc.submit.row'>
<td colspan='4' align='center'>
<input name='advanced.marc.addrow' type='submit' onclick='advAddMARC();'
- value='&opac.advanced.marc.addrow;'> </input>
+ value='&opac.advanced.marc.addrow;' />
<input style='margin-left: 10px;'
- onclick='advMARCRun();' type='submit' value='&common.submit;'> </input>
+ onclick='advMARCRun();' type='submit' value='&common.submit;' />
</td>
</tr>
</tbody>
<tr>
<td>
<span style='padding-right: 0px;'>&common.call.number.label;</span>
- <input id='opac.advanced.quick.cn' style='margin: 2px;' type='text' size='12'> </input>
- <input type='submit' onclick='advCNRun();' value='&advanced.go;'> </input>
+ <input id='opac.advanced.quick.cn' style='margin: 2px;' type='text' size='12' />
+ <input type='submit' onclick='advCNRun();' value='&advanced.go;' />
</td>
<td>
<span style='padding-right: 0px;'>&common.isbn.label;</span>
- <input id='opac.advanced.quick.isbn' style='margin: 2px;' type='text' size='13' maxlength='13'> </input>
- <input type='submit' onclick='advISBNRun();' value='&advanced.go;'> </input>
+ <input id='opac.advanced.quick.isbn' style='margin: 2px;' type='text' size='13' maxlength='13' />
+ <input type='submit' onclick='advISBNRun();' value='&advanced.go;' />
</td>
<td>
<span style='padding-right: 0px;'>&common.issn.label;</span>
- <input id='opac.advanced.quick.issn' style='margin: 2px;' type='text' size='9' maxlength='9'> </input>
- <input type='submit' onclick='advISSNRun();' value='&advanced.go;'> </input>
+ <input id='opac.advanced.quick.issn' style='margin: 2px;' type='text' size='9' maxlength='9' />
+ <input type='submit' onclick='advISSNRun();' value='&advanced.go;' />
</td>
</tr>
</tbody>
</tr>
</tbody>
</table>
- <center>
<!--#include virtual='footer.xml'-->
- </center>
</body>
<!-- ============================================================================= -->
<!-- Register the alternate canvases -->
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.altcanvas.org_tree = config.ids.common.org_container;
config.ids.altcanvas.holds = 'holds_box';
config.ids.altcanvas.check_holds = 'check_holds_box';
<div id='loading_alt' class='hide_me canvas' style='margin-top: 6px;'>
<div style='margin-top: 30px; margin-bottom: 30px; text-align: center; font-weight: 700;' class='color_3'>
- <img src='../../../../images/progressbar_green.gif' style='margin: 5px;'> </img>
+ <img src='../../../../images/progressbar_green.gif' style='margin: 5px;' />
</div>
</div>
<tr id='cn_browse_row'>
<td id='cn_browse_td' class='cn_browse_item' width='25%' valign='top'>
<a><img height='60' width='50'
- class='cn_browse_info' name='cn_browse_pic' border='0'> </img></a>
+ class='cn_browse_info' name='cn_browse_pic' border='0' /></a>
<div style='font-weight: bold;' class='cn_browse_info' name='cn_browse_cn'> </div>
<div class='cn_browse_info'><a name='cn_browse_title' class='classic_link'> </a></div>
<div class='cn_browse_info'><a name='cn_browse_author' class='classic_link'> </a></div>
<link type='text/css' rel='stylesheet' href="<!--#echo var='OILS_SKIN_BASE'-->/default/css/layout.css"/>
<!-- Our font CSS's -->
-<link type='text/css' rel='stylesheet'
- href='<!--#echo var="OILS_CSS_BASE"-->/mediumfont.css' name='meduim_fonts' csstype='font'/>
+<link type='text/css' rel='stylesheet' href='<!--#echo var="OILS_CSS_BASE"-->/mediumfont.css' />
<!-- Our colors -->
-<link type='text/css' rel="stylesheet" href="<!--#echo var='OILS_THEME_BASE'-->/default/css/colors.css"
- name='Default' csstype='color'/>
+<link type='text/css' rel="stylesheet" href="<!--#echo var='OILS_THEME_BASE'-->/default/css/colors.css" />
-<link type='text/css' rel="alternate stylesheet" title='&opac.style.reddish;' href="<!--#echo var='OILS_THEME_BASE'-->/reddish/css/colors.css"
- name='Default' csstype='color'/>
+<!-- An alternate stylesheet -->
+<link type='text/css' rel="alternate stylesheet" title='&opac.style.reddish;' href="<!--#echo var='OILS_THEME_BASE'-->/reddish/css/colors.css" />
<!-- OpenSearch auto discovery -->
-<link rel='search'
- type="application/opensearchdescription+xml"
- title="Evergreen"
- href="http://<!--#echo var='SERVER_NAME'-->/opac/extras/opensearch/1.1/-/osd.xml"> </link>
+<link type="application/opensearchdescription+xml"
+ rel='search' title="Evergreen"
+ href="http://<!--#echo var='SERVER_NAME'-->/opac/extras/opensearch/1.1/-/osd.xml" />
+<link rel="stylesheet" type="text/css"
+ href='<!--#echo var="OILS_JS_BASE"-->/jscalendar/calendar-brown.css' title="win2k-cold-1" />
+<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/jscalendar/calendar.js'></script>
+<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/jscalendar/lang/calendar-en.js'></script>
+<script language='javascript' type='text/javascript' src='<!--#echo var="OILS_JS_BASE"-->/jscalendar/calendar-setup.js'></script>
<div>
<div id='xulholds_box' class='hide_me canvas' style='margin-top: 6px;'>
<tbody>
<tr>
<td>&opac.holds.xulRecipient;:</td>
- <td><input type='text' id='xul_recipient_barcode'> </input></td>
+ <td><input type='text' id='xul_recipient_barcode' /></td>
<td><input type='submit' value='&common.submit;'
- id='xul_recipient_barcode_submit'> </input></td>
+ id='xul_recipient_barcode_submit' /></td>
<td><input type='submit' value='&common.hold.place;'
- id='xul_recipient_me'> </input></td>
- <td><input type='submit' value='&common.cancel;' onclick='showCanvas();'></input></td>
+ id='xul_recipient_me' /></td>
+ <td><input type='submit' value='&common.cancel;' onclick='showCanvas();' /></td>
</tr>
</tbody>
</td>
</tr>
+ <tr>
+ <td class='holds_cell'>
+ &opac.holds.freeze;
+ (<a class='classic_link' href='javascript:alert("&opac.holds.freeze.help;");'>&common.help;</a>)
+ </td>
+ <td class='holds_cell'>
+ <input type='checkbox' id='holds_frozen_chkbox'
+ onchange='
+ if($("holds_frozen_chkbox").checked)
+ unHideMe($("hold_frozen_thaw_row"));
+ else
+ hideMe($("hold_frozen_thaw_row"));
+ ' />
+ </td>
+ </tr>
+
+ <tr id='hold_frozen_thaw_row' class='hide_me'>
+ <td class='holds_cell'>
+ <script language='javascript' type='text/javascript'> if($('holds_frozen_chkbox').checked) unHideMe($("hold_frozen_thaw_row"));</script>
+ &opac.holds.freeze.thaw_date;
+ </td>
+ <td class='holds_cell'>
+ <input size='10' maxlength='10' id='holds_frozen_thaw_input' />
+ <button style='padding: 0px;' id='holds_frozen_thaw_date_button'>
+ <img src='<!--#echo var="OILS_JS_BASE"-->/jscalendar/img.gif'
+ style="cursor: pointer; border: 1px solid red; padding: 0px; margin: -3px;"
+ title="Date selector"
+ onmouseover="this.style.background='red';"
+ onmouseout="this.style.background=''" />
+ </button>
+ (&opac.holds.freeze.thaw_date.format;)
+
+ <script language='javascript' type="text/javascript">
+ Calendar.setup({
+ inputField : "holds_frozen_thaw_input",
+ ifFormat : "%Y-%m-%d",
+ button : "holds_frozen_thaw_date_button",
+ align : "Tl",
+ singleClick : true
+ });
+ </script>
+
+ </td>
+ </tr>
+
<tr id='holds_alt_formats_row_extras' class='hide_me'>
<td colspan='2' align='center'>
<div style='padding: 8px;'>
</td>
<td class='holds_cell'>
- <select id='hold_alt_form_selector' multiple='true' style='width: 14em;'>
+ <select id='hold_alt_form_selector' multiple='multiple' style='width: 14em;'>
<option value='at' class='hide_me'>&opac.search.books;</option>
<option value='at-d' class='hide_me'>&opac.search.largePrint;</option>
<option value='i' class='hide_me'>&opac.search.audioBooks;</option>
-<div>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/utils.js'> </script>
-
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/utils.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/config.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/CGI.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/Cookies.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/md5.js'> </script>
-
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/slimtree.js'> </script>
-
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/JSON.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/fmcore.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/fmgen.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/opac_utils.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/OrgTree.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/org_utils.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/RemoteRequest.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/init.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/added_content.js'> </script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/utils.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/config.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/CGI.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/Cookies.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/md5.js' type='text/javascript'></script>
+
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/slimtree.js' type='text/javascript'></script>
+
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/JSON.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/fmcore.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/fmgen.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/opac_utils.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/OrgTree.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/org_utils.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/RemoteRequest.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/init.js' type='text/javascript'></script>
+ <script language='javascript' src='<!--#echo var="OILS_JS_BASE"-->/added_content.js' type='text/javascript'></script>
<!-- Some global js -->
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.css.color_1 = "color_1";
config.css.color_2 = "color_2";
<!-- set up some global JS config variables, read from the Apache config -->
var OILS_OPAC_IMAGES_HOST = null;
<!--#if expr="$OILS_OPAC_IMAGES_HOST"-->
- OILS_OPAC_IMAGES_HOST = '<!--#echo var="OILS_OPAC_IMAGES_HOST"-->extras/jacket/';
+ OILS_OPAC_IMAGES_HOST = '<!--#echo var="OILS_OPAC_IMAGES_HOST"-->extras/ac/jacket/';
<!--#endif -->
</script>
-
-</div>
-
-
<span>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/depth_selector.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/depth_selector.js'></script>
<span class='hide_me' id='depth_selector_span'>
<!--#if expr="$SHOW_DEPTHSEL_TEXT='true'"-->
<span>&library.select; </span>
<div id='login_box' class='hide_me canvas' style='margin-top: 6px;'>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.login = {};
config.css.login = {};
config.ids.login.box = "login_box";
<td><span class='login_text'>&login.username;</span></td>
<td>
<span class='login_text'>
- <input id='login_username' type='text' size='16'> </input>
+ <input id='login_username' type='text' size='16' />
</span>
</td>
</tr>
</td>
<td>
<span class='login_text'>
- <input id='login_password' type='password' size='16'> </input>
+ <input id='login_password' type='password' size='16' />
</span>
</td>
</tr>
<div id='logo_div'>
- <script language='javascript'>config.ids.common.top_logo = "top_left_logo";</script>
- <img style='margin-right: 4px;' src='<!--#echo var="OILS_BASE"-->/images/small_logo.jpg' id='top_left_logo' border='0' class='logo'> </img>
+ <script language='javascript' type='text/javascript'>config.ids.common.top_logo = "top_left_logo";</script>
+ <img style='margin-right: 4px;' src='<!--#echo var="OILS_BASE"-->/images/small_logo.jpg' id='top_left_logo' border='0' class='logo' />
</div>
<div id='searchbar'>
<!-- load my js -->
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.searchbar = {};
config.css.searchbar = {};
config.ids.searchbar.text = 'search_box';
<td nowrap='nowrap' align='center' class='search_box_container color_2'>
- <input id='search_box' style='width: 190px;' type='text' />
+ <input id='search_box' type='text' />
<span style='padding-left: 6px;'>
<input type='button' style='width: 40px;' id='search_submit' value='&button.go;' />
</span>
</tr>
</tbody>
</table>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/search_bar.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/search_bar.js'></script>
</div>
<div id='subject_tree_sidebar' class='sidebar_chunk hide_me' style='margin-top: 12px;'>
<div id='subject_sidebar_tree_div'> </div>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
removeChildren($('subject_sidebar_tree_div'));
var subjectSidebarTree = new SlimTree(
document.getElementById('subject_sidebar_tree_div'),
<div id='author_tree_sidebar' class='sidebar_chunk hide_me'>
<hr/>
<div id='author_sidebar_tree_div'> </div>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
removeChildren($('author_sidebar_tree_div'));
var authorSidebarTree = new SlimTree(
document.getElementById('author_sidebar_tree_div'),
<div id='series_tree_sidebar' class='sidebar_chunk hide_me'>
<hr/>
<div id='series_sidebar_tree_div'> </div>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
removeChildren($('series_sidebar_tree_div'));
var seriesSidebarTree = new SlimTree(
document.getElementById('series_sidebar_tree_div'),
<option value='barcode'>&opac.advanced.quick.barcode;</option>
</select>
</td><td>
- <input type='text' id='adv_quick_text' size='16'> </input>
+ <input type='text' id='adv_quick_text' size='16' />
</td>
</tr></tbody></table>
</div>
<tbody>
<tr>
<td>&search.marc.tag;</td>
- <td><input name='advanced.marc.tag' maxlength='3' size='3'> </input></td>
+ <td><input name='advanced.marc.tag' maxlength='3' size='3' /></td>
<td>&search.marc.subfield;</td>
- <td><input name='advanced.marc.subfield' maxlength='1' size='1'> </input></td>
+ <td><input name='advanced.marc.subfield' maxlength='1' size='1' /></td>
</tr>
<tr>
<td>&search.marc.value;</td>
- <td colspan='3'><input name='advanced.marc.value' size='18'> </input></td>
+ <td colspan='3'><input name='advanced.marc.value' size='18' /></td>
</tr>
<tr name='crow' class='hide_me'>
<td colspan='4' align='center'>
<!-- ============================================================================= -->
<!-- Our javascript -->
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar.js'></script>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.sidebar = {};
config.css.sidebar = {};
config.names.sidebar = {};
<span>&status.results;</span> <b id='including_results_location'> </b>
</i>
</td>
+ <td align='right'>
+ <!--#if expr="$OILS_PAGE='rresult.xml'"-->
+ <!--#include virtual="../result/filtersort.xml" -->
+ <!--#endif -->
+ </td>
</tr>
</tbody>
</table>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.common.now_searching = 'now_searching_location';
</script>
-<div
- style='width: 100%; text-align:center; vertical-align: bottom; margin-top: 20px;'>
- <center id='copyright_block'>
- <style>
- .footer_link {
- margin-left: 10px;
- margin-right: 10px;
- }
- </style>
-
- <div style='width: 60%; text-align:center; padding: 10px; font-size: 8pt;'>
-
+<div id='copyright_block'>
+ <div id='footer_links'>
<span class='footer_link'>
<a class='classic_link'
href='/opac/extras/slimpac/start.html'>&opac.basic;</a>
</span>
<span> | </span>
<span class='footer_link'>
- <a target='' class='classic_link' id='eg_gal_link'
+ <a target='_blank' class='classic_link' id='eg_gal_link'
href='&footer.union.url;'>&footer.union;</a>
</span>
- <br/>
- <div style='margin-top: 4px; font-size: 7pt;'>
- <span>&footer.copyright;</span>
- </div>
</div>
- <div>&footer.logo;
+ <div id='copyright_text'>
+ <span>&footer.copyright;</span>
+ </div>
+ <div id='footer_logo'>&footer.logo;
<a href='http://open-ils.org'><img style='border:none;' src='../../../../images/eg_tiny_logo.jpg'/></a>
</div>
- </center>
</div>
xmlns="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude">
<!-- load my js -->
- <script language='javascript'
+ <script language='javascript' type='text/javascript'
src="<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/depth_selector.js"> </script>
- <script language='javascript'
+ <script language='javascript' type='text/javascript'
src="<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/search_bar.js"> </script>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.searchbar = {};
config.css.searchbar = {};
config.ids.searchbar.text = 'search_box';
<tr class='color_3'>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.common.now_searching = 'now_searching_location';
</script>
</tr>
</tbody>
</table>
- <script language='javascript'>isFrontPage = true;</script>
- <script language="javascript">
+ <script language='javascript' type='text/javascript'>isFrontPage = true;</script>
+ <script language="javascript" type='text/javascript'>
try {
document.getElementById('toptable').style.display = 'table';
} catch(e) {
} catch(ee) {}
}
</script>
- <center>
<!--#include virtual='../footer.xml'-->
- </center>
</body>
<div id='myopac_bookbag_div' class='hide_me' xmlns:xi="http://www.w3.org/2001/XInclude" >
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/container.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/container.js'> </script>
<div id='myopac_delete_bookbag_warn' class='hide_me'>
&myopac.delete.bookbag;
<tr>
<td>
<span style='padding-right: 5px;'>&myopac.bookbag.naming;</span>
- <input id='myopac_bookbag_new_name' type='text'> </input>
+ <input id='myopac_bookbag_new_name' type='text' />
</td>
</tr>
<tr>
<span>&common.yes;</span> <input type='radio' name='bb_public' id='bb_public_yes'/>
<span>&common.no;</span> <input type='radio' name='bb_public' id='bb_public_no' checked='checked'/>
<input style='padding-left: 10px;' onclick='myOPACCreateBookbag();'
- type='submit' value='&common.submit;'> </input>
+ type='submit' value='&common.submit;' />
</td>
</tr>
</tbody>
<div id='myopac_checked_div' xmlns:xi="http://www.w3.org/2001/XInclude" >
<!--
- <script language='javascript' src='<!||#echo var="OILS_JS_BASE"||>/Date.W3CDTF.js'/>
+ <script language='javascript' type='text/javascript' src='<!||#echo var="OILS_JS_BASE"||>/Date.W3CDTF.js'/>
-->
<table width='100%'><tbody>
<div id='myopac_holds_div' xmlns:xi="http://www.w3.org/2001/XInclude" >
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'> </script>
-
- <table width='100%' class='light_border data_grid data_grid_center'>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'> </script>
+
+ <table width='100%'>
+ <tbody><tr><td width='100%' align='right'>
+ <select id='myopac_holds_actions' onchange='myopacDoHoldAction();'>
+ <option id='myopac_holds_actions_none' value=''>-- &myopac.holds.actions; --</option>
+ <option value='freeze'>&myopac.holds.freeze_selected;</option>
+ <option value='thaw'>&myopac.holds.thaw_selected;</option>
+ <option value='thaw_date'>&myopac.holds.thaw_date_selected;</option>
+ <option value='cancel'>&myopac.holds.cancel_selected;</option>
+ </select>
+ </td></tr></tbody>
+ <script language='javascript' type='text/javascript'>$('myopac_holds_actions_none').selected = true;</script>
+ </table>
+
+ <span id='myopac.holds.cancel.confirm' class='hide_me'>&myopac.holds.cancel.confirm;</span>
+ <span id='myopac.holds.freeze.confirm' class='hide_me'>&myopac.holds.freeze.confirm;</span>
+ <span id='myopac.holds.thaw.confirm' class='hide_me'>&myopac.holds.thaw.confirm;</span>
+ <span id='myopac.holds.thaw_date.confirm' class='hide_me'>&myopac.holds.thaw_date.confirm;</span>
+ <span id='myopac.holds.freeze.select_thaw' class='hide_me'>&myopac.holds.freeze.select_thaw;</span>
+
+ <table width='100%' id='myopac_holds_processing' class='hide_me'>
+ <tr><td>&myopac.holds.processing;</td></tr>
+ </table>
+
+ <table width='100%' class='light_border data_grid data_grid_center' id='myopac_holds_main_table'>
<thead class='color_3'>
<tr>
<td>&myopac.holds.formats;</td>
<td>&myopac.holds.location;</td>
<td>&common.status;</td>
- <td>&myopac.holds.edit.cancel;</td>
+ <td>&myopac.holds.unfrozen;</td>
+ <td>&myopac.holds.frozen.until;</td>
+ <td width='15%'>&common.select;
+ (<a id='myopac_select_all_holds' onclick='myopacSelectAllHolds();'
+ class='classic_link' href='javascript:void(0);'>&common.all;</a>/<a id='myopac_select_none_holds'
+ onclick='myopacSelectNoneHolds();' class='classic_link' href='javascript:void(0);'>&common.none;</a>)
+ </td>
+
+ <td>&myopac.holds.edit;</td>
</tr>
</thead>
<span class='hide_me' name='hold_status_available'><b style='color:red'></b></span>
</td>
+ <td>
+ <span name='myopac_hold_unfrozen_false' class='x_mark'>✗</span>
+ <span name='myopac_hold_unfrozen_true' class='hide_me check_mark'>✓</span>
+ </td>
+
+ <td name='myopac_holds_frozen_until'></td>
+ <td><input type='checkbox' name='myopac_holds_selected_chkbx'/></td>
+
<td name='myopac_holds_cancel' style='border-left: 3px solid #E0E0E0; border-right: 3px solid #E0E0E0;'>
<a href='javascript:void(0);'
name='myopac_holds_edit_link' class='classic_link'>&myopac.holds.edit;</a>
- <a href='javascript:void(0);'
- name='myopac_holds_cancel_link' class='classic_link'>&myopac.holds.cancel;</a>
</td>
-
</tr>
</tbody>
</table>
onclick='
if( this.checked ) $("prefs_def_location").disabled = true;
else $("prefs_def_location").disabled = false;
- '> </input> &myopac.prefs.search.home;
+ ' /> &myopac.prefs.search.home;
</div>
<select id='prefs_def_location'>
</select>
<td class='myopac_update_cell' colspan='3'>
<span class='myopac_update_span'>&myopac.summary.username.enter; </span>
<input type='text' size='24' id='myopac_new_username'
- onkeydown='if(userPressedEnter(event)) myOPACUpdateUsername();'> </input>
+ onkeydown='if(userPressedEnter(event)) myOPACUpdateUsername();' />
<span class='myopac_update_span'>
<button onclick='myOPACUpdateUsername();'>&common.submit;</button>
</span>
<tr>
<td><span class='myopac_update_span'>&myopac.summary.password.current; </span></td>
<td><input type='password' size='24' id='myopac_current_password'
- onkeydown='if(userPressedEnter(event)) myOPACUpdatePassword();'> </input></td>
+ onkeydown='if(userPressedEnter(event)) myOPACUpdatePassword();' /></td>
</tr>
<tr>
<td><span class='myopac_update_span'>&myopac.summary.password.new; </span></td>
<td><input type='password' size='24' id='myopac_new_password'
- onkeydown='if(userPressedEnter(event)) myOPACUpdatePassword();'> </input></td>
+ onkeydown='if(userPressedEnter(event)) myOPACUpdatePassword();' /></td>
</tr>
<tr>
<td><span class='myopac_update_span'>&myopac.summary.password.reenter; </span></td>
<td><input type='password' size='24' id='myopac_new_password2'
- onkeydown='if(userPressedEnter(event)) myOPACUpdatePassword();'> </input></td>
+ onkeydown='if(userPressedEnter(event)) myOPACUpdatePassword();' /></td>
</tr>
</tbody></table>
<td class='myopac_update_cell' colspan='3'>
<span class='myopac_update_span'>&myopac.summary.email.new; </span>
<input type='text' size='24' id='myopac_new_email'
- onkeydown='if(userPressedEnter(event)) myOPACUpdateEmail();'> </input>
+ onkeydown='if(userPressedEnter(event)) myOPACUpdateEmail();' />
<span class='myopac_update_span'>
<button onclick='myOPACUpdateEmail();'>&common.submit;</button>
</span>
<div id='canvas_main' class='canvas' style='margin-top: 20px;'>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/advanced.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/advanced.js'></script>
<style type='text/css'>
.advanced_div { text-align: center; margin: 8px; margin-left: 2px; width: 95%; padding: 5px; }
<div id='canvas_main' class='canvas' style='margin-top: 20px;'>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/cn_browse.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/cn_browse.js'></script>
<!--#include virtual="common/cn_browse.xml"-->
</div>
<div>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar_extras.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/mresult.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/result_common.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/tips.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar_extras.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/mresult.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/result_common.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/tips.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'></script>
<!--#include virtual="result/result_common.xml"-->
</div>
<div id='canvas_main' class='canvas hide_me'>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/myopac.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/DP_DateExtensions.js'/>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/myopac.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/DP_DateExtensions.js'></script>
- <script> config.ids.altcanvas.myopac_reload = 'myopac_reloading'; </script>
+ <script language='javascript' type='text/javascript'> config.ids.altcanvas.myopac_reload = 'myopac_reloading'; </script>
<div id='myopac_reloading' class='hide_me canvas'> &common.loading; </div>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.myopac = {};
config.css.myopac = {};
config.names.myopac = {};
<div id='canvas_main' class='canvas'>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar_extras.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/result_common.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/rresult.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/rdetail.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/cn_browse.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/container.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar_extras.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/result_common.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/rresult.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/rdetail.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/cn_browse.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/container.js'></script>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.rdetail = {};
config.ids.rdetail.view_marc = "rdetail_view_marc";
</script>
<div>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar_extras.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/rresult.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/result_common.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/tips.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/sidebar_extras.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/rresult.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/result_common.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/tips.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/holds.js'></script>
<!--#include virtual="result/result_common.xml"-->
</div>
<div class=''>
<!--
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.rdetail.view_marc_div = 'view_marc_div';
config.ids.altcanvas.view_marc_div = config.ids.rdetail.view_marc_div;
config.ids.rdetail.hide_marc = "rdetail_hide_marc";
<table class='hide_me'>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/copy_details.js'> </script>
- <script language='javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/Date.W3CDTF.js'> </script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/skin/default/js/copy_details.js'></script>
+ <script language='javascript' type='text/javascript' src='<!--#echo var="OILS_OPAC_JS_HOST"-->/common/js/Date.W3CDTF.js'></script>
<tbody>
<tr style='border: 3px solid #E0E0E0;' id='rdetail_volume_details_row' templateRow='1'>
<td colspan='10'>
<div id='rdetail_copy_info_none' class='hide_me'>&rdetail.noneAvailable;</div>
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.rdetail.cp_status = "rdetail_copy_info_status";
config.ids.rdetail.cp_info_row = "rdetail_copy_info_row";
config.ids.rdetail.cp_info_loading = "rdetail_copy_info_loading";
<table id='rdetail_details_table'>
<tbody id='rdetail_details_tbody'>
-
-
<tr>
<td id='rdetail_image_cell' rowspan='10'>
<a id='rdetail_img_link'>
- <img style='border: none;' id='rdetail_image'> </img>
+ <img style='border: none;' id='rdetail_image'
+ onerror='
+ hideMe($("rdetail.jacket_attrib_div"));
+ hideMe($("rdetail_img_link"));'/>
</a>
+ <!-- vendor attribution link -->
+ <div class='jacket_attrib hide_me' id='rdetail.jacket_attrib_div'>
+ <div>&opac.image_provided;</div>
+ <div><a target='_blank' href='&vendor.base_link;'
+ class='classic_link' id='rdetail.jacket_attrib_link'>&vendor.name;</a></div>
+ </div>
</td>
<td nowrap='nowrap' class='rdetail_desc'>&common.title;</td>
<td class='rdetail_item' id='rdetail_title'> </td>
<tr>
<td nowrap='nowrap' class='rdetail_desc'>&common.format;</td>
<td class='rdetail_item'>
- <img id='rdetail_tor_pic' class='tor_pic'> </img>
+ <img id='rdetail_tor_pic' class='tor_pic' />
<span id='rdetail_tor' style='padding-left: 5px;'> </span>
</td>
</tr>
</tbody>
</table>
- <script language='javascript'>
+ <!-- Empty span used for creating unAPI links -->
+ <abbr name="unapi" class="unapi-id">
+ <!-- unAPI URI goes here -->
+ </abbr>
+
+ <script language='javascript' type='text/javascript'>
config.ids.rdetail.details_body = 'rdetail_details_body';
config.ids.rdetail.title = 'rdetail_title';
config.ids.rdetail.author = 'rdetail_author';
--- /dev/null
+<span>
+ &result.limit2avail;<input type='checkbox' id='opac.result.limit2avail' onclick='searchBarSubmit();'/>
+ <select id='opac.result.sort' onchange='searchBarSubmit();'>
+ <option selected='selected' value=''>&result.sort_by;</option>
+ <optgroup label='&result.sort_by.title;'>
+ <option id='opac.result.title.a2z' label='&common.a2z.titla;' value='title.asc'>&common.a2z.title;</option>
+ <option id='opac.result.title.z2a' label='&common.z2a.titla;' value='title.desc'>&common.z2a.title;</option>
+ </optgroup>
+ <optgroup label='&result.sort_by.author;'>
+ <option id='opac.result.author.a2z' label='&common.a2z.author;' value='author.asc'>&common.a2z.author;</option>
+ <option id='opac.result.author.z2a' label='&common.z2a.author;' value='author.desc'>&common.z2a.author;</option>
+ </optgroup>
+ <optgroup label='&result.sort_by.pubdate;'>
+ <option id='opac.result.pubdate.new2old' label='&common.new2old.pubdate;'
+ value='pubdate.desc'>&common.new2old.pubdate;</option>
+ <option id='opac.result.pubdate.old2new' label='&common.old2new.pubdate;'
+ value='pubdate.asc'>&common.old2new.pubdate;</option>
+ </optgroup>
+ </select>
+</span>
<div id='canvas_main' class='canvas' xmlns:xi="http://www.w3.org/2001/XInclude" >
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.ids.result = {};
config.css.result = {};
config.names.result = {};
style='padding-left: 40px;' >
<a class='search_page_nav_link' id='search_home_link'
title="&rdetail.page.results;">&rdetail.start;</a><a class='search_page_nav_link'
- id='prev_link' title='&rdetail.page.previous;'><<</a>
+ id='prev_link' title='&rdetail.page.previous;'>«</a>
<span class='search_page_nav_link' id='page_numbers'> </span>
<a class='search_page_nav_link' id='next_link'
- title='&rdetail.page.next;'>>></a><a class='search_page_nav_link'
+ title='&rdetail.page.next;'>»</a><a class='search_page_nav_link'
id='end_link' title="&rdetail.page.last;">&rdetail.end;</a>
</span>
<!-- for some reason, this is the only way i can force the cell widths -->
<thead id='result_thead'>
- <td class='result_table_pic_header'></td>
- <td> </td>
+ <tr>
+ <td class='result_table_pic_header'></td>
+ <td> </td>
+ </tr>
</thead>
<tbody id='result_table'>
<a title="&result.table.keyword;" name='item_title' class='search_link'>
<!-- Title goes here -->
</a>
- <!-- Empty span used for creating unAPI links -->
- <abbr name="unapi" class="unapi-id">
- <!-- unAPI URI goes here -->
- </abbr>
</td>
<!-- Copy this td for each copy count appended -->
<td name='result_table_format_cell' class='result_table_format_cell'>
<a name='text_link' class='search_link'>
- <img src='../../../../images/tor/text.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/text.jpg' class='dim tor_pic' />
</a>
<a name='sound recording-nonmusical_link' class='search_link'>
- <img src='../../../../images/tor/sound recording-nonmusical.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/sound recording-nonmusical.jpg' class='dim tor_pic' />
</a>
<a name='moving image_link' class='search_link'>
- <img src='../../../../images/tor/moving image.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/moving image.jpg' class='dim tor_pic' />
</a>
<a name='software, multimedia_link' class='search_link'>
- <img src='../../../../images/tor/software, multimedia.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/software, multimedia.jpg' class='dim tor_pic' />
</a>
<a name='sound recording-musical_link' class='search_link'>
- <img src='../../../../images/tor/sound recording-musical.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/sound recording-musical.jpg' class='dim tor_pic' />
</a>
<a name='cartographic_link' class='search_link'>
- <img src='../../../../images/tor/cartographic.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/cartographic.jpg' class='dim tor_pic' />
</a>
<a name='mixed material_link' class='search_link'>
- <img src='../../../../images/tor/mixed material.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/mixed material.jpg' class='dim tor_pic' />
</a>
<a name='notated music_link' class='search_link'>
- <img src='../../../../images/tor/notated music.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/notated music.jpg' class='dim tor_pic' />
</a>
<a name='sound recording_link' class='search_link'>
- <img src='../../../../images/tor/sound recording.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/sound recording.jpg' class='dim tor_pic' />
</a>
<a name='still image_link' class='search_link'>
- <img src='../../../../images/tor/still images.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/still images.jpg' class='dim tor_pic' />
</a>
<a name='three dimensional object_link' class='search_link'>
- <img src='../../../../images/tor/three dimensional object.jpg' class='dim tor_pic'> </img>
+ <img src='../../../../images/tor/three dimensional object.jpg' class='dim tor_pic' />
</a>
<span class='hide_me'
</span>
<span class='hide_me' name='place_hold_span'>
- <a style='padding-left: 8px;' href='javascript:void(0);'
+ <a style='padding-left: 8px; padding-right: 10px;' href='javascript:void(0);'
class='classic_link' name='place_hold_link'>&opac.holds.placeHold;</a>
</span>
+ <!-- Empty span used for creating unAPI links -->
+ <abbr name="unapi" class="unapi-id">
+ <!-- unAPI URI goes here -->
+ </abbr>
+
</td>
</tr>
style='padding-left: 40px;' >
<a class='search_page_nav_link' id='search_home_link2'
title="&rdetail.page.results;">&rdetail.start;</a><a class='search_page_nav_link'
- id='prev_link2' title='&rdetail.page.previous;'><<</a>
+ id='prev_link2' title='&rdetail.page.previous;'>«</a>
<span class='search_page_nav_link' id='page_numbers2'> </span>
<a class='search_page_nav_link' id='next_link2'
- title='&rdetail.page.next;'>>></a><a class='search_page_nav_link'
+ title='&rdetail.page.next;'>»</a><a class='search_page_nav_link'
id='end_link2' title="&rdetail.page.last;">&rdetail.end;</a>
</span>
<!-- ====================== -->
- <script language='javascript'>
+ <script language='javascript' type='text/javascript'>
config.names.result.format_cell = 'result_table_format_cell';
config.names.result.format_link = 'resource_link'
config.names.result.format_pic = 'format_pic'
-
+.x_mark { color: red; }
+.check_mark { color: green; }