From 49dd4209da0ea06a8b4275d54589335e1231f132 Mon Sep 17 00:00:00 2001 From: Keith Mitchell Date: Tue, 13 Jan 2015 12:38:31 -0800 Subject: [PATCH] OAuth2: Expose leavemoderator, leavecontributor, accept_mod --- r2/r2/controllers/api.py | 4 ++++ r2/r2/models/token.py | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/r2/r2/controllers/api.py b/r2/r2/controllers/api.py index 1767fa4b8..23b158fd6 100644 --- a/r2/r2/controllers/api.py +++ b/r2/r2/controllers/api.py @@ -682,6 +682,7 @@ class ApiController(RedditController): """ return self._handle_register(*args, **kwargs) + @require_oauth2_scope("modself") @noresponse(VUser(), VModhash(), container = VByName('id')) @@ -697,6 +698,7 @@ class ApiController(RedditController): ModAction.create(container, c.user, 'removemoderator', target=c.user, details='remove_self') + @require_oauth2_scope("modself") @noresponse(VUser(), VModhash(), container = VByName('id')) @@ -836,6 +838,7 @@ class ApiController(RedditController): if type in ('banned', 'wikibanned'): container.unschedule_unban(victim, type) + @require_oauth2_scope("modothers") @validatedForm(VSrModerator(), VModhash(), target=VExistingUname('name'), type_and_permissions=VPermissions('type', 'permissions')) @@ -1096,6 +1099,7 @@ class ApiController(RedditController): return c.site.add_rel_note(type[:-4], user, note) + @require_oauth2_scope("modself") @validatedForm(VUser(), VModhash()) @api_doc(api_section.moderation, uses_site=True) diff --git a/r2/r2/models/token.py b/r2/r2/models/token.py index be02f8d47..c2d3e75f4 100644 --- a/r2/r2/models/token.py +++ b/r2/r2/models/token.py @@ -184,6 +184,16 @@ class OAuth2Scope: "Invite or remove other moderators from subreddits I moderate." ), }, + "modself": { + "id": "modself", + "name": _("Make changes to your subreddit moderator " + "and contributor status"), + "description": _( + "Accept invitations to moderate a subreddit. Remove myself as " + "a moderator or contributor of subreddits I moderate or " + "contribute to." + ), + }, "modtraffic": { "id": "modtraffic", "name": _("Subreddit Traffic"),