add: configuration options to allow skiping of the form validation
authorRicardo Velhote <rvelhote@gmail.com>
Sat, 29 May 2010 15:11:46 +0000 (16:11 +0100)
committerRicardo Velhote <rvelhote@gmail.com>
Sat, 29 May 2010 15:11:46 +0000 (16:11 +0100)
swat/config/yaml/account.yaml
swat/public/default/js/swat-default.js
swat/templates/default/component/toolbar.mako

index 552a8642c03e494ad28a9c83b87a388dc28fad20..5850a303b2862258de22a69279d30542bb115589 100644 (file)
@@ -180,6 +180,7 @@ actions:
            title: 'Cancel User/Group creation'
            action: cancel
            submit: True
+           skip_validation: True
 
        image:
            name: minus-circle.png
index 134333e6a553151e2820fb95e3c887ccc4c0fe74..031292174b4961352f9baddde7bccf051c0b2207 100644 (file)
@@ -25,14 +25,15 @@ var FormSubmit = new Class({
             el.addEvent("click", function(ev) {
                 ev = new Event(ev).preventDefault();
                 
+                skip_validation = el.hasClass("skip-validation");
                 this.changeTask(el.getProperty("href"));
                 
                 if(el.hasClass("form-require-confirm")) {
                     if(confirm($("confirm-" + el.getProperty("id")).getProperty("value"))) {
-                        this.submitForm();
+                        this.submitForm(skip_validation);
                     }
                 } else {
-                    this.submitForm();
+                    this.submitForm(skip_validation);
                 }
             }.bind(this));
         }.bind(this));
@@ -83,8 +84,8 @@ var FormSubmit = new Class({
         });
     },
     
-    submitForm: function() {
-        if(this.validator.validate()) {
+    submitForm: function(skipValidation) {
+        if(skipValidation || this.validator.validate()) {
             $(this.options.formId).submit();
         }
     }
index b25b8b52a8dc4b8955d36fba072d790d7b2bc02f..f4c33bb7011a66b90d0149034971e1a41e4c5dca 100644 (file)
     submit = ''
     mass_submit = ''
     confirmation = ''
+    skip_validation = ''
 
     if c.config.get_action_info('link/submit', action):
        submit = ' form-submit-button '
        
+    if c.config.get_action_info('link/skip_validation', action):
+       skip_validation = ' skip-validation '
+       
     if c.config.get_action_info('link/mass_submit', action):
        mass_submit = ' form-mass-submit-buttton '
        
@@ -57,7 +61,7 @@
            ${h.hidden("", c.config.get_action_info('link/confirm_message', action), id="confirm-action-" + action)}
        % endif
        
-       <a id="action-${action}" class="item-icon-link ${submit} ${mass_submit} ${confirmation}" title="${c.config.get_action_info('link/title', action)}" href="${link}">
+       <a id="action-${action}" class="item-icon-link ${submit} ${mass_submit} ${confirmation} ${skip_validation}" title="${c.config.get_action_info('link/title', action)}" href="${link}">
            <img alt="${c.config.get_action_info('image/alt', action)}" src="/default/images/icons/${c.config.get_action_info('image/name', action)}"/>
            <span>${c.config.get_action_info('link/name', action)}</span>
        </a>