--- og_forum.module	Thu Oct 15 00:49:56 2009
+++ og_forum_working.module	Sat Oct 24 13:29:21 2009
@@ -566,7 +566,7 @@ function og_forum_nodeapi($node, $op, $t
       elseif ($node->type == 'forum') {//if the node is marked public, check the 'puclicity' settings and act accordingly
         //setup variables for common operations
         $sql = "SELECT tid, public FROM {og_term} WHERE nid = %d"; 
-        $container = og_forum_get_forum_container($node->og_groups[0]);
+        $container = og_forum_get_forum_container(current($node->og_groups));
         $gid = og_forum_gid_from_tid($node->tid);
         $results = db_query($sql, $gid);
         while ($result = db_fetch_object($results)) {
@@ -619,7 +619,7 @@ function og_forum_nodeapi($node, $op, $t
       elseif ($node->type == 'forum') {//if the node is marked public, check the 'puclicity' settings and act accordingly
         //setup variables for common operations
         $sql = "SELECT tid, public FROM {og_term} WHERE nid = %d";
-        $container = og_forum_get_forum_container($node->og_groups[0]);
+        $container = og_forum_get_forum_container(current($node->og_groups));
         $gid = og_forum_gid_from_tid($node->tid);
         $results = db_query($sql, $gid);
         while ($result = db_fetch_object($results)) {
@@ -667,26 +667,13 @@ function og_forum_nodeapi($node, $op, $t
       }
       break;
     case 'view':
-      // Don't do anything when handling teasers
-      if ($teaser) {
-        break;
-      }
       // If we're viewing a forum post in a group forum, set that
       // group as the context.
-      if ($page && !empty($node->og_groups) && $node->type == 'forum') {
-        og_set_group_context(node_load($node->og_groups[0]));
-        
-        if (is_numeric($node->tid)) {
-          $tid = $node->tid;
-        }
-        // Breadcrumb navigation:
-        global $_menu;
-        if (og_get_group_context()) { 
-	      _og_forum_set_breadcrumb($tid);  
-        }
-        drupal_set_title(check_plain($node->title));
-        break;
+      if (!empty($page) && isset($node->og_forum_nid)) {
+        $group = node_load($node->og_forum_nid);
+        og_set_group_context($group);
       }
+      break;
    case 'presave':
      if ($node->type == 'forum') {
        $gid = og_forum_gid_from_tid($node->tid);
