OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/options/chromeos/consumer_management_handler.h
" | 5 #include "chrome/browser/ui/webui/options/chromeos/consumer_management_handler.h
" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/prefs/pref_service.h" | |
11 #include "base/values.h" | 10 #include "base/values.h" |
12 #include "chrome/browser/browser_process.h" | |
13 #include "chrome/browser/chromeos/login/users/user_manager.h" | 11 #include "chrome/browser/chromeos/login/users/user_manager.h" |
14 #include "chrome/common/pref_names.h" | 12 #include "chrome/browser/chromeos/policy/consumer_management_service.h" |
15 #include "chromeos/dbus/dbus_thread_manager.h" | 13 #include "chromeos/dbus/dbus_thread_manager.h" |
16 #include "chromeos/dbus/power_manager_client.h" | 14 #include "chromeos/dbus/power_manager_client.h" |
17 #include "content/public/browser/web_ui.h" | 15 #include "content/public/browser/web_ui.h" |
18 #include "grit/generated_resources.h" | 16 #include "grit/generated_resources.h" |
19 #include "ui/base/l10n/l10n_util.h" | 17 #include "ui/base/l10n/l10n_util.h" |
20 | 18 |
21 namespace chromeos { | 19 namespace chromeos { |
22 namespace options { | 20 namespace options { |
23 | 21 |
24 ConsumerManagementHandler::ConsumerManagementHandler() { | 22 ConsumerManagementHandler::ConsumerManagementHandler( |
| 23 policy::ConsumerManagementService* management_service) |
| 24 : management_service_(management_service) { |
25 } | 25 } |
26 | 26 |
27 ConsumerManagementHandler::~ConsumerManagementHandler() { | 27 ConsumerManagementHandler::~ConsumerManagementHandler() { |
28 } | 28 } |
29 | 29 |
30 void ConsumerManagementHandler::GetLocalizedValues( | 30 void ConsumerManagementHandler::GetLocalizedValues( |
31 base::DictionaryValue* localized_strings) { | 31 base::DictionaryValue* localized_strings) { |
32 DCHECK(localized_strings); | 32 DCHECK(localized_strings); |
33 | 33 |
34 RegisterTitle(localized_strings, "consumerManagementOverlay", | 34 RegisterTitle(localized_strings, "consumerManagementOverlay", |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 } | 76 } |
77 | 77 |
78 void ConsumerManagementHandler::HandleEnrollConsumerManagement( | 78 void ConsumerManagementHandler::HandleEnrollConsumerManagement( |
79 const base::ListValue* args) { | 79 const base::ListValue* args) { |
80 if (!chromeos::UserManager::Get()->IsCurrentUserOwner()) { | 80 if (!chromeos::UserManager::Get()->IsCurrentUserOwner()) { |
81 LOG(ERROR) << "Received enrollConsumerManagement, but the current user is " | 81 LOG(ERROR) << "Received enrollConsumerManagement, but the current user is " |
82 << "not the owner."; | 82 << "not the owner."; |
83 return; | 83 return; |
84 } | 84 } |
85 | 85 |
86 PrefService* prefs = g_browser_process->local_state(); | 86 CHECK(management_service_); |
87 prefs->SetBoolean(prefs::kConsumerManagementEnrollmentRequested, true); | 87 management_service_->SetEnrollmentState( |
88 prefs->CommitPendingWrite(); | 88 policy::ConsumerManagementService::ENROLLMENT_ENROLLING); |
89 chromeos::DBusThreadManager::Get()->GetPowerManagerClient()->RequestRestart(); | 89 chromeos::DBusThreadManager::Get()->GetPowerManagerClient()->RequestRestart(); |
90 } | 90 } |
91 | 91 |
92 void ConsumerManagementHandler::HandleUnenrollConsumerManagement( | 92 void ConsumerManagementHandler::HandleUnenrollConsumerManagement( |
93 const base::ListValue* args) { | 93 const base::ListValue* args) { |
94 NOTIMPLEMENTED(); | 94 NOTIMPLEMENTED(); |
95 } | 95 } |
96 | 96 |
97 } // namespace options | 97 } // namespace options |
98 } // namespace chromeos | 98 } // namespace chromeos |
OLD | NEW |