| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h" | 5 #include "chrome/browser/ui/webui/chromeos/login/enrollment_screen_handler.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "ash/common/system/chromeos/devicetype_utils.h" | 9 #include "ash/common/system/chromeos/devicetype_utils.h" |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 116 ERROR_STATE_BAD_PASSWORD = 4, | 116 ERROR_STATE_BAD_PASSWORD = 4, |
| 117 }; | 117 }; |
| 118 | 118 |
| 119 } // namespace | 119 } // namespace |
| 120 | 120 |
| 121 // EnrollmentScreenHandler, public ------------------------------ | 121 // EnrollmentScreenHandler, public ------------------------------ |
| 122 | 122 |
| 123 EnrollmentScreenHandler::EnrollmentScreenHandler( | 123 EnrollmentScreenHandler::EnrollmentScreenHandler( |
| 124 const scoped_refptr<NetworkStateInformer>& network_state_informer, | 124 const scoped_refptr<NetworkStateInformer>& network_state_informer, |
| 125 ErrorScreen* error_screen) | 125 ErrorScreen* error_screen) |
| 126 : network_state_informer_(network_state_informer), | 126 : BaseScreenHandler(kScreenId), |
| 127 network_state_informer_(network_state_informer), |
| 127 error_screen_(error_screen), | 128 error_screen_(error_screen), |
| 128 histogram_helper_(new ErrorScreensHistogramHelper("Enrollment")), | 129 histogram_helper_(new ErrorScreensHistogramHelper("Enrollment")), |
| 129 weak_ptr_factory_(this) { | 130 weak_ptr_factory_(this) { |
| 130 set_call_js_prefix(kJsScreenPath); | 131 set_call_js_prefix(kJsScreenPath); |
| 131 set_async_assets_load_id( | 132 set_async_assets_load_id(GetOobeScreenName(kScreenId)); |
| 132 GetOobeScreenName(OobeScreen::SCREEN_OOBE_ENROLLMENT)); | |
| 133 DCHECK(network_state_informer_.get()); | 133 DCHECK(network_state_informer_.get()); |
| 134 DCHECK(error_screen_); | 134 DCHECK(error_screen_); |
| 135 network_state_informer_->AddObserver(this); | 135 network_state_informer_->AddObserver(this); |
| 136 } | 136 } |
| 137 | 137 |
| 138 EnrollmentScreenHandler::~EnrollmentScreenHandler() { | 138 EnrollmentScreenHandler::~EnrollmentScreenHandler() { |
| 139 network_state_informer_->RemoveObserver(this); | 139 network_state_informer_->RemoveObserver(this); |
| 140 } | 140 } |
| 141 | 141 |
| 142 // EnrollmentScreenHandler, WebUIMessageHandler implementation -- | 142 // EnrollmentScreenHandler, WebUIMessageHandler implementation -- |
| (...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 407 IDS_AD_DOMAIN_JOIN_WELCOME_MESSAGE); | 407 IDS_AD_DOMAIN_JOIN_WELCOME_MESSAGE); |
| 408 builder->Add("adLoginUsername", IDS_AD_LOGIN_USER); | 408 builder->Add("adLoginUsername", IDS_AD_LOGIN_USER); |
| 409 builder->Add("adLoginInvalidUsername", IDS_AD_INVALID_USERNAME); | 409 builder->Add("adLoginInvalidUsername", IDS_AD_INVALID_USERNAME); |
| 410 builder->Add("adLoginPassword", IDS_AD_LOGIN_PASSWORD); | 410 builder->Add("adLoginPassword", IDS_AD_LOGIN_PASSWORD); |
| 411 builder->Add("adLoginInvalidPassword", IDS_AD_INVALID_PASSWORD); | 411 builder->Add("adLoginInvalidPassword", IDS_AD_INVALID_PASSWORD); |
| 412 builder->Add("adJoinErrorMachineNameInvalid", IDS_AD_MACHINENAME_INVALID); | 412 builder->Add("adJoinErrorMachineNameInvalid", IDS_AD_MACHINENAME_INVALID); |
| 413 builder->Add("adJoinErrorMachineNameTooLong", IDS_AD_MACHINENAME_TOO_LONG); | 413 builder->Add("adJoinErrorMachineNameTooLong", IDS_AD_MACHINENAME_TOO_LONG); |
| 414 } | 414 } |
| 415 | 415 |
| 416 bool EnrollmentScreenHandler::IsOnEnrollmentScreen() const { | 416 bool EnrollmentScreenHandler::IsOnEnrollmentScreen() const { |
| 417 return (GetCurrentScreen() == OobeScreen::SCREEN_OOBE_ENROLLMENT); | 417 return (GetCurrentScreen() == kScreenId); |
| 418 } | 418 } |
| 419 | 419 |
| 420 bool EnrollmentScreenHandler::IsEnrollmentScreenHiddenByError() const { | 420 bool EnrollmentScreenHandler::IsEnrollmentScreenHiddenByError() const { |
| 421 return (GetCurrentScreen() == OobeScreen::SCREEN_ERROR_MESSAGE && | 421 return (GetCurrentScreen() == OobeScreen::SCREEN_ERROR_MESSAGE && |
| 422 error_screen_->GetParentScreen() == | 422 error_screen_->GetParentScreen() == kScreenId); |
| 423 OobeScreen::SCREEN_OOBE_ENROLLMENT); | |
| 424 } | 423 } |
| 425 | 424 |
| 426 void EnrollmentScreenHandler::UpdateState(NetworkError::ErrorReason reason) { | 425 void EnrollmentScreenHandler::UpdateState(NetworkError::ErrorReason reason) { |
| 427 UpdateStateInternal(reason, false); | 426 UpdateStateInternal(reason, false); |
| 428 } | 427 } |
| 429 | 428 |
| 430 // TODO(rsorokin): This function is mostly copied from SigninScreenHandler and | 429 // TODO(rsorokin): This function is mostly copied from SigninScreenHandler and |
| 431 // should be refactored in the future. | 430 // should be refactored in the future. |
| 432 void EnrollmentScreenHandler::UpdateStateInternal( | 431 void EnrollmentScreenHandler::UpdateStateInternal( |
| 433 NetworkError::ErrorReason reason, | 432 NetworkError::ErrorReason reason, |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 493 error_screen_->SetErrorState(NetworkError::ERROR_STATE_AUTH_EXT_TIMEOUT, | 492 error_screen_->SetErrorState(NetworkError::ERROR_STATE_AUTH_EXT_TIMEOUT, |
| 494 std::string()); | 493 std::string()); |
| 495 } else { | 494 } else { |
| 496 error_screen_->SetErrorState(NetworkError::ERROR_STATE_OFFLINE, | 495 error_screen_->SetErrorState(NetworkError::ERROR_STATE_OFFLINE, |
| 497 std::string()); | 496 std::string()); |
| 498 } | 497 } |
| 499 | 498 |
| 500 if (GetCurrentScreen() != OobeScreen::SCREEN_ERROR_MESSAGE) { | 499 if (GetCurrentScreen() != OobeScreen::SCREEN_ERROR_MESSAGE) { |
| 501 const std::string network_type = network_state_informer_->network_type(); | 500 const std::string network_type = network_state_informer_->network_type(); |
| 502 error_screen_->SetUIState(NetworkError::UI_STATE_SIGNIN); | 501 error_screen_->SetUIState(NetworkError::UI_STATE_SIGNIN); |
| 503 error_screen_->SetParentScreen(OobeScreen::SCREEN_OOBE_ENROLLMENT); | 502 error_screen_->SetParentScreen(kScreenId); |
| 504 error_screen_->SetHideCallback(base::Bind(&EnrollmentScreenHandler::DoShow, | 503 error_screen_->SetHideCallback(base::Bind(&EnrollmentScreenHandler::DoShow, |
| 505 weak_ptr_factory_.GetWeakPtr())); | 504 weak_ptr_factory_.GetWeakPtr())); |
| 506 error_screen_->Show(); | 505 error_screen_->Show(); |
| 507 histogram_helper_->OnErrorShow(error_screen_->GetErrorState()); | 506 histogram_helper_->OnErrorShow(error_screen_->GetErrorState()); |
| 508 } | 507 } |
| 509 } | 508 } |
| 510 | 509 |
| 511 void EnrollmentScreenHandler::HideOfflineMessage( | 510 void EnrollmentScreenHandler::HideOfflineMessage( |
| 512 NetworkStateInformer::State state, | 511 NetworkStateInformer::State state, |
| 513 NetworkError::ErrorReason reason) { | 512 NetworkError::ErrorReason reason) { |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 694 | 693 |
| 695 ShowScreenWithData(OobeScreen::SCREEN_OOBE_ENROLLMENT, &screen_data); | 694 ShowScreenWithData(OobeScreen::SCREEN_OOBE_ENROLLMENT, &screen_data); |
| 696 if (first_show_) { | 695 if (first_show_) { |
| 697 first_show_ = false; | 696 first_show_ = false; |
| 698 UpdateStateInternal(NetworkError::ERROR_REASON_UPDATE, true); | 697 UpdateStateInternal(NetworkError::ERROR_REASON_UPDATE, true); |
| 699 } | 698 } |
| 700 histogram_helper_->OnScreenShow(); | 699 histogram_helper_->OnScreenShow(); |
| 701 } | 700 } |
| 702 | 701 |
| 703 } // namespace chromeos | 702 } // namespace chromeos |
| OLD | NEW |