[FIX] website_forum: fixed karma computation, on first vote the karma was wrongly...
authorThibault Delavallée <tde@openerp.com>
Fri, 11 Jul 2014 14:17:54 +0000 (16:17 +0200)
committerThibault Delavallée <tde@openerp.com>
Fri, 11 Jul 2014 14:46:39 +0000 (16:46 +0200)
addons/website_forum/models/forum.py

index 8d56d41..caa9dff 100644 (file)
@@ -304,11 +304,18 @@ class Vote(osv.Model):
 
     def create(self, cr, uid, vals, context=None):
         vote_id = super(Vote, self).create(cr, uid, vals, context=context)
+        post = self.pool['forum.post'].browse(cr, uid, vals['post_id'], context=context)
+        karma = 0
         if vals.get('vote', '1') == '1':
-            karma = self.pool['forum.forum']._karma_upvote
+            if post.parent_id:
+                karma = self.pool['forum.forum']._karma_gen_upvote_ans
+            else:
+                karma = self.pool['forum.forum']._karma_gen_upvote_quest
         elif vals.get('vote', '1') == '-1':
-            karma = self.pool['forum.forum']._karma_downvote
-        post = self.pool['forum.post'].browse(cr, uid, vals['post_id'], context=context)
+            if post.parent_id:
+                karma = self.pool['forum.forum']._karma_gen_downvote_ans
+            else:
+                karma = self.pool['forum.forum']._karma_gen_downvote_quest
         self.pool['res.users'].add_karma(cr, SUPERUSER_ID, [post.create_uid.id], karma, context=context)
         return vote_id