From 172fa593ec00329be5ee6baa364bcea6bffba02c Mon Sep 17 00:00:00 2001 From: dbs Date: Tue, 21 Jul 2009 05:36:01 +0000 Subject: [PATCH] Merge r13649 from trunk: Expose create and delete MFHD records as UI elements in staff client record display git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_1_6@13654 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/web/js/dojo/openils/opac/nls/opac.js | 7 +++- Open-ILS/web/opac/common/js/config.js | 2 + Open-ILS/web/opac/skin/default/js/rdetail.js | 55 ++++++++++++++++++++------- 3 files changed, 50 insertions(+), 14 deletions(-) diff --git a/Open-ILS/web/js/dojo/openils/opac/nls/opac.js b/Open-ILS/web/js/dojo/openils/opac/nls/opac.js index a0c5878b68..69d5bd25f0 100644 --- a/Open-ILS/web/js/dojo/openils/opac/nls/opac.js +++ b/Open-ILS/web/js/dojo/openils/opac/nls/opac.js @@ -1,5 +1,10 @@ { - "EDIT_LABEL": "Edit", + "CREATE_MFHD": "Add MFHD record", + "CREATED_MFHD_RECORD": "Created MFHD record for ${0}", + "DELETED_MFHD_RECORD": "Deleted MFHD record ${0}", + "EDIT_MFHD_RECORD": "Edit MFHD Record", + "EDIT_MFHD_MENU": "Edit Holdings", + "EDIT_PROPERTIES": "Edit Propeties", "HOLDINGS": "Previous volumes", "INDEXES": "Previous indexes", "CURRENT_HOLDINGS": "Current volume", diff --git a/Open-ILS/web/opac/common/js/config.js b/Open-ILS/web/opac/common/js/config.js index 306a7296b6..382ed22825 100644 --- a/Open-ILS/web/opac/common/js/config.js +++ b/Open-ILS/web/opac/common/js/config.js @@ -291,6 +291,8 @@ 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 CREATE_MFHD_RECORD = "open-ils.cat:open-ils.cat.serial.record.xml.create"; +var DELETE_MFHD_RECORD = "open-ils.cat:open-ils.cat.serial.record.delete"; var FETCH_MFHD_SUMMARY = "open-ils.search:open-ils.search.serial.record.bib.retrieve"; 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"; diff --git a/Open-ILS/web/opac/skin/default/js/rdetail.js b/Open-ILS/web/opac/skin/default/js/rdetail.js index 1c5546ea86..be85f365d8 100644 --- a/Open-ILS/web/opac/skin/default/js/rdetail.js +++ b/Open-ILS/web/opac/skin/default/js/rdetail.js @@ -12,7 +12,7 @@ var rdetailShowLocal = true; var rdetailShowCopyLocation = true; var rdetailGoogleBookPreview = true; var rdetailDisplaySerialHoldings = true; -var rdetailEnableRefWorks = true; +var rdetailEnableRefWorks = false; var rdetailRefWorksHost = 'http://www.refworks.com'; /* vars vars vars */ @@ -44,6 +44,10 @@ var rdetailEnd = null; /* serials are currently the only use of Dojo strings in the OPAC */ if (rdetailDisplaySerialHoldings) { + if (isXUL()) { + dojo.require("dijit.Menu"); + dojo.require("dijit.form.Button"); + } dojo.requireLocalization("openils.opac", "opac"); opac_strings = dojo.i18n.getLocalization("openils.opac", "opac"); } @@ -129,6 +133,17 @@ function rdetailDraw() { var req = new Request(FETCH_MFHD_SUMMARY, getRid()); req.callback(_holdingsDraw); req.send(); + if (isXUL()) { + var here = findOrgUnit(getLocation()); + dojo.place("
" + + dojo.place("
" + dojo.string.substitute(opac_strings.HOLDINGS_TABLE_CAPTION, [hloc]) + "
", "rdetail_details_table", "after" @@ -279,10 +301,17 @@ function _holdingsDrawMFHD(holdings, entryNum) { if (isXUL()) { dojo.require('openils.Event'); dojo.require('openils.PermaCrud'); - dojo.place(" - " + opac_strings.EDIT_LABEL + "", - "mfhdHoldingsCaption", "last" - ); + var mfhd_edit = new dijit.Menu({}); + new dijit.MenuItem({onClick: function(){loadMarcEditor(holdings.id())}, label:opac_strings.EDIT_MFHD_RECORD}).placeAt(mfhd_edit, "first"); + new dijit.MenuItem({onClick:function(){ + var req = new Request(DELETE_MFHD_RECORD, G.user.session, holdings.id()); + var res = req.send(); + alert(dojo.string.substitute(opac_strings.DELETED_MFHD_RECORD, [holdings.id()])); + }, label:"Delete"}).placeAt(mfhd_edit, "last"); + // new dijit.MenuItem({onClick:function(){alert("Edit properties " + holdings.id());}, label:opac_strings.EDIT_PROPERTIES}).placeAt(mfhd_edit, "last"); + var mfhd_mb = new dijit.form.DropDownButton({dropDown: mfhd_edit, label:opac_strings.EDIT_MFHD_MENU, style:"float:right"}); + mfhd_mb.placeAt("mfhdHoldingsCaption" + entryNum, "last"); + mfhd_edit.startup(); } } -- 2.11.0