Browse Source

UI-1386: Updated devices to use the numberSelector for the e911 number

4.3
Maxime Roux 11 years ago
parent
commit
04214b9e28
9 changed files with 59 additions and 57 deletions
  1. +5
    -1
      i18n/en-US.json
  2. +5
    -1
      i18n/fr-FR.json
  3. +43
    -7
      submodules/devices/devices.js
  4. +1
    -8
      views/devices-ata.html
  5. +1
    -8
      views/devices-fax.html
  6. +1
    -8
      views/devices-mobile.html
  7. +1
    -8
      views/devices-sip_device.html
  8. +1
    -8
      views/devices-smartphone.html
  9. +1
    -8
      views/devices-softphone.html

+ 5
- 1
i18n/en-US.json View File

@ -155,7 +155,11 @@
"emergency": "Number",
"notSet": "- Account Default -",
"noE911Numbers": "You didn't set E911 on any of your numbers, please set it up via the Number Manager and come back on this screen once it's done",
"address": "Address"
"address": "Address",
"__comment": "UI-1386: Updating devices to use the numberSelector common control",
"__version": "v3.20_s4",
"selectNumber": "Select an e911 number",
"useDefault": "Use account default"
},
"miscellaneous": {
"menuTitle": "Miscellaneous",


+ 5
- 1
i18n/fr-FR.json View File

@ -135,7 +135,11 @@
"emergency": "Numéro",
"notSet": "- Valeur du compte par défaut -",
"noE911Numbers": "L'E911 n'a été configuré sur aucun numéro, veuillez utiliser l'application de gestion des numéros pour le configurer sur un de vos numéros avant de définir votre Caller-ID d'urgence.",
"address": "Adresse"
"address": "Adresse",
"__comment": "UI-1386: Updating devices to use the numberSelector common control",
"__version": "v3.20_s4",
"selectNumber": "Sélectionnez un numéro E911",
"useDefault": "Utiliser la valeur du compte par défaut"
},
"miscellaneous": {
"menuTitle": "Divers",


+ 43
- 7
submodules/devices/devices.js View File

@ -289,7 +289,10 @@ define(function(require){
}
if ( data.extra.hasE911Numbers ) {
var currentNumber = undefined;
if(data.caller_id && data.caller_id.emergency && data.caller_id.emergency.number) {
currentNumber = data.caller_id.emergency.number;
self.devicesGetE911NumberAddress(data.caller_id.emergency.number, function(address) {
templateDevice
.find('.number-address')
@ -298,6 +301,20 @@ define(function(require){
.html(address);
});
}
monster.pub('common.numberSelector.render', {
container: templateDevice.find('.emergency-number'),
inputName: 'caller_id.emergency.number',
number: currentNumber,
customNumbers: data.extra.e911Numbers,
noBuy: true,
labels: {
empty: self.i18n.active().devices.popupSettings.callerId.notSet,
remove: self.i18n.active().devices.popupSettings.callerId.useDefault,
spare: self.i18n.active().devices.popupSettings.callerId.selectNumber,
hideNumber: true
}
});
}
monster.ui.validate(deviceForm, {
@ -586,7 +603,7 @@ define(function(require){
var self = this,
defaults = {
extra: {
hasE911Numbers: data.e911Numbers.length > 0,
hasE911Numbers: !_.isEmpty(data.e911Numbers),
e911Numbers: data.e911Numbers,
restrictions: data.listClassifiers,
rtpMethod: data.device.media && data.device.media.encryption && data.device.media.encryption.enforce_security ? data.device.media.encryption.methods[0] : '',
@ -875,17 +892,36 @@ define(function(require){
}
},
success: function(data) {
var e911Numbers = [];
monster.pub('common.numbers.getListFeatures', function(viewFeatures) {
var e911Numbers = {};
_.each(data.data.numbers, function(val, key) {
if(val.features.indexOf('dash_e911') >= 0) {
e911Numbers[key] = self.devicesFormatNumber(val, viewFeatures);
}
});
_.each(data.data.numbers, function(number, value) {
if(number.features.indexOf('dash_e911') >= 0) {
e911Numbers.push(value);
}
callback(e911Numbers);
});
}
});
},
devicesFormatNumber: function(value, viewFeatures) {
var self = this;
callback(e911Numbers);
value.viewFeatures = $.extend(true, {}, viewFeatures);
if('locality' in value) {
value.isoCountry = value.locality.country || '';
value.friendlyLocality = 'city' in value.locality ? value.locality.city + ('state' in value.locality ? ', ' + value.locality.state : '') : '';
}
_.each(value.features, function(feature) {
if(feature in value.viewFeatures) {
value.viewFeatures[feature].active = 'active';
}
});
return value;
},
devicesGetEditData: function(dataDevice, callback) {


+ 1
- 8
views/devices-ata.html View File

@ -121,14 +121,7 @@
{{#if extra.hasE911Numbers}}
<div class="control-group">
<label class="control-label">{{ i18n.devices.popupSettings.callerId.emergency }}</label>
<div class="controls">
<select name="caller_id.emergency.number" class="caller-id-select">
<option value="">{{i18n.devices.popupSettings.callerId.notSet}}</option>
{{#each extra.e911Numbers}}
<option{{#compare ../this.caller_id.emergency.number "===" this}} selected{{/compare}} value="{{this}}">{{this}}</option>
{{/each}}
</select>
</div>
<div class="controls emergency-number"></div>
</div>
{{else}}
{{#monsterText 'error'}}


+ 1
- 8
views/devices-fax.html View File

@ -132,14 +132,7 @@
{{#if extra.hasE911Numbers}}
<div class="control-group">
<label class="control-label">{{ i18n.devices.popupSettings.callerId.emergency }}</label>
<div class="controls">
<select name="caller_id.emergency.number" class="caller-id-select">
<option value="">{{i18n.devices.popupSettings.callerId.notSet}}</option>
{{#each extra.e911Numbers}}
<option{{#compare ../this.caller_id.emergency.number "===" this}} selected{{/compare}} value="{{this}}">{{this}}</option>
{{/each}}
</select>
</div>
<div class="controls emergency-number"></div>
</div>
{{else}}
{{#monsterText 'error'}}


+ 1
- 8
views/devices-mobile.html View File

@ -143,14 +143,7 @@
{{#if extra.hasE911Numbers}}
<div class="control-group">
<label class="control-label">{{ i18n.devices.popupSettings.callerId.emergency }}</label>
<div class="controls">
<select name="caller_id.emergency.number" class="caller-id-select">
<option value="">{{i18n.devices.popupSettings.callerId.notSet}}</option>
{{#each extra.e911Numbers}}
<option{{#compare ../this.caller_id.emergency.number "===" this}} selected{{/compare}} value="{{this}}">{{this}}</option>
{{/each}}
</select>
</div>
<div class="controls emergency-number"></div>
</div>
{{else}}
{{#monsterText 'error'}}


+ 1
- 8
views/devices-sip_device.html View File

@ -180,14 +180,7 @@
{{#if extra.hasE911Numbers}}
<div class="control-group">
<label class="control-label">{{ i18n.devices.popupSettings.callerId.emergency }}</label>
<div class="controls">
<select name="caller_id.emergency.number" class="caller-id-select">
<option value="">{{i18n.devices.popupSettings.callerId.notSet}}</option>
{{#each extra.e911Numbers}}
<option {{#compare ../this.caller_id.emergency.number "===" this}} selected{{/compare}} value="{{this}}">{{this}}</option>
{{/each}}
</select>
</div>
<div class="controls emergency-number"></div>
</div>
<div class="control-group number-address">
<label class="control-label">{{i18n.devices.popupSettings.callerId.address}}</label>


+ 1
- 8
views/devices-smartphone.html View File

@ -173,14 +173,7 @@
{{#if extra.hasE911Numbers}}
<div class="control-group">
<label class="control-label">{{ i18n.devices.popupSettings.callerId.emergency }}</label>
<div class="controls">
<select name="caller_id.emergency.number" class="caller-id-select">
<option value="">{{i18n.devices.popupSettings.callerId.notSet}}</option>
{{#each extra.e911Numbers}}
<option{{#compare ../this.caller_id.emergency.number "===" this}} selected{{/compare}} value="{{this}}">{{this}}</option>
{{/each}}
</select>
</div>
<div class="controls emergency-number"></div>
</div>
{{else}}
{{#monsterText 'error'}}


+ 1
- 8
views/devices-softphone.html View File

@ -137,14 +137,7 @@
{{#if extra.hasE911Numbers}}
<div class="control-group">
<label class="control-label">{{ i18n.devices.popupSettings.callerId.emergency }}</label>
<div class="controls">
<select name="caller_id.emergency.number" class="caller-id-select">
<option value="">{{i18n.devices.popupSettings.callerId.notSet}}</option>
{{#each extra.e911Numbers}}
<option{{#compare ../this.caller_id.emergency.number "===" this}} selected{{/compare}} value="{{this}}">{{this}}</option>
{{/each}}
</select>
</div>
<div class="controls emergency-number"></div>
</div>
<div class="control-group number-address">
<label class="control-label">{{i18n.devices.popupSettings.callerId.address}}</label>


Loading…
Cancel
Save