Browse Source

UI-1364: Music on Hold and Call Recording features now properly reopen the feature tab after closing the popup

4.3
Maxime Roux 11 years ago
parent
commit
2a646ac674
1 changed files with 16 additions and 78 deletions
  1. +16
    -78
      submodules/users/users.js

+ 16
- 78
submodules/users/users.js View File

@ -2035,80 +2035,6 @@ define(function(require){
}
},
usersRenderFindMeFollowMeSliders: function(template, deviceList, ringGroup, maxSeconds) {
var self = this,
scaleSections = 6, //Number of 'sections' in the time scales for the sliders
scaleMaxSeconds = maxSeconds && maxSeconds >= 30 ? maxSeconds : 120; //Maximum of seconds, corresponding to the end of the scale
if(!maxSeconds) {
var currentMax = 0;
_.each(ringGroup, function(endpoint) {
currentMax = (endpoint.delay+endpoint.timeout > currentMax) ? endpoint.delay+endpoint.timeout : currentMax;
});
scaleMaxSeconds = currentMax > scaleMaxSeconds ? Math.ceil(currentMax/60)*60 : scaleMaxSeconds;
}
var sliderTooltip = function(event, ui) {
var val = ui.value,
tooltip = '<div class="slider-tooltip"><div class="slider-tooltip-inner">' + val + '</div></div>';
$(ui.handle).html(tooltip);
},
createTooltip = function(event, ui, deviceId, sliderObj) {
var val1 = sliderObj.slider('values', 0),
val2 = sliderObj.slider('values', 1),
tooltip1 = '<div class="slider-tooltip"><div class="slider-tooltip-inner">' + val1 + '</div></div>',
tooltip2 = '<div class="slider-tooltip"><div class="slider-tooltip-inner">' + val2 + '</div></div>';
template.find('.device-row[data-device_id="'+ deviceId + '"] .slider-time .ui-slider-handle').first().html(tooltip1);
template.find('.device-row[data-device_id="'+ deviceId + '"] .slider-time .ui-slider-handle').last().html(tooltip2);
},
createSlider = function(device) {
var deviceRow = template.find('.device-row[data-device_id="'+ device.id +'"]');
deviceRow.find('.slider-time').slider({
range: true,
min: 0,
max: scaleMaxSeconds,
values: device.id in ringGroup ? [ ringGroup[device.id].delay, ringGroup[device.id].delay+ringGroup[device.id].timeout ] : [0,0],
slide: sliderTooltip,
change: sliderTooltip,
create: function(event, ui) {
createTooltip(event, ui, device.id, $(this));
},
});
createSliderScale(deviceRow);
},
createSliderScale = function(container, isHeader) {
var scaleContainer = container.find('.scale-container')
isHeader = isHeader || false;
scaleContainer.empty();
for(var i=1; i<=scaleSections; i++) {
var toAppend = '<div class="scale-element" style="width:'+(100/scaleSections)+'%;">'
+ (isHeader
? (i==scaleSections
? '<input type="text" value="'+scaleMaxSeconds+'" data-current="'+scaleMaxSeconds+'" class="scale-max-input" maxlength="3"><span class="scale-max">'
:'<span>')
+ Math.floor(i*scaleMaxSeconds/scaleSections) + ' Sec</span>'
: '')
+ '</div>';
scaleContainer.append(toAppend);
}
if(isHeader) {
scaleContainer.append('<span>0 Sec</span>');
}
};
_.each(deviceList, function(device) {
createSlider(device);
if(!(device.id in ringGroup)) {
template.find('.device-row[data-device_id="'+device.id+'"] .disable-device').prop('checked', true);
}
});
createSliderScale(template.find('.device-row.title'), true);
},
usersRenderCallRecording: function(params) {
var self = this,
templateData = $.extend(true, {
@ -2199,12 +2125,18 @@ define(function(require){
self.usersUpdateCallflow(newCallflow, function(updatedCallflow) {
self.usersUpdateUser(params.currentUser, function(updatedUser) {
popup.dialog('close').remove();
self.usersRender({ userId: params.currentUser.id });
self.usersRender({
userId: params.currentUser.id,
openedTab: 'features'
});
});
});
} else {
popup.dialog('close').remove();
self.usersRender({ groupId: params.currentUser.id });
self.usersRender({
userId: params.currentUser.id,
openedTab: 'features'
});
}
}
});
@ -2343,11 +2275,17 @@ define(function(require){
}
self.usersUpdateUser(currentUser, function(updatedUser) {
popup.dialog('close').remove();
self.usersRender({ userId: currentUser.id });
self.usersRender({
userId: currentUser.id,
openedTab: 'features'
});
});
} else {
popup.dialog('close').remove();
self.usersRender({ userId: currentUser.id });
self.usersRender({
userId: currentUser.id,
openedTab: 'features'
});
}
});


Loading…
Cancel
Save