From f0717515883abbf01b687e74824a8b33923d9b1e Mon Sep 17 00:00:00 2001 From: erickson Date: Thu, 16 Apr 2009 14:45:18 +0000 Subject: [PATCH] move to autogrid git-svn-id: svn://svn.open-ils.org/ILS/trunk@12888 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- .../permission/grp_penalty_threshold.js | 159 +++--------------- .../permission/grp_penalty_threshold.tt2 | 86 +++------- 2 files changed, 50 insertions(+), 195 deletions(-) diff --git a/Open-ILS/web/js/ui/default/conify/global/permission/grp_penalty_threshold.js b/Open-ILS/web/js/ui/default/conify/global/permission/grp_penalty_threshold.js index 7249208c70..e944c663f0 100644 --- a/Open-ILS/web/js/ui/default/conify/global/permission/grp_penalty_threshold.js +++ b/Open-ILS/web/js/ui/default/conify/global/permission/grp_penalty_threshold.js @@ -1,146 +1,31 @@ -dojo.require('dojox.grid.DataGrid'); -dojo.require('dojo.data.ItemFileWriteStore'); -dojo.require('dijit.form.NumberTextBox'); dojo.require('dijit.form.FilteringSelect'); -dojo.require('openils.PermGrp'); +dojo.require('openils.widget.AutoGrid'); dojo.require('openils.widget.OrgUnitFilteringSelect'); dojo.require('openils.widget.PermGrpFilteringSelect'); -dojo.require('fieldmapper.OrgUtils'); -var GPT = { - buildGrid : function () { - var store = new dojo.data.ItemFileWriteStore({data:pgpt.initStoreData()}); - gptGrid.setStore(store); - gptGrid.render(); +function buildGrid(org_id) { + var org_id = openils.User.user.ws_ou(); + var list = fieldmapper.aou.findOrgUnit(org_id).orgNodeTrail().map( function (i) { + return i.id() } ); + + gptGrid.loadAll({order_by:{pgpt : 'grp'}},{org_unit:list}); - fieldmapper.standardRequest( - ['open-ils.actor', 'open-ils.actor.grp_penalty_threshold.ranged.retrieve'], - { async: true, - params: [openils.User.authtoken, GPT.contextOrg], - onresponse: function (r) { - if(obj = openils.Util.readResponse(r, false, true)) { - store.newItem(pgpt.toStoreItem(obj)); - } - } - } - ); - }, + new openils.User().buildPermOrgSelector('VIEW_GROUP_PENALTY_THRESHOLD', contextOrgSelector, null, function() { + dojo.connect(contextOrgSelector, 'onChange', filterGrid);}); +} - init : function() { - GPT.contextOrg = openils.User.user.ws_ou(); +function filterGrid() { + gptGrid.resetStore(); + var unit = contextOrgSelector.getValue(); + var list = fieldmapper.aou.findOrgUnit(unit).orgNodeTrail().map( function (i) { + return i.id() } ); - var connect = function() { - dojo.connect(GPT.contextOrgSelector, 'onChange', - function() { - GPT.contextOrg = this.getValue(); - GPT.buildGrid(); - } - ); - }; - new openils.User().buildPermOrgSelector('VIEW_GROUP_PENALTY_THRESHOLD', GPT.contextOrgSelector, null, connect); + if(unit) + gptGrid.loadAll({order_by:{pgpt: 'grp'}}, {org_unit:list}); + else + gptGrid.loadAll({order_by:{pgpt : 'grp'}}); + +} - GPT.loadCsp( - function() { - openils.PermGrp.fetchGroupTree( - function() { openils.PermGrp.flatten(); GPT.buildGrid(); } - ); - } - ); - }, - - - _onCreateComplete : function(r) { - if(threshold = openils.Util.readResponse(r)) { - gptGrid.store.newItem(pgpt.toStoreItem(threshold)); - } - }, - - create : function(args) { - if(!(args.grp && args.org_unit && args.penalty && args.threshold)) - return; - - var thresh = new pgpt(); - thresh.grp(args.grp); - thresh.org_unit(args.org_unit); - thresh.penalty(args.penalty); - thresh.threshold(args.threshold); - - fieldmapper.standardRequest( - ['open-ils.permacrud', 'open-ils.permacrud.create.pgpt'], - { async: true, - params: [openils.User.authtoken, thresh], - oncomplete:GPT._onCreateComplete - } - ); - }, - - getGroupName : function(rowIdx, item) { - if(!item) return ''; - var grpId = this.grid.store.getValue(item, this.field); - return openils.PermGrp.groupIdMap[grpId].name(); - }, - - drawCspSelector : function() { - GPT.penaltySelector.store = - new dojo.data.ItemFileReadStore({data:csp.toStoreData(GPT.standingPenalties)}); - GPT.penaltySelector.startup(); - }, - - loadCsp : function(onload) { - GPT.penaltyMap = {}; - fieldmapper.standardRequest( - ['open-ils.pcrud', 'open-ils.pcrud.search.csp.atomic'], - { async: true, - params: [openils.User.authtoken, {id:{'<':100}}, {order_by:{csp:'id'}}], - oncomplete: function(r) { - if(list = openils.Util.readResponse(r, false, true)) { - for(var idx in list) - GPT.penaltyMap[list[idx].id()] = list[idx]; - GPT.standingPenalties = list; - if(onload) onload(list); - } - } - } - ); - }, - - getOrgInfo : function(rowIndex, item) { - if(item) { - var orgId = this.grid.store.getValue(item, this.field); - return fieldmapper.aou.findOrgUnit(orgId).shortname(); - } - }, - - getPenaltyInfo : function(rowIndex, item) { - if(item) { - var pId = this.grid.store.getValue(item, this.field); - return GPT.penaltyMap[pId].name(); - } - }, - - deleteFromGrid : function() { - GPT._deleteFromGrid(gptGrid.selection.getSelected(), 0); - }, - - _deleteFromGrid : function(list, idx) { - if(idx >= list.length) // we've made it through the list - return; - - var item = list[idx]; - var id = gptGrid.store.getValue(item, 'id'); - fieldmapper.standardRequest( - ['open-ils.permacrud', 'open-ils.permacrud.delete.pgpt'], - { async: true, - params: [openils.User.authtoken, id], - oncomplete: function(r) { - if(obj = openils.Util.readResponse(r)) { - gptGrid.store.deleteItem(item); - } - GPT._deleteFromGrid(list, ++idx); - } - } - ); - }, - }; -openils.Util.addOnLoad(GPT.init); +openils.Util.addOnLoad(buildGrid); diff --git a/Open-ILS/web/templates/default/conify/global/permission/grp_penalty_threshold.tt2 b/Open-ILS/web/templates/default/conify/global/permission/grp_penalty_threshold.tt2 index 2bc3017335..c73fc8c54b 100644 --- a/Open-ILS/web/templates/default/conify/global/permission/grp_penalty_threshold.tt2 +++ b/Open-ILS/web/templates/default/conify/global/permission/grp_penalty_threshold.tt2 @@ -1,71 +1,41 @@ [% WRAPPER default/base.tt2 %] - -

Group Penalty Thresholds


+ - - -
- New Group Penalty Threshold -
- - - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
+
+
Penalty Threshold
+
+ +
- - - Context Org Unit - + +
- - - - - - - - - - +
IDGroupContext Org UnitPenaltythreshold
- + + [% END %] -- 2.43.2