| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 cr.define('options', function() { | 5 cr.define('options', function() { |
| 6 const OptionsPage = options.OptionsPage; | 6 const OptionsPage = options.OptionsPage; |
| 7 | 7 |
| 8 // Variable to track if a captcha challenge was issued. If this gets set to | 8 // Variable to track if a captcha challenge was issued. If this gets set to |
| 9 // true, it stays that way until we are told about successful login from | 9 // true, it stays that way until we are told about successful login from |
| 10 // the browser. This means subsequent errors (like invalid password) are | 10 // the browser. This means subsequent errors (like invalid password) are |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 76 self.sendConfiguration_(); | 76 self.sendConfiguration_(); |
| 77 }; | 77 }; |
| 78 $('use-default-link').onclick = function() { | 78 $('use-default-link').onclick = function() { |
| 79 self.showSyncEverythingPage_(); | 79 self.showSyncEverythingPage_(); |
| 80 }; | 80 }; |
| 81 $('cancel-no-button').onclick = function() { | 81 $('cancel-no-button').onclick = function() { |
| 82 self.hideCancelWarning_(); | 82 self.hideCancelWarning_(); |
| 83 return false; | 83 return false; |
| 84 }; | 84 }; |
| 85 $('cancel-yes-button').onclick = function() { | 85 $('cancel-yes-button').onclick = function() { |
| 86 chrome.send('PassphraseCancel', ['']); | 86 chrome.send('SyncSetupPassphraseCancel', ['']); |
| 87 return false; | 87 return false; |
| 88 }; | 88 }; |
| 89 $('passphrase-form').onsubmit = $('passphrase-ok').onclick = function() { | 89 $('passphrase-form').onsubmit = $('passphrase-ok').onclick = function() { |
| 90 self.sendPassphraseAndClose_(); | 90 self.sendPassphraseAndClose_(); |
| 91 return false; | 91 return false; |
| 92 }; | 92 }; |
| 93 $('passphrase-cancel').onclick = function() { | 93 $('passphrase-cancel').onclick = function() { |
| 94 self.showCancelWarning_(); | 94 self.showCancelWarning_(); |
| 95 return false; | 95 return false; |
| 96 }; | 96 }; |
| 97 }, | 97 }, |
| 98 | 98 |
| 99 showOverlay_: function() { |
| 100 OptionsPage.navigateToPage('syncSetup'); |
| 101 }, |
| 102 |
| 99 closeOverlay_: function() { | 103 closeOverlay_: function() { |
| 100 OptionsPage.closeOverlay(); | 104 OptionsPage.closeOverlay(); |
| 101 }, | 105 }, |
| 102 | 106 |
| 103 /** @inheritDoc */ | 107 /** @inheritDoc */ |
| 104 didShowPage: function() { | 108 didShowPage: function() { |
| 105 chrome.send('didShowPage'); | 109 chrome.send('SyncSetupAttachHandler'); |
| 106 }, | 110 }, |
| 107 | 111 |
| 108 /** @inheritDoc */ | 112 /** @inheritDoc */ |
| 109 didClosePage: function() { | 113 didClosePage: function() { |
| 110 chrome.send('didClosePage'); | 114 chrome.send('SyncSetupDidClosePage'); |
| 111 }, | 115 }, |
| 112 | 116 |
| 113 showCancelWarning_: function() { | 117 showCancelWarning_: function() { |
| 114 $('cancel-warning-box').hidden = false; | 118 $('cancel-warning-box').hidden = false; |
| 115 $('passphrase-ok').disabled = true; | 119 $('passphrase-ok').disabled = true; |
| 116 $('passphrase-cancel').disabled = true; | 120 $('passphrase-cancel').disabled = true; |
| 117 $('cancel-no-button').focus(); | 121 $('cancel-no-button').focus(); |
| 118 }, | 122 }, |
| 119 | 123 |
| 120 sendPassphraseAndClose_: function() { | 124 sendPassphraseAndClose_: function() { |
| 121 var f = $('passphrase-form'); | 125 var f = $('passphrase-form'); |
| 122 var result = JSON.stringify({"passphrase": f.passphrase.value}); | 126 var result = JSON.stringify({"passphrase": f.passphrase.value}); |
| 123 chrome.send("Passphrase", [result]); | 127 chrome.send('SyncSetupPassphrase', [result]); |
| 124 }, | 128 }, |
| 125 | 129 |
| 126 getRadioCheckedValue_: function() { | 130 getRadioCheckedValue_: function() { |
| 127 var f = $('choose-data-types-form'); | 131 var f = $('choose-data-types-form'); |
| 128 for (var i = 0; i < f.option.length; ++i) { | 132 for (var i = 0; i < f.option.length; ++i) { |
| 129 if (f.option[i].checked) { | 133 if (f.option[i].checked) { |
| 130 return f.option[i].value; | 134 return f.option[i].value; |
| 131 } | 135 } |
| 132 } | 136 } |
| 133 | 137 |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 246 "syncThemes": syncAll || $('themes-checkbox').checked, | 250 "syncThemes": syncAll || $('themes-checkbox').checked, |
| 247 "syncPasswords": syncAll || $('passwords-checkbox').checked, | 251 "syncPasswords": syncAll || $('passwords-checkbox').checked, |
| 248 "syncAutofill": syncAll || $('autofill-checkbox').checked, | 252 "syncAutofill": syncAll || $('autofill-checkbox').checked, |
| 249 "syncExtensions": syncAll || $('extensions-checkbox').checked, | 253 "syncExtensions": syncAll || $('extensions-checkbox').checked, |
| 250 "syncTypedUrls": syncAll || $('typed-urls-checkbox').checked, | 254 "syncTypedUrls": syncAll || $('typed-urls-checkbox').checked, |
| 251 "syncApps": syncAll || $('apps-checkbox').checked, | 255 "syncApps": syncAll || $('apps-checkbox').checked, |
| 252 "syncSessions": syncAll || $('sessions-checkbox').checked, | 256 "syncSessions": syncAll || $('sessions-checkbox').checked, |
| 253 "usePassphrase": (this.getRadioCheckedValue_() == 'explicit'), | 257 "usePassphrase": (this.getRadioCheckedValue_() == 'explicit'), |
| 254 "passphrase": $('custom-passphrase').value | 258 "passphrase": $('custom-passphrase').value |
| 255 }); | 259 }); |
| 256 chrome.send("Configure", [result]); | 260 chrome.send('SyncSetupConfigure', [result]); |
| 257 }, | 261 }, |
| 258 | 262 |
| 259 setChooseDataTypesCheckboxes_: function(args) { | 263 setChooseDataTypesCheckboxes_: function(args) { |
| 260 // If this frame is on top, the focus should be on it, so pressing enter | 264 // If this frame is on top, the focus should be on it, so pressing enter |
| 261 // submits this form. | 265 // submits this form. |
| 262 if (args.iframeToShow == 'configure') { | 266 if (args.iframeToShow == 'configure') { |
| 263 $('choose-datatypes-ok').focus(); | 267 $('choose-datatypes-ok').focus(); |
| 264 } | 268 } |
| 265 | 269 |
| 266 var datatypeSelect = document.getElementById('sync-select-datatypes'); | 270 var datatypeSelect = document.getElementById('sync-select-datatypes'); |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 391 | 395 |
| 392 // If the user has selected the 'Customize' page on initial set up, it's | 396 // If the user has selected the 'Customize' page on initial set up, it's |
| 393 // likely he intends to change the data types. Select the | 397 // likely he intends to change the data types. Select the |
| 394 // 'Choose data types' option in this case. | 398 // 'Choose data types' option in this case. |
| 395 var index = syncEverything ? 0 : 1; | 399 var index = syncEverything ? 0 : 1; |
| 396 document.getElementById('sync-select-datatypes').selectedIndex = index; | 400 document.getElementById('sync-select-datatypes').selectedIndex = index; |
| 397 this.setDataTypeCheckboxesEnabled_(!syncEverything); | 401 this.setDataTypeCheckboxesEnabled_(!syncEverything); |
| 398 $('choose-datatypes-ok').focus(); | 402 $('choose-datatypes-ok').focus(); |
| 399 }, | 403 }, |
| 400 | 404 |
| 405 attach_: function() { |
| 406 chrome.send('SyncSetupAttachHandler'); |
| 407 }, |
| 408 |
| 401 showSyncSetupPage_: function(page, args) { | 409 showSyncSetupPage_: function(page, args) { |
| 402 if (page == 'settingUp') { | 410 if (page == 'settingUp') { |
| 403 this.setThrobbersVisible_(true); | 411 this.setThrobbersVisible_(true); |
| 404 return; | 412 return; |
| 405 } else { | 413 } else { |
| 406 this.setThrobbersVisible_(false); | 414 this.setThrobbersVisible_(false); |
| 407 } | 415 } |
| 408 | 416 |
| 409 // Hide an existing visible overlay. | 417 // Hide an existing visible overlay. |
| 410 var overlay = $('sync-setup-overlay'); | 418 var overlay = $('sync-setup-overlay'); |
| 411 for (var i = 0; i < overlay.children.length; i++) | 419 for (var i = 0; i < overlay.children.length; i++) |
| 412 overlay.children[i].classList.add('hidden'); | 420 overlay.children[i].classList.add('hidden'); |
| 413 | 421 |
| 414 if (page == 'login') | 422 if (page == 'login') |
| 415 this.showGaiaLogin_(args); | 423 this.showGaiaLogin_(args); |
| 416 else if (page == 'configure') | 424 else if (page == 'configure') |
| 417 this.showConfigure_(args); | 425 this.showConfigure_(args); |
| 418 else if (page == 'passphrase') | 426 else if (page == 'passphrase') |
| 419 this.showPassphrase_(args); | 427 this.showPassphrase_(args); |
| 420 else if (page == 'done') | 428 |
| 429 if (page == 'done') |
| 421 this.closeOverlay_(); | 430 this.closeOverlay_(); |
| 431 else |
| 432 this.showOverlay_(); |
| 422 }, | 433 }, |
| 423 | 434 |
| 424 setThrobbersVisible_: function(visible) { | 435 setThrobbersVisible_: function(visible) { |
| 425 var throbbers = document.getElementsByClassName("throbber"); | 436 var throbbers = document.getElementsByClassName("throbber"); |
| 426 for (var i = 0; i < throbbers.length; i++) | 437 for (var i = 0; i < throbbers.length; i++) |
| 427 throbbers[i].style.visibility = visible ? "visible" : "hidden"; | 438 throbbers[i].style.visibility = visible ? "visible" : "hidden"; |
| 428 }, | 439 }, |
| 429 | 440 |
| 430 showPassphrase_: function(args) { | 441 showPassphrase_: function(args) { |
| 431 $('sync-setup-passphrase').classList.remove('hidden'); | 442 $('sync-setup-passphrase').classList.remove('hidden'); |
| (...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 606 $('logging-in-throbber').style.visibility = "visible"; | 617 $('logging-in-throbber').style.visibility = "visible"; |
| 607 | 618 |
| 608 var f = $('gaia-login-form'); | 619 var f = $('gaia-login-form'); |
| 609 var email = $('gaia-email'); | 620 var email = $('gaia-email'); |
| 610 var passwd = $('gaia-passwd'); | 621 var passwd = $('gaia-passwd'); |
| 611 var result = JSON.stringify({"user" : email.value, | 622 var result = JSON.stringify({"user" : email.value, |
| 612 "pass" : passwd.value, | 623 "pass" : passwd.value, |
| 613 "captcha" : f.captchaValue.value, | 624 "captcha" : f.captchaValue.value, |
| 614 "access_code" : f.accessCode.value}); | 625 "access_code" : f.accessCode.value}); |
| 615 $('sign-in').disabled = true; | 626 $('sign-in').disabled = true; |
| 616 chrome.send("SubmitAuth", [result]); | 627 chrome.send('SyncSetupSubmitAuth', [result]); |
| 617 }, | 628 }, |
| 618 | 629 |
| 619 showGaiaSuccessAndClose_: function() { | 630 showGaiaSuccessAndClose_: function() { |
| 620 $('sign-in').value = localStrings.getString('loginSuccess'); | 631 $('sign-in').value = localStrings.getString('loginSuccess'); |
| 621 setTimeout(this.closeOverlay_, 1600); | 632 setTimeout(this.closeOverlay_, 1600); |
| 622 }, | 633 }, |
| 623 | 634 |
| 624 showSuccessAndSettingUp_: function() { | 635 showSuccessAndSettingUp_: function() { |
| 625 $('sign-in').value = localStrings.getString('settingUp'); | 636 $('sign-in').value = localStrings.getString('settingUp'); |
| 626 }, | 637 }, |
| 627 | 638 |
| 628 /** @inheritDoc */ | 639 /** @inheritDoc */ |
| 629 shouldClose: function() { | 640 shouldClose: function() { |
| 630 if (!$('cancel-warning-box').hidden) { | 641 if (!$('cancel-warning-box').hidden) { |
| 631 chrome.send('PassphraseCancel', ['']); | 642 chrome.send('SyncSetupPassphraseCancel', ['']); |
| 632 return true; | 643 return true; |
| 633 } else if (!$('sync-setup-passphrase').classList.contains('hidden')) { | 644 } else if (!$('sync-setup-passphrase').classList.contains('hidden')) { |
| 634 // The Passphrase page is showing, and the use has pressed escape. | 645 // The Passphrase page is showing, and the use has pressed escape. |
| 635 // Activate the cancel logic in this case. | 646 // Activate the cancel logic in this case. |
| 636 this.showCancelWarning_(); | 647 this.showCancelWarning_(); |
| 637 return false; | 648 return false; |
| 638 } | 649 } |
| 639 | 650 |
| 640 return true; | 651 return true; |
| 641 }, | 652 }, |
| 642 }; | 653 }; |
| 643 | 654 |
| 655 SyncSetupOverlay.showSyncDialog = function() { |
| 656 SyncSetupOverlay.getInstance().attach_(); |
| 657 }; |
| 658 |
| 644 SyncSetupOverlay.showSyncSetupPage = function(page, args) { | 659 SyncSetupOverlay.showSyncSetupPage = function(page, args) { |
| 645 SyncSetupOverlay.getInstance().showSyncSetupPage_(page, args); | 660 SyncSetupOverlay.getInstance().showSyncSetupPage_(page, args); |
| 646 }; | 661 }; |
| 647 | 662 |
| 648 SyncSetupOverlay.showSuccessAndClose = function() { | 663 SyncSetupOverlay.showSuccessAndClose = function() { |
| 649 SyncSetupOverlay.getInstance().showSuccessAndClose_(); | 664 SyncSetupOverlay.getInstance().showSuccessAndClose_(); |
| 650 }; | 665 }; |
| 651 | 666 |
| 652 SyncSetupOverlay.showSuccessAndSettingUp = function() { | 667 SyncSetupOverlay.showSuccessAndSettingUp = function() { |
| 653 SyncSetupOverlay.getInstance().showSuccessAndSettingUp_(); | 668 SyncSetupOverlay.getInstance().showSuccessAndSettingUp_(); |
| 654 }; | 669 }; |
| 655 | 670 |
| 656 // Export | 671 // Export |
| 657 return { | 672 return { |
| 658 SyncSetupOverlay: SyncSetupOverlay | 673 SyncSetupOverlay: SyncSetupOverlay |
| 659 }; | 674 }; |
| 660 }); | 675 }); |
| OLD | NEW |