aboutsummaryrefslogtreecommitdiff
path: root/server/szurubooru/api/post_api.py
diff options
context:
space:
mode:
authorrr-2016-06-05 10:30:10 +0200
committerrr-2016-06-05 10:30:10 +0200
commit508cb6e7ab0963b318254872362145dda1c3b0df (patch)
treeb71f2efd10bdd4d24babf15f03093780cfe12fad /server/szurubooru/api/post_api.py
parenta20bf56e759924a5c3df1b641a9f023c10d09942 (diff)
server/posts: allow anonymous uploads (#90)
Diffstat (limited to 'server/szurubooru/api/post_api.py')
-rw-r--r--server/szurubooru/api/post_api.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/server/szurubooru/api/post_api.py b/server/szurubooru/api/post_api.py
index c6a2713..1fc38a2 100644
--- a/server/szurubooru/api/post_api.py
+++ b/server/szurubooru/api/post_api.py
@@ -22,7 +22,11 @@ class PostListApi(BaseApi):
ctx, lambda post: _serialize_post(ctx, post))
def post(self, ctx):
- auth.verify_privilege(ctx.user, 'posts:create')
+ anonymous = ctx.get_param_as_bool('anonymous', default=False)
+ if anonymous:
+ auth.verify_privilege(ctx.user, 'posts:create:anonymous')
+ else:
+ auth.verify_privilege(ctx.user, 'posts:create:identified')
content = ctx.get_file('content', required=True)
tag_names = ctx.get_param_as_list('tags', required=True)
safety = ctx.get_param_as_string('safety', required=True)
@@ -33,7 +37,8 @@ class PostListApi(BaseApi):
notes = ctx.get_param_as_list('notes', required=False) or []
flags = ctx.get_param_as_list('flags', required=False) or []
- post = posts.create_post(content, tag_names, ctx.user)
+ post = posts.create_post(
+ content, tag_names, None if anonymous else ctx.user)
posts.update_post_safety(post, safety)
posts.update_post_source(post, source)
posts.update_post_relations(post, relations)

© 2015 - 2026 Jakob L. Kreuze