@@ -171,11 +171,15 @@ public function onDisable() {
171
171
public function discussionsController_beforeDiscussionMetaData_handler ($ sender , $ args ){
172
172
if ($ args ['Discussion ' ]) {
173
173
$ discussion = $ args ['Discussion ' ];
174
- if ($ discussion ->GroupID ) {
175
- $ result = '/group/ ' . $ discussion ->GroupID ;
174
+ $ groupModel = new GroupModel ();
175
+ $ groupID = $ groupModel ->findGroupIDFromDiscussion ($ discussion );
176
+ GroupsPlugin::log ('discussionsController_beforeDiscussionMetaData_handler ' , [
177
+ 'GroupID ' => $ groupID ]);
178
+ if ($ groupID ) {
179
+ $ result = '/group/ ' . $ groupID ;
176
180
$ url = url ($ result , true );
177
- $ groupModel = new GroupModel ();
178
- $ group = $ groupModel ->getByGroupID ($ discussion -> GroupID );
181
+
182
+ $ group = $ groupModel ->getByGroupID ($ groupID );
179
183
echo '<div class="Meta Meta-Discussion Group-Info"> ' .
180
184
'<span class="MItem "> ' .
181
185
'<span class="label">Challenge: </span> ' .
@@ -240,11 +244,13 @@ public function settingsController_groups_create($sender) {
240
244
241
245
public function discussionController_render_before ($ sender , $ args ) {
242
246
$ Discussion = $ sender ->data ('Discussion ' );
243
- if ($ Discussion && $ Discussion -> GroupID != null ) {
247
+ if ($ Discussion ) {
244
248
$ groupModel = new GroupModel ();
245
249
$ currentTopcoderProjectRoles = $ sender ->Data ['ChallengeCurrentUserProjectRoles ' ];
246
250
$ groupModel ->setCurrentUserTopcoderProjectRoles ($ currentTopcoderProjectRoles );
247
- $ Group = $ groupModel ->getByGroupID ($ Discussion ->GroupID );
251
+ $ groupID = $ groupModel ->findGroupIDFromDiscussion ($ Discussion );
252
+ self ::log ('discussionController_render_before:GroupID= ' .$ groupID , []);
253
+ $ Group = $ groupModel ->getByGroupID ($ groupID );
248
254
if (!$ groupModel ->canView ($ Group )) {
249
255
throw permissionException ();
250
256
}
@@ -324,15 +330,6 @@ public function base_discussionOptionsDropdown_handler($sender, $args){
324
330
}
325
331
}
326
332
327
- /*
328
- public function discussionsController_afterDiscussionFilters_handler($sender){
329
- $this->addGroupLinkToMenu();
330
- }
331
-
332
- public function discussionController_afterDiscussionFilters_handler($sender){
333
- $this->addGroupLinkToMenu();
334
- }
335
- */
336
333
public function base_afterDiscussionFilters_handler ($ sender ){
337
334
$ this ->addGroupLinkToMenu ($ sender );
338
335
}
@@ -362,9 +359,9 @@ public function base_categoryOptionsDropdown_handler($sender, $args) {
362
359
*/
363
360
public function discussionController_discussionInfo_handler ($ sender , $ args ) {
364
361
if ($ sender ->Data ['Discussion ' ]) {
365
- $ groupID = $ sender ->Data ['Discussion ' ]->GroupID ;
362
+ $ groupModel = new GroupModel ();
363
+ $ groupID = $ groupModel ->findGroupIDFromDiscussion ($ sender ->Data ['Discussion ' ]);
366
364
if ($ groupID ) {
367
- $ groupModel = new GroupModel ();
368
365
$ group = $ groupModel ->getByGroupID ($ groupID );
369
366
if ($ group ->ChallengeUrl ) {
370
367
echo anchor ($ group ->Name , $ group ->ChallengeUrl );
@@ -381,10 +378,12 @@ public function postController_afterDiscussionSave_handler($sender, $args) {
381
378
return ;
382
379
}
383
380
$ discussion = $ args ['Discussion ' ];
381
+ $ groupModel = new GroupModel ();
382
+ $ groupID = $ groupModel ->findGroupIDFromDiscussion ($ discussion );
384
383
if ($ sender ->deliveryType () == DELIVERY_TYPE_ALL ) {
385
- redirectTo (GroupsPlugin::GROUP_ROUTE .$ discussion -> GroupID );
384
+ redirectTo (GroupsPlugin::GROUP_ROUTE .$ groupID );
386
385
} else {
387
- $ sender ->setRedirectTo (GroupsPlugin::GROUP_ROUTE .$ discussion -> GroupID );
386
+ $ sender ->setRedirectTo (GroupsPlugin::GROUP_ROUTE .$ groupID );
388
387
}
389
388
}
390
389
0 commit comments