diff options
author | Fatih Acet <acetfatih@gmail.com> | 2017-01-19 20:52:03 +0000 |
---|---|---|
committer | Fatih Acet <acetfatih@gmail.com> | 2017-01-19 20:52:03 +0000 |
commit | 4bf9725035f20e3a571a3fc9bda273f3bdd3cbbe (patch) | |
tree | 26194575aefedcc926caf19bf2c70cb34f04318a | |
parent | d7318a563007a32db2d4b261c4c70e3e9f126526 (diff) | |
parent | 932bcb4d32ee89922b6e7123a9c18489b36cc6e5 (diff) | |
download | gitlab-ce-4bf9725035f20e3a571a3fc9bda273f3bdd3cbbe.tar.gz |
Merge branch '26066-wrong-messsage-for-unregistered-u2f-device-on-sign-in' into 'master'
New U2F ineligible message
Closes #26066
See merge request !8392
-rw-r--r-- | app/assets/javascripts/u2f/authenticate.js.es6 | 2 | ||||
-rw-r--r-- | app/assets/javascripts/u2f/error.js | 16 | ||||
-rw-r--r-- | app/assets/javascripts/u2f/register.js | 2 |
3 files changed, 10 insertions, 10 deletions
diff --git a/app/assets/javascripts/u2f/authenticate.js.es6 b/app/assets/javascripts/u2f/authenticate.js.es6 index 3ba70e7b439..500b78fc5d8 100644 --- a/app/assets/javascripts/u2f/authenticate.js.es6 +++ b/app/assets/javascripts/u2f/authenticate.js.es6 @@ -57,7 +57,7 @@ return function(response) { var error; if (response.errorCode) { - error = new U2FError(response.errorCode); + error = new U2FError(response.errorCode, 'authenticate'); return _this.renderError(error); } else { return _this.renderAuthenticated(JSON.stringify(response)); diff --git a/app/assets/javascripts/u2f/error.js b/app/assets/javascripts/u2f/error.js index 499a24f58df..86b459e1866 100644 --- a/app/assets/javascripts/u2f/error.js +++ b/app/assets/javascripts/u2f/error.js @@ -5,21 +5,21 @@ var bind = function(fn, me) { return function() { return fn.apply(me, arguments); }; }; this.U2FError = (function() { - function U2FError(errorCode) { + function U2FError(errorCode, u2fFlowType) { this.errorCode = errorCode; this.message = bind(this.message, this); this.httpsDisabled = window.location.protocol !== 'https:'; + this.u2fFlowType = u2fFlowType; } U2FError.prototype.message = function() { - switch (false) { - case !(this.errorCode === u2f.ErrorCodes.BAD_REQUEST && this.httpsDisabled): - return "U2F only works with HTTPS-enabled websites. Contact your administrator for more details."; - case this.errorCode !== u2f.ErrorCodes.DEVICE_INELIGIBLE: - return "This device has already been registered with us."; - default: - return "There was a problem communicating with your device."; + if (this.errorCode === u2f.ErrorCodes.BAD_REQUEST && this.httpsDisabled) { + return 'U2F only works with HTTPS-enabled websites. Contact your administrator for more details.'; + } else if (this.errorCode === u2f.ErrorCodes.DEVICE_INELIGIBLE) { + if (this.u2fFlowType === 'authenticate') return 'This device has not been registered with us.'; + if (this.u2fFlowType === 'register') return 'This device has already been registered with us.'; } + return "There was a problem communicating with your device."; }; return U2FError; diff --git a/app/assets/javascripts/u2f/register.js b/app/assets/javascripts/u2f/register.js index 87c1f5ff62c..69d1ff3a39e 100644 --- a/app/assets/javascripts/u2f/register.js +++ b/app/assets/javascripts/u2f/register.js @@ -39,7 +39,7 @@ return function(response) { var error; if (response.errorCode) { - error = new U2FError(response.errorCode); + error = new U2FError(response.errorCode, 'register'); return _this.renderError(error); } else { return _this.renderRegistered(JSON.stringify(response)); |