mirror of
https://github.com/haiwen/seahub.git
synced 2025-04-28 03:10:45 +00:00
[v2] modification for enc repo create
This commit is contained in:
parent
8aa06146d8
commit
6173bad11b
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
@ -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({
|
||||
|
@ -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
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user