Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
71 lines
2.1 KiB
JavaScript
Executable file
71 lines
2.1 KiB
JavaScript
Executable file
/* global DsdsSettings */
|
|
/**
|
|
* The apn settings panel
|
|
*/
|
|
define(function(require) {
|
|
'use strict';
|
|
|
|
var SettingsService = require('modules/settings_service');
|
|
var SettingsPanel = require('modules/settings_panel');
|
|
var ApnSettingsManager = require('modules/apn/apn_settings_manager');
|
|
var Toaster = require('shared/toaster');
|
|
var DialogService = require('modules/dialog_service');
|
|
|
|
return function ctor_apn_settings_panel() {
|
|
var _serviceId = 0;
|
|
|
|
var _rootElement;
|
|
|
|
var _browseApnItems = function(apnType) {
|
|
SettingsService.navigate(
|
|
'apn-list',
|
|
{
|
|
type: apnType,
|
|
serviceId: _serviceId
|
|
}
|
|
);
|
|
};
|
|
|
|
var _resetApn = function() {
|
|
DialogService.confirm('reset-apn-warning-message', {
|
|
title: 'reset-apn-warning-title',
|
|
submitButton: { id: 'reset', style: 'danger' },
|
|
cancelButton: 'cancel'
|
|
}).then((result) => {
|
|
if (result.type === 'submit') {
|
|
ApnSettingsManager.restore(_serviceId).then(function() {
|
|
var toast = {
|
|
messageL10nId: 'apnSettings-reset',
|
|
latency: 3000,
|
|
useTransition: true
|
|
};
|
|
Toaster.showToast(toast);
|
|
});
|
|
}
|
|
});
|
|
};
|
|
|
|
return SettingsPanel({
|
|
onInit: function asp_onInit(rootElement) {
|
|
_rootElement = rootElement;
|
|
var apnBtns = rootElement.querySelectorAll('a[data-apn-type]');
|
|
var resetBtn = rootElement.querySelector('button.reset-apn');
|
|
var header = rootElement.querySelector('gaia-header');
|
|
|
|
if (DsdsSettings.getNumberOfIccSlots() > 1) {
|
|
header.dataset.href = '#carrier-detail';
|
|
} else {
|
|
header.dataset.href = '#carrier';
|
|
}
|
|
|
|
Array.prototype.forEach.call(apnBtns, function(btn) {
|
|
btn.onclick = _browseApnItems.bind(null, btn.dataset.apnType);
|
|
});
|
|
resetBtn.onclick = _resetApn;
|
|
},
|
|
onBeforeShow: function asp_onBeforeShow() {
|
|
_serviceId = DsdsSettings.getIccCardIndexForCellAndDataSettings();
|
|
}
|
|
});
|
|
};
|
|
});
|