mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-08 02:10:24 +00:00
remove 'file private share' & 'private shared files'
This commit is contained in:
@@ -5,7 +5,6 @@ from views import *
|
|||||||
urlpatterns = patterns('',
|
urlpatterns = patterns('',
|
||||||
url(r'^$', list_shared_repos, name='share_admin'),
|
url(r'^$', list_shared_repos, name='share_admin'),
|
||||||
url(r'^links/$', list_shared_links, name='list_shared_links'),
|
url(r'^links/$', list_shared_links, name='list_shared_links'),
|
||||||
url(r'^files/$', list_priv_shared_files, name='list_priv_shared_files'),
|
|
||||||
url(r'^folders/$', list_priv_shared_folders, name='list_priv_shared_folders'),
|
url(r'^folders/$', list_priv_shared_folders, name='list_priv_shared_folders'),
|
||||||
url(r'^folders/(?P<repo_id>[-0-9a-f]{36})/$', view_priv_shared_folder, name='view_priv_shared_folder'),
|
url(r'^folders/(?P<repo_id>[-0-9a-f]{36})/$', view_priv_shared_folder, name='view_priv_shared_folder'),
|
||||||
|
|
||||||
@@ -36,6 +35,5 @@ urlpatterns = patterns('',
|
|||||||
url(r'^ajax/repo_remove_share/$', ajax_repo_remove_share, name='ajax_repo_remove_share'),
|
url(r'^ajax/repo_remove_share/$', ajax_repo_remove_share, name='ajax_repo_remove_share'),
|
||||||
url(r'^ajax/get-download-link/$', ajax_get_download_link, name='ajax_get_download_link'),
|
url(r'^ajax/get-download-link/$', ajax_get_download_link, name='ajax_get_download_link'),
|
||||||
url(r'^ajax/get-upload-link/$', ajax_get_upload_link, name='ajax_get_upload_link'),
|
url(r'^ajax/get-upload-link/$', ajax_get_upload_link, name='ajax_get_upload_link'),
|
||||||
url(r'^ajax/private-share-file/$', ajax_private_share_file, name='ajax_private_share_file'),
|
|
||||||
url(r'^ajax/private-share-dir/$', ajax_private_share_dir, name='ajax_private_share_dir'),
|
url(r'^ajax/private-share-dir/$', ajax_private_share_dir, name='ajax_private_share_dir'),
|
||||||
)
|
)
|
||||||
|
@@ -583,29 +583,6 @@ def list_shared_links(request):
|
|||||||
"uploadlinks": p_uploadlinks,
|
"uploadlinks": p_uploadlinks,
|
||||||
}, context_instance=RequestContext(request))
|
}, context_instance=RequestContext(request))
|
||||||
|
|
||||||
@login_required
|
|
||||||
@user_mods_check
|
|
||||||
def list_priv_shared_files(request):
|
|
||||||
"""List private shared files.
|
|
||||||
"""
|
|
||||||
username = request.user.username
|
|
||||||
|
|
||||||
# Private share out/in files.
|
|
||||||
priv_share_out = PrivateFileDirShare.objects.list_private_share_out_by_user(username)
|
|
||||||
for e in priv_share_out:
|
|
||||||
e.file_or_dir = os.path.basename(e.path.rstrip('/'))
|
|
||||||
e.repo = seafile_api.get_repo(e.repo_id)
|
|
||||||
|
|
||||||
priv_share_in = PrivateFileDirShare.objects.list_private_share_in_by_user(username)
|
|
||||||
for e in priv_share_in:
|
|
||||||
e.file_or_dir = os.path.basename(e.path.rstrip('/'))
|
|
||||||
e.repo = seafile_api.get_repo(e.repo_id)
|
|
||||||
|
|
||||||
return render_to_response('share/priv_shared_files.html', {
|
|
||||||
"priv_share_out": priv_share_out,
|
|
||||||
"priv_share_in": priv_share_in,
|
|
||||||
}, context_instance=RequestContext(request))
|
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
@user_mods_check
|
@user_mods_check
|
||||||
def list_priv_shared_folders(request):
|
def list_priv_shared_folders(request):
|
||||||
@@ -1598,38 +1575,3 @@ def ajax_private_share_dir(request):
|
|||||||
# for case: only share to users and the emails are not valid
|
# for case: only share to users and the emails are not valid
|
||||||
data = json.dumps({"error": _("Please check the email(s) you entered")})
|
data = json.dumps({"error": _("Please check the email(s) you entered")})
|
||||||
return HttpResponse(data, status=400, content_type=content_type)
|
return HttpResponse(data, status=400, content_type=content_type)
|
||||||
|
|
||||||
@login_required_ajax
|
|
||||||
@require_POST
|
|
||||||
def ajax_private_share_file(request):
|
|
||||||
content_type = 'application/json; charset=utf-8'
|
|
||||||
|
|
||||||
emails_string = request.POST.get('emails', '')
|
|
||||||
repo_id = request.POST.get('repo_id', '')
|
|
||||||
path = request.POST.get('path', '')
|
|
||||||
username = request.user.username
|
|
||||||
emails = emails_string.split(',')
|
|
||||||
|
|
||||||
shared_success, shared_failed = [], []
|
|
||||||
|
|
||||||
for email in [e.strip() for e in emails if e.strip()]:
|
|
||||||
if not is_valid_username(email):
|
|
||||||
shared_failed.append(email)
|
|
||||||
continue
|
|
||||||
|
|
||||||
if not is_registered_user(email):
|
|
||||||
shared_failed.append(email)
|
|
||||||
continue
|
|
||||||
|
|
||||||
pfds = PrivateFileDirShare.objects.add_read_only_priv_file_share(username, email, repo_id, path)
|
|
||||||
shared_success.append(email)
|
|
||||||
|
|
||||||
# send a signal when sharing file successful
|
|
||||||
share_file_to_user_successful.send(sender=None, priv_share_obj=pfds)
|
|
||||||
|
|
||||||
if len(shared_success) > 0:
|
|
||||||
data = json.dumps({"shared_success": shared_success, "shared_failed": shared_failed})
|
|
||||||
return HttpResponse(data, content_type=content_type)
|
|
||||||
else:
|
|
||||||
data = json.dumps({"error": _("Please check the email(s) you entered")})
|
|
||||||
return HttpResponse(data, status=400, content_type=content_type)
|
|
||||||
|
@@ -445,17 +445,6 @@
|
|||||||
<% } %>
|
<% } %>
|
||||||
<% } %>
|
<% } %>
|
||||||
|
|
||||||
<% if (!is_dir && is_repo_owner) { %>
|
|
||||||
<div id="file-private-share" class="tabs-panel hide">
|
|
||||||
<form id="file-private-share-form" action="" class="hide">
|
|
||||||
<label>{% trans "People:" %}</label><br />
|
|
||||||
<input type="hidden" name="emails" class="w100" /><br />
|
|
||||||
<p class="error hide"></p>
|
|
||||||
<input type="submit" value="{% trans "Submit" %}" />
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
<% } %>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</script>
|
</script>
|
||||||
|
@@ -37,9 +37,6 @@ define([
|
|||||||
if (!this.repo_encrypted) {
|
if (!this.repo_encrypted) {
|
||||||
this.downloadLinkPanelInit();
|
this.downloadLinkPanelInit();
|
||||||
}
|
}
|
||||||
if (!this.is_dir && this.is_repo_owner) {
|
|
||||||
this.filePrivateSharePanelInit();
|
|
||||||
}
|
|
||||||
if (this.is_dir) {
|
if (this.is_dir) {
|
||||||
if (this.user_perm == 'rw' && !this.repo_encrypted) {
|
if (this.user_perm == 'rw' && !this.repo_encrypted) {
|
||||||
this.uploadLinkPanelInit();
|
this.uploadLinkPanelInit();
|
||||||
@@ -410,54 +407,6 @@ define([
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
filePrivateSharePanelInit: function() {
|
|
||||||
var form = this.$('#file-private-share-form');
|
|
||||||
|
|
||||||
$('[name="emails"]', form).select2($.extend({
|
|
||||||
width: '400px'
|
|
||||||
},Common.contactInputOptionsForSelect2()));
|
|
||||||
|
|
||||||
form.removeClass('hide');
|
|
||||||
},
|
|
||||||
|
|
||||||
filePrivateShare: function () {
|
|
||||||
var form = this.$('#file-private-share-form'),
|
|
||||||
form_id = form.attr('id');
|
|
||||||
|
|
||||||
var emails = $('[name="emails"]', form).val();
|
|
||||||
if (!emails) {
|
|
||||||
Common.showFormError(form_id, gettext("It is required."));
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
var post_data = {
|
|
||||||
'repo_id': this.repo_id,
|
|
||||||
'path': this.dirent_path,
|
|
||||||
'emails': emails
|
|
||||||
};
|
|
||||||
var post_url = Common.getUrl({name: 'private_share_file'});
|
|
||||||
var after_op_success = function (data) {
|
|
||||||
$.modal.close();
|
|
||||||
var msg = gettext("Successfully shared to {placeholder}")
|
|
||||||
.replace('{placeholder}', Common.HTMLescape(data['shared_success'].join(', ')));
|
|
||||||
Common.feedback(msg, 'success');
|
|
||||||
if (data['shared_failed'].length > 0) {
|
|
||||||
msg += '<br />' + gettext("Failed to share to {placeholder}")
|
|
||||||
.replace('{placeholder}', Common.HTMLescape(data['shared_failed'].join(', ')));
|
|
||||||
Common.feedback(msg, 'info');
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
Common.ajaxPost({
|
|
||||||
'form': form,
|
|
||||||
'post_url': post_url,
|
|
||||||
'post_data': post_data,
|
|
||||||
'after_op_success': after_op_success,
|
|
||||||
'form_id': form_id
|
|
||||||
});
|
|
||||||
return false;
|
|
||||||
},
|
|
||||||
|
|
||||||
dirPrivateSharePanelInit: function() {
|
dirPrivateSharePanelInit: function() {
|
||||||
// no 'share to all'
|
// no 'share to all'
|
||||||
var form = this.$('#dir-private-share-form');
|
var form = this.$('#dir-private-share-form');
|
||||||
|
@@ -96,7 +96,6 @@ define([
|
|||||||
case 'delete_shared_upload_link': return siteRoot + 'share/ajax/upload_link/remove/';
|
case 'delete_shared_upload_link': return siteRoot + 'share/ajax/upload_link/remove/';
|
||||||
case 'get_share_upload_link': return siteRoot + 'share/ajax/get-upload-link/';
|
case 'get_share_upload_link': return siteRoot + 'share/ajax/get-upload-link/';
|
||||||
case 'private_share_dir': return siteRoot + 'share/ajax/private-share-dir/';
|
case 'private_share_dir': return siteRoot + 'share/ajax/private-share-dir/';
|
||||||
case 'private_share_file': return siteRoot + 'share/ajax/private-share-file/';
|
|
||||||
case 'get_popup_notices': return siteRoot + 'ajax/get_popup_notices/';
|
case 'get_popup_notices': return siteRoot + 'ajax/get_popup_notices/';
|
||||||
case 'set_notices_seen': return siteRoot + 'ajax/set_notices_seen/';
|
case 'set_notices_seen': return siteRoot + 'ajax/set_notices_seen/';
|
||||||
case 'get_unseen_notices_num': return siteRoot + 'ajax/unseen-notices-count/';
|
case 'get_unseen_notices_num': return siteRoot + 'ajax/unseen-notices-count/';
|
||||||
|
Reference in New Issue
Block a user