From 631b27c3b4c914e3967a704a82a8f564e13c6a7c Mon Sep 17 00:00:00 2001 From: tlastad Date: Mon, 30 Mar 2015 10:48:09 +0200 Subject: [PATCH 1/3] Get form within scope Previous code retrieved first form on page, and exited if that form did not have a name. This change will let it get first form with a name within scope. Useful if, like in my case, there are several forms on the page that are out of my control. --- src/validation-common.js | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/src/validation-common.js b/src/validation-common.js index e03a65b..a7fefb6 100644 --- a/src/validation-common.js +++ b/src/validation-common.js @@ -283,7 +283,20 @@ angular //---- // Private functions declaration //---------------------------------- - + /** Get form within scope (if found) + * @param self + */ + function getScopeForm(self) { + var forms = document.querySelectorAll('form'); + for (var i = 0; i < forms.length; i++) { + var form = document.querySelectorAll('form')[i]; + if (form && form.name && self.scope[form.name]) { + return self.scope[form.name]; + } + } + return null; + } + /** Add the error to the validation summary * @param self * @param string elmName: element name (name attribute) @@ -309,10 +322,10 @@ angular // save validation summary 2 variable locations, inside the scope object and also in the form object (if found) self.scope.$validationSummary = validationSummary; - var formName = angular.element(document.querySelector('form')).attr('name'); - if(!!formName) { - self.scope[formName].$validationSummary = validationSummary; - } + var form = getScopeForm(self); + if (form) { + form.$validationSummary = validationSummary; + } } /** Quick function to find an object inside an array by it's given field name and value, return the index found or -1 From 10db26c00eab98665345ba3f26c8381a92eed788 Mon Sep 17 00:00:00 2001 From: tlastad Date: Mon, 30 Mar 2015 15:26:42 +0200 Subject: [PATCH 2/3] fixed indents fixed offset indents --- src/validation-common.js | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/validation-common.js b/src/validation-common.js index a7fefb6..e61c3c9 100644 --- a/src/validation-common.js +++ b/src/validation-common.js @@ -280,21 +280,22 @@ angular return isFieldValid; } // validate() - //---- - // Private functions declaration - //---------------------------------- + //---- + // Private functions declaration + //---------------------------------- + /** Get form within scope (if found) * @param self */ function getScopeForm(self) { - var forms = document.querySelectorAll('form'); - for (var i = 0; i < forms.length; i++) { - var form = document.querySelectorAll('form')[i]; - if (form && form.name && self.scope[form.name]) { - return self.scope[form.name]; - } + var forms = document.querySelectorAll('form'); + for (var i = 0; i < forms.length; i++) { + var form = document.querySelectorAll('form')[i]; + if (form && form.name && self.scope[form.name]) { + return self.scope[form.name]; } - return null; + } + return null; } /** Add the error to the validation summary From 93bfbc3f6590ca931e4880ae88a8f64b8af01f1a Mon Sep 17 00:00:00 2001 From: tlastad Date: Mon, 30 Mar 2015 15:38:29 +0200 Subject: [PATCH 3/3] hidden tabs should be spaces, not tabs --- src/validation-common.js | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/src/validation-common.js b/src/validation-common.js index e61c3c9..74422cb 100644 --- a/src/validation-common.js +++ b/src/validation-common.js @@ -280,24 +280,24 @@ angular return isFieldValid; } // validate() - //---- - // Private functions declaration - //---------------------------------- - - /** Get form within scope (if found) + //---- + // Private functions declaration + //---------------------------------- + + /** Get form within scope (if found) * @param self */ - function getScopeForm(self) { - var forms = document.querySelectorAll('form'); - for (var i = 0; i < forms.length; i++) { - var form = document.querySelectorAll('form')[i]; - if (form && form.name && self.scope[form.name]) { - return self.scope[form.name]; - } - } - return null; - } - + function getScopeForm(self) { + var forms = document.querySelectorAll('form'); + for (var i = 0; i < forms.length; i++) { + var form = document.querySelectorAll('form')[i]; + if (form && form.name && self.scope[form.name]) { + return self.scope[form.name]; + } + } + return null; + } + /** Add the error to the validation summary * @param self * @param string elmName: element name (name attribute) @@ -323,10 +323,10 @@ angular // save validation summary 2 variable locations, inside the scope object and also in the form object (if found) self.scope.$validationSummary = validationSummary; - var form = getScopeForm(self); - if (form) { - form.$validationSummary = validationSummary; - } + var form = getScopeForm(self); + if (form) { + form.$validationSummary = validationSummary; + } } /** Quick function to find an object inside an array by it's given field name and value, return the index found or -1