--- /dev/null
+dojo.require('dojox.grid.DataGrid');
+dojo.require('openils.widget.AutoGrid');
+dojo.require('dojox.grid.cells.dijit');
+dojo.require('dojo.data.ItemFileWriteStore');
+dojo.require('dijit.form.CurrencyTextBox');
+dojo.require('dijit.Dialog');
+dojo.require('dojox.widget.PlaceholderMenuItem');
+dojo.require('fieldmapper.OrgUtils');
+dojo.require('dijit.form.FilteringSelect');
+dojo.require('openils.PermaCrud');
+dojo.require('openils.widget.OrgUnitFilteringSelect');
+
+var thingContextOrg;
+var thingList;
+
+/** really need to put this in a shared location... */
+function getOrgInfo(rowIndex, item) {
+ if(!item) return '';
+ var orgId = this.grid.store.getValue(item, this.field);
+ return fieldmapper.aou.findOrgUnit(orgId).shortname();
+}
+
+function thingInit() {
+
+ thingGrid.disableSelectorForRow = function(rowIdx) {
+ var item = thingGrid.getItem(rowIdx);
+ return (thingGrid.store.getValue(item, 'id') < 0);
+ }
+
+ buildGrid();
+ var connect = function() {
+ dojo.connect(thingContextOrgSelect, 'onChange',
+ function() {
+ thingContextOrg = this.getValue();
+ thingGrid.resetStore();
+ buildGrid();
+ }
+ );
+ };
+ // go ahead and let staff see everything
+ new openils.User().buildPermOrgSelector('STAFF_LOGIN', thingContextOrgSelect, null, connect);
+}
+
+function buildGrid() {
+ if(thingContextOrg == null)
+ thingContextOrg = openils.User.user.ws_ou();
+
+ fieldmapper.standardRequest(
+ ['open-ils.pcrud', 'open-ils.pcrud.search.acnp.atomic'],
+ { async: true,
+ params: [
+ openils.User.authtoken,
+ {"owning_lib":fieldmapper.aou.descendantNodeList(thingContextOrg,true)},
+ {"order_by":{"acnp":"label_sortkey"}}
+ ],
+ oncomplete: function(r) {
+ if(thingList = openils.Util.readResponse(r)) {
+ thingList = openils.Util.objectSort(thingList);
+ dojo.forEach(thingList,
+ function(e) {
+ thingGrid.store.newItem(acnp.toStoreItem(e));
+ }
+ );
+ }
+ }
+ }
+ );
+}
+
+openils.Util.addOnLoad(thingInit);
+
+
--- /dev/null
+dojo.require('dojox.grid.DataGrid');
+dojo.require('openils.widget.AutoGrid');
+dojo.require('dojox.grid.cells.dijit');
+dojo.require('dojo.data.ItemFileWriteStore');
+dojo.require('dijit.form.CurrencyTextBox');
+dojo.require('dijit.Dialog');
+dojo.require('dojox.widget.PlaceholderMenuItem');
+dojo.require('fieldmapper.OrgUtils');
+dojo.require('dijit.form.FilteringSelect');
+dojo.require('openils.PermaCrud');
+dojo.require('openils.widget.OrgUnitFilteringSelect');
+
+var thingContextOrg;
+var thingList;
+
+/** really need to put this in a shared location... */
+function getOrgInfo(rowIndex, item) {
+ if(!item) return '';
+ var orgId = this.grid.store.getValue(item, this.field);
+ return fieldmapper.aou.findOrgUnit(orgId).shortname();
+}
+
+function thingInit() {
+
+ thingGrid.disableSelectorForRow = function(rowIdx) {
+ var item = thingGrid.getItem(rowIdx);
+ return (thingGrid.store.getValue(item, 'id') < 0);
+ }
+
+ buildGrid();
+ var connect = function() {
+ dojo.connect(thingContextOrgSelect, 'onChange',
+ function() {
+ thingContextOrg = this.getValue();
+ thingGrid.resetStore();
+ buildGrid();
+ }
+ );
+ };
+ // go ahead and let staff see everything
+ new openils.User().buildPermOrgSelector('STAFF_LOGIN', thingContextOrgSelect, null, connect);
+}
+
+function buildGrid() {
+ if(thingContextOrg == null)
+ thingContextOrg = openils.User.user.ws_ou();
+
+ fieldmapper.standardRequest(
+ ['open-ils.pcrud', 'open-ils.pcrud.search.acns.atomic'],
+ { async: true,
+ params: [
+ openils.User.authtoken,
+ {"owning_lib":fieldmapper.aou.descendantNodeList(thingContextOrg,true)},
+ {"order_by":{"acns":"label_sortkey"}}
+ ],
+ oncomplete: function(r) {
+ if(thingList = openils.Util.readResponse(r)) {
+ thingList = openils.Util.objectSort(thingList);
+ dojo.forEach(thingList,
+ function(e) {
+ thingGrid.store.newItem(acns.toStoreItem(e));
+ }
+ );
+ }
+ }
+ }
+ );
+}
+
+openils.Util.addOnLoad(thingInit);
+
+
<!ENTITY staff.main.menu.admin.server_admin.conify.perm_list.label "Permissions">
<!ENTITY staff.main.menu.admin.server_admin.conify.copy_status.label "Copy Statuses">
<!ENTITY staff.main.menu.admin.server_admin.conify.marc_code_maps.label "Coded Value Maps">
+<!ENTITY staff.main.menu.admin.server_admin.conify.acn_prefix.label "Call Number Prefixes">
+<!ENTITY staff.main.menu.admin.server_admin.conify.acn_suffix.label "Call Number Suffixes">
<!ENTITY staff.main.menu.admin.server_admin.conify.billing_type.label "Billing Types">
<!ENTITY staff.main.menu.admin.server_admin.conify.z3950_source.label "Z39.50 Servers">
<!ENTITY staff.main.menu.admin.server_admin.conify.circulation_modifier.label "Circulation Modifiers">
--- /dev/null
+[% WRAPPER default/base.tt2 %]
+[% ctx.page_title = 'Call Number Prefixes' %]
+<script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/acn_prefix.js'> </script>
+
+<!-- grid -->
+
+ <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
+ <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
+ <div>Call Number Prefixes</div>
+ <div>
+ <button dojoType='dijit.form.Button' onClick='thingGrid.showCreateDialog()'>New Prefix</button>
+ <button dojoType='dijit.form.Button' onClick='thingGrid.deleteSelected()'>Delete Selected</button>
+ </div>
+ </div>
+ <div>
+ <span>Context Org Unit</span>
+ <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='thingContextOrgSelect'
+ searchAttr='shortname' labelAttr='shortname'> </select>
+ </div>
+ <table jsId="thingGrid"
+ dojoType="openils.widget.AutoGrid"
+ fieldOrder="['id', 'label', 'owning_lib']"
+ suppressFields="['label_sortkey']"
+ suppressEditFields="['label_sortkey']"
+ query="{id: '*'}"
+ defaultCellWidth='20'
+ fmClass='acnp'
+ editOnEnter='true'>
+ <thead>
+ <tr><th field='owning_lib' get='getOrgInfo'/></tr>
+ </thead>
+ </table>
+ </div>
+</div>
+[% END %]
+
+
--- /dev/null
+[% WRAPPER default/base.tt2 %]
+[% ctx.page_title = 'Call Number Suffixes' %]
+<script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/config/acn_suffix.js'> </script>
+
+<!-- grid -->
+
+ <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
+ <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
+ <div>Call Number Suffixes</div>
+ <div>
+ <button dojoType='dijit.form.Button' onClick='thingGrid.showCreateDialog()'>New Suffix</button>
+ <button dojoType='dijit.form.Button' onClick='thingGrid.deleteSelected()'>Delete Selected</button>
+ </div>
+ </div>
+ <div>
+ <span>Context Org Unit</span>
+ <select dojoType="openils.widget.OrgUnitFilteringSelect" jsId='thingContextOrgSelect'
+ searchAttr='shortname' labelAttr='shortname'> </select>
+ </div>
+ <table jsId="thingGrid"
+ dojoType="openils.widget.AutoGrid"
+ fieldOrder="['id', 'label', 'owning_lib']"
+ suppressFields="['label_sortkey']"
+ suppressEditFields="['label_sortkey']"
+ query="{id: '*'}"
+ defaultCellWidth='20'
+ fmClass='acns'
+ editOnEnter='true'>
+ <thead>
+ <tr><th field='owning_lib' get='getOrgInfo'/></tr>
+ </thead>
+ </table>
+ </div>
+</div>
+[% END %]
+
+
['oncommand'],
function() { open_eg_web_page('conify/global/config/record_attr_definition'); }
],
+ 'cmd_server_admin_acn_prefix' : [
+ ['oncommand'],
+ function() { open_eg_web_page('conify/global/config/acn_prefix'); }
+ ],
+ 'cmd_server_admin_acn_suffix' : [
+ ['oncommand'],
+ function() { open_eg_web_page('conify/global/config/acn_suffix'); }
+ ],
'cmd_server_admin_billing_type' : [
['oncommand'],
function() { open_eg_web_page('conify/global/config/billing_type'); }
<command id="cmd_server_admin_copy_status"/>
<command id="cmd_server_admin_marc_code"/>
<command id="cmd_server_admin_billing_type"/>
+ <command id="cmd_server_admin_acn_prefix"/>
+ <command id="cmd_server_admin_acn_suffix"/>
<command id="cmd_server_admin_acq_invoice_item_type"/>
<command id="cmd_server_admin_acq_invoice_payment_method"/>
<command id="cmd_server_admin_acq_cancel_reason"/>
<menuitem label="&staff.main.menu.admin.server_admin.conify.perm_list.label;" command="cmd_server_admin_perm_list"/>
<menuitem label="&staff.main.menu.admin.server_admin.conify.copy_status.label;" command="cmd_server_admin_copy_status"/>
<menuitem label="&staff.main.menu.admin.server_admin.conify.marc_code_maps.label;" command="cmd_server_admin_marc_code"/>
+ <menuitem label="&staff.main.menu.admin.server_admin.conify.acn_prefix.label;" command="cmd_server_admin_acn_prefix"/>
+ <menuitem label="&staff.main.menu.admin.server_admin.conify.acn_suffix.label;" command="cmd_server_admin_acn_suffix"/>
<menuitem label="&staff.main.menu.admin.server_admin.conify.billing_type.label;" command="cmd_server_admin_billing_type"/>
<menuitem label="&staff.main.menu.admin.server_admin.conify.z3950_source.label;" command="cmd_server_admin_z39_source"/>
<menuitem label="&staff.main.menu.admin.server_admin.conify.circulation_modifier.label;" command="cmd_server_admin_circ_mod"/>