var dupeBarcode = false;
if(!window.xulG) var xulG = null;
-
+var lock_ready = false;
function load() {
staff = new openils.User().user;
} else {
input.widget.attr('disabled', true).attr('readOnly', true);
}
+
+ lock_ready = true;
}
function attachWidgetEvents(fmcls, fmfield, widget) {
+ dojo.connect(
+ widget.widget,
+ 'onChange',
+ function(){
+ if (lock_ready && xulG && typeof xulG.lock_tab == 'function') {
+ xulG.lock_tab();
+ }
+ }
+ );
+
if(fmcls == 'ac') {
if(fmfield == 'barcode') {
dojo.connect(widget.widget, 'onChange',
{ async: true,
params: [openils.User.authtoken, patron],
oncomplete: function(r) {
+ lock_ready = false;
+ if (xulG && typeof xulG.unlock_tab == 'function') { xulG.unlock_tab(); }
newPatron = openils.Util.readResponse(r);
if(newPatron) {
uEditUpdateUserSettings(newPatron.id());
while ( panel.lastChild ) panel.removeChild( panel.lastChild );
content_params.lock_tab = function() {
+ dump('lock_tab\n');
var id = tab.getAttribute('id');
if (typeof obj.tab_semaphores[id] == 'undefined') {
obj.tab_semaphores[id] = 0;
return obj.tab_semaphores[id];
};
content_params.unlock_tab = function() {
+ dump('unlock_tab\n');
var id = tab.getAttribute('id');
if (typeof obj.tab_semaphores[id] == 'undefined') {
obj.tab_semaphores[id] = 0;
JSAN.use('patron.util');
patron.util.work_log_patron_edit(p_obj);
}
- }
+ },
+ 'lock_tab' : function() { return xulG.lock_tab(); },
+ 'unlock_tab' : function() { return xulG.unlock_tab(); }
}
);
}
'get_new_session' : function(a) { return xulG.get_new_session(a); },
'new_tab' : function(a,b,c) { return xulG.new_tab(a,b,c); },
'new_patron_tab' : function(a,b) { return xulG.new_patron_tab(a,b); }
- }
+ },
+ 'lock_tab' : function() { return xulG.lock_tab(); },
+ 'unlock_tab' : function() { return xulG.unlock_tab(); }
}
);
}
},
'url_prefix' : xulG.url_prefix,
'new_tab' : xulG.new_tab,
+ 'lock_tab' : xulG.lock_tab,
+ 'unlock_tab' : xulG.unlock_tab
}
);
}
'tab_name' : $("patronStrings").getString('staff.patron.info_group.spawn_editor.editing_patron'),
'passthru_content_params' : passthru,
'url_prefix' : xulG.url_prefix,
- 'new_tab' : xulG.new_tab
+ 'new_tab' : xulG.new_tab,
+ 'lock_tab' : xulG.lock_tab,
+ 'unlock_tab' : xulG.unlock_tab
}
);
'new_patron_tab' : xulG.new_patron_tab,
'on_save' : function(p) { patron.util.work_log_patron_edit(p); if (typeof func == 'function') { func(p); } },
'params' : p
- }
+ },
+ 'lock_tab' : xulG.lock_tab,
+ 'unlock_tab' : xulG.unlock_tab
}
);
}