| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 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 | 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 /** | 5 /** |
| 6 * @fileoverview Code injected into Gaia sign in page for inline sign in flow. | 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 | 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 | 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. | 9 * in form, it posts the username and password to the embedder window. |
| 10 * Prototype Only. | 10 * Prototype Only. |
| 11 */ | 11 */ |
| 12 | 12 |
| 13 (function() { | 13 (function() { |
| 14 var extWindow; | 14 var $ = function(id) { return document.getElementById(id); }; |
| 15 | 15 |
| 16 var $ = function(id) { return document.getElementById(id); }; | |
| 17 var gaiaLoginForm = $('gaia_loginform'); | 16 var gaiaLoginForm = $('gaia_loginform'); |
| 18 | 17 if (!gaiaLoginForm) { |
| 19 var onMessage = function(e) { | 18 return; |
| 20 extWindow = e.source; | 19 } |
| 21 }; | |
| 22 window.addEventListener('message', onMessage); | |
| 23 | 20 |
| 24 var onLoginSubmit = function(e) { | 21 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'); | 22 var checkboxElement = $('advanced-box'); |
| 32 var chooseWhatToSync = checkboxElement && checkboxElement.checked; | 23 var chooseWhatToSync = checkboxElement && checkboxElement.checked; |
| 33 var msg = {method: 'attemptLogin', | 24 var msg = {method: 'attemptLogin', |
| 34 email: gaiaLoginForm['Email'].value, | 25 email: gaiaLoginForm['Email'].value, |
| 35 password: gaiaLoginForm['Passwd'].value, | 26 password: gaiaLoginForm['Passwd'].value, |
| 36 attemptToken: new Date().getTime(), | 27 attemptToken: new Date().getTime(), |
| 37 chooseWhatToSync: chooseWhatToSync}; | 28 chooseWhatToSync: chooseWhatToSync}; |
| 38 | 29 |
| 39 extWindow.postMessage(msg, 'chrome://chrome-signin'); | 30 window.parent.postMessage( |
| 31 msg, 'chrome-extension://mfffpogegjflfpflabcdkioaeobkgjik'); |
| 40 console.log('Credentials sent'); | 32 console.log('Credentials sent'); |
| 41 | 33 |
| 42 return; | 34 return; |
| 43 }; | 35 }; |
| 44 // Overrides the submit handler for the gaia login form. | 36 // Overrides the submit handler for the gaia login form. |
| 45 gaiaLoginForm.onsubmit = onLoginSubmit; | 37 gaiaLoginForm.onsubmit = onLoginSubmit; |
| 46 })(); | 38 })(); |
| OLD | NEW |