summaryrefslogtreecommitdiffstats
path: root/js/vendor/angular-ui/modules/directives/validate/validate.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/vendor/angular-ui/modules/directives/validate/validate.js')
-rw-r--r--js/vendor/angular-ui/modules/directives/validate/validate.js66
1 files changed, 0 insertions, 66 deletions
diff --git a/js/vendor/angular-ui/modules/directives/validate/validate.js b/js/vendor/angular-ui/modules/directives/validate/validate.js
deleted file mode 100644
index 2d255a60e..000000000
--- a/js/vendor/angular-ui/modules/directives/validate/validate.js
+++ /dev/null
@@ -1,66 +0,0 @@
-/**
- * General-purpose validator for ngModel.
- * angular.js comes with several built-in validation mechanism for input fields (ngRequired, ngPattern etc.) but using
- * an arbitrary validation function requires creation of a custom formatters and / or parsers.
- * The ui-validate directive makes it easy to use any function(s) defined in scope as a validator function(s).
- * A validator function will trigger validation on both model and input changes.
- *
- * @example <input ui-validate=" 'myValidatorFunction($value)' ">
- * @example <input ui-validate="{ foo : '$value > anotherModel', bar : 'validateFoo($value)' }">
- * @example <input ui-validate="{ foo : '$value > anotherModel' }" ui-validate-watch=" 'anotherModel' ">
- * @example <input ui-validate="{ foo : '$value > anotherModel', bar : 'validateFoo($value)' }" ui-validate-watch=" { foo : 'anotherModel' } ">
- *
- * @param ui-validate {string|object literal} If strings is passed it should be a scope's function to be used as a validator.
- * If an object literal is passed a key denotes a validation error key while a value should be a validator function.
- * In both cases validator function should take a value to validate as its argument and should return true/false indicating a validation result.
- */
-angular.module('ui.directives').directive('uiValidate', function () {
-
- return {
- restrict: 'A',
- require: 'ngModel',
- link: function (scope, elm, attrs, ctrl) {
- var validateFn, watch, validators = {},
- validateExpr = scope.$eval(attrs.uiValidate);
-
- if (!validateExpr) return;
-
- if (angular.isString(validateExpr)) {
- validateExpr = { validator: validateExpr };
- }
-
- angular.forEach(validateExpr, function (expression, key) {
- validateFn = function (valueToValidate) {
- if (scope.$eval(expression, { '$value' : valueToValidate })) {
- ctrl.$setValidity(key, true);
- return valueToValidate;
- } else {
- ctrl.$setValidity(key, false);
- return undefined;
- }
- };
- validators[key] = validateFn;
- ctrl.$formatters.push(validateFn);
- ctrl.$parsers.push(validateFn);
- });
-
- // Support for ui-validate-watch
- if (attrs.uiValidateWatch) {
- watch = scope.$eval(attrs.uiValidateWatch);
- if (angular.isString(watch)) {
- scope.$watch(watch, function(){
- angular.forEach(validators, function(validatorFn, key){
- validatorFn(ctrl.$modelValue);
- });
- });
- } else {
- angular.forEach(watch, function(expression, key){
- scope.$watch(expression, function(){
- validators[key](ctrl.$modelValue);
- });
- });
- }
- }
- }
- };
-});