Chromium Code Reviews| Index: chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc |
| diff --git a/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc b/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc |
| index d2d710351791188473f9d4f2dfc637ad6824b756..a48a272c0dfb93e2cac00262a5c991c208796bf5 100644 |
| --- a/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc |
| +++ b/chrome/browser/ui/webui/chromeos/login/gaia_screen_handler.cc |
| @@ -36,7 +36,8 @@ namespace { |
| const char kJsScreenPath[] = "login.GaiaSigninScreen"; |
| -void UpdateAuthParams(base::DictionaryValue* params, bool has_users) { |
| +void UpdateAuthParams(base::DictionaryValue* params, bool has_users, |
|
bartfab (slow)
2014/08/04 17:40:52
Nit: Per the style guide, either put all arguments
davidyu
2014/08/05 07:24:05
Done.
|
| + bool is_enrolling_consumer_management) { |
| CrosSettings* cros_settings = CrosSettings::Get(); |
| bool allow_new_user = true; |
| cros_settings->GetBoolean(kAccountsPrefAllowNewUser, &allow_new_user); |
| @@ -73,7 +74,10 @@ void UpdateAuthParams(base::DictionaryValue* params, bool has_users) { |
| // Now check whether we're in multi-profiles user adding scenario and |
| // disable GAIA right panel features if that's the case. |
| - if (UserAddingScreen::Get()->IsRunning()) { |
| + // For consumer management enrollment, we also hide all right panel components |
| + // and show only an enrollment message. |
| + if (UserAddingScreen::Get()->IsRunning() || |
| + is_enrolling_consumer_management) { |
| params->SetBoolean("createAccount", false); |
| params->SetBoolean("guestSignin", false); |
| params->SetBoolean("supervisedUsersEnabled", false); |
| @@ -116,6 +120,7 @@ GaiaScreenHandler::GaiaScreenHandler( |
| focus_stolen_(false), |
| gaia_silent_load_(false), |
| using_saml_api_(false), |
| + is_enrolling_consumer_management_(false), |
| test_expects_complete_login_(false), |
| signin_screen_handler_(NULL), |
| weak_factory_(this) { |
| @@ -134,8 +139,11 @@ void GaiaScreenHandler::LoadGaia(const GaiaContext& context) { |
| params.SetBoolean("isShowUsers", context.show_users); |
| params.SetBoolean("useOffline", context.use_offline); |
| params.SetString("email", context.email); |
| + params.SetBoolean("isEnrollingConsumerManagement", |
| + context.is_enrolling_consumer_management); |
| - UpdateAuthParams(¶ms, context.has_users); |
| + UpdateAuthParams(¶ms, context.has_users, |
| + context.is_enrolling_consumer_management); |
|
bartfab (slow)
2014/08/04 17:40:52
Nit: You use |context.is_enrolling_consumer_manage
davidyu
2014/08/05 07:24:05
Done.
|
| if (!context.use_offline) { |
| const std::string app_locale = g_browser_process->GetApplicationLocale(); |
| @@ -178,7 +186,8 @@ void GaiaScreenHandler::LoadGaia(const GaiaContext& context) { |
| void GaiaScreenHandler::UpdateGaia(const GaiaContext& context) { |
| base::DictionaryValue params; |
| - UpdateAuthParams(¶ms, context.has_users); |
| + UpdateAuthParams(¶ms, context.has_users, |
| + context.is_enrolling_consumer_management); |
| CallJS("updateAuthExtension", params); |
| } |
| @@ -209,6 +218,8 @@ void GaiaScreenHandler::DeclareLocalizedValues( |
| IDS_CREATE_LOCALLY_MANAGED_USER_HTML); |
| builder->Add("createSupervisedUserFeatureName", |
| IDS_CREATE_LOCALLY_MANAGED_USER_FEATURE_NAME); |
| + builder->Add("consumerManagementEnrollmentSigninMessage", |
| + IDS_LOGIN_CONSUMER_MANAGEMENT_ENROLLMENT); |
| // Strings used by the SAML fatal error dialog. |
| builder->Add("fatalErrorMessageNoEmail", IDS_LOGIN_FATAL_ERROR_NO_EMAIL); |
| @@ -278,6 +289,14 @@ void GaiaScreenHandler::HandleCompleteAuthentication( |
| void GaiaScreenHandler::HandleCompleteLogin(const std::string& typed_email, |
| const std::string& password, |
| bool using_saml) { |
| + std::string owner_email = UserManager::Get()->GetOwnerEmail(); |
|
bartfab (slow)
2014/08/04 17:40:52
Nit: const.
davidyu
2014/08/05 07:24:05
Done.
|
| + if (is_enrolling_consumer_management_ && typed_email != owner_email) { |
| + // Show Gaia signin page again since we only allow the owner to sign in. |
|
bartfab (slow)
2014/08/04 17:40:52
Nit 1: s/signin/sign-in/
Nit 2: s/again/again, /
davidyu
2014/08/05 07:24:05
Done.
|
| + populated_email_ = owner_email; |
| + ShowGaia(is_enrolling_consumer_management_); |
| + return; |
| + } |
| + |
| if (!Delegate()) |
| return; |
| @@ -446,7 +465,8 @@ void GaiaScreenHandler::SetSAMLPrincipalsAPIUsed(bool api_used) { |
| UMA_HISTOGRAM_BOOLEAN("ChromeOS.SAML.APIUsed", api_used); |
| } |
| -void GaiaScreenHandler::ShowGaia() { |
| +void GaiaScreenHandler::ShowGaia(bool is_enrolling_consumer_management) { |
| + is_enrolling_consumer_management_ = is_enrolling_consumer_management; |
| if (gaia_silent_load_ && populated_email_.empty()) { |
| dns_cleared_ = true; |
| cookies_cleared_ = true; |
| @@ -523,6 +543,7 @@ void GaiaScreenHandler::LoadAuthExtension(bool force, |
| password_changed_for_.count(populated_email_); |
| context.use_offline = offline; |
| context.email = populated_email_; |
| + context.is_enrolling_consumer_management = is_enrolling_consumer_management_; |
| if (Delegate()) { |
| context.show_users = Delegate()->IsShowUsers(); |
| context.has_users = !Delegate()->GetUsers().empty(); |