| 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/locally_managed_user_creation_s
creen_handler.h" | 5 #include "chrome/browser/ui/webui/chromeos/login/supervised_user_creation_screen
_handler.h" |
| 6 | 6 |
| 7 #include "ash/audio/sounds.h" | 7 #include "ash/audio/sounds.h" |
| 8 #include "base/strings/utf_string_conversions.h" | 8 #include "base/strings/utf_string_conversions.h" |
| 9 #include "base/values.h" | 9 #include "base/values.h" |
| 10 #include "chrome/browser/chromeos/login/managed/locally_managed_user_creation_fl
ow.h" | |
| 11 #include "chrome/browser/chromeos/login/screens/user_selection_screen.h" | 10 #include "chrome/browser/chromeos/login/screens/user_selection_screen.h" |
| 11 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_flow
.h" |
| 12 #include "chrome/browser/chromeos/login/users/supervised_user_manager.h" | 12 #include "chrome/browser/chromeos/login/users/supervised_user_manager.h" |
| 13 #include "chrome/browser/chromeos/login/users/user_manager.h" | 13 #include "chrome/browser/chromeos/login/users/user_manager.h" |
| 14 #include "chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h" | 14 #include "chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h" |
| 15 #include "chrome/browser/chromeos/settings/cros_settings.h" | 15 #include "chrome/browser/chromeos/settings/cros_settings.h" |
| 16 #include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h" | 16 #include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h" |
| 17 #include "chrome/common/url_constants.h" | 17 #include "chrome/common/url_constants.h" |
| 18 #include "chromeos/audio/chromeos_sounds.h" | 18 #include "chromeos/audio/chromeos_sounds.h" |
| 19 #include "components/user_manager/user_type.h" | 19 #include "components/user_manager/user_type.h" |
| 20 #include "google_apis/gaia/gaia_auth_util.h" | 20 #include "google_apis/gaia/gaia_auth_util.h" |
| 21 #include "grit/browser_resources.h" | 21 #include "grit/browser_resources.h" |
| 22 #include "grit/generated_resources.h" | 22 #include "grit/generated_resources.h" |
| 23 #include "net/base/data_url.h" | 23 #include "net/base/data_url.h" |
| 24 #include "net/base/escape.h" | 24 #include "net/base/escape.h" |
| 25 #include "ui/base/l10n/l10n_util.h" | 25 #include "ui/base/l10n/l10n_util.h" |
| 26 #include "ui/base/resource/resource_bundle.h" | 26 #include "ui/base/resource/resource_bundle.h" |
| 27 | 27 |
| 28 const char kJsScreenPath[] = "login.LocallyManagedUserCreationScreen"; | 28 const char kJsScreenPath[] = "login.LocallyManagedUserCreationScreen"; |
| 29 | 29 |
| 30 namespace chromeos { | 30 namespace chromeos { |
| 31 | 31 |
| 32 LocallyManagedUserCreationScreenHandler:: | 32 SupervisedUserCreationScreenHandler::SupervisedUserCreationScreenHandler() |
| 33 LocallyManagedUserCreationScreenHandler() | |
| 34 : BaseScreenHandler(kJsScreenPath), | 33 : BaseScreenHandler(kJsScreenPath), |
| 35 delegate_(NULL) { | 34 delegate_(NULL) { |
| 36 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance(); | 35 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance(); |
| 37 media::SoundsManager* manager = media::SoundsManager::Get(); | 36 media::SoundsManager* manager = media::SoundsManager::Get(); |
| 38 manager->Initialize(SOUND_OBJECT_DELETE, | 37 manager->Initialize(SOUND_OBJECT_DELETE, |
| 39 bundle.GetRawDataResource(IDR_SOUND_OBJECT_DELETE_WAV)); | 38 bundle.GetRawDataResource(IDR_SOUND_OBJECT_DELETE_WAV)); |
| 40 manager->Initialize(SOUND_CAMERA_SNAP, | 39 manager->Initialize(SOUND_CAMERA_SNAP, |
| 41 bundle.GetRawDataResource(IDR_SOUND_CAMERA_SNAP_WAV)); | 40 bundle.GetRawDataResource(IDR_SOUND_CAMERA_SNAP_WAV)); |
| 42 } | 41 } |
| 43 | 42 |
| 44 LocallyManagedUserCreationScreenHandler:: | 43 SupervisedUserCreationScreenHandler::~SupervisedUserCreationScreenHandler() { |
| 45 ~LocallyManagedUserCreationScreenHandler() { | |
| 46 if (delegate_) { | 44 if (delegate_) { |
| 47 delegate_->OnActorDestroyed(this); | 45 delegate_->OnActorDestroyed(this); |
| 48 } | 46 } |
| 49 } | 47 } |
| 50 | 48 |
| 51 void LocallyManagedUserCreationScreenHandler::DeclareLocalizedValues( | 49 void SupervisedUserCreationScreenHandler::DeclareLocalizedValues( |
| 52 LocalizedValuesBuilder* builder) { | 50 LocalizedValuesBuilder* builder) { |
| 53 builder->Add( | 51 builder->Add( |
| 54 "managedUserCreationFlowRetryButtonTitle", | 52 "managedUserCreationFlowRetryButtonTitle", |
| 55 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_ERROR_RETRY_BUTTON_TITLE); | 53 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_ERROR_RETRY_BUTTON_TITLE); |
| 56 builder->Add( | 54 builder->Add( |
| 57 "managedUserCreationFlowCancelButtonTitle", | 55 "managedUserCreationFlowCancelButtonTitle", |
| 58 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_ERROR_CANCEL_BUTTON_TITLE); | 56 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_ERROR_CANCEL_BUTTON_TITLE); |
| 59 builder->Add( | 57 builder->Add( |
| 60 "managedUserCreationFlowGotitButtonTitle", | 58 "managedUserCreationFlowGotitButtonTitle", |
| 61 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_GOT_IT_BUTTON_TITLE); | 59 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_GOT_IT_BUTTON_TITLE); |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 149 builder->Add("photoFlippedAccessibleText", | 147 builder->Add("photoFlippedAccessibleText", |
| 150 IDS_OPTIONS_PHOTO_FLIP_ACCESSIBLE_TEXT); | 148 IDS_OPTIONS_PHOTO_FLIP_ACCESSIBLE_TEXT); |
| 151 builder->Add("photoFlippedBackAccessibleText", | 149 builder->Add("photoFlippedBackAccessibleText", |
| 152 IDS_OPTIONS_PHOTO_FLIPBACK_ACCESSIBLE_TEXT); | 150 IDS_OPTIONS_PHOTO_FLIPBACK_ACCESSIBLE_TEXT); |
| 153 builder->Add("photoCaptureAccessibleText", | 151 builder->Add("photoCaptureAccessibleText", |
| 154 IDS_OPTIONS_PHOTO_CAPTURE_ACCESSIBLE_TEXT); | 152 IDS_OPTIONS_PHOTO_CAPTURE_ACCESSIBLE_TEXT); |
| 155 builder->Add("photoDiscardAccessibleText", | 153 builder->Add("photoDiscardAccessibleText", |
| 156 IDS_OPTIONS_PHOTO_DISCARD_ACCESSIBLE_TEXT); | 154 IDS_OPTIONS_PHOTO_DISCARD_ACCESSIBLE_TEXT); |
| 157 } | 155 } |
| 158 | 156 |
| 159 void LocallyManagedUserCreationScreenHandler::Initialize() {} | 157 void SupervisedUserCreationScreenHandler::Initialize() {} |
| 160 | 158 |
| 161 void LocallyManagedUserCreationScreenHandler::RegisterMessages() { | 159 void SupervisedUserCreationScreenHandler::RegisterMessages() { |
| 162 AddCallback("finishLocalManagedUserCreation", | 160 AddCallback("finishLocalManagedUserCreation", |
| 163 &LocallyManagedUserCreationScreenHandler:: | 161 &SupervisedUserCreationScreenHandler:: |
| 164 HandleFinishLocalManagedUserCreation); | 162 HandleFinishLocalSupervisedUserCreation); |
| 165 AddCallback("abortLocalManagedUserCreation", | 163 AddCallback("abortLocalManagedUserCreation", |
| 166 &LocallyManagedUserCreationScreenHandler:: | 164 &SupervisedUserCreationScreenHandler:: |
| 167 HandleAbortLocalManagedUserCreation); | 165 HandleAbortLocalSupervisedUserCreation); |
| 168 AddCallback("checkLocallyManagedUserName", | 166 AddCallback("checkLocallyManagedUserName", |
| 169 &LocallyManagedUserCreationScreenHandler:: | 167 &SupervisedUserCreationScreenHandler:: |
| 170 HandleCheckLocallyManagedUserName); | 168 HandleCheckSupervisedUserName); |
| 171 AddCallback("authenticateManagerInLocallyManagedUserCreationFlow", | 169 AddCallback("authenticateManagerInLocallyManagedUserCreationFlow", |
| 172 &LocallyManagedUserCreationScreenHandler:: | 170 &SupervisedUserCreationScreenHandler:: |
| 173 HandleAuthenticateManager); | 171 HandleAuthenticateManager); |
| 174 AddCallback("specifyLocallyManagedUserCreationFlowUserData", | 172 AddCallback("specifyLocallyManagedUserCreationFlowUserData", |
| 175 &LocallyManagedUserCreationScreenHandler:: | 173 &SupervisedUserCreationScreenHandler:: |
| 176 HandleCreateManagedUser); | 174 HandleCreateSupervisedUser); |
| 177 AddCallback("managerSelectedOnLocallyManagedUserCreationFlow", | 175 AddCallback("managerSelectedOnLocallyManagedUserCreationFlow", |
| 178 &LocallyManagedUserCreationScreenHandler:: | 176 &SupervisedUserCreationScreenHandler:: |
| 179 HandleManagerSelected); | 177 HandleManagerSelected); |
| 180 AddCallback("userSelectedForImportInManagedUserCreationFlow", | 178 AddCallback("userSelectedForImportInManagedUserCreationFlow", |
| 181 &LocallyManagedUserCreationScreenHandler:: | 179 &SupervisedUserCreationScreenHandler:: |
| 182 HandleImportUserSelected); | 180 HandleImportUserSelected); |
| 183 AddCallback("importSupervisedUser", | 181 AddCallback("importSupervisedUser", |
| 184 &LocallyManagedUserCreationScreenHandler:: | 182 &SupervisedUserCreationScreenHandler:: |
| 185 HandleImportSupervisedUser); | 183 HandleImportSupervisedUser); |
| 186 AddCallback("importSupervisedUserWithPassword", | 184 AddCallback("importSupervisedUserWithPassword", |
| 187 &LocallyManagedUserCreationScreenHandler:: | 185 &SupervisedUserCreationScreenHandler:: |
| 188 HandleImportSupervisedUserWithPassword); | 186 HandleImportSupervisedUserWithPassword); |
| 189 | 187 |
| 190 | 188 |
| 191 // TODO(antrim) : this is an explicit code duplications with UserImageScreen. | 189 // TODO(antrim) : this is an explicit code duplications with UserImageScreen. |
| 192 // It should be removed by issue 251179. | 190 // It should be removed by issue 251179. |
| 193 AddCallback("supervisedUserGetImages", | 191 AddCallback("supervisedUserGetImages", |
| 194 &LocallyManagedUserCreationScreenHandler:: | 192 &SupervisedUserCreationScreenHandler::HandleGetImages); |
| 195 HandleGetImages); | |
| 196 | 193 |
| 197 AddCallback("supervisedUserPhotoTaken", | 194 AddCallback("supervisedUserPhotoTaken", |
| 198 &LocallyManagedUserCreationScreenHandler::HandlePhotoTaken); | 195 &SupervisedUserCreationScreenHandler::HandlePhotoTaken); |
| 199 AddCallback("supervisedUserTakePhoto", | 196 AddCallback("supervisedUserTakePhoto", |
| 200 &LocallyManagedUserCreationScreenHandler::HandleTakePhoto); | 197 &SupervisedUserCreationScreenHandler::HandleTakePhoto); |
| 201 AddCallback("supervisedUserDiscardPhoto", | 198 AddCallback("supervisedUserDiscardPhoto", |
| 202 &LocallyManagedUserCreationScreenHandler::HandleDiscardPhoto); | 199 &SupervisedUserCreationScreenHandler::HandleDiscardPhoto); |
| 203 AddCallback("supervisedUserSelectImage", | 200 AddCallback("supervisedUserSelectImage", |
| 204 &LocallyManagedUserCreationScreenHandler::HandleSelectImage); | 201 &SupervisedUserCreationScreenHandler::HandleSelectImage); |
| 205 AddCallback("currentSupervisedUserPage", | 202 AddCallback("currentSupervisedUserPage", |
| 206 &LocallyManagedUserCreationScreenHandler:: | 203 &SupervisedUserCreationScreenHandler:: |
| 207 HandleCurrentSupervisedUserPage); | 204 HandleCurrentSupervisedUserPage); |
| 208 } | 205 } |
| 209 | 206 |
| 210 void LocallyManagedUserCreationScreenHandler::PrepareToShow() {} | 207 void SupervisedUserCreationScreenHandler::PrepareToShow() {} |
| 211 | 208 |
| 212 void LocallyManagedUserCreationScreenHandler::Show() { | 209 void SupervisedUserCreationScreenHandler::Show() { |
| 213 scoped_ptr<base::DictionaryValue> data(new base::DictionaryValue()); | 210 scoped_ptr<base::DictionaryValue> data(new base::DictionaryValue()); |
| 214 scoped_ptr<base::ListValue> users_list(new base::ListValue()); | 211 scoped_ptr<base::ListValue> users_list(new base::ListValue()); |
| 215 const UserList& users = UserManager::Get()->GetUsers(); | 212 const UserList& users = UserManager::Get()->GetUsers(); |
| 216 std::string owner; | 213 std::string owner; |
| 217 chromeos::CrosSettings::Get()->GetString(chromeos::kDeviceOwner, &owner); | 214 chromeos::CrosSettings::Get()->GetString(chromeos::kDeviceOwner, &owner); |
| 218 | 215 |
| 219 for (UserList::const_iterator it = users.begin(); it != users.end(); ++it) { | 216 for (UserList::const_iterator it = users.begin(); it != users.end(); ++it) { |
| 220 if ((*it)->GetType() != user_manager::USER_TYPE_REGULAR) | 217 if ((*it)->GetType() != user_manager::USER_TYPE_REGULAR) |
| 221 continue; | 218 continue; |
| 222 bool is_owner = ((*it)->email() == owner); | 219 bool is_owner = ((*it)->email() == owner); |
| 223 base::DictionaryValue* user_dict = new base::DictionaryValue(); | 220 base::DictionaryValue* user_dict = new base::DictionaryValue(); |
| 224 UserSelectionScreen::FillUserDictionary( | 221 UserSelectionScreen::FillUserDictionary( |
| 225 *it, | 222 *it, |
| 226 is_owner, | 223 is_owner, |
| 227 false /* is_signin_to_add */, | 224 false /* is_signin_to_add */, |
| 228 ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, | 225 ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, |
| 229 user_dict); | 226 user_dict); |
| 230 users_list->Append(user_dict); | 227 users_list->Append(user_dict); |
| 231 } | 228 } |
| 232 data->Set("managers", users_list.release()); | 229 data->Set("managers", users_list.release()); |
| 233 ShowScreen(OobeUI::kScreenManagedUserCreationFlow, data.get()); | 230 ShowScreen(OobeUI::kScreenSupervisedUserCreationFlow, data.get()); |
| 234 | 231 |
| 235 if (!delegate_) | 232 if (!delegate_) |
| 236 return; | 233 return; |
| 237 } | 234 } |
| 238 | 235 |
| 239 void LocallyManagedUserCreationScreenHandler::Hide() { | 236 void SupervisedUserCreationScreenHandler::Hide() { |
| 240 } | 237 } |
| 241 | 238 |
| 242 void LocallyManagedUserCreationScreenHandler::ShowIntroPage() { | 239 void SupervisedUserCreationScreenHandler::ShowIntroPage() { |
| 243 CallJS("showIntroPage"); | 240 CallJS("showIntroPage"); |
| 244 } | 241 } |
| 245 | 242 |
| 246 void LocallyManagedUserCreationScreenHandler::ShowManagerPasswordError() { | 243 void SupervisedUserCreationScreenHandler::ShowManagerPasswordError() { |
| 247 CallJS("showManagerPasswordError"); | 244 CallJS("showManagerPasswordError"); |
| 248 } | 245 } |
| 249 | 246 |
| 250 void LocallyManagedUserCreationScreenHandler::ShowStatusMessage( | 247 void SupervisedUserCreationScreenHandler::ShowStatusMessage( |
| 251 bool is_progress, | 248 bool is_progress, |
| 252 const base::string16& message) { | 249 const base::string16& message) { |
| 253 if (is_progress) | 250 if (is_progress) |
| 254 CallJS("showProgress", message); | 251 CallJS("showProgress", message); |
| 255 else | 252 else |
| 256 CallJS("showStatusError", message); | 253 CallJS("showStatusError", message); |
| 257 } | 254 } |
| 258 | 255 |
| 259 void LocallyManagedUserCreationScreenHandler::ShowUsernamePage() { | 256 void SupervisedUserCreationScreenHandler::ShowUsernamePage() { |
| 260 CallJS("showUsernamePage"); | 257 CallJS("showUsernamePage"); |
| 261 } | 258 } |
| 262 | 259 |
| 263 void LocallyManagedUserCreationScreenHandler::ShowTutorialPage() { | 260 void SupervisedUserCreationScreenHandler::ShowTutorialPage() { |
| 264 CallJS("showTutorialPage"); | 261 CallJS("showTutorialPage"); |
| 265 } | 262 } |
| 266 | 263 |
| 267 void LocallyManagedUserCreationScreenHandler::ShowErrorPage( | 264 void SupervisedUserCreationScreenHandler::ShowErrorPage( |
| 268 const base::string16& title, | 265 const base::string16& title, |
| 269 const base::string16& message, | 266 const base::string16& message, |
| 270 const base::string16& button_text) { | 267 const base::string16& button_text) { |
| 271 CallJS("showErrorPage", title, message, button_text); | 268 CallJS("showErrorPage", title, message, button_text); |
| 272 } | 269 } |
| 273 | 270 |
| 274 void LocallyManagedUserCreationScreenHandler::SetDelegate(Delegate* delegate) { | 271 void SupervisedUserCreationScreenHandler::SetDelegate(Delegate* delegate) { |
| 275 delegate_ = delegate; | 272 delegate_ = delegate; |
| 276 } | 273 } |
| 277 | 274 |
| 278 void LocallyManagedUserCreationScreenHandler:: | 275 void SupervisedUserCreationScreenHandler:: |
| 279 HandleFinishLocalManagedUserCreation() { | 276 HandleFinishLocalSupervisedUserCreation() { |
| 280 delegate_->FinishFlow(); | 277 delegate_->FinishFlow(); |
| 281 } | 278 } |
| 282 | 279 |
| 283 void LocallyManagedUserCreationScreenHandler:: | 280 void SupervisedUserCreationScreenHandler:: |
| 284 HandleAbortLocalManagedUserCreation() { | 281 HandleAbortLocalSupervisedUserCreation() { |
| 285 delegate_->AbortFlow(); | 282 delegate_->AbortFlow(); |
| 286 } | 283 } |
| 287 | 284 |
| 288 void LocallyManagedUserCreationScreenHandler::HandleManagerSelected( | 285 void SupervisedUserCreationScreenHandler::HandleManagerSelected( |
| 289 const std::string& manager_id) { | 286 const std::string& manager_id) { |
| 290 if (!delegate_) | 287 if (!delegate_) |
| 291 return; | 288 return; |
| 292 WallpaperManager::Get()->SetUserWallpaperNow(manager_id); | 289 WallpaperManager::Get()->SetUserWallpaperNow(manager_id); |
| 293 } | 290 } |
| 294 | 291 |
| 295 void LocallyManagedUserCreationScreenHandler::HandleImportUserSelected( | 292 void SupervisedUserCreationScreenHandler::HandleImportUserSelected( |
| 296 const std::string& user_id) { | 293 const std::string& user_id) { |
| 297 if (!delegate_) | 294 if (!delegate_) |
| 298 return; | 295 return; |
| 299 } | 296 } |
| 300 | 297 |
| 301 void LocallyManagedUserCreationScreenHandler::HandleCheckLocallyManagedUserName( | 298 void SupervisedUserCreationScreenHandler::HandleCheckSupervisedUserName( |
| 302 const base::string16& name) { | 299 const base::string16& name) { |
| 303 std::string user_id; | 300 std::string user_id; |
| 304 if (NULL != UserManager::Get()->GetSupervisedUserManager()-> | 301 if (NULL != UserManager::Get()->GetSupervisedUserManager()-> |
| 305 FindByDisplayName(base::CollapseWhitespace(name, true))) { | 302 FindByDisplayName(base::CollapseWhitespace(name, true))) { |
| 306 CallJS("managedUserNameError", name, | 303 CallJS("managedUserNameError", name, |
| 307 l10n_util::GetStringUTF16( | 304 l10n_util::GetStringUTF16( |
| 308 IDS_CREATE_LOCALLY_MANAGED_USER_CREATE_USERNAME_ALREADY_EXISTS)); | 305 IDS_CREATE_LOCALLY_MANAGED_USER_CREATE_USERNAME_ALREADY_EXISTS)); |
| 309 } else if (net::EscapeForHTML(name) != name) { | 306 } else if (net::EscapeForHTML(name) != name) { |
| 310 CallJS("managedUserNameError", name, | 307 CallJS("managedUserNameError", name, |
| 311 l10n_util::GetStringUTF16( | 308 l10n_util::GetStringUTF16( |
| 312 IDS_CREATE_LOCALLY_MANAGED_USER_CREATE_ILLEGAL_USERNAME)); | 309 IDS_CREATE_LOCALLY_MANAGED_USER_CREATE_ILLEGAL_USERNAME)); |
| 313 } else if (delegate_ && delegate_->FindUserByDisplayName( | 310 } else if (delegate_ && delegate_->FindUserByDisplayName( |
| 314 base::CollapseWhitespace(name, true), &user_id)) { | 311 base::CollapseWhitespace(name, true), &user_id)) { |
| 315 CallJS("managedUserSuggestImport", name, user_id); | 312 CallJS("managedUserSuggestImport", name, user_id); |
| 316 } else { | 313 } else { |
| 317 CallJS("managedUserNameOk", name); | 314 CallJS("managedUserNameOk", name); |
| 318 } | 315 } |
| 319 } | 316 } |
| 320 | 317 |
| 321 void LocallyManagedUserCreationScreenHandler::HandleCreateManagedUser( | 318 void SupervisedUserCreationScreenHandler::HandleCreateSupervisedUser( |
| 322 const base::string16& new_raw_user_name, | 319 const base::string16& new_raw_user_name, |
| 323 const std::string& new_user_password) { | 320 const std::string& new_user_password) { |
| 324 if (!delegate_) | 321 if (!delegate_) |
| 325 return; | 322 return; |
| 326 const base::string16 new_user_name = | 323 const base::string16 new_user_name = |
| 327 base::CollapseWhitespace(new_raw_user_name, true); | 324 base::CollapseWhitespace(new_raw_user_name, true); |
| 328 if (NULL != UserManager::Get()->GetSupervisedUserManager()-> | 325 if (NULL != UserManager::Get()->GetSupervisedUserManager()-> |
| 329 FindByDisplayName(new_user_name)) { | 326 FindByDisplayName(new_user_name)) { |
| 330 CallJS("managedUserNameError", new_user_name, | 327 CallJS("managedUserNameError", new_user_name, |
| 331 l10n_util::GetStringFUTF16( | 328 l10n_util::GetStringFUTF16( |
| (...skipping 11 matching lines...) Expand all Loading... |
| 343 if (new_user_password.length() == 0) { | 340 if (new_user_password.length() == 0) { |
| 344 CallJS("showPasswordError", | 341 CallJS("showPasswordError", |
| 345 l10n_util::GetStringUTF16( | 342 l10n_util::GetStringUTF16( |
| 346 IDS_CREATE_LOCALLY_MANAGED_USER_CREATE_PASSWORD_TOO_SHORT)); | 343 IDS_CREATE_LOCALLY_MANAGED_USER_CREATE_PASSWORD_TOO_SHORT)); |
| 347 return; | 344 return; |
| 348 } | 345 } |
| 349 | 346 |
| 350 ShowStatusMessage(true /* progress */, l10n_util::GetStringUTF16( | 347 ShowStatusMessage(true /* progress */, l10n_util::GetStringUTF16( |
| 351 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_CREATION_PROGRESS_MESSAGE)); | 348 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_CREATION_PROGRESS_MESSAGE)); |
| 352 | 349 |
| 353 delegate_->CreateManagedUser(new_user_name, new_user_password); | 350 delegate_->CreateSupervisedUser(new_user_name, new_user_password); |
| 354 } | 351 } |
| 355 | 352 |
| 356 void LocallyManagedUserCreationScreenHandler::HandleImportSupervisedUser( | 353 void SupervisedUserCreationScreenHandler::HandleImportSupervisedUser( |
| 357 const std::string& user_id) { | 354 const std::string& user_id) { |
| 358 if (!delegate_) | 355 if (!delegate_) |
| 359 return; | 356 return; |
| 360 | 357 |
| 361 ShowStatusMessage(true /* progress */, l10n_util::GetStringUTF16( | 358 ShowStatusMessage(true /* progress */, l10n_util::GetStringUTF16( |
| 362 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_CREATION_PROGRESS_MESSAGE)); | 359 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_CREATION_PROGRESS_MESSAGE)); |
| 363 | 360 |
| 364 delegate_->ImportManagedUser(user_id); | 361 delegate_->ImportSupervisedUser(user_id); |
| 365 } | 362 } |
| 366 | 363 |
| 367 void LocallyManagedUserCreationScreenHandler:: | 364 void SupervisedUserCreationScreenHandler:: |
| 368 HandleImportSupervisedUserWithPassword( | 365 HandleImportSupervisedUserWithPassword( |
| 369 const std::string& user_id, | 366 const std::string& user_id, |
| 370 const std::string& password) { | 367 const std::string& password) { |
| 371 if (!delegate_) | 368 if (!delegate_) |
| 372 return; | 369 return; |
| 373 | 370 |
| 374 ShowStatusMessage(true /* progress */, l10n_util::GetStringUTF16( | 371 ShowStatusMessage(true /* progress */, l10n_util::GetStringUTF16( |
| 375 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_CREATION_PROGRESS_MESSAGE)); | 372 IDS_CREATE_LOCALLY_MANAGED_USER_CREATION_CREATION_PROGRESS_MESSAGE)); |
| 376 | 373 |
| 377 delegate_->ImportManagedUserWithPassword(user_id, password); | 374 delegate_->ImportSupervisedUserWithPassword(user_id, password); |
| 378 } | 375 } |
| 379 | 376 |
| 380 void LocallyManagedUserCreationScreenHandler::HandleAuthenticateManager( | 377 void SupervisedUserCreationScreenHandler::HandleAuthenticateManager( |
| 381 const std::string& raw_manager_username, | 378 const std::string& raw_manager_username, |
| 382 const std::string& manager_password) { | 379 const std::string& manager_password) { |
| 383 const std::string manager_username = | 380 const std::string manager_username = |
| 384 gaia::SanitizeEmail(raw_manager_username); | 381 gaia::SanitizeEmail(raw_manager_username); |
| 385 | 382 |
| 386 UserFlow* flow = new LocallyManagedUserCreationFlow(manager_username); | 383 UserFlow* flow = new SupervisedUserCreationFlow(manager_username); |
| 387 UserManager::Get()->SetUserFlow(manager_username, flow); | 384 UserManager::Get()->SetUserFlow(manager_username, flow); |
| 388 | 385 |
| 389 delegate_->AuthenticateManager(manager_username, manager_password); | 386 delegate_->AuthenticateManager(manager_username, manager_password); |
| 390 } | 387 } |
| 391 | 388 |
| 392 // TODO(antrim) : this is an explicit code duplications with UserImageScreen. | 389 // TODO(antrim) : this is an explicit code duplications with UserImageScreen. |
| 393 // It should be removed by issue 251179. | 390 // It should be removed by issue 251179. |
| 394 void LocallyManagedUserCreationScreenHandler::HandleGetImages() { | 391 void SupervisedUserCreationScreenHandler::HandleGetImages() { |
| 395 base::ListValue image_urls; | 392 base::ListValue image_urls; |
| 396 for (int i = kFirstDefaultImageIndex; i < kDefaultImagesCount; ++i) { | 393 for (int i = kFirstDefaultImageIndex; i < kDefaultImagesCount; ++i) { |
| 397 scoped_ptr<base::DictionaryValue> image_data(new base::DictionaryValue); | 394 scoped_ptr<base::DictionaryValue> image_data(new base::DictionaryValue); |
| 398 image_data->SetString("url", GetDefaultImageUrl(i)); | 395 image_data->SetString("url", GetDefaultImageUrl(i)); |
| 399 image_data->SetString( | 396 image_data->SetString( |
| 400 "author", l10n_util::GetStringUTF16(kDefaultImageAuthorIDs[i])); | 397 "author", l10n_util::GetStringUTF16(kDefaultImageAuthorIDs[i])); |
| 401 image_data->SetString( | 398 image_data->SetString( |
| 402 "website", l10n_util::GetStringUTF16(kDefaultImageWebsiteIDs[i])); | 399 "website", l10n_util::GetStringUTF16(kDefaultImageWebsiteIDs[i])); |
| 403 image_data->SetString("title", GetDefaultImageDescription(i)); | 400 image_data->SetString("title", GetDefaultImageDescription(i)); |
| 404 image_urls.Append(image_data.release()); | 401 image_urls.Append(image_data.release()); |
| 405 } | 402 } |
| 406 CallJS("setDefaultImages", image_urls); | 403 CallJS("setDefaultImages", image_urls); |
| 407 } | 404 } |
| 408 | 405 |
| 409 void LocallyManagedUserCreationScreenHandler::HandlePhotoTaken | 406 void SupervisedUserCreationScreenHandler::HandlePhotoTaken |
| 410 (const std::string& image_url) { | 407 (const std::string& image_url) { |
| 411 std::string mime_type, charset, raw_data; | 408 std::string mime_type, charset, raw_data; |
| 412 if (!net::DataURL::Parse(GURL(image_url), &mime_type, &charset, &raw_data)) | 409 if (!net::DataURL::Parse(GURL(image_url), &mime_type, &charset, &raw_data)) |
| 413 NOTREACHED(); | 410 NOTREACHED(); |
| 414 DCHECK_EQ("image/png", mime_type); | 411 DCHECK_EQ("image/png", mime_type); |
| 415 | 412 |
| 416 if (delegate_) | 413 if (delegate_) |
| 417 delegate_->OnPhotoTaken(raw_data); | 414 delegate_->OnPhotoTaken(raw_data); |
| 418 } | 415 } |
| 419 | 416 |
| 420 void LocallyManagedUserCreationScreenHandler::HandleTakePhoto() { | 417 void SupervisedUserCreationScreenHandler::HandleTakePhoto() { |
| 421 ash::PlaySystemSoundIfSpokenFeedback(SOUND_CAMERA_SNAP); | 418 ash::PlaySystemSoundIfSpokenFeedback(SOUND_CAMERA_SNAP); |
| 422 } | 419 } |
| 423 | 420 |
| 424 void LocallyManagedUserCreationScreenHandler::HandleDiscardPhoto() { | 421 void SupervisedUserCreationScreenHandler::HandleDiscardPhoto() { |
| 425 ash::PlaySystemSoundIfSpokenFeedback(SOUND_OBJECT_DELETE); | 422 ash::PlaySystemSoundIfSpokenFeedback(SOUND_OBJECT_DELETE); |
| 426 } | 423 } |
| 427 | 424 |
| 428 void LocallyManagedUserCreationScreenHandler::HandleSelectImage( | 425 void SupervisedUserCreationScreenHandler::HandleSelectImage( |
| 429 const std::string& image_url, | 426 const std::string& image_url, |
| 430 const std::string& image_type) { | 427 const std::string& image_type) { |
| 431 if (delegate_) | 428 if (delegate_) |
| 432 delegate_->OnImageSelected(image_type, image_url); | 429 delegate_->OnImageSelected(image_type, image_url); |
| 433 } | 430 } |
| 434 | 431 |
| 435 void LocallyManagedUserCreationScreenHandler::HandleCurrentSupervisedUserPage( | 432 void SupervisedUserCreationScreenHandler::HandleCurrentSupervisedUserPage( |
| 436 const std::string& page) { | 433 const std::string& page) { |
| 437 if (delegate_) | 434 if (delegate_) |
| 438 delegate_->OnPageSelected(page); | 435 delegate_->OnPageSelected(page); |
| 439 } | 436 } |
| 440 | 437 |
| 441 void LocallyManagedUserCreationScreenHandler::ShowPage( | 438 void SupervisedUserCreationScreenHandler::ShowPage( |
| 442 const std::string& page) { | 439 const std::string& page) { |
| 443 CallJS("showPage", page); | 440 CallJS("showPage", page); |
| 444 } | 441 } |
| 445 | 442 |
| 446 void LocallyManagedUserCreationScreenHandler::SetCameraPresent(bool present) { | 443 void SupervisedUserCreationScreenHandler::SetCameraPresent(bool present) { |
| 447 CallJS("setCameraPresent", present); | 444 CallJS("setCameraPresent", present); |
| 448 } | 445 } |
| 449 | 446 |
| 450 void LocallyManagedUserCreationScreenHandler::ShowExistingManagedUsers( | 447 void SupervisedUserCreationScreenHandler::ShowExistingSupervisedUsers( |
| 451 const base::ListValue* users) { | 448 const base::ListValue* users) { |
| 452 CallJS("setExistingManagedUsers", *users); | 449 CallJS("setExistingManagedUsers", *users); |
| 453 } | 450 } |
| 454 | 451 |
| 455 } // namespace chromeos | 452 } // namespace chromeos |
| OLD | NEW |