1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-08-31 22:54:11 +00:00

create repo online

This commit is contained in:
lins05
2012-07-09 20:56:21 +08:00
parent 774b9a3bc6
commit e1471aa472
4 changed files with 103 additions and 1 deletions

View File

@@ -1514,3 +1514,52 @@ def validate_filename(request):
content_type = 'application/json; charset=utf-8'
return HttpResponse(json.dumps(result), content_type=content_type)
@login_required
def repo_create(request):
############ GET ############
if request.method == 'GET':
return render_to_response('repo_create.html', {
}, context_instance=RequestContext(request))
############ POST ############
repo_name = request.POST.get("repo_name")
repo_desc = request.POST.get("repo_desc")
encrypted = request.POST.get("encryption")
passwd = request.POST.get("passwd")
passwd_again = request.POST.get("passwd_again")
def render_repo_create_error(error_msg):
return render_to_response('repo_create.html', {
'error_msg': error_msg,
'repo_name': repo_name,
'repo_desc': repo_desc,
}, context_instance=RequestContext(request))
error_msg = ""
if not repo_name:
error_msg = u"目录名不能为空"
elif not repo_desc:
error_msg = u"描述不能为空"
elif encrypted == 'on':
if not passwd:
error_msg = u"密码不能为空"
elif not passwd_again:
error_msg = u"确认密码不能为空"
elif len(passwd) > 15:
error_msg = u"密码太长"
elif passwd != passwd_again:
error_msg = u"两次输入的密码不相同"
if error_msg:
return render_repo_create_error(error_msg)
try:
seafserv_threaded_rpc.create_repo(repo_name, repo_desc,
request.user.username, passwd)
except:
error_msg = u"两次输入的密码不相同"
return render_repo_create_error(error_msg)
else:
return HttpResponseRedirect(reverse(myhome))