Use JSON to send/receive group data.
Squashed commits from PR #4364 for master.
This commit is contained in:
parent
75e9015b54
commit
cd7e57e8ec
|
@ -41,7 +41,7 @@ try {
|
||||||
OC_JSON::success(array("data" =>
|
OC_JSON::success(array("data" =>
|
||||||
array(
|
array(
|
||||||
"username" => $username,
|
"username" => $username,
|
||||||
"groups" => implode( ", ", OC_Group::getUserGroups( $username )))));
|
"groups" => OC_Group::getUserGroups( $username ))));
|
||||||
} catch (Exception $exception) {
|
} catch (Exception $exception) {
|
||||||
OC_JSON::error(array("data" => array( "message" => $exception->getMessage())));
|
OC_JSON::error(array("data" => array( "message" => $exception->getMessage())));
|
||||||
}
|
}
|
||||||
|
|
|
@ -89,10 +89,10 @@ var UserList = {
|
||||||
tr.attr('data-displayName', displayname);
|
tr.attr('data-displayName', displayname);
|
||||||
tr.find('td.name').text(username);
|
tr.find('td.name').text(username);
|
||||||
tr.find('td.displayName > span').text(displayname);
|
tr.find('td.displayName > span').text(displayname);
|
||||||
var groupsSelect = $('<select multiple="multiple" class="groupsselect" data-placehoder="Groups" title="' + t('settings', 'Groups') + '"></select>').attr('data-username', username).attr('data-user-groups', groups);
|
var groupsSelect = $('<select multiple="multiple" class="groupsselect" data-placehoder="Groups" title="' + t('settings', 'Groups') + '"></select>').attr('data-username', username).attr('data-user-groups', [groups]);
|
||||||
tr.find('td.groups').empty();
|
tr.find('td.groups').empty();
|
||||||
if (tr.find('td.subadmins').length > 0) {
|
if (tr.find('td.subadmins').length > 0) {
|
||||||
var subadminSelect = $('<select multiple="multiple" class="subadminsselect" data-placehoder="subadmins" title="' + t('settings', 'Group Admin') + '">').attr('data-username', username).attr('data-user-groups', groups).attr('data-subadmin', subadmin);
|
var subadminSelect = $('<select multiple="multiple" class="subadminsselect" data-placehoder="subadmins" title="' + t('settings', 'Group Admin') + '">').attr('data-username', username).attr('data-user-groups', [groups]).attr('data-subadmin', [subadmin]);
|
||||||
tr.find('td.subadmins').empty();
|
tr.find('td.subadmins').empty();
|
||||||
}
|
}
|
||||||
$.each(this.availableGroups, function (i, group) {
|
$.each(this.availableGroups, function (i, group) {
|
||||||
|
@ -227,7 +227,7 @@ var UserList = {
|
||||||
var user = element.attr('data-username');
|
var user = element.attr('data-username');
|
||||||
if ($(element).attr('class') === 'groupsselect') {
|
if ($(element).attr('class') === 'groupsselect') {
|
||||||
if (element.data('userGroups')) {
|
if (element.data('userGroups')) {
|
||||||
checked = String(element.data('userGroups')).split(', ');
|
checked = element.data('userGroups');
|
||||||
}
|
}
|
||||||
if (user) {
|
if (user) {
|
||||||
var checkHandeler = function (group) {
|
var checkHandeler = function (group) {
|
||||||
|
@ -244,11 +244,10 @@ var UserList = {
|
||||||
group: group
|
group: group
|
||||||
},
|
},
|
||||||
function (response) {
|
function (response) {
|
||||||
if(response.status === 'success') {
|
if(response.status === 'success' && UserList.availableGroups.indexOf(response.data.groupname) === -1 && response.data.action === 'add') {
|
||||||
if(UserList.availableGroups.indexOf(response.data.groupname) === -1 && response.data.action === 'add') {
|
UserList.availableGroups.push(response.data.groupname);
|
||||||
UserList.availableGroups.push(response.data.groupname);
|
}
|
||||||
}
|
if(response.data.message) {
|
||||||
} else {
|
|
||||||
OC.Notification.show(response.data.message);
|
OC.Notification.show(response.data.message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -282,7 +281,7 @@ var UserList = {
|
||||||
}
|
}
|
||||||
if ($(element).attr('class') === 'subadminsselect') {
|
if ($(element).attr('class') === 'subadminsselect') {
|
||||||
if (element.data('subadmin')) {
|
if (element.data('subadmin')) {
|
||||||
checked = String(element.data('subadmin')).split(', ');
|
checked = element.data('subadmin');
|
||||||
}
|
}
|
||||||
var checkHandeler = function (group) {
|
var checkHandeler = function (group) {
|
||||||
if (group === 'admin') {
|
if (group === 'admin') {
|
||||||
|
@ -321,7 +320,7 @@ var UserList = {
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
|
|
||||||
UserList.doSort();
|
UserList.doSort();
|
||||||
UserList.availableGroups = $('#content table').attr('data-groups').split(', ');
|
UserList.availableGroups = $('#content table').data('groups');
|
||||||
$('tbody tr:last').bind('inview', function (event, isInView, visiblePartX, visiblePartY) {
|
$('tbody tr:last').bind('inview', function (event, isInView, visiblePartX, visiblePartY) {
|
||||||
OC.Router.registerLoadedCallback(function () {
|
OC.Router.registerLoadedCallback(function () {
|
||||||
UserList.update();
|
UserList.update();
|
||||||
|
@ -450,7 +449,7 @@ $(document).ready(function () {
|
||||||
t('settings', 'Error creating user'));
|
t('settings', 'Error creating user'));
|
||||||
} else {
|
} else {
|
||||||
if (result.data.groups) {
|
if (result.data.groups) {
|
||||||
var addedGroups = result.data.groups.split(', ');
|
var addedGroups = result.data.groups;
|
||||||
UserList.availableGroups = $.unique($.merge(UserList.availableGroups, addedGroups));
|
UserList.availableGroups = $.unique($.merge(UserList.availableGroups, addedGroups));
|
||||||
}
|
}
|
||||||
if($('tr[data-uid="' + username + '"]').length === 0) {
|
if($('tr[data-uid="' + username + '"]').length === 0) {
|
||||||
|
|
|
@ -78,7 +78,7 @@ $_['subadmingroups'] = array_flip($items);
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<table class="hascontrols" data-groups="<?php p(implode(', ', $allGroups));?>">
|
<table class="hascontrols" data-groups="<?php p(json_encode($allGroups));?>">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th id='headerName'><?php p($l->t('Username'))?></th>
|
<th id='headerName'><?php p($l->t('Username'))?></th>
|
||||||
|
@ -108,7 +108,7 @@ $_['subadmingroups'] = array_flip($items);
|
||||||
<td class="groups"><select
|
<td class="groups"><select
|
||||||
class="groupsselect"
|
class="groupsselect"
|
||||||
data-username="<?php p($user['name']) ;?>"
|
data-username="<?php p($user['name']) ;?>"
|
||||||
data-user-groups="<?php p($user['groups']) ;?>"
|
data-user-groups="<?php p(json_encode($user['groups'])) ;?>"
|
||||||
data-placeholder="groups" title="<?php p($l->t('Groups'))?>"
|
data-placeholder="groups" title="<?php p($l->t('Groups'))?>"
|
||||||
multiple="multiple">
|
multiple="multiple">
|
||||||
<?php foreach($_["groups"] as $group): ?>
|
<?php foreach($_["groups"] as $group): ?>
|
||||||
|
@ -120,7 +120,7 @@ $_['subadmingroups'] = array_flip($items);
|
||||||
<td class="subadmins"><select
|
<td class="subadmins"><select
|
||||||
class="subadminsselect"
|
class="subadminsselect"
|
||||||
data-username="<?php p($user['name']) ;?>"
|
data-username="<?php p($user['name']) ;?>"
|
||||||
data-subadmin="<?php p($user['subadmin']);?>"
|
data-subadmin="<?php p(json_encode($user['subadmin']));?>"
|
||||||
data-placeholder="subadmins" title="<?php p($l->t('Group Admin'))?>"
|
data-placeholder="subadmins" title="<?php p($l->t('Group Admin'))?>"
|
||||||
multiple="multiple">
|
multiple="multiple">
|
||||||
<?php foreach($_["subadmingroups"] as $group): ?>
|
<?php foreach($_["subadmingroups"] as $group): ?>
|
||||||
|
|
|
@ -59,10 +59,11 @@ foreach($accessibleusers as $uid => $displayName) {
|
||||||
$users[] = array(
|
$users[] = array(
|
||||||
"name" => $uid,
|
"name" => $uid,
|
||||||
"displayName" => $displayName,
|
"displayName" => $displayName,
|
||||||
"groups" => join( ", ", /*array_intersect(*/OC_Group::getUserGroups($uid)/*, OC_SubAdmin::getSubAdminsGroups(OC_User::getUser()))*/),
|
"groups" => OC_Group::getUserGroups($uid),
|
||||||
'quota'=>$quota,
|
'quota' => $quota,
|
||||||
'isQuotaUserDefined'=>$isQuotaUserDefined,
|
'isQuotaUserDefined' => $isQuotaUserDefined,
|
||||||
'subadmin'=>implode(', ', OC_SubAdmin::getSubAdminsGroups($uid)));
|
'subadmin' => OC_SubAdmin::getSubAdminsGroups($uid),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach( $accessiblegroups as $i ) {
|
foreach( $accessiblegroups as $i ) {
|
||||||
|
|
Loading…
Reference in New Issue