diff --git a/guacamole/src/main/webapp/app/login/directives/login.js b/guacamole/src/main/webapp/app/login/directives/login.js index cc820b81e..97d10684a 100644 --- a/guacamole/src/main/webapp/app/login/directives/login.js +++ b/guacamole/src/main/webapp/app/login/directives/login.js @@ -66,6 +66,7 @@ angular.module('login').directive('guacLogin', [function guacLogin() { var Field = $injector.get('Field'); // Required services + var $log = $injector.get('$log'); var $route = $injector.get('$route'); var authenticationService = $injector.get('authenticationService'); @@ -168,13 +169,17 @@ angular.module('login').directive('guacLogin', [function guacLogin() { else $scope.loginError = error.translatableMessage; - // Clear all visible password fields + // Clear all remaining fields that are not username fields angular.forEach($scope.remainingFields, function clearEnteredValueIfPassword(field) { // Remove entered value only if field is a password field - if (field.type === Field.Type.PASSWORD && field.name in $scope.enteredValues) + if (field.type === Field.Type.PASSWORD) $scope.enteredValues[field.name] = ''; + // If field is not username field and not password field, delete it. + else if (field.type !== Field.Type.USERNAME) + delete $scope.enteredValues[field.name]; + }); }