summaryrefslogtreecommitdiff
path: root/activity/xmlrpc/StartActivity.py
diff options
context:
space:
mode:
Diffstat (limited to 'activity/xmlrpc/StartActivity.py')
-rw-r--r--activity/xmlrpc/StartActivity.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/activity/xmlrpc/StartActivity.py b/activity/xmlrpc/StartActivity.py
new file mode 100644
index 0000000..b5e52c7
--- /dev/null
+++ b/activity/xmlrpc/StartActivity.py
@@ -0,0 +1,19 @@
1import xmlrpclib
2from .._activitybase import ActivityAction
3
4
5def execute(self, pagename, description):
6 action = ActivityAction(self._instr(pagename), self.request)
7
8 if not action.page.exists():
9 return self.noSuchPageFault()
10
11 if not self.request.user.may.write(pagename):
12 return self.notAllowedFault()
13
14 if not action.can_use_activity:
15 return xmlrpclib.Fault(1, "This page does not support activities.")
16
17 action.start_activity(self._instr(description))
18
19 return self._outstr('OK')