1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-21 03:18:23 +00:00

Add admin settings page to edit some configurations. Install django constance by pip install 'django-constance[database]'

This commit is contained in:
zhengxie
2015-08-07 16:08:45 +08:00
committed by lian
parent 82113cddba
commit 49fb5ca174
7 changed files with 77 additions and 11 deletions

View File

@@ -1656,3 +1656,36 @@ def sys_sudo_mode(request):
'enable_shib_login': enable_shib_login,
},
context_instance=RequestContext(request))
@login_required
@sys_staff_required
def sys_settings(request):
"""List and change seahub settings in admin panel.
Arguments:
- `request`:
"""
from constance import config
from seahub.settings import CONSTANCE_CONFIG
if request.method == "POST":
for k in request.POST.keys():
if k == 'csrfmiddlewaretoken':
continue
try:
setattr(config, k, request.POST.get(k))
except AttributeError:
continue
messages.success(request, _('Success'))
return HttpResponseRedirect(reverse('sys_settings'))
config_dict = {}
for k in dir(config):
val = getattr(config, k)
help_text = _(CONSTANCE_CONFIG[k][1])
config_dict[k] = (val, help_text)
return render_to_response('sysadmin/settings.html', {
'config_dict': config_dict,
}, context_instance=RequestContext(request))