Merge branch 'permission_scheme'
This commit is contained in:
commit
6100f9eef2
@ -35,6 +35,7 @@ allow_reporting = true
|
|||||||
## If you want the terms of service displayed, you can uncomment this
|
## If you want the terms of service displayed, you can uncomment this
|
||||||
# show_tos = true
|
# show_tos = true
|
||||||
|
|
||||||
|
user_privilege_scheme = "uploader,commenter,reporter"
|
||||||
[storage:queuestore]
|
[storage:queuestore]
|
||||||
base_dir = %(here)s/user_dev/media/queue
|
base_dir = %(here)s/user_dev/media/queue
|
||||||
|
|
||||||
|
@ -25,7 +25,6 @@ def create_user(register_form):
|
|||||||
results = hook_runall("auth_create_user", register_form)
|
results = hook_runall("auth_create_user", register_form)
|
||||||
return results[0]
|
return results[0]
|
||||||
|
|
||||||
|
|
||||||
def extra_validation(register_form):
|
def extra_validation(register_form):
|
||||||
from mediagoblin.auth.tools import basic_extra_validation
|
from mediagoblin.auth.tools import basic_extra_validation
|
||||||
|
|
||||||
|
@ -132,11 +132,7 @@ def register_user(request, register_form):
|
|||||||
user = auth.create_user(register_form)
|
user = auth.create_user(register_form)
|
||||||
|
|
||||||
# give the user the default privileges
|
# give the user the default privileges
|
||||||
default_privileges = [
|
user.all_privileges += get_default_privileges(user)
|
||||||
Privilege.query.filter(Privilege.privilege_name==u'commenter').first(),
|
|
||||||
Privilege.query.filter(Privilege.privilege_name==u'uploader').first(),
|
|
||||||
Privilege.query.filter(Privilege.privilege_name==u'reporter').first()]
|
|
||||||
user.all_privileges += default_privileges
|
|
||||||
user.save()
|
user.save()
|
||||||
|
|
||||||
# log the user in
|
# log the user in
|
||||||
@ -151,6 +147,14 @@ def register_user(request, register_form):
|
|||||||
|
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
def get_default_privileges(user):
|
||||||
|
instance_privilege_scheme = mg_globals.app_config['user_privilege_scheme']
|
||||||
|
default_privileges = [Privilege.query.filter(
|
||||||
|
Privilege.privilege_name==privilege_name).first()
|
||||||
|
for privilege_name in instance_privilege_scheme.split(',')]
|
||||||
|
default_privileges = [privilege for privilege in default_privileges if not privilege == None]
|
||||||
|
|
||||||
|
return default_privileges
|
||||||
|
|
||||||
def check_login_simple(username, password):
|
def check_login_simple(username, password):
|
||||||
user = auth.get_user(username=username)
|
user = auth.get_user(username=username)
|
||||||
|
@ -89,6 +89,9 @@ upload_limit = integer(default=None)
|
|||||||
# Max file size (in Mb)
|
# Max file size (in Mb)
|
||||||
max_file_size = integer(default=None)
|
max_file_size = integer(default=None)
|
||||||
|
|
||||||
|
# Privilege scheme
|
||||||
|
user_privilege_scheme = string(default="uploader,commenter,reporter")
|
||||||
|
|
||||||
[jinja2]
|
[jinja2]
|
||||||
# Jinja2 supports more directives than the minimum required by mediagoblin.
|
# Jinja2 supports more directives than the minimum required by mediagoblin.
|
||||||
# This setting allows users creating custom templates to specify a list of
|
# This setting allows users creating custom templates to specify a list of
|
||||||
|
Loading…
x
Reference in New Issue
Block a user