| // Copyright 2013 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| /** |
| * @fileoverview Oobe reset screen implementation. |
| */ |
| |
| login.createScreen('KioskEnableScreen', 'kiosk-enable', function() { |
| return { |
| EXTERNAL_API: ['enableKioskForTesting', |
| 'onCompleted'], |
| /** |
| * Header text of the screen. |
| * @type {string} |
| */ |
| get header() { |
| return loadTimeData.getString('kioskEnableTitle'); |
| }, |
| |
| /** |
| * Buttons in oobe wizard's button strip. |
| * @type {array} Array of Buttons. |
| */ |
| get buttons() { |
| var buttons = []; |
| |
| var confirmButton = this.ownerDocument.createElement('button'); |
| confirmButton.id = 'kiosk-enable-button'; |
| confirmButton.textContent = |
| loadTimeData.getString('kioskEnableButton'); |
| confirmButton.addEventListener('click', function(e) { |
| chrome.send('kioskOnEnable'); |
| e.stopPropagation(); |
| }); |
| buttons.push(confirmButton); |
| |
| var cancelButton = this.ownerDocument.createElement('button'); |
| cancelButton.id = 'kiosk-cancel-button'; |
| cancelButton.textContent = |
| loadTimeData.getString('kioskCancelButton'); |
| cancelButton.addEventListener('click', function(e) { |
| chrome.send('kioskOnClose'); |
| e.stopPropagation(); |
| }); |
| buttons.push(cancelButton); |
| |
| var okButton = this.ownerDocument.createElement('button'); |
| okButton.id = 'kiosk-ok-button'; |
| okButton.hidden = true; |
| okButton.textContent = |
| loadTimeData.getString('kioskOKButton'); |
| okButton.addEventListener('click', function(e) { |
| chrome.send('kioskOnClose'); |
| e.stopPropagation(); |
| }); |
| buttons.push(okButton); |
| return buttons; |
| }, |
| |
| /** |
| * Event handler invoked when the page is shown and ready. |
| */ |
| onBeforeShow: function() { |
| $('kiosk-enable-button').hidden = false; |
| $('kiosk-cancel-button').hidden = false; |
| $('kiosk-ok-button').hidden = true; |
| $('kiosk-enable-details').textContent = |
| loadTimeData.getString('kioskEnableWarningDetails'); |
| }, |
| |
| /** |
| * Returns a control which should receive an initial focus. |
| */ |
| get defaultControl() { |
| return $('kiosk-cancel-button'); |
| }, |
| |
| /** |
| * Cancels the reset and drops the user back to the login screen. |
| */ |
| cancel: function() { |
| chrome.send('kioskOnClose'); |
| }, |
| |
| /** |
| * Initiates enable/cancel response for testing. |
| * @param {boolean} confirm True if the screen should confirm auto-launch. |
| */ |
| enableKioskForTesting: function(confirm) { |
| var button = confirm ? $('kiosk-enable-button') : |
| $('kiosk-cancel-button'); |
| var clickEvent = cr.doc.createEvent('Event'); |
| clickEvent.initEvent('click', true, true); |
| button.dispatchEvent(clickEvent); |
| }, |
| |
| /** |
| * Updates completion message on the screen. |
| * @param {boolean} success True if consumer kiosk was successfully enabled. |
| */ |
| onCompleted: function(success) { |
| $('kiosk-enable-button').hidden = true; |
| $('kiosk-cancel-button').hidden = true; |
| $('kiosk-ok-button').hidden = false; |
| $('kiosk-enable-details').textContent = |
| loadTimeData.getString(success ? 'kioskEnableSuccessMsg' : |
| 'kioskEnableErrorMsg'); |
| } |
| }; |
| }); |
| |
| |
| |