diff --git a/submodules/groups/groups.js b/submodules/groups/groups.js index cf4dfe6..b03f77f 100644 --- a/submodules/groups/groups.js +++ b/submodules/groups/groups.js @@ -543,7 +543,7 @@ define(function(require){ groupsRenderRingback: function(data) { var self = this, silenceMediaId = 'silence_stream://300000', - ringGroupNode = data.callflow.flow; + ringGroupNode = data.baseCallflow.flow; while(ringGroupNode.module !== 'ring_group' && '_' in ringGroupNode.children) { ringGroupNode = ringGroupNode.children['_']; @@ -668,7 +668,7 @@ define(function(require){ }; } - self.groupsUpdateCallflow(data.callflow, function() { + self.groupsUpdateCallflow(data.baseCallflow, function() { self.groupsUpdate(data.group, function(updatedGroup) { popup.dialog('close').remove(); self.groupsRender({ groupId: data.group.id }); @@ -680,7 +680,7 @@ define(function(require){ data.group.smartpbx.ringback.enabled = false; } - self.groupsUpdateCallflow(data.callflow, function() { + self.groupsUpdateCallflow(data.baseCallflow, function() { self.groupsUpdate(data.group, function(updatedGroup) { popup.dialog('close').remove(); self.groupsRender({ groupId: data.group.id }); @@ -1178,6 +1178,11 @@ define(function(require){ callback(null, data); }); }, + baseCallflow: function(callback) { + self.groupsGetBaseRingGroup(groupId, function(data) { + callback(null, data); + }); + }, voicemails: function(callback) { self.groupsListVMBoxes(function(data) { callback(null, data); diff --git a/submodules/strategy/strategy.js b/submodules/strategy/strategy.js index eaacb71..2f31b6f 100644 --- a/submodules/strategy/strategy.js +++ b/submodules/strategy/strategy.js @@ -360,7 +360,7 @@ define(function(require){ type: "default" }, callflow: callflowName, - callEntities: self.strategyGetCallEntitiesDropdownData(strategyData.callEntities), + callEntities: self.strategyGetCallEntitiesDropdownData(strategyData.callEntities, true), voicemails: strategyData.voicemails, tabMessage: self.i18n.active().strategy.calls.callTabsMessages[callflowName] }; @@ -1588,11 +1588,18 @@ define(function(require){ }); }, - strategyGetCallEntitiesDropdownData: function(callEntities) { + strategyGetCallEntitiesDropdownData: function(callEntities, useBasicUser) { var self = this, + useBasicUser = (useBasicUser === true) || false, + entities = $.extend(true, {}, callEntities), results = []; - _.each(callEntities, function(value, key) { + if(!useBasicUser) { + entities.user = entities.userCallflows; + } + delete entities.userCallflows; + + _.each(entities, function(value, key) { var group = { groupName: self.i18n.active().strategy.callEntities[key], groupType: key, @@ -2107,7 +2114,8 @@ define(function(require){ function(err, results) { var callEntities = { device: results.devices, - user: [], + user: $.extend(true, [], results.users), + userCallflows: [], ring_group: [] }; @@ -2123,7 +2131,7 @@ define(function(require){ } else { user.module = 'user'; } - callEntities.user.push(user); + callEntities.userCallflows.push(user); }); _.each(results.groups, function(group) {