1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-06-29 16:37:56 +00:00
seahub/utils.py

75 lines
1.8 KiB
Python
Raw Normal View History

2012-05-15 02:59:16 +00:00
#!/usr/bin/env python
# encoding: utf-8
import re
import settings
import time
2012-05-15 02:59:16 +00:00
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.utils.hashcompat import sha_constructor
def go_permission_error(request, msg=None):
"""
2012-06-20 11:39:21 +00:00
Return permisson error page.
2012-05-15 02:59:16 +00:00
"""
return render_to_response('permission_error.html', {
'error_msg': msg or u'权限错误',
}, context_instance=RequestContext(request))
def go_error(request, msg=None):
"""
2012-06-20 11:39:21 +00:00
Return normal error page.
2012-05-15 02:59:16 +00:00
"""
return render_to_response('error.html', {
'error_msg': msg or u'内部错误',
}, context_instance=RequestContext(request))
def list_to_string(l):
"""
2012-06-20 11:39:21 +00:00
Return string of a list.
2012-05-15 02:59:16 +00:00
"""
2012-06-20 11:39:21 +00:00
return ','.join(l)
2012-05-15 02:59:16 +00:00
def get_httpserver_root():
"""
Get seafile http server address and port from settings.py,
2012-06-20 11:39:21 +00:00
and cut out last '/'.
2012-05-15 02:59:16 +00:00
"""
if settings.HTTP_SERVER_ROOT[-1] == '/':
http_server_root = settings.HTTP_SERVER_ROOT[:-1]
else:
http_server_root = settings.HTTP_SERVER_ROOT
return http_server_root
def get_ccnetapplet_root():
"""
Get ccnet applet address and port from settings.py,
2012-06-20 11:39:21 +00:00
and cut out last '/'.
2012-05-15 02:59:16 +00:00
"""
if settings.CCNET_APPLET_ROOT[-1] == '/':
ccnet_applet_root = settings.CCNET_APPLET_ROOT[:-1]
else:
ccnet_applet_root = settings.CCNET_APPLET_ROOT
return ccnet_applet_root
def gen_token():
"""
2012-06-20 11:39:21 +00:00
Generate short token used for owner to access repo file.
2012-05-15 02:59:16 +00:00
"""
2012-06-20 11:39:21 +00:00
token = sha_constructor(settings.SECRET_KEY + unicode(time.time())).hexdigest()[:5]
2012-05-15 02:59:16 +00:00
return token
def validate_group_name(group_name):
"""
Check whether group name is valid.
2012-06-20 11:39:21 +00:00
A valid group name only contains alphanumeric character.
"""
return re.match('^\w+$', group_name, re.U)