Browse Source

UI-1353: Add directory support for the virtual receptionist

4.3
Joris Tirado 11 years ago
parent
commit
03ee97171d
3 changed files with 46 additions and 7 deletions
  1. +4
    -1
      i18n/en-US.json
  2. +2
    -1
      i18n/fr-FR.json
  3. +40
    -5
      submodules/strategy/strategy.js

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

@ -698,7 +698,10 @@
"user": "Users",
"device": "Devices",
"ring_group": "Groups",
"voicemail": "Voicemail Boxes"
"voicemail": "Voicemail Boxes",
"__comment": "UI-1353: Add directory support for the virtual receptionist",
"__version": "v3.20_s4",
"directory": "Directory"
},
"confirmMessages": {
"deleteHoliday": "This holiday will be permanently deleted. Continue?",


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

@ -657,7 +657,8 @@
"user": "Utilisateurs",
"device": "Téléphones",
"ring_group": "Groupes",
"voicemail": "Répondeurs"
"voicemail": "Répondeurs",
"directory": "Annuaire"
},
"confirmMessages": {
"deleteHoliday": "Ces vacances seront supprimées. Continuer?",


+ 40
- 5
submodules/strategy/strategy.js View File

@ -68,6 +68,11 @@ define(function(require){
monster.pub('common.numbers.getListFeatures', function(features) {
callback(null, features);
});
},
directories: function (callback) {
self.strategyListDirectories(function (directories) {
callback(null, directories);
});
}
},
function(err, results) {
@ -1256,7 +1261,7 @@ define(function(require){
popup = monster.ui.dialog(template, { title: self.i18n.active().strategy.popup.title+" - "+label});
var menuLineContainer = template.find('.menu-block .left .content'),
popupCallEntities = $.extend(true, {}, strategyData.callEntities, { voicemail: strategyData.voicemails });
popupCallEntities = $.extend(true, {}, strategyData.callEntities, { voicemail: strategyData.voicemails }, { directory: strategyData.directories });
_.each(strategyData.callflows[name].flow.children, function(val, key) {
menuLineContainer.append(monster.template(self, 'strategy-menuLine', {
@ -1417,7 +1422,7 @@ define(function(require){
container.find('.add-menu-line a').on('click', function(e) {
e.preventDefault();
var popupCallEntities = $.extend(true, {}, strategyData.callEntities, { voicemail: strategyData.voicemails }),
var popupCallEntities = $.extend(true, {}, strategyData.callEntities, { voicemail: strategyData.voicemails }, { directory: strategyData.directories }),
menuLine = $(monster.template(self, 'strategy-menuLine', { callEntities: self.strategyGetCallEntitiesDropdownData(popupCallEntities) })),
icon = menuLine.find('.target-select option:selected').parents('optgroup').data('icon');
@ -1605,6 +1610,7 @@ define(function(require){
}
switch(entityType) {
case 'directory':
case 'user':
case 'device':
case 'voicemail':
@ -1657,6 +1663,9 @@ define(function(require){
};
switch(group.groupType) {
case 'directory':
group.groupIcon = 'icon-book';
break;
case 'user':
group.groupIcon = 'icon-user';
break;
@ -1672,9 +1681,18 @@ define(function(require){
}
group.entities.sort(function(a,b) { return (a.name.toLowerCase() > b.name.toLowerCase()); });
if(group.groupType === "user") {
results.splice(0, 0, group);
} else {
if(group.groupType === 'directory') {
results.unshift(group);
}
else if (group.groupType === 'user') {
if (results[0].groupType === 'directory') {
results.splice(1, 0, group);
}
else {
results.unshift(group);
}
}
else {
results.push(group);
}
});
@ -2402,6 +2420,23 @@ define(function(require){
});
},
strategyListDirectories: function(callbackSuccess, callbackError) {
var self = this;
self.callApi({
resource: 'directory.list',
data: {
accountId: self.accountId
},
success: function(data, status) {
callbackSuccess && callbackSuccess(data.data);
},
error: function(data, status) {
callbackError && callbackError();
}
});
},
_strategyOnCurrentAccountUpdated: function(accountData) {
var self = this;
$('#strategy_custom_hours_timezone').text(timezone.formatTimezone(accountData.timezone));


Loading…
Cancel
Save