172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// Use of this source code is governed by a BSD-style license that can be 3c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// found in the LICENSE file. 4c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 53345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickcr.define('options', function() { 63345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 73345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickvar OptionsPage = options.OptionsPage; 83345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 93345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // 103345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // AdvancedOptions class 113345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Encapsulated handling of advanced options page. 123345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // 133345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick function AdvancedOptions() { 1472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.call(this, 'advanced', templateData.advancedPageTabTitle, 153345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 'advancedPage'); 163345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick } 173345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 183345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick cr.addSingletonGetter(AdvancedOptions); 193345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 203345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick AdvancedOptions.prototype = { 213345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Inherit AdvancedOptions from OptionsPage. 223345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick __proto__: options.OptionsPage.prototype, 233345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 243345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick /** 253345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick * Initializes the page. 263345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick */ 273345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick initializePage: function() { 283345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Call base class implementation to starts preference initialization. 293345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick OptionsPage.prototype.initializePage.call(this); 303345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 314a5e2dc747d50c653511c68ccb2cfbfb740bd5a7Ben Murdoch // Set up click handlers for buttons. 323345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('privacyContentSettingsButton').onclick = function(event) { 3372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.navigateToPage('content'); 343345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick OptionsPage.showTab($('cookies-nav-tab')); 353345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick chrome.send('coreOptionsUserMetricsAction', 363345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick ['Options_ContentSettings']); 373345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 383345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('privacyClearDataButton').onclick = function(event) { 3972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.navigateToPage('clearBrowserData'); 403345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick chrome.send('coreOptionsUserMetricsAction', ['Options_ClearData']); 413345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 42731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 433345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // 'metricsReportingEnabled' element is only present on Chrome branded 443345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // builds. 453345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick if ($('metricsReportingEnabled')) { 463345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('metricsReportingEnabled').onclick = function(event) { 473345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick chrome.send('metricsReportingCheckboxAction', 483345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick [String(event.target.checked)]); 493345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 503345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick } 51731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 5272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (!cr.isChromeOS) { 5372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('autoOpenFileTypesResetToDefault').onclick = function(event) { 5472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen chrome.send('autoOpenFileTypesAction'); 5572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen }; 5672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen } 5772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen 58201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch $('fontSettingsCustomizeFontsButton').onclick = function(event) { 59dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen OptionsPage.navigateToPage('fonts'); 603345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick chrome.send('coreOptionsUserMetricsAction', ['Options_FontSettings']); 61c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch }; 6221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen $('defaultFontSize').onchange = function(event) { 6321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen chrome.send('defaultFontSizeAction', 6421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen [String(event.target.options[event.target.selectedIndex].value)]); 6521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen }; 6672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('language-button').onclick = function(event) { 67dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen OptionsPage.navigateToPage('languages'); 6872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen chrome.send('coreOptionsUserMetricsAction', 6972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen ['Options_LanuageAndSpellCheckSettings']); 7072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen }; 71731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 723345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick if (cr.isWindows || cr.isMac) { 733345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('certificatesManageButton').onclick = function(event) { 743345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick chrome.send('showManageSSLCertificates'); 753345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 763345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick } else { 773345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('certificatesManageButton').onclick = function(event) { 78dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen OptionsPage.navigateToPage('certificates'); 793345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick OptionsPage.showTab($('personal-certs-nav-tab')); 803345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick chrome.send('coreOptionsUserMetricsAction', 813345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick ['Options_ManageSSLCertificates']); 823345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 833345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick } 84731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 853345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick if (!cr.isChromeOS) { 863345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('proxiesConfigureButton').onclick = function(event) { 873345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick chrome.send('showNetworkProxySettings'); 883345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 8921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen $('downloadLocationChangeButton').onclick = function(event) { 903345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick chrome.send('selectDownloadLocation'); 913345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 92dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen $('promptForDownload').onclick = function(event) { 93dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen chrome.send('promptForDownloadAction', 94dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen [String($('promptForDownload').checked)]); 95dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen }; 963345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick } else { 973345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('proxiesConfigureButton').onclick = function(event) { 9872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen OptionsPage.navigateToPage('proxy'); 993345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick chrome.send('coreOptionsUserMetricsAction', 1003345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick ['Options_ShowProxySettings']); 1013345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 1023345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick } 1033345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 104ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen $('sslCheckRevocation').onclick = function(event) { 105ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen chrome.send('checkRevocationCheckboxAction', 106ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen [String($('sslCheckRevocation').checked)]); 107ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen }; 108ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen $('sslUseSSL3').onclick = function(event) { 109ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen chrome.send('useSSL3CheckboxAction', 110ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen [String($('sslUseSSL3').checked)]); 111ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen }; 112ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen $('sslUseTLS1').onclick = function(event) { 113ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen chrome.send('useTLS1CheckboxAction', 114ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen [String($('sslUseTLS1').checked)]); 115ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen }; 116731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 117731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick // 'cloudPrintProxyEnabled' is true for Chrome branded builds on 118731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick // certain platforms, or could be enabled by a lab. 119dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen if (!cr.isChromeOS) { 120731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('cloudPrintProxySetupButton').onclick = function(event) { 121731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick if ($('cloudPrintProxyManageButton').style.display == 'none') { 122731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick // Disable the button, set it's text to the intermediate state. 123731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('cloudPrintProxySetupButton').textContent = 124731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick localStrings.getString('cloudPrintProxyEnablingButton'); 125731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('cloudPrintProxySetupButton').disabled = true; 126731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick chrome.send('showCloudPrintSetupDialog'); 127731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick } else { 128731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick chrome.send('disableCloudPrintProxy'); 129731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick } 130731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick }; 131731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('cloudPrintProxyManageButton').onclick = function(event) { 132731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick chrome.send('showCloudPrintManagePage'); 133731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick }; 134731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick } 1353f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen 13672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if ($('remotingSetupButton')) { 13772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('remotingSetupButton').onclick = function(event) { 13872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen chrome.send('showRemotingSetupDialog'); 13972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen } 14072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('remotingStopButton').onclick = function(event) { 14172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen chrome.send('disableRemoting'); 14272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen } 1433f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen } 14472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen } 1453345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 1463345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 1473345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // 1483345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Chrome callbacks 1493345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // 1503345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 1513345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Set the checked state of the metrics reporting checkbox. 15221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen AdvancedOptions.SetMetricsReportingCheckboxState = function( 15321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen checked, disabled) { 1543345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('metricsReportingEnabled').checked = checked; 1553345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('metricsReportingEnabled').disabled = disabled; 15621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen if (disabled) 15721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen $('metricsReportingEnabledText').className = 'disable-services-span'; 158c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch } 1593345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 160513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch AdvancedOptions.SetMetricsReportingSettingVisibility = function(visible) { 161513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch if (visible) { 162513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch $('metricsReportingSetting').style.display = 'block'; 163513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch } else { 164513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch $('metricsReportingSetting').style.display = 'none'; 165513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch } 166513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch } 167513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch 16821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen // Set the font size selected item. 169ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen AdvancedOptions.SetFontSize = function(font_size_value) { 17021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen var selectCtl = $('defaultFontSize'); 171ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen for (var i = 0; i < selectCtl.options.length; i++) { 172ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen if (selectCtl.options[i].value == font_size_value) { 173ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen selectCtl.selectedIndex = i; 174ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen if ($('Custom')) 175ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen selectCtl.remove($('Custom').index); 176ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen return; 17721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } 17821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } 17921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 18021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen // Add/Select Custom Option in the font size label list. 18121d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen if (!$('Custom')) { 18221d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen var option = new Option(localStrings.getString('fontSizeLabelCustom'), 18321d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen -1, false, true); 18421d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen option.setAttribute("id", "Custom"); 18521d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen selectCtl.add(option); 18621d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen } 18721d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen $('Custom').selected = true; 18821d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen }; 18921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen 1903345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Set the download path. 191dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen AdvancedOptions.SetDownloadLocationPath = function(path, disabled) { 192ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen if (!cr.isChromeOS) { 1933345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('downloadLocationPath').value = path; 194dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen $('downloadLocationChangeButton').disabled = disabled; 195ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen } 196dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen }; 197dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen 198dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen // Set the prompt for download checkbox. 199dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen AdvancedOptions.SetPromptForDownload = function(checked, disabled) { 200ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen if (!cr.isChromeOS) { 201ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen $('promptForDownload').checked = checked; 202ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen $('promptForDownload').disabled = disabled; 203ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen if (disabled) 204ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen $('promptForDownloadLabel').className = 'informational-text'; 205ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen else 206ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen $('promptForDownloadLabel').className = ''; 207ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen } 2083345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 2093345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 2103345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Set the enabled state for the autoOpenFileTypesResetToDefault button. 2113345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick AdvancedOptions.SetAutoOpenFileTypesDisabledAttribute = function(disabled) { 21272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (!cr.isChromeOS) { 21372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('autoOpenFileTypesResetToDefault').disabled = disabled; 21472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen 21572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (disabled) 21672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('auto-open-file-types-label').classList.add('disabled'); 21772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen else 21872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('auto-open-file-types-label').classList.remove('disabled'); 21972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen } 2203345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 2213345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 2223345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Set the enabled state for the proxy settings button. 2233345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick AdvancedOptions.SetupProxySettingsSection = function(disabled, label) { 2243345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('proxiesConfigureButton').disabled = disabled; 2253345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('proxiesLabel').textContent = label; 2263345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 2273345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 2283345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Set the checked state for the sslCheckRevocation checkbox. 22921d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen AdvancedOptions.SetCheckRevocationCheckboxState = function( 23021d179b334e59e9a3bfcaed4c4430bef1bc5759dKristian Monsen checked, disabled) { 2313345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick $('sslCheckRevocation').checked = checked; 232731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('sslCheckRevocation').disabled = disabled; 2333345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 2343345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 235731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick // Set the checked state for the sslUseSSL3 checkbox. 236731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick AdvancedOptions.SetUseSSL3CheckboxState = function(checked, disabled) { 237731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('sslUseSSL3').checked = checked; 238731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('sslUseSSL3').disabled = disabled; 239731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick }; 240731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 241731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick // Set the checked state for the sslUseTLS1 checkbox. 242731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick AdvancedOptions.SetUseTLS1CheckboxState = function(checked, disabled) { 243731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('sslUseTLS1').checked = checked; 244731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('sslUseTLS1').disabled = disabled; 245731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick }; 246731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick 247731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick // Set the Cloud Print proxy UI to enabled, disabled, or processing. 24872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen AdvancedOptions.SetupCloudPrintProxySection = function( 24972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen disabled, label, allowed) { 250731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick if (!cr.isChromeOS) { 251731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('cloudPrintProxyLabel').textContent = label; 25272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (disabled || !allowed) { 253731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('cloudPrintProxySetupButton').textContent = 254731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick localStrings.getString('cloudPrintProxyDisabledButton'); 255731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('cloudPrintProxyManageButton').style.display = 'none'; 256731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick } else { 257731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('cloudPrintProxySetupButton').textContent = 258731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick localStrings.getString('cloudPrintProxyEnabledButton'); 259731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick $('cloudPrintProxyManageButton').style.display = 'inline'; 260731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick } 26172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('cloudPrintProxySetupButton').disabled = !allowed; 262731df977c0511bca2206b5f333555b1205ff1f43Iain Merrick } 2633345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 2643345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 2653f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen AdvancedOptions.RemoveCloudPrintProxySection = function() { 266513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch if (!cr.isChromeOS) { 2673f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen var proxySectionElm = $('cloud-print-proxy-section'); 26872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (proxySectionElm) 26972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen proxySectionElm.parentNode.removeChild(proxySectionElm); 27072a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen } 27172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen }; 27272a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen 27372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen AdvancedOptions.SetRemotingStatus = function(enabled, status) { 27472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (enabled) { 27572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('remotingSetupButton').style.display = 'none'; 27672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('remotingStopButton').style.display = 'inline'; 27772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen } else { 27872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('remotingSetupButton').style.display = 'inline'; 27972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('remotingStopButton').style.display = 'none'; 280513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch } 28172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen $('remotingStatus').textContent = status; 282513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch }; 283513209b27ff55e2841eac0e4120199c23acce758Ben Murdoch 2843f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen AdvancedOptions.RemoveRemotingSection = function() { 2853f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen var proxySectionElm = $('remoting-section'); 28672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen if (proxySectionElm) 28772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen proxySectionElm.parentNode.removeChild(proxySectionElm); 2883f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen }; 2893f50c38dc070f4bb515c1b64450dae14f316474eKristian Monsen 2903345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick // Export 2913345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick return { 2923345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick AdvancedOptions: AdvancedOptions 2933345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick }; 2943345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 2953345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick}); 296