allow the caller to define a function that tells the autofield widget to disable...
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 2 Apr 2009 15:35:30 +0000 (15:35 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 2 Apr 2009 15:35:30 +0000 (15:35 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@12763 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/web/js/dojo/openils/widget/AutoFieldWidget.js
Open-ILS/web/js/dojo/openils/widget/AutoGrid.js
Open-ILS/web/js/dojo/openils/widget/EditPane.js

index db630d8..648ec93 100644 (file)
@@ -302,6 +302,8 @@ if(!dojo._hasResource['openils.widget.AutoFieldWidget']) {
                 this.baseWidgetValue(this.widgetValue);
                 if(this.idlField.name == this.fmIDL.pkey && this.fmIDL.pkey_sequence)
                     this.widget.attr('disabled', true); 
+                if(this.disableWidgetTest && this.disableWidgetTest(this.idlField.name, this.fmObject))
+                    this.widget.attr('disabled', true); 
             }
             if(this.onload)
                 this.onload(this.widget, this);
index 060a67e..6c1b296 100644 (file)
@@ -140,6 +140,7 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) {
                     fmObject:fmObject,
                     overrideWidgets : this.overrideEditWidgets,
                     overrideWidgetClass : this.overrideEditWidgetClass,
+                    disableWidgetTest : this.disableWidgetTest,
                     onPostSubmit : function() {
                         for(var i in fmObject._fields) {
                             var field = fmObject._fields[i];
@@ -176,6 +177,7 @@ if(!dojo._hasResource['openils.widget.AutoGrid']) {
                     fmClass : this.fmClass,
                     overrideWidgets : this.overrideEditWidgets,
                     overrideWidgetClass : this.overrideEditWidgetClass,
+                    disableWidgetTest : this.disableWidgetTest,
                     onPostSubmit : function(r) {
                         var fmObject = openils.Util.readResponse(r);
                         if(fmObject) 
index 9bdfbf6..2093e88 100644 (file)
@@ -75,7 +75,8 @@ if(!dojo._hasResource['openils.widget.EditPane']) {
                         orgLimitPerms : this.limitPerms,
                         readOnly : this.readOnly,
                         widget : this.overrideWidgets[field.name],
-                        widgetClass : this.overrideWidgetClass[field.name]
+                        widgetClass : this.overrideWidgetClass[field.name],
+                        disableWidgetTest : this.disableWidgetTest
                     });
 
                     widget.build();