Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2067)

Unified Diff: chrome/browser/resources/options2/chromeos/internet_detail.js

Issue 10809005: Options: Rename chrome/browser/resources/options2 -> chrome/browser/resources/options. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix. Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/options2/chromeos/internet_detail.js
diff --git a/chrome/browser/resources/options2/chromeos/internet_detail.js b/chrome/browser/resources/options2/chromeos/internet_detail.js
deleted file mode 100644
index 51c28e7f645839706d63df975d5aa9926d44fd8a..0000000000000000000000000000000000000000
--- a/chrome/browser/resources/options2/chromeos/internet_detail.js
+++ /dev/null
@@ -1,1018 +0,0 @@
-// Copyright (c) 2012 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.
-
-cr.define('options.internet', function() {
- var OptionsPage = options.OptionsPage;
- /** @const */ var ArrayDataModel = cr.ui.ArrayDataModel;
- /** @const */ var IPAddressField = options.internet.IPAddressField;
-
- /**
- * Network settings constants. These enums must match their C++
- * counterparts.
- */
- function Constants() {}
-
- // Network types:
- Constants.TYPE_UNKNOWN = 0;
- Constants.TYPE_ETHERNET = 1;
- Constants.TYPE_WIFI = 2;
- Constants.TYPE_WIMAX = 3;
- Constants.TYPE_BLUETOOTH = 4;
- Constants.TYPE_CELLULAR = 5;
- Constants.TYPE_VPN = 6;
-
- /*
- * Helper function to set hidden attribute for elements matching a selector.
- * @param {string} selector CSS selector for extracting a list of elements.
- * @param {bool} hidden New hidden value.
- */
- function updateHidden(selector, hidden) {
- var elements = cr.doc.querySelectorAll(selector);
- for (var i = 0, el; el = elements[i]; i++) {
- el.hidden = hidden;
- }
- }
-
- /**
- * Monitor pref change of given element.
- * @param {Element} el Target element.
- */
- function observePrefsUI(el) {
- Preferences.getInstance().addEventListener(el.pref, handlePrefUpdate);
- }
-
- /**
- * UI pref change handler.
- * @param {Event} e The update event.
- */
- function handlePrefUpdate(e) {
- DetailsInternetPage.getInstance().updateControls();
- }
-
- /////////////////////////////////////////////////////////////////////////////
- // DetailsInternetPage class:
-
- /**
- * Encapsulated handling of ChromeOS internet details overlay page.
- * @constructor
- */
- function DetailsInternetPage() {
- OptionsPage.call(this,
- 'detailsInternetPage',
- null,
- 'details-internet-page');
- }
-
- cr.addSingletonGetter(DetailsInternetPage);
-
- DetailsInternetPage.prototype = {
- __proto__: OptionsPage.prototype,
-
- /**
- * Indicates if the list of proxy exceptions has been initialized.
- * @type {boolean}
- */
- proxyListInitialized_: false,
-
- /**
- * Initializes DetailsInternetPage page.
- * Calls base class implementation to starts preference initialization.
- */
- initializePage: function() {
- OptionsPage.prototype.initializePage.call(this);
- options.internet.CellularPlanElement.decorate($('plan-list'));
- var params = parseQueryParams(window.location);
- this.initializePageContents_(params);
- this.showNetworkDetails_(params);
- },
-
- /**
- * Auto-activates the network details dialog if network information
- * is included in the URL.
- */
- showNetworkDetails_: function(params) {
- var servicePath = params.servicePath;
- var networkType = params.networkType;
- if (!servicePath || !servicePath.length ||
- !networkType || !networkType.length)
- return;
- chrome.send('networkCommand',
- [networkType, servicePath, 'options']);
- },
-
- /**
- * Initializes the contents of the page.
- */
- initializePageContents_: function(params) {
- $('details-internet-dismiss').addEventListener('click', function(event) {
- DetailsInternetPage.setDetails();
- });
-
- $('details-internet-login').addEventListener('click', function(event) {
- DetailsInternetPage.setDetails();
- DetailsInternetPage.loginFromDetails();
- });
-
- $('details-internet-disconnect').addEventListener('click',
- function(event) {
- DetailsInternetPage.setDetails();
- DetailsInternetPage.disconnectNetwork();
- });
-
- $('activate-details').addEventListener('click', function(event) {
- DetailsInternetPage.activateFromDetails();
- });
-
- $('buyplan-details').addEventListener('click', function(event) {
- var data = $('connection-state').data;
- chrome.send('buyDataPlan', [String(data.servicePath)]);
- OptionsPage.closeOverlay();
- });
-
- $('view-account-details').addEventListener('click', function(event) {
- chrome.send('showMorePlanInfo');
- OptionsPage.closeOverlay();
- });
-
- $('cellular-apn-use-default').addEventListener('click', function(event) {
- var data = $('connection-state').data;
- var apnSelector = $('select-apn');
-
- if (data.userApnIndex != -1) {
- apnSelector.remove(data.userApnIndex);
- data.userApnIndex = -1;
- }
-
- if (data.providerApnList.value.length > 0) {
- var iApn = 0;
- data.apn.apn = data.providerApnList.value[iApn].apn;
- data.apn.username = data.providerApnList.value[iApn].username;
- data.apn.password = data.providerApnList.value[iApn].password;
- chrome.send('setApn', [String(data.servicePath),
- String(data.apn.apn),
- String(data.apn.username),
- String(data.apn.password)]);
- apnSelector.selectedIndex = iApn;
- data.selectedApn = iApn;
- } else {
- data.apn.apn = '';
- data.apn.username = '';
- data.apn.password = '';
- apnSelector.selectedIndex = -1;
- data.selectedApn = -1;
- }
- updateHidden('.apn-list-view', false);
- updateHidden('.apn-details-view', true);
- });
-
- $('cellular-apn-set').addEventListener('click', function(event) {
- if ($('cellular-apn').value == '')
- return;
-
- var data = $('connection-state').data;
- var apnSelector = $('select-apn');
-
- data.apn.apn = String($('cellular-apn').value);
- data.apn.username = String($('cellular-apn-username').value);
- data.apn.password = String($('cellular-apn-password').value);
- chrome.send('setApn', [String(data.servicePath),
- String(data.apn.apn),
- String(data.apn.username),
- String(data.apn.password)]);
-
- if (data.userApnIndex != -1) {
- apnSelector.remove(data.userApnIndex);
- data.userApnIndex = -1;
- }
-
- var option = document.createElement('option');
- option.textContent = data.apn.apn;
- option.value = -1;
- option.selected = true;
- apnSelector.add(option, apnSelector[apnSelector.length - 1]);
- data.userApnIndex = apnSelector.length - 2;
- data.selectedApn = data.userApnIndex;
-
- updateHidden('.apn-list-view', false);
- updateHidden('.apn-details-view', true);
- });
-
- $('cellular-apn-cancel').addEventListener('click', function(event) {
- $('select-apn').selectedIndex = $('connection-state').data.selectedApn;
- updateHidden('.apn-list-view', false);
- updateHidden('.apn-details-view', true);
- });
-
- $('select-apn').addEventListener('change', function(event) {
- var data = $('connection-state').data;
- var apnSelector = $('select-apn');
- if (apnSelector[apnSelector.selectedIndex].value != -1) {
- var apnList = data.providerApnList.value;
- chrome.send('setApn', [String(data.servicePath),
- String(apnList[apnSelector.selectedIndex].apn),
- String(apnList[apnSelector.selectedIndex].username),
- String(apnList[apnSelector.selectedIndex].password)
- ]);
- data.selectedApn = apnSelector.selectedIndex;
- } else if (apnSelector.selectedIndex == data.userApnIndex) {
- chrome.send('setApn', [String(data.servicePath),
- String(data.apn.apn),
- String(data.apn.username),
- String(data.apn.password)]);
- data.selectedApn = apnSelector.selectedIndex;
- } else {
- $('cellular-apn').value = data.apn.apn;
- $('cellular-apn-username').value = data.apn.username;
- $('cellular-apn-password').value = data.apn.password;
-
- updateHidden('.apn-list-view', true);
- updateHidden('.apn-details-view', false);
- }
- });
-
- $('sim-card-lock-enabled').addEventListener('click', function(event) {
- var newValue = $('sim-card-lock-enabled').checked;
- // Leave value as is because user needs to enter PIN code first.
- // When PIN will be entered and value changed,
- // we'll update UI to reflect that change.
- $('sim-card-lock-enabled').checked = !newValue;
- chrome.send('setSimCardLock', [newValue]);
- });
- $('change-pin').addEventListener('click', function(event) {
- chrome.send('changePin');
- });
-
- // Proxy
- options.proxyexceptions.ProxyExceptions.decorate($('ignored-host-list'));
- $('remove-host').addEventListener('click',
- this.handleRemoveProxyExceptions_);
- $('add-host').addEventListener('click', this.handleAddProxyException_);
- $('direct-proxy').addEventListener('click', this.disableManualProxy_);
- $('manual-proxy').addEventListener('click', this.enableManualProxy_);
- $('auto-proxy').addEventListener('click', this.disableManualProxy_);
- $('proxy-all-protocols').addEventListener('click',
- this.toggleSingleProxy_);
-
- observePrefsUI($('direct-proxy'));
- observePrefsUI($('manual-proxy'));
- observePrefsUI($('auto-proxy'));
- observePrefsUI($('proxy-all-protocols'));
-
- $('ip-automatic-configuration-checkbox').addEventListener('click',
- this.handleIpAutoConfig_);
- $('automatic-dns-radio').addEventListener('click',
- this.handleNameServerTypeChange_);
- $('google-dns-radio').addEventListener('click',
- this.handleNameServerTypeChange_);
- $('user-dns-radio').addEventListener('click',
- this.handleNameServerTypeChange_);
- },
-
- /**
- * Handler for "add" event fired from userNameEdit.
- * @param {Event} e Add event fired from userNameEdit.
- * @private
- */
- handleAddProxyException_: function(e) {
- var exception = $('new-host').value;
- $('new-host').value = '';
-
- exception = exception.trim();
- if (exception)
- $('ignored-host-list').addException(exception);
- },
-
- /**
- * Handler for when the remove button is clicked
- * @param {Event} e The click event.
- * @private
- */
- handleRemoveProxyExceptions_: function(e) {
- var selectedItems = $('ignored-host-list').selectedItems;
- for (var x = 0; x < selectedItems.length; x++) {
- $('ignored-host-list').removeException(selectedItems[x]);
- }
- },
-
- /**
- * Handler for when the IP automatic configuration checkbox is clicked.
- * @param {Event} e The click event.
- * @private
- */
- handleIpAutoConfig_: function(e) {
- var checked = $('ip-automatic-configuration-checkbox').checked;
- var fields = [$('ip-address'), $('ip-netmask'), $('ip-gateway')];
- for (var i = 0; i < fields.length; ++i) {
- fields[i].editable = !checked;
- if (checked) {
- var model = fields[i].model;
- model.value = model.automatic;
- fields[i].model = model;
- }
- }
- if (!checked)
- $('ip-address').focus();
- },
-
- /**
- * Handler for when the name server selection changes.
- * @param {Event} e The click event.
- * @private
- */
- handleNameServerTypeChange_: function(event) {
- var type = event.target.value;
- DetailsInternetPage.updateNameServerDisplay(type);
- },
-
- /**
- * Update details page controls.
- * @private
- */
- updateControls: function() {
- // Only show ipconfig section if network is connected OR if nothing on
- // this device is connected. This is so that you can fix the ip configs
- // if you can't connect to any network.
- // TODO(chocobo): Once ipconfig is moved to flimflam service objects,
- // we need to redo this logic to allow configuration of all networks.
- $('ipconfig-section').hidden = !this.connected && this.deviceConnected;
- $('ipconfig-dns-section').hidden =
- !this.connected && this.deviceConnected;
-
- // Network type related.
- updateHidden('#details-internet-page .cellular-details', !this.cellular);
- updateHidden('#details-internet-page .wifi-details', !this.wireless);
- updateHidden('#details-internet-page .wimax-details', !this.wimax);
- updateHidden('#details-internet-page .vpn-details', !this.vpn);
- updateHidden('#details-internet-page .proxy-details', !this.showProxy);
- /* Network information merged into the Wifi tab for wireless networks
- unless the option is set for enabling a static IP configuration. */
- updateHidden('#details-internet-page .network-details',
- (this.wireless && !this.showStaticIPConfig) || this.vpn);
- updateHidden('#details-internet-page .wifi-network-setting',
- this.showStaticIPConfig);
-
- // Cell plan related.
- $('plan-list').hidden = this.cellplanloading;
- updateHidden('#details-internet-page .no-plan-info',
- !this.cellular || this.cellplanloading || this.hascellplan);
- updateHidden('#details-internet-page .plan-loading-info',
- !this.cellular || this.nocellplan || this.hascellplan);
- updateHidden('#details-internet-page .plan-details-info',
- !this.cellular || this.nocellplan || this.cellplanloading);
- updateHidden('#details-internet-page .gsm-only',
- !this.cellular || !this.gsm);
- updateHidden('#details-internet-page .cdma-only',
- !this.cellular || this.gsm);
- updateHidden('#details-internet-page .apn-list-view',
- !this.cellular || !this.gsm);
- updateHidden('#details-internet-page .apn-details-view', true);
-
- // Wifi - Password and shared.
- updateHidden('#details-internet-page #password-details',
- !this.wireless || !this.password);
- updateHidden('#details-internet-page #wifi-shared-network',
- !this.shared);
- updateHidden('#details-internet-page #prefer-network',
- !this.showPreferred);
-
- // WiMAX.
- updateHidden('#details-internet-page #wimax-shared-network',
- !this.shared);
-
- // Proxy
- this.updateProxyBannerVisibility_();
- this.toggleSingleProxy_();
- if ($('manual-proxy').checked)
- this.enableManualProxy_();
- else
- this.disableManualProxy_();
- if (!this.proxyListInitialized_ && this.visible) {
- this.proxyListInitialized_ = true;
- $('ignored-host-list').redraw();
- }
- },
-
- /**
- * Updates info banner visibility state. This function shows the banner
- * if proxy is managed or shared-proxies is off for shared network.
- * @private
- */
- updateProxyBannerVisibility_: function() {
- var bannerDiv = $('info-banner');
- // Show banner and determine its message if necessary.
- var controlledBy = $('direct-proxy').controlledBy;
- if (!controlledBy || controlledBy == '') {
- bannerDiv.hidden = true;
- } else {
- bannerDiv.hidden = false;
- // controlledBy must match strings loaded in proxy_handler.cc and
- // set in proxy_cros_settings_provider.cc.
- $('banner-text').textContent = loadTimeData.getString(controlledBy);
- }
- },
-
- /**
- * Handler for when the user clicks on the checkbox to allow a
- * single proxy usage.
- * @private
- * @param {Event} e Click Event.
- */
- toggleSingleProxy_: function(e) {
- if ($('proxy-all-protocols').checked) {
- $('multi-proxy').hidden = true;
- $('single-proxy').hidden = false;
- } else {
- $('multi-proxy').hidden = false;
- $('single-proxy').hidden = true;
- }
- },
-
- /**
- * Handler for selecting a radio button that will disable the manual
- * controls.
- * @private
- * @param {Event} e Click event.
- */
- disableManualProxy_: function(e) {
- $('advanced-config').hidden = true;
- $('proxy-all-protocols').disabled = true;
- $('proxy-host-name').disabled = true;
- $('proxy-host-port').disabled = true;
- $('proxy-host-single-name').disabled = true;
- $('proxy-host-single-port').disabled = true;
- $('secure-proxy-host-name').disabled = true;
- $('secure-proxy-port').disabled = true;
- $('ftp-proxy').disabled = true;
- $('ftp-proxy-port').disabled = true;
- $('socks-host').disabled = true;
- $('socks-port').disabled = true;
- $('proxy-config').disabled = $('auto-proxy').disabled ||
- !$('auto-proxy').checked;
- },
-
- /**
- * Handler for selecting a radio button that will enable the manual
- * controls.
- * @private
- * @param {Event} e Click event.
- */
- enableManualProxy_: function(e) {
- $('advanced-config').hidden = false;
- $('ignored-host-list').redraw();
- var all_disabled = $('manual-proxy').disabled;
- $('new-host').disabled = all_disabled;
- $('remove-host').disabled = all_disabled;
- $('add-host').disabled = all_disabled;
- $('proxy-all-protocols').disabled = all_disabled;
- $('proxy-host-name').disabled = all_disabled;
- $('proxy-host-port').disabled = all_disabled;
- $('proxy-host-single-name').disabled = all_disabled;
- $('proxy-host-single-port').disabled = all_disabled;
- $('secure-proxy-host-name').disabled = all_disabled;
- $('secure-proxy-port').disabled = all_disabled;
- $('ftp-proxy').disabled = all_disabled;
- $('ftp-proxy-port').disabled = all_disabled;
- $('socks-host').disabled = all_disabled;
- $('socks-port').disabled = all_disabled;
- $('proxy-config').disabled = true;
- },
- };
-
- /**
- * Performs minimal initialization of the InternetDetails dialog in
- * preparation for showing proxy-setttings.
- */
- DetailsInternetPage.initializeProxySettings = function() {
- var detailsPage = DetailsInternetPage.getInstance();
- detailsPage.initializePageContents_();
- };
-
- /**
- * Displays the InternetDetails dialog with only the proxy settings visible.
- */
- DetailsInternetPage.showProxySettings = function() {
- var detailsPage = DetailsInternetPage.getInstance();
- $('network-details-header').hidden = true;
- $('buyplan-details').hidden = true;
- $('activate-details').hidden = true;
- $('view-account-details').hidden = true;
- detailsPage.cellular = false;
- detailsPage.wireless = false;
- detailsPage.vpn = false;
- detailsPage.showProxy = true;
- updateHidden('#internet-tab', true);
- updateHidden('#details-tab-strip', true);
- updateHidden('#details-internet-page .action-area', true);
- detailsPage.updateControls();
- detailsPage.visible = true;
- };
-
- DetailsInternetPage.updateCellularPlans = function(data) {
- var detailsPage = DetailsInternetPage.getInstance();
- detailsPage.cellplanloading = false;
- if (data.plans && data.plans.length) {
- detailsPage.nocellplan = false;
- detailsPage.hascellplan = true;
- $('plan-list').load(data.plans);
- } else {
- detailsPage.nocellplan = true;
- detailsPage.hascellplan = false;
- }
-
- detailsPage.hasactiveplan = !data.needsPlan;
- detailsPage.activated = data.activated;
- if (!data.activated)
- $('details-internet-login').hidden = true;
-
- $('buyplan-details').hidden = !data.showBuyButton;
- $('activate-details').hidden = !data.showActivateButton;
- $('view-account-details').hidden = !data.showViewAccountButton;
- };
-
- DetailsInternetPage.updateSecurityTab = function(requirePin) {
- $('sim-card-lock-enabled').checked = requirePin;
- $('change-pin').hidden = !requirePin;
- };
-
-
- DetailsInternetPage.loginFromDetails = function() {
- var data = $('connection-state').data;
- var servicePath = data.servicePath;
- chrome.send('networkCommand', [String(data.type),
- servicePath,
- 'connect']);
- OptionsPage.closeOverlay();
- };
-
- DetailsInternetPage.disconnectNetwork = function() {
- var data = $('connection-state').data;
- var servicePath = data.servicePath;
- chrome.send('networkCommand', [String(data.type),
- servicePath,
- 'disconnect']);
- OptionsPage.closeOverlay();
- };
-
- DetailsInternetPage.activateFromDetails = function() {
- var data = $('connection-state').data;
- var servicePath = data.servicePath;
- if (data.type == Constants.TYPE_CELLULAR) {
- chrome.send('networkCommand', [String(data.type),
- String(servicePath),
- 'activate']);
- }
- OptionsPage.closeOverlay();
- };
-
- DetailsInternetPage.setDetails = function() {
- var data = $('connection-state').data;
- var servicePath = data.servicePath;
- if (data.type == Constants.TYPE_WIFI) {
- chrome.send('setPreferNetwork',
- [String(servicePath),
- $('prefer-network-wifi').checked ? 'true' : 'false']);
- chrome.send('setAutoConnect',
- [String(servicePath),
- $('auto-connect-network-wifi').checked ? 'true' : 'false']);
- } else if (data.type == Constants.TYPE_WIMAX) {
- chrome.send('setAutoConnect',
- [String(servicePath),
- $('auto-connect-network-wimax').checked ? 'true' : 'false']);
- } else if (data.type == Constants.TYPE_CELLULAR) {
- chrome.send('setAutoConnect',
- [String(servicePath),
- $('auto-connect-network-cellular').checked ? 'true' :
- 'false']);
- }
-
- var nameServerTypes = ['automatic', 'google', 'user'];
- var nameServerType = 'automatic';
- for (var i = 0; i < nameServerTypes.length; ++i) {
- if ($(nameServerTypes[i] + '-dns-radio').checked) {
- nameServerType = nameServerTypes[i];
- break;
- }
- }
-
- // Skip any empty values.
- var userNameServers = [];
- for (var i = 1; i <= 4; ++i) {
- var nameServerField = $('ipconfig-dns' + i);
- if (nameServerField && nameServerField.model &&
- nameServerField.model.value) {
- userNameServers.push(nameServerField.model.value);
- }
- }
-
- userNameServers = userNameServers.join(',');
-
- chrome.send('setIPConfig',
- [servicePath,
- Boolean($('ip-automatic-configuration-checkbox').checked),
- $('ip-address').model.value || '',
- $('ip-netmask').model.value || '',
- $('ip-gateway').model.value || '',
- nameServerType,
- userNameServers]);
- OptionsPage.closeOverlay();
- };
-
- DetailsInternetPage.updateNameServerDisplay = function(type) {
- var editable = type == 'user';
- var fields = [$('ipconfig-dns1'), $('ipconfig-dns2'),
- $('ipconfig-dns3'), $('ipconfig-dns4')];
- for (var i = 0; i < fields.length; ++i) {
- fields[i].editable = editable;
- }
- if (editable)
- $('ipconfig-dns1').focus();
-
- var automaticDns = $('automatic-dns-display');
- var googleDns = $('google-dns-display');
- var userDns = $('user-dns-settings');
- switch (type) {
- case 'automatic':
- automaticDns.setAttribute('selected', '');
- googleDns.removeAttribute('selected');
- userDns.removeAttribute('selected');
- break;
- case 'google':
- automaticDns.removeAttribute('selected');
- googleDns.setAttribute('selected', '');
- userDns.removeAttribute('selected');
- break;
- case 'user':
- automaticDns.removeAttribute('selected');
- googleDns.removeAttribute('selected');
- userDns.setAttribute('selected', '');
- break;
- }
- };
-
- DetailsInternetPage.showDetailedInfo = function(data) {
- var detailsPage = DetailsInternetPage.getInstance();
-
- // Populate header
- $('network-details-title').textContent = data.networkName;
- var statusKey = data.connected ? 'networkConnected' :
- 'networkNotConnected';
- $('network-details-subtitle-status').textContent =
- loadTimeData.getString(statusKey);
- var typeKey = null;
- switch (data.type) {
- case Constants.TYPE_ETHERNET:
- typeKey = 'ethernetTitle';
- break;
- case Constants.TYPE_WIFI:
- typeKey = 'wifiTitle';
- break;
- case Constants.TYPE_WIMAX:
- typeKey = 'wimaxTitle';
- break;
- case Constants.TYPE_CELLULAR:
- typeKey = 'cellularTitle';
- break;
- case Constants.TYPE_VPN:
- typeKey = 'vpnTitle';
- break;
- }
- var typeLabel = $('network-details-subtitle-type');
- var typeSeparator = $('network-details-subtitle-separator');
- if (typeKey) {
- typeLabel.textContent = loadTimeData.getString(typeKey);
- typeLabel.hidden = false;
- typeSeparator.hidden = false;
- } else {
- typeLabel.hidden = true;
- typeSeparator.hidden = true;
- }
-
- // TODO(chocobo): Is this hack to cache the data here reasonable?
- // TODO(kevers): Find more appropriate place to cache data.
- $('connection-state').data = data;
-
- $('buyplan-details').hidden = true;
- $('activate-details').hidden = true;
- $('view-account-details').hidden = true;
- $('details-internet-login').hidden = data.connected;
- if (data.type == Constants.TYPE_ETHERNET)
- $('details-internet-disconnect').hidden = true;
- else
- $('details-internet-disconnect').hidden = !data.connected;
-
- detailsPage.deviceConnected = data.deviceConnected;
- detailsPage.connecting = data.connecting;
- detailsPage.connected = data.connected;
- detailsPage.showProxy = data.showProxy;
- detailsPage.showStaticIPConfig = data.showStaticIPConfig;
- $('connection-state').textContent = data.connectionState;
-
- var ipAutoConfig = data.ipAutoConfig ? 'automatic' : 'user';
- $('ip-automatic-configuration-checkbox').checked = data.ipAutoConfig;
- var inetAddress = {autoConfig: ipAutoConfig};
- var inetNetmask = {autoConfig: ipAutoConfig};
- var inetGateway = {autoConfig: ipAutoConfig};
-
- if (data.ipconfig.value) {
- inetAddress.automatic = data.ipconfig.value.address;
- inetAddress.value = data.ipconfig.value.address;
- inetNetmask.automatic = data.ipconfig.value.netmask;
- inetNetmask.value = data.ipconfig.value.netmask;
- inetGateway.automatic = data.ipconfig.value.gateway;
- inetGateway.value = data.ipconfig.value.gateway;
- }
-
- // Override the "automatic" values with the real saved DHCP values,
- // if they are set.
- if (data.savedIP.address) {
- inetAddress.automatic = data.savedIP.address;
- inetAddress.value = data.savedIP.address;
- }
- if (data.savedIP.netmask) {
- inetNetmask.automatic = data.savedIP.netmask;
- inetNetmask.value = data.savedIP.netmask;
- }
- if (data.savedIP.gateway) {
- inetGateway.automatic = data.savedIP.gateway;
- inetGateway.value = data.savedIP.gateway;
- }
-
- if (ipAutoConfig == 'user') {
- if (data.staticIP.value.address) {
- inetAddress.value = data.staticIP.value.address;
- inetAddress.user = data.staticIP.value.address;
- }
- if (data.staticIP.value.netmask) {
- inetNetmask.value = data.staticIP.value.netmask;
- inetNetmask.user = data.staticIP.value.netmask;
- }
- if (data.staticIP.value.gateway) {
- inetGateway.value = data.staticIP.value.gateway;
- inetGateway.user = data.staticIP.value.gateway;
- }
- }
-
- var configureAddressField = function(field, model) {
- IPAddressField.decorate(field);
- field.model = model;
- field.editable = model.autoConfig == 'user';
- };
-
- configureAddressField($('ip-address'), inetAddress);
- configureAddressField($('ip-netmask'), inetNetmask);
- configureAddressField($('ip-gateway'), inetGateway);
-
- var inetNameServers = '';
- if (data.ipconfig.value && data.ipconfig.value.nameServers) {
- inetNameServers = data.ipconfig.value.nameServers;
- $('automatic-dns-display').textContent = inetNameServers;
- }
-
- if (data.savedIP && data.savedIP.nameServers)
- $('automatic-dns-display').textContent = data.savedIP.nameServers;
-
- if (data.nameServersGoogle)
- $('google-dns-display').textContent = data.nameServersGoogle;
-
- var nameServersUser = [];
- if (data.staticIP.value.nameServers)
- nameServersUser = data.staticIP.value.nameServers.split(',');
-
- var nameServerModels = [];
- for (var i = 0; i < 4; ++i)
- nameServerModels.push({value: nameServersUser[i] || ''});
-
- $(data.nameServerType + '-dns-radio').checked = true;
- configureAddressField($('ipconfig-dns1'), nameServerModels[0]);
- configureAddressField($('ipconfig-dns2'), nameServerModels[1]);
- configureAddressField($('ipconfig-dns3'), nameServerModels[2]);
- configureAddressField($('ipconfig-dns4'), nameServerModels[3]);
-
- DetailsInternetPage.updateNameServerDisplay(data.nameServerType);
-
- if (data.hardwareAddress) {
- $('hardware-address').textContent = data.hardwareAddress;
- $('hardware-address-row').style.display = 'table-row';
- } else {
- // This is most likely a device without a hardware address.
- $('hardware-address-row').style.display = 'none';
- }
- if (data.type == Constants.TYPE_WIFI) {
- OptionsPage.showTab($('wifi-network-nav-tab'));
- detailsPage.wireless = true;
- detailsPage.vpn = false;
- detailsPage.ethernet = false;
- detailsPage.cellular = false;
- detailsPage.gsm = false;
- detailsPage.wimax = false;
- detailsPage.shared = data.shared;
- $('wifi-connection-state').textContent = data.connectionState;
- $('wifi-ssid').textContent = data.ssid;
- if (data.bssid && data.bssid.length > 0) {
- $('wifi-bssid').textContent = data.bssid;
- $('wifi-bssid-entry').hidden = false;
- } else {
- $('wifi-bssid-entry').hidden = true;
- }
- $('wifi-ip-address').textContent = inetAddress.value;
- $('wifi-netmask').textContent = inetNetmask.value;
- $('wifi-gateway').textContent = inetGateway.value;
- $('wifi-name-servers').textContent = inetNameServers;
- if (data.encryption && data.encryption.length > 0) {
- $('wifi-security').textContent = data.encryption;
- $('wifi-security-entry').hidden = false;
- } else {
- $('wifi-security-entry').hidden = true;
- }
- // Frequency is in MHz.
- var frequency = loadTimeData.getString('inetFrequencyFormat');
- frequency = frequency.replace('$1', data.frequency);
- $('wifi-frequency').textContent = frequency;
- // Signal strength as percentage.
- var signalStrength = loadTimeData.getString('inetSignalStrengthFormat');
- signalStrength = signalStrength.replace('$1', data.strength);
- $('wifi-signal-strength').textContent = signalStrength;
- if (data.hardwareAddress) {
- $('wifi-hardware-address').textContent = data.hardwareAddress;
- $('wifi-hardware-address-entry').hidden = false;
- } else {
- $('wifi-hardware-address-entry').hidden = true;
- }
- detailsPage.showPreferred = data.showPreferred;
- $('prefer-network-wifi').checked = data.preferred.value;
- $('prefer-network-wifi').disabled = !data.remembered;
- $('auto-connect-network-wifi').checked = data.autoConnect.value;
- $('auto-connect-network-wifi').disabled = !data.remembered;
- detailsPage.password = data.encrypted;
- } else if (data.type == Constants.TYPE_WIMAX) {
- OptionsPage.showTab($('wimax-network-nav-tab'));
- detailsPage.wimax = true;
- detailsPage.wireless = false;
- detailsPage.vpn = false;
- detailsPage.ethernet = false;
- detailsPage.cellular = false;
- detailsPage.gsm = false;
- detailsPage.shared = data.shared;
- detailsPage.showPreferred = data.showPreferred;
- $('wimax-connection-state').textContent = data.connectionState;
- $('auto-connect-network-wimax').checked = data.autoConnect.value;
- $('auto-connect-network-wimax').disabled = !data.remembered;
- if (data.identity) {
- $('wimax-eap-identity').textContent = data.identity;
- $('wimax-eap-identity-entry').hidden = false;
- } else {
- $('wimax-eap-identity-entry').hidden = true;
- }
- // Signal strength as percentage.
- var signalStrength = loadTimeData.getString('inetSignalStrengthFormat');
- signalStrength = signalStrength.replace('$1', data.strength);
- $('wimax-signal-strength').textContent = signalStrength;
- } else if (data.type == Constants.TYPE_CELLULAR) {
- if (!data.gsm)
- OptionsPage.showTab($('cellular-plan-nav-tab'));
- else
- OptionsPage.showTab($('cellular-conn-nav-tab'));
- detailsPage.ethernet = false;
- detailsPage.wireless = false;
- detailsPage.wimax = false;
- detailsPage.vpn = false;
- detailsPage.cellular = true;
- $('service-name').textContent = data.serviceName;
- $('network-technology').textContent = data.networkTechnology;
- $('activation-state').textContent = data.activationState;
- $('roaming-state').textContent = data.roamingState;
- $('restricted-pool').textContent = data.restrictedPool;
- $('error-state').textContent = data.errorState;
- $('manufacturer').textContent = data.manufacturer;
- $('model-id').textContent = data.modelId;
- $('firmware-revision').textContent = data.firmwareRevision;
- $('hardware-revision').textContent = data.hardwareRevision;
- $('prl-version').textContent = data.prlVersion;
- $('meid').textContent = data.meid;
- $('imei').textContent = data.imei;
- $('mdn').textContent = data.mdn;
- $('esn').textContent = data.esn;
- $('min').textContent = data.min;
- detailsPage.gsm = data.gsm;
- if (data.gsm) {
- $('operator-name').textContent = data.operatorName;
- $('operator-code').textContent = data.operatorCode;
- $('imsi').textContent = data.imsi;
-
- var apnSelector = $('select-apn');
- // Clear APN lists, keep only last element that "other".
- while (apnSelector.length != 1)
- apnSelector.remove(0);
- var otherOption = apnSelector[0];
- data.selectedApn = -1;
- data.userApnIndex = -1;
- var apnList = data.providerApnList.value;
- for (var i = 0; i < apnList.length; i++) {
- var option = document.createElement('option');
- var name = apnList[i].localizedName;
- if (name == '' && apnList[i].name != '')
- name = apnList[i].name;
- if (name == '')
- name = apnList[i].apn;
- else
- name = name + ' (' + apnList[i].apn + ')';
- option.textContent = name;
- option.value = i;
- if ((data.apn.apn == apnList[i].apn &&
- data.apn.username == apnList[i].username &&
- data.apn.password == apnList[i].password) ||
- (data.apn.apn == '' &&
- data.lastGoodApn.apn == apnList[i].apn &&
- data.lastGoodApn.username == apnList[i].username &&
- data.lastGoodApn.password == apnList[i].password)) {
- data.selectedApn = i;
- }
- // Insert new option before "other" option.
- apnSelector.add(option, otherOption);
- }
- if (data.selectedApn == -1 && data.apn.apn != '') {
- var option = document.createElement('option');
- option.textContent = data.apn.apn;
- option.value = -1;
- apnSelector.add(option, otherOption);
- data.selectedApn = apnSelector.length - 2;
- data.userApnIndex = data.selectedApn;
- }
- apnSelector.selectedIndex = data.selectedApn;
- updateHidden('.apn-list-view', false);
- updateHidden('.apn-details-view', true);
- DetailsInternetPage.updateSecurityTab(data.simCardLockEnabled.value);
- }
- $('auto-connect-network-cellular').checked = data.autoConnect.value;
- $('auto-connect-network-cellular').disabled = false;
-
- $('buyplan-details').hidden = !data.showBuyButton;
- $('view-account-details').hidden = !data.showViewAccountButton;
- $('activate-details').hidden = !data.showActivateButton;
- if (data.showActivateButton) {
- $('details-internet-login').hidden = true;
- }
-
- detailsPage.hascellplan = false;
- if (data.connected) {
- detailsPage.nocellplan = false;
- detailsPage.cellplanloading = true;
- chrome.send('refreshCellularPlan', [data.servicePath]);
- } else {
- detailsPage.nocellplan = true;
- detailsPage.cellplanloading = false;
- }
- } else if (data.type == Constants.TYPE_VPN) {
- OptionsPage.showTab($('vpn-nav-tab'));
- detailsPage.wireless = false;
- detailsPage.wimax = false;
- detailsPage.vpn = true;
- detailsPage.ethernet = false;
- detailsPage.cellular = false;
- detailsPage.gsm = false;
- $('inet-service-name').textContent = data.service_name;
- $('inet-server-hostname').textContent = data.server_hostname;
- $('inet-provider-type').textContent = data.provider_type;
- $('inet-username').textContent = data.username;
- } else {
- OptionsPage.showTab($('internet-nav-tab'));
- detailsPage.ethernet = true;
- detailsPage.wireless = false;
- detailsPage.wimax = false;
- detailsPage.vpn = false;
- detailsPage.cellular = false;
- detailsPage.gsm = false;
- }
-
- // Update controlled option indicators.
- indicators = cr.doc.querySelectorAll(
- '#details-internet-page .controlled-setting-indicator');
- for (var i = 0; i < indicators.length; i++) {
- var dataProperty = indicators[i].getAttribute('data');
- if (dataProperty && data[dataProperty]) {
- var controlledBy = data[dataProperty].controlledBy;
- if (controlledBy) {
- indicators[i].controlledBy = controlledBy;
- var forElement = $(indicators[i].getAttribute('for'));
- if (forElement)
- forElement.disabled = controlledBy != 'recommended';
- if (forElement.type == 'radio' && !forElement.checked)
- indicators[i].hidden = true;
- } else {
- indicators[i].controlledBy = null;
- }
- }
- }
-
- detailsPage.updateControls();
-
- // Don't show page name in address bar and in history to prevent people
- // navigate here by hand and solve issue with page session restore.
- OptionsPage.showPageByName('detailsInternetPage', false);
- };
-
- return {
- DetailsInternetPage: DetailsInternetPage
- };
-});

Powered by Google App Engine
This is Rietveld 408576698