diff --git a/Packages/active-entry/components/entrySignIn/entrySignIn.html b/Packages/active-entry/components/entrySignIn/entrySignIn.html index b7cf8a26b..6428d807a 100755 --- a/Packages/active-entry/components/entrySignIn/entrySignIn.html +++ b/Packages/active-entry/components/entrySignIn/entrySignIn.html @@ -18,14 +18,21 @@ {{#if isLDAPSet}}
+ {{#if ldapErrorMessages}} +
+ {{#each ldapErrorMessages}} +
{{this}}
+ {{/each}} +
+ {{/if}}
- +


- +
@@ -34,6 +41,7 @@ {{else}}
+
@@ -49,14 +57,13 @@

+

+ + +

+ + {{/if}} -

- - -

- - - {{/if}}
diff --git a/Packages/active-entry/components/entrySignIn/entrySignIn.js b/Packages/active-entry/components/entrySignIn/entrySignIn.js index 668223c0b..2bf3adc08 100755 --- a/Packages/active-entry/components/entrySignIn/entrySignIn.js +++ b/Packages/active-entry/components/entrySignIn/entrySignIn.js @@ -66,8 +66,35 @@ Template.entrySignIn.helpers({ } }, + getLDAPUsernameValidationStyling: function() { + if (ActiveEntry.errorMessages.equals('ldapUsername', "Username is required")) { + return "border: 1px solid #a94442"; + } else if (ActiveEntry.successMessages.equals('ldapUsername', "Username present")) { + return "border: 1px solid green"; + } else { + return "border: 1px solid gray"; + } + }, + getLDAPPasswordValidationStyling: function() { + if (ActiveEntry.errorMessages.equals('ldapPassword', "Password is required")) { + return "border: 1px solid #a94442"; + } else if (ActiveEntry.successMessages.equals('ldapPassword', "Password present")) { + return "border: 1px solid green"; + } else { + return "border: 1px solid gray"; + } + }, isLDAPSet: function() { return Session.get('isLDAPSet'); + }, + ldapErrorMessages: function () { + if (ActiveEntry.errorMessages.get("ldapUsername")) { + return [ActiveEntry.errorMessages.get("ldapUsername")]; + } else if(ActiveEntry.errorMessages.get("ldapPassword")) { + return [ActiveEntry.errorMessages.get("ldapPassword")]; + } + + return; } }); @@ -117,6 +144,16 @@ Template.entrySignIn.events({ ActiveEntry.errorMessages.set('signInError', null); setSignInButtonStyling(); }, + 'keyup, change #signInLDAPUsernameInput': function (event, template) { + var username = $('#signInLDAPUsernameInput').val(); + ActiveEntry.verifyLDAPUsername(username); + ActiveEntry.errorMessages.set('signInError', null); + }, + 'keyup, change #signInLDAPPasswordInput': function (event, template) { + var password = $('#signInLDAPPasswordInput').val(); + ActiveEntry.verifyLDAPPassword(password); + ActiveEntry.errorMessages.set('signInError', null); + }, // 'submit': function (event, template) { // event.preventDefault(); // var emailValue = template.$('[name=email]').val(); @@ -137,6 +174,8 @@ Template.entrySignIn.events({ 'keyup #entrySignIn': function(event, template) { if(event.keyCode == 13) { $("#signInToAppButton").click(); + $("#signInLDAPToAppButton").click(); + } }, 'click #signInLDAPToAppButton': function(e, template) { diff --git a/Packages/active-entry/lib/ActiveEntry.js b/Packages/active-entry/lib/ActiveEntry.js index 2518cd2dc..de1d4bab7 100755 --- a/Packages/active-entry/lib/ActiveEntry.js +++ b/Packages/active-entry/lib/ActiveEntry.js @@ -127,6 +127,26 @@ ActiveEntry.verifyFullName = function (fullName) { } }; +ActiveEntry.verifyLDAPUsername = function(username) { + if (username === "") { + ActiveEntry.errorMessages.set("ldapUsername", "Username is required"); + ActiveEntry.successMessages.set("ldapUsername", null); + } else { + ActiveEntry.errorMessages.set("ldapUsername", null); + ActiveEntry.successMessages.set("ldapUsername", "Username present"); + } +}; + +ActiveEntry.verifyLDAPPassword = function(password) { + if (password === "") { + ActiveEntry.errorMessages.set("ldapPassword", "Password is required"); + ActiveEntry.successMessages.set("ldapPassword", null); + } else { + ActiveEntry.errorMessages.set("ldapPassword", null); + ActiveEntry.successMessages.set("ldapPassword", "Password present"); + } +}; + ActiveEntry.signIn = function (emailValue, passwordValue){ ActiveEntry.verifyPassword(passwordValue); @@ -222,7 +242,11 @@ ActiveEntry.signIn = function (emailValue, passwordValue){ }; ActiveEntry.loginWithLDAP = function(username, password) { - if (!username || !password) { + ActiveEntry.verifyLDAPUsername(username); + ActiveEntry.verifyLDAPPassword(password); + ActiveEntry.errorMessages.set('signInError', null); + + if (ActiveEntry.errorMessages.get("ldapUsername") || ActiveEntry.errorMessages.get("ldapPassword")) { return; }