1 dojo.require('dojo.data.ItemFileReadStore');
2 dojo.require('dijit.form.Textarea');
3 dojo.require('dijit.form.FilteringSelect');
4 dojo.require('fieldmapper.IDL');
5 dojo.require('openils.PermaCrud');
6 dojo.require('openils.widget.AutoGrid');
7 dojo.require('openils.widget.AutoFieldWidget');
8 dojo.require('dijit.form.CheckBox');
11 var fmClasses = ['au', 'ac', 'aua', 'actsc', 'asv', 'asvq', 'asva'];
16 pcrud = new openils.PermaCrud();
20 oncomplete : function(r) {
21 var list = openils.Util.readResponse(r, null, true);
24 if(!fieldDoc[doc.fm_class()])
25 fieldDoc[doc.fm_class()] = {};
26 fieldDoc[doc.fm_class()][doc.field()] = doc;
34 function loadTable() {
35 var tbody = dojo.byId('uedit-tbody');
37 for(var idx = 0; tbody.childNodes[idx]; idx++) {
39 var row = tbody.childNodes[idx];
40 if(row.nodeType != row.ELEMENT_NODE) continue;
41 var fmcls = row.getAttribute('fmclass');
44 var fmfield = row.getAttribute('fmfield');
45 var wclass = row.getAttribute('wclass');
46 var wstyle = row.getAttribute('wstyle');
47 var fieldIdl = fieldmapper.IDL.fmclasses[fmcls].field_map[fmfield];
50 console.log("failed loading " + fmcls + ' : ' + fmfield);
52 var existing = dojo.query('td', row);
53 var htd = existing[0] || row.appendChild(document.createElement('td'));
54 var ltd = existing[1] || row.appendChild(document.createElement('td'));
55 var wtd = existing[2] || row.appendChild(document.createElement('td'));
57 openils.Util.addCSSClass(htd, 'uedit-help');
58 if(fieldDoc[fmcls] && fieldDoc[fmcls][fmfield]) {
59 var link = dojo.byId('uedit-help-template').cloneNode(true);
61 link.setAttribute('href', 'javascript:ueLoadContextHelp("'+fmcls+'","'+fmfield+'")');
62 openils.Util.removeCSSClass(link, 'hidden');
63 htd.appendChild(link);
64 console.log(link.href);
67 if(!ltd.textContent) {
68 var span = document.createElement('span');
69 ltd.appendChild(document.createTextNode(fieldIdl.label));
72 span = document.createElement('span');
73 wtd.appendChild(span);
75 var widget = new openils.widget.AutoFieldWidget({
77 fmObject : null, // XXX
81 dijitArgs : {style: wstyle},
82 orgLimitPerms : ['UPDATE_USER'],
88 function ueLoadContextHelp(fmcls, fmfield) {
89 openils.Util.removeCSSClass(dojo.byId('uedit-help-div'), 'hidden');
90 dojo.byId('uedit-help-field').innerHTML = fieldmapper.IDL.fmclasses[fmcls].field_map[fmfield].label;
91 dojo.byId('uedit-help-text').innerHTML = fieldDoc[fmcls][fmfield].string();
95 openils.Util.addOnLoad(load);