146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved.
246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// found in the LICENSE file.
446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "chrome/browser/ui/webui/chromeos/login/auto_enrollment_check_screen_handler.h"
646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h"
846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "grit/chromium_strings.h"
946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "grit/generated_resources.h"
1046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)namespace {
1246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)const char kJsScreenPath[] = "login.AutoEnrollmentCheckScreen";
1446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}  // namespace
1646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)namespace chromeos {
1846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
1946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)AutoEnrollmentCheckScreenHandler::AutoEnrollmentCheckScreenHandler()
2046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    : BaseScreenHandler(kJsScreenPath),
2146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)      delegate_(NULL),
2246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)      show_on_init_(false) {
2346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}
2446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
2546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)AutoEnrollmentCheckScreenHandler::~AutoEnrollmentCheckScreenHandler() {
2646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  if (delegate_)
2746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    delegate_->OnActorDestroyed(this);
2846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}
2946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
3046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void AutoEnrollmentCheckScreenHandler::Show() {
3146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  if (!page_is_ready()) {
3246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    show_on_init_ = true;
3346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    return;
3446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  }
3546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  ShowScreen(OobeUI::kScreenAutoEnrollmentCheck, NULL);
3646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}
3746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
3846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void AutoEnrollmentCheckScreenHandler::SetDelegate(Delegate* delegate) {
3946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  delegate_ = delegate;
4046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  if (page_is_ready())
4146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    Initialize();
4246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}
4346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
4446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void AutoEnrollmentCheckScreenHandler::DeclareLocalizedValues(
4546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    LocalizedValuesBuilder* builder) {
4646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  builder->Add("autoEnrollmentCheckScreenHeader",
4746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)               IDS_AUTO_ENROLLMENT_CHECK_SCREEN_HEADER);
4846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  builder->Add("autoEnrollmentCheckMessage",
4946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)               IDS_AUTO_ENROLLMENT_CHECK_SCREEN_MESSAGE);
5046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}
5146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
5246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void AutoEnrollmentCheckScreenHandler::Initialize() {
5346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  if (!page_is_ready() || !delegate_)
5446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    return;
5546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
5646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  if (show_on_init_) {
5746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    Show();
5846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    show_on_init_ = false;
5946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  }
6046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}
6146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
6246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void AutoEnrollmentCheckScreenHandler::RegisterMessages() {}
6346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
6446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)}  // namespace chromeos
65