Browse Source

UI-1489: now using the numberListing common control to add new users to SmartPBX groups

4.3
mroux 11 years ago
parent
commit
958dabeac5
3 changed files with 31 additions and 55 deletions
  1. +0
    -27
      submodules/groups/groups.css
  2. +27
    -15
      submodules/groups/groups.js
  3. +4
    -13
      views/groups-members.html

+ 0
- 27
submodules/groups/groups.css View File

@ -248,33 +248,6 @@
#groups_container .detail-group .groups-fields:after {
clear: right;
}
#groups_container .detail-group .add-user-dropdown {
margin: 0;
list-style: none;
}
#groups_container .detail-group .add-user-dropdown .dropdown {
height: 30px;
line-height: 30px;
}
#groups_container .detail-group .add-user-dropdown .dropdown-menu {
padding: 0;
border-radius: 0;
}
#groups_container .detail-group .add-user-dropdown .add-user {
padding: 0px 15px;
height: 40px;
background: #FFF;
white-space: nowrap;
font-size: 14px;
line-height: 40px;
cursor: pointer;
}
#groups_container .detail-group .add-user-dropdown .add-user.in-use {
display: none;
}
#groups_container .detail-group .add-user-dropdown .add-user:hover {
background: #FCFCFC;
}
/* Name */
.detail-group #form-name {


+ 27
- 15
submodules/groups/groups.js View File

@ -1183,23 +1183,35 @@ define(function(require){
});
});
template.on('click', '.add-user', function() {
var $this = $(this),
newEndpoint = {
id: $this.data('id'),
timeout: 20,
delay: 0,
endpoint_type: 'user',
name: $(this).text()
};
template.on('click', '.add-user-link', function() {
var usersInUse = $.map(template.find('.grid-time-row[data-id]'), function(val) {
return $(val).data('id');
}),
remainingUsers = _.filter(data.users, function(val) {
return usersInUse.indexOf(val.id) === -1;
});
monster.pub('common.ringingDurationControl.addEndpoint', {
container: template.find('.members-container'),
endpoint: newEndpoint,
hasRemoveColumn: true
monster.pub('common.monsterListing.render', {
dataList: remainingUsers,
dataType: 'users',
okCallback: function(users) {
_.each(users, function(user) {
var newEndpoint = {
id: user.id,
timeout: 20,
delay: 0,
endpoint_type: 'user',
name: user.name
};
monster.pub('common.ringingDurationControl.addEndpoint', {
container: template.find('.members-container'),
endpoint: newEndpoint,
hasRemoveColumn: true
});
});
}
});
$this.addClass('in-use');
});
},


+ 4
- 13
views/groups-members.html View File

@ -3,19 +3,10 @@
<div class="members-container">
</div>
<div class="actions">
<ul class="pull-left add-user-dropdown">
<li class="dropdown">
<a href="javascript:void(0);" class="dropdown-toggle monster-link" data-toggle="dropdown" data-target="#">
<i class="icon-plus-sign icon-green"></i>
{{ i18n.users.add }}
</a>
<ul class="dropdown-menu" role="menu">
{{#each extra.remainingUsers}}
<li class="add-user {{#if inUse}}in-use{{/if}}" data-id="{{id}}">{{first_name}} {{last_name}}</li>
{{/each}}
</ul>
</li>
</ul>
<a href="javascript:void(0);" class="pull-left monster-link add-user-link">
<i class="icon-plus-sign icon-green"></i>
{{ i18n.users.add }}
</a>
<div class="pull-right">
<a class="cancel-link monster-link blue" href="javascript:void(0);">{{ i18n.cancel }}</a>
<button type="button" class="btn btn-success save-groups">{{ i18n.saveChanges }}</button>


Loading…
Cancel
Save