]> git.openstreetmap.org Git - osqa.git/blobdiff - forum/actions/node.py
Closing OSQA 91. Give admins a way to make users new admins or moderators.
[osqa.git] / forum / actions / node.py
index be386facd8d640aaba0eba19437450496c138f5b..931b6e1ce4572788519bba7c2a639de5c59d557e 100644 (file)
@@ -67,9 +67,13 @@ class ReviseAction(NodeEditAction):
 \r
     def process_data(self, **data):\r
         revision_data = self.create_revision_data(**data)\r
-        revision = self.node.create_revision(self.user, action=self, **revision_data)\r
+        revision = self.node.create_revision(self.user, **revision_data)\r
         self.extra = revision.revision\r
 \r
+    def process_action(self):\r
+        self.node.last_edited = self\r
+        self.node.save()\r
+\r
     def describe(self, viewer=None):\r
         return _("%(user)s edited %(post_desc)s") % {\r
             'user': self.hyperlink(self.user.get_profile_url(), self.friendly_username(viewer, self.user)),\r
@@ -85,7 +89,12 @@ class RetagAction(ActionProxy):
     def process_data(self, tagnames=''):\r
         active = self.node.active_revision\r
         revision_data = dict(summary=_('Retag'), title=active.title, tagnames=strip_tags(tagnames.strip()), body=active.body)\r
-        self.node.create_revision(self.user, action=self, **revision_data)\r
+        revision = self.node.create_revision(self.user, **revision_data)\r
+        self.extra = revision.revision\r
+\r
+    def process_action(self):\r
+        self.node.last_edited = self\r
+        self.node.save()\r
 \r
     def describe(self, viewer=None):\r
         return _("%(user)s retagged %(post_desc)s") % {\r
@@ -101,9 +110,13 @@ class RollbackAction(ActionProxy):
 \r
     def process_data(self, activate=None):\r
         previous = self.node.active_revision\r
-        self.node.activate_revision(self.user, activate, self)\r
+        self.node.activate_revision(self.user, activate)\r
         self.extra = "%d:%d" % (previous.revision, activate.revision)\r
 \r
+    def process_action(self):\r
+        self.node.last_edited = self\r
+        self.node.save()\r
+\r
     def describe(self, viewer=None):\r
         revisions = [NodeRevision.objects.get(node=self.node, revision=int(n)) for n in self.extra.split(':')]\r
 \r
@@ -123,12 +136,12 @@ class CloseAction(ActionProxy):
     def process_action(self):\r
         self.node.extra_action = self\r
         self.node.marked = True\r
-        self.node.save()\r
+        self.node.update_last_activity(self.user, save=True)\r
 \r
     def cancel_action(self):\r
         self.node.extra_action = None\r
         self.node.marked = False\r
-        self.node.save()\r
+        self.node.update_last_activity(self.user, save=True)\r
 \r
     def describe(self, viewer=None):\r
         return _("%(user)s closed %(post_desc)s: %(reason)s") % {\r