1 dojo.require('dojox.grid.DataGrid');
2 dojo.require('dojox.grid.cells.dijit');
3 dojo.require('dojo.data.ItemFileWriteStore');
4 dojo.require('dijit.form.CheckBox');
5 dojo.require('dijit.form.FilteringSelect');
6 dojo.require('fieldmapper.OrgUtils');
7 //dojo.require('openils.widget.OrgUnitFilteringSelect');
8 dojo.require('openils.PermGrp');
9 dojo.require('openils.PermaCrud');
14 var pcrud = new openils.PermaCrud();
17 function getOrgInfo(rowIndex, item) {
19 var orgId = this.grid.store.getValue(item, this.field);
21 return fieldmapper.aou.findOrgUnit(orgId).shortname();
25 function getGroupName (rowIndex, item) {
27 var grpId = this.grid.store.getValue(item, this.field);
29 grpName = openils.PermGrp.groupIdMap[grpId].name();
34 function getMarcType(rowIndex, item) {
36 var mt = this.grid.store.getValue(item, this.field);
38 mtObject = marcType[mt];
39 return mtObject.value();
43 function getMarcForm(rowIndex, item){
45 var mf = this.grid.store.getValue(item, this.field);
47 mfObject = marcForm[mf];
48 return mfObject.value();
52 function getVrForm(rowIndex, item){
54 var vr = this.grid.store.getValue(item, this.field);
57 vrObject = vrForm[vr];
58 return vrObject.value();
62 function formatReference(inDatum) {
65 return "<span style='color:green;'>✓</span>";
67 return "<span style='color:red;'>✗</span>";
79 oncomplete: function (r) {
80 var list = openils.Util.readResponse(r);
81 marcType = openils.Util.mapList(list, 'code', true);
91 oncomplete: function (r) {
92 var list = openils.Util.readResponse(r);
93 marcForm = openils.Util.mapList(list, 'code', true);
103 oncomplete: function (r) {
104 var list = openils.Util.readResponse(r);
105 vrForm = openils.Util.mapList(list, 'code', true);
112 openils.PermGrp.fetchGroupTree(
114 openils.PermGrp.flatten();
121 function buildHMGrid() {
122 var store = new dojo.data.ItemFileWriteStore({data:chmm.initStoreData('id', {identifier:'id'})});
123 hmGrid.setStore(store);
126 fieldmapper.standardRequest(
127 ['open-ils.pcrud', 'open-ils.pcrud.search.chmm'],
129 params: [openils.User.authtoken, {id:{'!=':null}}],
130 onresponse: function (r) {
131 if(obj = openils.Util.readResponse(r)) {
132 store.newItem(chmm.toStoreItem(obj));
133 // cmCache[obj.code()] = obj;
139 function deleteFromGrid() {
140 _deleteFromGrid(hmGrid.selection.getSelected(), 0);
143 function _deleteFromGrid(list, idx) {
144 if(idx >= list.length) // we've made it through the list
147 var item = list[idx];
148 var id = hmGrid.store.getValue(item, 'id');
150 fieldmapper.standardRequest(
151 ['open-ils.permacrud', 'open-ils.permacrud.delete.chmm'],
153 params: [openils.User.authtoken, id],
154 oncomplete: function(r) {
155 if(stat = openils.Util.readResponse(r)) {
156 // delete succeeded, remove it from the grid and the local cache
157 hmGrid.store.deleteItem(item);
158 delete hmCache[item.code];
160 _deleteFromGrid(list, ++idx);
166 openils.Util.addOnLoad(init);