joerg       2004/01/22 05:19:17

  Modified:    src/blocks/woody/java/org/apache/cocoon/woody/flow/javascript
                        woody2.js
  Log:
  - test on existance of function to be called (thanks to Christopher Oliver)
  - parameters to woody() function removed as they are no longer needed
  
  Revision  Changes    Path
  1.6       +15 -7     
cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/flow/javascript/woody2.js
  
  Index: woody2.js
  ===================================================================
  RCS file: 
/home/cvs/cocoon-2.1/src/blocks/woody/java/org/apache/cocoon/woody/flow/javascript/woody2.js,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- woody2.js 17 Jan 2004 14:55:17 -0000      1.5
  +++ woody2.js 22 Jan 2004 13:19:17 -0000      1.6
  @@ -199,17 +199,25 @@
       this.binding.saveFormToModel(this.form, object);
   }
   
  -
  -function woody(form_function, form_definition) {
  +function woody() {
       var form = new Form(cocoon.parameters["form-definition"]);
  -    
  +
       var args = [form];
   
       // set the binding on the form if there's any
       var bindingURI = cocoon.parameters["bindingURI"];
  -    if (bindingURI != null)
  +    if (bindingURI != null) {
           form.createBinding(bindingURI);
  +    }
   
  -    this[cocoon.parameters["function"]].apply(this, args);
  -}
  +    var funcName = cocoon.parameters["function"];
  +    var func = this[funcName];
   
  +    if (!func) {
  +        throw "Function \"" + funcName + "\" is not defined.";
  +    } else if (!(func instanceof Function)) {
  +        throw "\"" + funcName + "\" is not a function.";
  +    }
  +
  +    func.apply(this, args);
  +}
  
  
  

Reply via email to