hi, i propose a way for not validate a widget ( example, in a account form, i use the loginNameExistanceChecker rule in creation mode but not in update mode )
Example :
function form2xml(form) {


var documentURI = cocoon.parameters["documentURI"];


var document = loadDocument(documentURI);



if action="update" form.noValidateWidget("login");


form.load(document);


form.show("form2-display-pipeline", formHandler);



form.save(document);


saveDocument(document, makeTargetURI(documentURI));

   cocoon.sendPage("form2-success-pipeline");
   form.finish();
}

i made some changes in the woody source :

in woody.js

Form.prototype.noValidateWidget= function(id) {
        this.form.noValidateWidget(id);
}

Form.prototype.reValidateWidget= function(id) {
        this.form.reValidateWidget(id);
}

in form.java
        ...
        private List NoValidateWidgetsName;
        ...

   public Form(FormDefinition definition) {
       ...
        NoValidateWidgetsName= new ArrayList();
   }

   public boolean validate(FormContext formContext) {
       boolean allValid = true;
       Iterator widgetIt = widgets.iterator();
       while (widgetIt.hasNext()) {
           Widget widget = (Widget)widgetIt.next();
         if (!NoValidateWidgetsName.contains(widget.getId().intern()))
                        allValid = allValid & widget.validate(formContext);
       }
       return allValid;
   }

        public void noValidateWidget(String id) {
                NoValidateWidgetsName.add(id.intern());
        }
        public void reValidateWidget(String id) {
                NoValidateWidgetsName.remove(id.intern());
        }

_________________________________________________________________
Trouvez l'�me soeur sur MSN Rencontres ! http://g.msn.fr/FR1000/9551


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to