From: erickson Date: Thu, 2 Sep 2010 21:08:33 +0000 (+0000) Subject: back-porting: r17391 17397 17398; pcrud/fieldmapper bug fixes; autogrid suppress... X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=1122d5756398801b51b22b05b04fcb53542f9413;p=evergreen%2Fequinox.git back-porting: r17391 17397 17398; pcrud/fieldmapper bug fixes; autogrid suppress edit fields option git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_2_0@17458 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/Open-ILS/web/js/dojo/fieldmapper/Fieldmapper.js b/Open-ILS/web/js/dojo/fieldmapper/Fieldmapper.js index 9471b8125b..5ef69d750f 100644 --- a/Open-ILS/web/js/dojo/fieldmapper/Fieldmapper.js +++ b/Open-ILS/web/js/dojo/fieldmapper/Fieldmapper.js @@ -53,7 +53,7 @@ if(!dojo._hasResource["fieldmapper.Fieldmapper"]){ obj.a[i] = thing.clone(); } else { - if(instanceOf(thing, Array)) { + if(dojo.isArray(thing)) { obj.a[i] = new Array(); for( var j in thing ) { diff --git a/Open-ILS/web/js/dojo/openils/PermaCrud.js b/Open-ILS/web/js/dojo/openils/PermaCrud.js index 6213c8f67d..834c6cd8d0 100644 --- a/Open-ILS/web/js/dojo/openils/PermaCrud.js +++ b/Open-ILS/web/js/dojo/openils/PermaCrud.js @@ -366,7 +366,9 @@ if(!dojo._hasResource["openils.PermaCrud"]) { if (obj.ischanged()) method = 'update'; if (obj.isnew()) method = 'create'; if (obj.isdeleted()) method = 'delete'; - if (!method) throw 'No action detected'; + if (!method) { + return _auto_CUD_recursive(obj_list, pos+1, final_complete, final_error); + } var req_hash = { method : 'open-ils.pcrud.' + method + '.' + obj.classname, @@ -393,16 +395,15 @@ if(!dojo._hasResource["openils.PermaCrud"]) { oncomplete : function (r) { var res = r.recv(); if ( res && res.content() ) { - _auto_CUD_recursive( list, 0 ); + if (r._final_complete) + req._final_complete(req, _return_list); + _pcrud.disconnect(); } else { _pcrud.disconnect(); throw 'Transaction commit error'; } }, }).send(); - - if (r._final_complete) r._final_complete(r); - _pcrud.disconnect(); }; req.onerror = function (r) { diff --git a/Open-ILS/web/js/dojo/openils/widget/AutoGrid.js b/Open-ILS/web/js/dojo/openils/widget/AutoGrid.js index 8f70175b23..923c9b4466 100644 --- a/Open-ILS/web/js/dojo/openils/widget/AutoGrid.js +++ b/Open-ILS/web/js/dojo/openils/widget/AutoGrid.js @@ -20,6 +20,7 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) { editStyle : 'dialog', editReadOnly : false, suppressFields : null, + suppressEditFields : null, hideSelector : false, selectorWidth : '1.5', showColumnPicker : false, @@ -384,6 +385,7 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) { overrideWidgetArgs : this.overrideWidgetArgs, disableWidgetTest : this.disableWidgetTest, requiredFields : this.requiredFields, + suppressFields : this.suppressEditFields, onPostSubmit : function() { for(var i in fmObject._fields) { var field = fmObject._fields[i]; @@ -424,6 +426,7 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) { overrideWidgetArgs : this.overrideWidgetArgs, disableWidgetTest : this.disableWidgetTest, requiredFields : this.requiredFields, + suppressFields : this.suppressEditFields, onPostSubmit : function(req, cudResults) { var fmObject = cudResults[0]; if(grid.onPostCreate)