Chromium Code Reviews| Index: chrome/browser/resources/gaia_auth_host/authenticator.js |
| diff --git a/chrome/browser/resources/gaia_auth_host/authenticator.js b/chrome/browser/resources/gaia_auth_host/authenticator.js |
| index 1dfc4c5fc6194f1b49f93c2e0b52af7cf955a14d..372c3416ec6ef3d9f6e004e38d2745acbbea6964 100644 |
| --- a/chrome/browser/resources/gaia_auth_host/authenticator.js |
| +++ b/chrome/browser/resources/gaia_auth_host/authenticator.js |
| @@ -31,6 +31,7 @@ cr.define('cr.login', function() { |
| var GAPS_COOKIE = 'GAPS'; |
| var SERVICE_ID = 'chromeoslogin'; |
| var EMBEDDED_SETUP_CHROMEOS_ENDPOINT = 'embedded/setup/chromeos'; |
| + var EMBEDDED_SETUP_CHROMEOS_ENDPOINT_V2 = 'embedded/setup/v2/chromeos'; |
| var SAML_REDIRECTION_PATH = 'samlredirect'; |
| var BLANK_PAGE_URL = 'about:blank'; |
| @@ -76,15 +77,16 @@ cr.define('cr.login', function() { |
| // not called before dispatching |authCopleted|. |
| // Default is |true|. |
| 'flow', // One of 'default', 'enterprise', or 'theftprotection'. |
| - 'enterpriseDomain', // Domain in which hosting device is (or should be) |
| - // enrolled. |
| - 'emailDomain', // Value used to prefill domain for email. |
| - 'chromeType', // Type of Chrome OS device, e.g. "chromebox". |
| - 'clientVersion', // Version of the Chrome build. |
| - 'platformVersion', // Version of the OS build. |
| - 'releaseChannel', // Installation channel. |
| - 'endpointGen', // Current endpoint generation. |
| - 'gapsCookie', // GAPS cookie |
| + 'enterpriseDomain', // Domain in which hosting device is (or should be) |
| + // enrolled. |
| + 'emailDomain', // Value used to prefill domain for email. |
| + 'chromeType', // Type of Chrome OS device, e.g. "chromebox". |
| + 'clientVersion', // Version of the Chrome build. |
| + 'platformVersion', // Version of the OS build. |
| + 'releaseChannel', // Installation channel. |
| + 'endpointGen', // Current endpoint generation. |
| + 'gapsCookie', // GAPS cookie |
| + 'chromeOSApiVersion', // GAIA Chrome OS API version |
| // The email fields allow for the following possibilities: |
| // |
| @@ -231,6 +233,7 @@ cr.define('cr.login', function() { |
| this.gapsCookieSent_ = false; |
| this.newGapsCookie_ = null; |
| this.dontResizeNonEmbeddedPages = data.dontResizeNonEmbeddedPages; |
| + this.chromeOSApiVersion_ = data.chromeOSApiVersion; |
| this.initialFrameUrl_ = this.constructInitialFrameUrl_(data); |
| this.reloadUrl_ = data.frameUrl || this.initialFrameUrl_; |
| @@ -247,7 +250,7 @@ cr.define('cr.login', function() { |
| if (!this.onBeforeSetHeadersSet_) { |
| this.onBeforeSetHeadersSet_ = true; |
| - var filterPrefix = this.idpOrigin_ + EMBEDDED_SETUP_CHROMEOS_ENDPOINT; |
| + var filterPrefix = this.constructChromeOSAPIUrl_(); |
| // This depends on gaiaUrl parameter, that is why it is here. |
| this.webview_.request.onBeforeSendHeaders.addListener( |
| this.onBeforeSendHeaders_.bind(this), |
| @@ -260,6 +263,13 @@ cr.define('cr.login', function() { |
| this.isLoaded_ = true; |
| }; |
| + Authenticator.prototype.constructChromeOSAPIUrl_ = function() { |
| + if (this.chromeOSApiVersion_ && this.chromeOSApiVersion_ == 2) { |
|
achuithb
2017/06/21 18:33:12
Can drop {}
Alexander Alekseev
2017/06/21 20:05:34
Done.
|
| + return this.idpOrigin_ + EMBEDDED_SETUP_CHROMEOS_ENDPOINT_V2; |
| + } |
| + return this.idpOrigin_ + EMBEDDED_SETUP_CHROMEOS_ENDPOINT; |
| + }; |
| + |
| /** |
| * Reloads the authenticator component. |
| */ |
| @@ -283,12 +293,14 @@ cr.define('cr.login', function() { |
| return url; |
| } |
| - var path = data.gaiaPath; |
| - if (!path && this.isNewGaiaFlow) |
| - path = EMBEDDED_SETUP_CHROMEOS_ENDPOINT; |
| - if (!path) |
| - path = IDP_PATH; |
| - var url = this.idpOrigin_ + path; |
| + var url; |
| + if (data.gaiaPath) { |
|
achuithb
2017/06/21 18:33:12
can drop {}
Alexander Alekseev
2017/06/21 20:05:34
Done.
|
| + url = this.idpOrigin_ + data.gaiaPath; |
| + } else if (this.isNewGaiaFlow) { |
|
achuithb
2017/06/21 18:33:12
This is always true, right? Should we deprecate th
Alexander Alekseev
2017/06/21 20:05:34
isNewGaiaFlow should be either removed or renamed
|
| + url = this.constructChromeOSAPIUrl_(); |
| + } else { |
| + url = this.idpOrigin_ + IDP_PATH; |
| + } |
| if (this.isNewGaiaFlow) { |
| if (data.chromeType) |