OLD | NEW |
| (Empty) |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 /** | |
6 * @fileoverview Code injected into Gaia sign in page for inline sign in flow. | |
7 * On load stop, it receives a message from the embedder extension with a | |
8 * JavaScript reference to the embedder window. Then upon submit of the sign | |
9 * in form, it posts the username and password to the embedder window. | |
10 * Prototype Only. | |
11 */ | |
12 | |
13 (function() { | |
14 var extWindow; | |
15 | |
16 var $ = function(id) { return document.getElementById(id); }; | |
17 var gaiaLoginForm = $('gaia_loginform'); | |
18 | |
19 var onMessage = function(e) { | |
20 extWindow = e.source; | |
21 }; | |
22 window.addEventListener('message', onMessage); | |
23 | |
24 var onLoginSubmit = function(e) { | |
25 if (!extWindow) { | |
26 console.log('ERROR: no initial message received from the gaia ext'); | |
27 e.preventDefault(); | |
28 return; | |
29 } | |
30 | |
31 var checkboxElement = $('advanced-box'); | |
32 var chooseWhatToSync = checkboxElement && checkboxElement.checked; | |
33 var msg = {method: 'attemptLogin', | |
34 email: gaiaLoginForm['Email'].value, | |
35 password: gaiaLoginForm['Passwd'].value, | |
36 attemptToken: new Date().getTime(), | |
37 chooseWhatToSync: chooseWhatToSync}; | |
38 | |
39 extWindow.postMessage(msg, 'chrome://chrome-signin'); | |
40 console.log('Credentials sent'); | |
41 | |
42 return; | |
43 }; | |
44 // Overrides the submit handler for the gaia login form. | |
45 gaiaLoginForm.onsubmit = onLoginSubmit; | |
46 })(); | |
OLD | NEW |