mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-04 16:31:13 +00:00
filter out address book group when: (#2092)
1. share library/folder 2. set folder permission
This commit is contained in:
@@ -92,7 +92,7 @@ define([
|
||||
$('[name="email"]', $add_user_perm).select2(Common.contactInputOptionsForSelect2());
|
||||
|
||||
// use select2 to 'group' input in 'add group perm'
|
||||
var groups = app.pageOptions.groups || [],
|
||||
var groups = app.pageOptions.joined_groups_exclude_address_book || [],
|
||||
g_opts = '';
|
||||
for (var i = 0, len = groups.length; i < len; i++) {
|
||||
g_opts += '<option value="' + groups[i].id + '" data-index="' + i + '">' + groups[i].name + '</option>';
|
||||
|
@@ -466,7 +466,7 @@ define([
|
||||
width: '400px'
|
||||
},Common.contactInputOptionsForSelect2()));
|
||||
|
||||
var groups = app.pageOptions.groups || [];
|
||||
var groups = app.pageOptions.joined_groups_exclude_address_book || [];
|
||||
var g_opts = '';
|
||||
for (var i = 0, len = groups.length; i < len; i++) {
|
||||
g_opts += '<option value="' + groups[i].id + '" data-index="' + i + '">' + groups[i].name + '</option>';
|
||||
|
@@ -54,6 +54,6 @@ class ShareableGroups(APIView):
|
||||
avatar_size = GROUP_AVATAR_DEFAULT_SIZE
|
||||
|
||||
result = [get_group_info(request, g.id, avatar_size)
|
||||
for g in groups]
|
||||
for g in groups if g.parent_group_id == 0]
|
||||
|
||||
return Response(result)
|
||||
|
@@ -224,6 +224,13 @@ app["pageOptions"] = {
|
||||
{% endfor %}
|
||||
return groups;
|
||||
})(),
|
||||
joined_groups_exclude_address_book: (function () {
|
||||
var groups = [];
|
||||
{% for group in joined_groups_exclude_address_book %}
|
||||
groups.push({'name': '{{group.group_name}}', 'id': '{{group.id}}'});
|
||||
{% endfor %}
|
||||
return groups;
|
||||
})(),
|
||||
library_templates: (function () {
|
||||
var templates = [];
|
||||
{% for template in library_templates %}
|
||||
|
@@ -23,7 +23,7 @@ import seaserv
|
||||
from seaserv import get_repo, get_commits, \
|
||||
seafserv_threaded_rpc, seafserv_rpc, is_repo_owner, \
|
||||
get_file_size, MAX_DOWNLOAD_DIR_SIZE, \
|
||||
seafile_api
|
||||
seafile_api, ccnet_api
|
||||
from pysearpc import SearpcError
|
||||
|
||||
from seahub.avatar.util import get_avatar_file_storage
|
||||
@@ -694,7 +694,7 @@ def libraries(request):
|
||||
org_id = request.user.org.org_id
|
||||
joined_groups = seaserv.get_org_groups_by_user(org_id, username)
|
||||
else:
|
||||
joined_groups = seaserv.get_personal_groups_by_user(username)
|
||||
joined_groups = ccnet_api.get_groups(username, return_ancestors=True)
|
||||
|
||||
if joined_groups:
|
||||
try:
|
||||
@@ -703,6 +703,9 @@ def libraries(request):
|
||||
logger.error(e)
|
||||
joined_groups = []
|
||||
|
||||
joined_groups_exclude_address_book = [item for item in joined_groups if
|
||||
item.parent_group_id == 0]
|
||||
|
||||
return render(request, 'libraries.html', {
|
||||
"allow_public_share": allow_public_share,
|
||||
"guide_enabled": guide_enabled,
|
||||
@@ -723,6 +726,7 @@ def libraries(request):
|
||||
'file_audit_enabled': FILE_AUDIT_ENABLED,
|
||||
'can_add_pub_repo': can_add_pub_repo,
|
||||
'joined_groups': joined_groups,
|
||||
'joined_groups_exclude_address_book': joined_groups_exclude_address_book,
|
||||
'storages': get_library_storages(request),
|
||||
'unread_notifications_request_interval': UNREAD_NOTIFICATIONS_REQUEST_INTERVAL,
|
||||
'library_templates': LIBRARY_TEMPLATES.keys() if \
|
||||
|
@@ -102,7 +102,7 @@ define([
|
||||
placeholder: gettext("Search user or enter email and press Enter") // to override 'placeholder' returned by `Common.conta...`
|
||||
}));
|
||||
} else {
|
||||
var groups = app.pageOptions.groups || [];
|
||||
var groups = app.pageOptions.joined_groups_exclude_address_book || [];
|
||||
var g_opts = '';
|
||||
for (var i = 0, len = groups.length; i < len; i++) {
|
||||
g_opts += '<option value="' + groups[i].id + '" data-index="' + i + '">' + groups[i].name + '</option>';
|
||||
|
@@ -103,7 +103,7 @@ define([
|
||||
$('[name="email"]', this.$add_user_perm).select2(Common.contactInputOptionsForSelect2());
|
||||
|
||||
// use select2 to 'group' input in 'add group perm'
|
||||
var groups = app.pageOptions.groups || [],
|
||||
var groups = app.pageOptions.joined_groups_exclude_address_book || [],
|
||||
g_opts = '';
|
||||
for (var i = 0, len = groups.length; i < len; i++) {
|
||||
g_opts += '<option value="' + groups[i].id + '" data-index="' + i + '">' + groups[i].name + '</option>';
|
||||
|
@@ -714,7 +714,7 @@ define([
|
||||
}
|
||||
});
|
||||
} else {
|
||||
groups = app.pageOptions.groups || [];
|
||||
groups = app.pageOptions.joined_groups_exclude_address_book || [];
|
||||
prepareGroupsSelector();
|
||||
$table.removeClass('hide');
|
||||
}
|
||||
|
Reference in New Issue
Block a user