From 6173bad11b3dd29d9baf9fcd12b70ebdcbde365b Mon Sep 17 00:00:00 2001 From: llj Date: Mon, 4 Nov 2013 17:55:16 +0800 Subject: [PATCH] [v2] modification for enc repo create --- seahub/forms.py | 28 ++++--------------- seahub/group/views.py | 7 ++--- seahub/templates/snippets/repo_create_js.html | 9 ------ seahub/views/__init__.py | 15 ++++------ 4 files changed, 12 insertions(+), 47 deletions(-) diff --git a/seahub/forms.py b/seahub/forms.py index 499e6c5b65..e92110b0c5 100644 --- a/seahub/forms.py +++ b/seahub/forms.py @@ -54,16 +54,6 @@ class RepoCreateForm(forms.Form): 'max_length': _(u'Description is too long (maximum is 100 characters)') }) encryption = forms.CharField(max_length=1) - passwd = forms.CharField(min_length=3, max_length=30, required=False, - error_messages={ - 'min_length': _(u'Password is too short (minimum is 3 characters)'), - 'max_length': _(u'Password is too long (maximum is 30 characters)'), - }) - passwd_again = forms.CharField(min_length=3, max_length=30, required=False, - error_messages={ - 'min_length': _(u'Password is too short (minimum is 3 characters)'), - 'max_length': _(u'Password is too long (maximum is 30 characters)'), - }) uuid = forms.CharField(required=False) magic_str = forms.CharField(required=False) encrypted_file_key = forms.CharField(required=False) @@ -80,19 +70,11 @@ class RepoCreateForm(forms.Form): if int(encryption) == 0: return self.cleaned_data - if settings.SERVER_CRYPTO: - passwd = self.cleaned_data['passwd'] - passwd_again = self.cleaned_data['passwd_again'] - if not (passwd and passwd_again): - raise forms.ValidationError(_("Password is required")) - if passwd != passwd_again: - raise forms.ValidationError(_("Passwords don't match")) - else: - uuid = self.cleaned_data['uuid'] - magic_str = self.cleaned_data['magic_str'] - encrypted_file_key = self.cleaned_data['encrypted_file_key'] - if not (uuid and magic_str and encrypted_file_key): - raise forms.ValidationError(_("Argument missing")) + uuid = self.cleaned_data['uuid'] + magic_str = self.cleaned_data['magic_str'] + encrypted_file_key = self.cleaned_data['encrypted_file_key'] + if not (uuid and magic_str and encrypted_file_key): + raise forms.ValidationError(_("Argument missing")) return self.cleaned_data diff --git a/seahub/group/views.py b/seahub/group/views.py index 641125bb5c..906ec2c3ca 100644 --- a/seahub/group/views.py +++ b/seahub/group/views.py @@ -936,10 +936,10 @@ def create_group_repo(request, group_id): permission = form.cleaned_data['permission'] encryption = int(form.cleaned_data['encryption']) - passwd = form.cleaned_data['passwd'] uuid = form.cleaned_data['uuid'] magic_str = form.cleaned_data['magic_str'] encrypted_file_key = form.cleaned_data['encrypted_file_key'] + user = request.user.username org, base_template = check_and_get_org_by_group(group.id, user) @@ -976,10 +976,7 @@ def create_group_repo(request, group_id): if not encryption: repo_id = seafile_api.create_repo(repo_name, repo_desc, user, None) else: - if SERVER_CRYPTO: - repo_id = seafile_api.create_repo(repo_name, repo_desc, user, passwd) - else: - repo_id = seafile_api.create_enc_repo(uuid, repo_name, repo_desc, user, magic_str, encrypted_file_key, enc_version=2) + repo_id = seafile_api.create_enc_repo(uuid, repo_name, repo_desc, user, magic_str, encrypted_file_key, enc_version=2) except SearpcError, e: repo_id = None diff --git a/seahub/templates/snippets/repo_create_js.html b/seahub/templates/snippets/repo_create_js.html index df37e8510f..f00c97278c 100644 --- a/seahub/templates/snippets/repo_create_js.html +++ b/seahub/templates/snippets/repo_create_js.html @@ -63,7 +63,6 @@ $('#repo-create-form').submit(function() { return false; } - {% if not server_crypto %} // gen uu_id as new repo_id var uu_id = uuid.v4(); @@ -71,7 +70,6 @@ $('#repo-create-form').submit(function() { var fileKey = new FileKey(passwd); var encrypted_file_key = fileKey.gen_enc(); - {% endif %} } var submit_btn = $('input[type="submit"]', form); @@ -89,18 +87,11 @@ $('#repo-create-form').submit(function() { {% endif %} if (encrypted) { - {% if server_crypto %} - $.extend(post_data, { - 'passwd': passwd, - 'passwd_again': passwd_again - }); - {% else %} $.extend(post_data, { 'uuid': uu_id, 'magic_str': magic_str, 'encrypted_file_key': encrypted_file_key }); - {% endif %} } $.ajax({ diff --git a/seahub/views/__init__.py b/seahub/views/__init__.py index d51c127431..391a523bae 100644 --- a/seahub/views/__init__.py +++ b/seahub/views/__init__.py @@ -1116,20 +1116,17 @@ def public_repo_create(request): permission = form.cleaned_data['permission'] encryption = int(form.cleaned_data['encryption']) - passwd = form.cleaned_data['passwd'] uuid = form.cleaned_data['uuid'] magic_str = form.cleaned_data['magic_str'] encrypted_file_key = form.cleaned_data['encrypted_file_key'] + user = request.user.username try: if not encryption: repo_id = seafile_api.create_repo(repo_name, repo_desc, user, None) else: - if SERVER_CRYPTO: - repo_id = seafile_api.create_repo(repo_name, repo_desc, user, passwd) - else: - repo_id = seafile_api.create_enc_repo(uuid, repo_name, repo_desc, user, magic_str, encrypted_file_key, enc_version=2) + repo_id = seafile_api.create_enc_repo(uuid, repo_name, repo_desc, user, magic_str, encrypted_file_key, enc_version=2) # set this repo as inner pub seafile_api.add_inner_pub_repo(repo_id, permission) @@ -1393,19 +1390,17 @@ def repo_create(request): repo_desc = form.cleaned_data['repo_desc'] encryption = int(form.cleaned_data['encryption']) - passwd = form.cleaned_data['passwd'] uuid = form.cleaned_data['uuid'] magic_str = form.cleaned_data['magic_str'] encrypted_file_key = form.cleaned_data['encrypted_file_key'] + user = request.user.username + try: if not encryption: repo_id = seafile_api.create_repo(repo_name, repo_desc, user, None) else: - if SERVER_CRYPTO: - repo_id = seafile_api.create_repo(repo_name, repo_desc, user, passwd) - else: - repo_id = seafile_api.create_enc_repo(uuid, repo_name, repo_desc, user, magic_str, encrypted_file_key, enc_version=2) + repo_id = seafile_api.create_enc_repo(uuid, repo_name, repo_desc, user, magic_str, encrypted_file_key, enc_version=2) except SearpcError, e: repo_id = None