diff --git a/Topcoder/class.topcoder.plugin.php b/Topcoder/class.topcoder.plugin.php index 557519a..7962e57 100644 --- a/Topcoder/class.topcoder.plugin.php +++ b/Topcoder/class.topcoder.plugin.php @@ -852,16 +852,25 @@ function gdn_dispatcher_beforeControllerMethod_handler($sender, $args){ $groupID = $category->GroupID; } } - } else if($args['Controller'] instanceof Groupcontroller) { + } else if($args['Controller'] instanceof GroupController) { if (array_key_exists('groupid', $methodArgs)) { $groupID = (int) $methodArgs['groupid']; } + } else if($args['Controller'] instanceof PostController) { + if (array_key_exists('commentid', $methodArgs)) { + $commentID = $methodArgs['commentid']; + $commentModel = new CommentModel(); + $comment = $commentModel->getID($commentID); + $discussionModel = new DiscussionModel(); + $discussion = $discussionModel->getID($comment->DiscussionID); + if($discussion->CategoryID){ + $categoryModel = new CategoryModel(); + $category = $categoryModel->getID($discussion->CategoryID); + $groupID = $category->GroupID; + } + } } - //} else if($args instanceof CategoriesController) { - //TODO - //} else if ( $args instanceof CategoryController) { - //TODO - //} + if($groupID && $groupID > 0) { $groupModel = new GroupModel(); $group = $groupModel->getByGroupID($groupID);