+<style type="text/css">
+ @import "[% ctx.media_prefix %]/js/dojo/dojox/form/resources/CheckedMultiSelect.css";
+</style>
[% BLOCK vlagent_form %]
<tr>
<td>[% l('Upload to Queue') %]</td>
<td>[% l('Insufficient Quality Fall-Through Profile') %]</td>
<td><div id='acq_vl:fall_through_merge_profile'></div></td>
</tr>
+ <tr id='vl-trash-groups-row'>
+ <td>[% l('Remove MARC Field Groups') %]</td>
+ <td colspan='4'>
+ <select style='overflow-y:auto; height:6em; width:12em' multiple='true'
+ id='acq_vl:strip_field_groups'
+ dojoType="dojox.form.CheckedMultiSelect">
+ </select>
+ </td>
+ </tr>
[% IF vl_show_copy_option %]
<tr>
<td>[% l('Load Items for Imported Records') %]</td>
dojo.require('openils.widget.AutoFieldWidget');
dojo.require('openils.PermaCrud');
dojo.require('openils.XUL');
+dojo.require('dojox.form.CheckedMultiSelect');
var xulStorage = openils.XUL.localStorage();
var storekey = 'eg.acq.upload.';
{key : 'bib_source', cls : 'cbs'},
{key : 'merge_profile', cls : 'vmp'},
{key : 'fall_through_merge_profile', cls : 'vmp'},
- {key : 'existing_queue', cls : 'vbq'}
+ {key : 'existing_queue', cls : 'vbq'},
+ {key : 'strip_field_groups', cls : 'vibtg'}
];
this.loaded = false;
this.init2 = function() {
var self = this;
+ // fetch the strip field groups, then continue init-ing
+
+ var owner = fieldmapper.aou.orgNodeTrail(
+ fieldmapper.aou.findOrgUnit(new openils.User().user.ws_ou()));
+
+ new openils.PermaCrud().search('vibtg',
+ { always_apply : 'f',
+ owner: owner.map(function(org) { return org.id(); })
+ },
+ { order_by : {vibtg : ['label']},
+ async: true,
+ oncomplete: function(r) {
+ var trashGroups = openils.Util.readResponse(r);
+ var sel = dijit.byId('acq_vl:strip_field_groups');
+
+ var widg = self.widgets.filter(function(w) {
+ return w.key == 'strip_field_groups'})[0];
+ widg.dijit = sel;
+
+ if (trashGroups.length == 0) {
+ openils.Util.hide('vl-trash-groups-row');
+
+ } else {
+
+ dojo.forEach(trashGroups, function(grp) {
+ var sn = fieldmapper.aou.findOrgUnit(
+ grp.owner()).shortname();
+ var opt = {
+ label : grp.label() + ' (' + sn + ')',
+ value : grp.id()
+ };
+ sel.addOption(opt);
+ });
+
+ self.readCachedValue(sel, 'strip_field_groups');
+ }
+
+ self.init3();
+ }
+ }
+ );
+
+ },
+
+ this.init3 = function() {
+ var self = this;
dojo.forEach(this.widgets,
function(widg) {
var key = widg.key;
+ // strip-fields widget built above
+ if (key == 'strip_field_groups') return;
+
if (widg.cls) { // selectors
new openils.widget.AutoFieldWidget({