From: erickson Date: Wed, 14 May 2008 18:48:04 +0000 (+0000) Subject: added a findAttr method directly to the lineitem class since it may be used outside... X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=b8d405e4bb7da30f9b3499beb4a1a510305ace80;p=Evergreen.git added a findAttr method directly to the lineitem class since it may be used outside of the picklist context. using new lineitem code in po lineitems render git-svn-id: svn://svn.open-ils.org/ILS/branches/acq-experiment@9605 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/Open-ILS/web/js/dojo/openils/acq/Lineitems.js b/Open-ILS/web/js/dojo/openils/acq/Lineitems.js index 92b3eb1594..2935532197 100644 --- a/Open-ILS/web/js/dojo/openils/acq/Lineitems.js +++ b/Open-ILS/web/js/dojo/openils/acq/Lineitems.js @@ -26,6 +26,20 @@ dojo.require('fieldmapper.dojoData'); /** Declare the Lineitems class with dojo */ dojo.declare('openils.acq.Lineitems', null, { /* add instance methods here if necessary */ + + constructor: function(args) { + this.lineitem = args.lineitem; + }, + + findAttr: function(name, type) { + var attrs = this.lineitem.attributes(); + if(!attrs) return null; + for(var i = 0; i < attrs.length; i++) { + var attr = attrs[i]; + if (attr.attr_type() == type && attr.attr_name() == name) + return attr.attr_value(); + } + } }); openils.acq.Lineitems.ModelCache = {}; @@ -112,4 +126,5 @@ openils.acq.Lineitems.loadGrid = function(domNode, id, layout) { } }; + } diff --git a/Open-ILS/web/oilsweb/oilsweb/public/oils/media/ui_js/oils/default/acq/po/view_po.js b/Open-ILS/web/oilsweb/oilsweb/public/oils/media/ui_js/oils/default/acq/po/view_po.js index 5618bc9cfc..99fb38622e 100644 --- a/Open-ILS/web/oilsweb/oilsweb/public/oils/media/ui_js/oils/default/acq/po/view_po.js +++ b/Open-ILS/web/oilsweb/oilsweb/public/oils/media/ui_js/oils/default/acq/po/view_po.js @@ -8,7 +8,7 @@ dojo.require('openils.Event'); dojo.require('openils.User'); dojo.require('fieldmapper.OrgUtils'); dojo.require('openils.acq.Provider'); -dojo.require('openils.acq.Picklist'); +dojo.require('openils.acq.Lineitems'); dojo.require('dojo.date.locale'); dojo.require('dojo.date.stamp'); @@ -44,36 +44,36 @@ function getLi(id) { for(var i in lineitems) { var li = lineitems[i]; if(li.id() == id) - return openils.acq.Picklist.cache[id] = li; + return li; } } function getJUBTitle(rowIndex) { var data = liGrid.model.getRow(rowIndex); if(!data) return ''; - getLi(data.id); - return openils.acq.Picklist.find_attr(data.id, 'title', 'lineitem_marc_attr_definition') + return new openils.acq.Lineitems( + {lineitem:getLi(data.id)}).findAttr('title', 'lineitem_marc_attr_definition') } function getJUBIsbn(rowIndex) { var data = liGrid.model.getRow(rowIndex); if(!data) return ''; - getLi(data.id); - return openils.acq.Picklist.find_attr(data.id, 'isbn', 'lineitem_marc_attr_definition') + return new openils.acq.Lineitems( + {lineitem:getLi(data.id)}).findAttr('isbn', 'lineitem_marc_attr_definition') } function getJUBPubdate(rowIndex) { var data = liGrid.model.getRow(rowIndex); if(!data) return ''; - getLi(data.id); - return openils.acq.Picklist.find_attr(data.id, 'pubdate', 'lineitem_marc_attr_definition') + return new openils.acq.Lineitems( + {lineitem:getLi(data.id)}).findAttr('pubdate', 'lineitem_marc_attr_definition') } function getJUBPrice(rowIndex) { var data = liGrid.model.getRow(rowIndex); if(!data) return; - getLi(data.id); - return openils.acq.Picklist.find_attr(data.id, 'price', 'lineitem_marc_attr_definition') + return new openils.acq.Lineitems( + {lineitem:getLi(data.id)}).findAttr('price', 'lineitem_marc_attr_definition') } function loadPOGrid() { diff --git a/Open-ILS/web/oilsweb/oilsweb/templates/oils/default/acq/po/view_po.html b/Open-ILS/web/oilsweb/oilsweb/templates/oils/default/acq/po/view_po.html index 3e4b664259..0485528ff7 100644 --- a/Open-ILS/web/oilsweb/oilsweb/templates/oils/default/acq/po/view_po.html +++ b/Open-ILS/web/oilsweb/oilsweb/templates/oils/default/acq/po/view_po.html @@ -8,6 +8,7 @@ var poId = ${c.oils.acq.po_id.value}; +
${_('PO Details')}