[open-ils-commits] SPAM: r9608 - in
branches/acq-experiment/Open-ILS/web: js/dojo/openils/acq
oilsweb/oilsweb/public/oils/media/ui_js/oils/default/acq/financial
oilsweb/oilsweb/templates/oils/default/acq/financial
svn at svn.open-ils.org
svn at svn.open-ils.org
Wed May 14 17:41:38 EDT 2008
Author: erickson
Date: 2008-05-14 17:41:34 -0400 (Wed, 14 May 2008)
New Revision: 9608
Modified:
branches/acq-experiment/Open-ILS/web/js/dojo/openils/acq/Provider.js
branches/acq-experiment/Open-ILS/web/oilsweb/oilsweb/public/oils/media/ui_js/oils/default/acq/financial/view_provider.js
branches/acq-experiment/Open-ILS/web/oilsweb/oilsweb/templates/oils/default/acq/financial/view_provider.html
Log:
added initial provider attr def creation interface. need to add a dropdown of code options and more user-friendly creation options
Modified: branches/acq-experiment/Open-ILS/web/js/dojo/openils/acq/Provider.js
===================================================================
--- branches/acq-experiment/Open-ILS/web/js/dojo/openils/acq/Provider.js 2008-05-14 21:40:03 UTC (rev 9607)
+++ branches/acq-experiment/Open-ILS/web/js/dojo/openils/acq/Provider.js 2008-05-14 21:41:34 UTC (rev 9608)
@@ -68,5 +68,30 @@
return openils.acq.Provider.cache[id];
};
+
+openils.acq.Provider.retrieveLineitemAttrDefs = function(providerId, oncomplete) {
+ fieldmapper.standardRequest(
+ ['open-ils.acq', 'open-ils.acq.lineitem_provider_attr_definition.provider.retrieve.atomic'],
+ { async: true,
+ params: [openils.User.authtoken, providerId],
+ oncomplete: function(r) {oncomplete(r.recv().content());}
+ }
+ );
}
+openils.acq.Provider.createLineitemAttrDef = function(fields, oncomplete) {
+ var attr = new acqlipad();
+ for(var field in fields)
+ attr[field](fields[field]);
+
+ fieldmapper.standardRequest(
+ ['open-ils.acq', 'open-ils.acq.lineitem_provider_attr_definition.create'],
+ { async: true,
+ params: [openils.User.authtoken, attr],
+ oncomplete: function(r) {oncomplete(r.recv().content());}
+ }
+ );
+}
+
+
+}
Modified: branches/acq-experiment/Open-ILS/web/oilsweb/oilsweb/public/oils/media/ui_js/oils/default/acq/financial/view_provider.js
===================================================================
--- branches/acq-experiment/Open-ILS/web/oilsweb/oilsweb/public/oils/media/ui_js/oils/default/acq/financial/view_provider.js 2008-05-14 21:40:03 UTC (rev 9607)
+++ branches/acq-experiment/Open-ILS/web/oilsweb/oilsweb/public/oils/media/ui_js/oils/default/acq/financial/view_provider.js 2008-05-14 21:41:34 UTC (rev 9608)
@@ -22,6 +22,17 @@
providerGrid.setModel(model);
providerGrid.update();
}
+function loadPADGrid() {
+ openils.acq.Provider.retrieveLineitemAttrDefs(providerId,
+ function(attrs) {
+ var store = new dojo.data.ItemFileReadStore({data:acqlipad.toStoreData(attrs)});
+ var model = new dojox.grid.data.DojoData(
+ null, store, {rowsPerPage: 20, clientSort: true, query:{id:'*'}});
+ padGrid.setModel(model);
+ padGrid.update();
+ }
+ );
+}
function fetchProvider() {
fieldmapper.standardRequest(
@@ -36,5 +47,15 @@
);
}
+function createOrderRecordField(fields) {
+ fields.provider = providerId;
+ openils.acq.Provider.createLineitemAttrDef(fields,
+ function(id) {
+ loadPADGrid();
+ }
+ );
+}
+
dojo.addOnLoad(fetchProvider);
+
Modified: branches/acq-experiment/Open-ILS/web/oilsweb/oilsweb/templates/oils/default/acq/financial/view_provider.html
===================================================================
--- branches/acq-experiment/Open-ILS/web/oilsweb/oilsweb/templates/oils/default/acq/financial/view_provider.html 2008-05-14 21:40:03 UTC (rev 9607)
+++ branches/acq-experiment/Open-ILS/web/oilsweb/oilsweb/templates/oils/default/acq/financial/view_provider.html 2008-05-14 21:41:34 UTC (rev 9608)
@@ -25,6 +25,53 @@
</script>
<div jsId='providerGrid' dojoType="dojox.Grid" structure='providerGridLayout'> </div>
</div>
+ <div dojoType="dijit.layout.ContentPane"
+ class='oils-acq-detail-content-pane' title="${_('Order Record Format')}" style='height:400px;'>
+
+ <div class='oils-acq-actions-div' style='margin:8px;'>
+ <!-- Dropdown menu for creating a new funding source credit -->
+ <div dojoType="dijit.form.DropDownButton">
+ <span>${('Create Order Record Field')}</span>
+ <div dojoType="dijit.TooltipDialog" execute="createOrderRecordField(arguments[0]);">
+ <table class='dijitTooltipTable'>
+ <tr>
+ <td><label for="code">${_('Code:')} </label></td>
+ <td><input dojoType='dijit.form.TextBox' name='code'></input></td>
+ </tr>
+ <tr>
+ <td><label for="description">${_('Description:')} </label></td>
+ <td>
+ <!-- XXX get currency from funding source ... -->
+ <input dojoType="dijit.form.TextBox" name="description"> </input>
+ </td>
+ </tr>
+ <tr>
+ <td><label for="amount">${_('XPath:')} </label></td>
+ <td><input dojoType="dijit.form.TextBox" name="xpath"></input></td>
+ </tr>
+ <tr>
+ <td colspan='2' align='center'>
+ <button dojoType=dijit.form.Button type="submit">${_('Apply')}</button>
+ </td>
+ </tr>
+ </table>
+ </div>
+ </div>
+ </div>
+
+ <script type='dojo/connect' event='onShow'>loadPADGrid();</script>
+ <script>
+ var padGridLayout = [{
+ cells : [[
+ {name: '${_("ID")}', field: 'id'},
+ {name: '${_("Code")}', field:'code'},
+ {name: '${_("Description")}', field: "description", width:'auto'},
+ {name: '${_("XPath")}', field:'xpath', width:'auto'}
+ ]]
+ }];
+ </script>
+ <div jsId='padGrid' dojoType="dojox.Grid" structure='padGridLayout'> </div>
+ </div>
</div>
</div>
More information about the open-ils-commits
mailing list