aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/auth
diff options
context:
space:
mode:
authortilly-Q <nattilypigeonfowl@gmail.com>2013-11-29 14:29:56 -0500
committertilly-Q <nattilypigeonfowl@gmail.com>2014-04-28 16:37:46 -0400
commit1c7875a18dfdde208f964e82f410edf33b89132b (patch)
treeac11be81d70e866fcfef0a5c1f21999b573005ba /mediagoblin/auth
parente36bb0ee18e1209b747aab4ea4d2539872fd694f (diff)
downloadmediagoblin-1c7875a18dfdde208f964e82f410edf33b89132b.tar.lz
mediagoblin-1c7875a18dfdde208f964e82f410edf33b89132b.tar.xz
mediagoblin-1c7875a18dfdde208f964e82f410edf33b89132b.zip
In this commit I made it so that each deployment can have custom settings for
which privileges are given to users when they are intiated. These settings are modified in mediagoblin.ini.
Diffstat (limited to 'mediagoblin/auth')
-rw-r--r--mediagoblin/auth/__init__.py1
-rw-r--r--mediagoblin/auth/tools.py14
2 files changed, 9 insertions, 6 deletions
diff --git a/mediagoblin/auth/__init__.py b/mediagoblin/auth/__init__.py
index be5d0eed..f518a09d 100644
--- a/mediagoblin/auth/__init__.py
+++ b/mediagoblin/auth/__init__.py
@@ -25,7 +25,6 @@ def create_user(register_form):
results = hook_runall("auth_create_user", register_form)
return results[0]
-
def extra_validation(register_form):
from mediagoblin.auth.tools import basic_extra_validation
diff --git a/mediagoblin/auth/tools.py b/mediagoblin/auth/tools.py
index 88716e1c..191a2b9d 100644
--- a/mediagoblin/auth/tools.py
+++ b/mediagoblin/auth/tools.py
@@ -132,11 +132,7 @@ def register_user(request, register_form):
user = auth.create_user(register_form)
# give the user the default privileges
- default_privileges = [
- 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.all_privileges += get_default_privileges(user)
user.save()
# log the user in
@@ -151,6 +147,14 @@ def register_user(request, register_form):
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):
user = auth.get_user(username=username)