Deletes Group Clientside Effectively.

This commit is contained in:
raghunayyar 2014-01-30 21:18:18 +05:30 committed by Arthur Schiwon
parent ce46cd3680
commit 71160ff853
3 changed files with 59 additions and 2 deletions

View File

@ -51,7 +51,11 @@ table.nostyle label { margin-right: 2em; }
table.nostyle td { padding: 0.2em 0; }
/* USERS */
.usercount { float: right; margin:6px;}
.usercount { float: left; margin: 5px; }
span.utils .delete {
float: left; position: relative;
margin: 3px; top: 4px;
}
form { display:inline; }
table.grid th { height:2em; color:#999; }
table.grid th, table.grid td { border-bottom:1px solid #ddd; padding:0 .5em; padding-left:.8em; text-align:left; font-weight:normal; }

View File

@ -16,6 +16,48 @@ function setQuota (uid, quota, ready) {
);
}
var GroupList = {
delete_group: function (gid) {
if(GroupList.deleteGid !=='undefined') {
GroupList.finishDelete(null);
}
//Set the undo flag
GroupList.deleteCanceled = false;
//Provide an option to undo
$('#notification').data('deletegroup', true);
OC.Notification.showHtml(t('settings', 'deleted') + ' ' + escapeHTML(gid) + '<span class="undo">' + t('settings', 'undo') + '</span>');
},
finishDelete: function (ready) {
if (!GroupList.deleteCanceled && GroupList.deleteGid) {
$.ajax({
type: 'POST',
url: OC.filePath('settings', 'ajax', 'removegroup.php'),
async: false,
data: { groupname: GroupList.deleteGid },
success: function (result) {
if (result.status === 'success') {
// Remove undo option, & remove user from table
OC.Notification.hide();
$('li').filterAttr('data-gid', GroupList.deleteGid).remove();
GroupList.deleteCanceled = true;
if (ready) {
ready();
}
} else {
OC.dialogs.alert(result.data.message, t('settings', 'Unable to remove group'));
}
}
});
}
},
}
var UserList = {
useUndo: true,
availableGroups: [],
@ -477,6 +519,14 @@ $(document).ready(function () {
});
});
$('ul').on('click', 'span.utils>a', function (event) {
var li = $(this).parent().parent();
var gid = $(li).attr('data-gid');
$(li).hide();
// Call function for handling delete/undo on Groups
GroupList.delete_group(gid);
});
$('#newuser').submit(function (event) {
event.preventDefault();
var username = $('#newusername').val();

View File

@ -30,10 +30,13 @@ $_['subadmingroups'] = array_flip($items);
</li>
<!--List of Groups-->
<?php foreach($_["groups"] as $group): ?>
<li>
<li data-gid="<?php p($group['name']) ?>">
<a href="#"><?php p($group['name']); ?></a>
<span class="utils">
<span class="usercount"><?php p(count($group['useringroup'])); ?></span>
<a href="#" class="action delete" original-title="<?php p($l->t('Delete'))?>">
<img src="<?php print_unescaped(image_path('core', 'actions/delete.svg')) ?>" class="svg" />
</a>
</span>
</li>
<?php endforeach; ?>