1 dojo.require("dijit.layout.LayoutContainer");
2 dojo.require("dijit.layout.ContentPane");
3 dojo.require('dijit.form.FilteringSelect');
4 dojo.require("dojox.grid.Grid");
5 dojo.require("fieldmapper.Fieldmapper");
6 dojo.require("fieldmapper.dojoData");
7 dojo.require("fieldmapper.OrgUtils");
8 dojo.require('dojo.cookie');
9 dojo.require('openils.CGI');
10 dojo.require('openils.User');
11 dojo.require('openils.Event');
18 function osInit(data) {
19 authtoken = dojo.cookie('ses') || new openils.CGI().param('ses');
20 user = new openils.User({authtoken:authtoken}).user;
21 contextOrg = user.ws_ou();
22 contextSelector = dojo.byId('os-context-selector');
25 for(var key in osSettings)
28 fieldmapper.standardRequest(
30 'open-ils.actor.ou_setting.ancestor_default.batch'],
32 params: [contextOrg, names],
33 oncomplete: function(r) {
34 var data = r.recv().content();
35 if(e = openils.Event.parse(data))
41 buildMergedOrgSel(contextSelector, user.ws_ou(), 0);
42 // open-ils.actor.user.get_work_ous.ids
44 dojo.addOnLoad(osInit);
46 function osChangeContect() {
47 contextOrg = getSelectorVal(contextSelector);
50 function osLoadGrid(data) {
51 var gridData = {items:[]}
52 for(var key in data) {
54 osSettings[key].context = data[key].org;
55 osSettings[key].value = data[key].value;
57 gridData.items.push({name:key});
59 gridData.identifier = 'name';
60 var store = new dojo.data.ItemFileReadStore({data:gridData});
61 var model = new dojox.grid.data.DojoData(
62 null, store, {rowsPerPage: 100, clientSort: true, query:{name:'*'}});
64 osGrid.setModel(model);
65 osGrid.setStructure(osGridLayout);
69 function osGetGridData(rowIdx) {
70 var data = this.grid.model.getRow(rowIdx);
72 var value = osSettings[data.name][this.field];
73 if(value == null) return '';
76 return fieldmapper.aou.findOrgUnit(value).shortname();
82 function osGetEditLink(rowIdx) {
83 var data = this.grid.model.getRow(rowIdx);
85 return this.value.replace(/SETTING/, data.name);
88 function osLaunchEditor(name) {