summaryrefslogtreecommitdiff
path: root/activity/xmlrpc/StopActivity.py
blob: b26d8dd0d0df11249b9b66c751014bb42ec6b36f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import xmlrpclib
from .._activitybase import ActivityAction


def execute(self, pagename):
    action = ActivityAction(self._instr(pagename), self.request)

    if not action.page.exists():
        return self.noSuchPageFault()

    if not self.request.user.may.write(pagename):
        return self.notAllowedFault()

    if not action.can_use_activity:
        return xmlrpclib.Fault(1, "This page does not support activities.")

    action.stop_activity()

    return self._outstr('OK')