Просмотр исходного кода

made required validation default when value has validation key defined

Rafał Pitoń 9 лет назад
Родитель
Сommit
5f7382fca3

+ 2 - 2
misago/frontend/misago/components/modals/signin.js

@@ -15,8 +15,8 @@
         password: m.prop(''),
 
         validation: {
-          'username': [Misago.validators.required()],
-          'password': [Misago.validators.required()]
+          'username': [],
+          'password': []
         }
       };
     },

+ 12 - 8
misago/frontend/misago/services/validation.js

@@ -21,16 +21,20 @@
     for (var key in ctrl.validation) {
       if (ctrl.validation.hasOwnProperty(key)) {
         value = ctrl[key]();
+        result = Misago.validators.required()(value);
+        if (result) {
+            errors[key] = [result];
+        } else {
+          for (var i in ctrl.validation[key]) {
+            validator = ctrl.validation[key][i];
+            result = validator(value);
 
-        for (var i in ctrl.validation[key]) {
-          validator = ctrl.validation[key][i];
-          result = validator(value);
-
-          if (result) {
-            if (!errors[key]) {
-              errors[key] = [];
+            if (result) {
+              if (!errors[key]) {
+                errors[key] = [];
+              }
+              errors[key].push(result);
             }
-            errors[key].push(result);
           }
         }
       }

+ 3 - 2
misago/frontend/test/tests/unit/validation.js

@@ -15,10 +15,11 @@
     var controller = {
       username: m.prop(''),
       password: m.prop('ok!'),
+      optional: m.prop(''),
 
       validation: {
-        username: [Misago.validators.required()],
-        password: [Misago.validators.required()]
+        username: [],
+        password: []
       }
     };