? .buildpath
? .project
? .settings
? i18n-371181-14.patch
Index: og.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/og/Attic/og.module,v
retrieving revision 1.628.4.7
diff -u -p -r1.628.4.7 og.module
--- og.module	29 May 2009 02:14:52 -0000	1.628.4.7
+++ og.module	29 May 2009 23:30:37 -0000
@@ -580,6 +580,10 @@ function og_set_group_context($node = NU
   }
 
   if (!empty($node) && og_is_group_type($node->type)) {
+    // Translated group nodes refer to their translation source as group node.
+    if (!empty($node->tnid) && $node->tnid != $node->nid) {
+      $node = node_load($node->tnid);
+    }
     $stored_group_node = $node;
   }
   return !empty($stored_group_node) ? $stored_group_node : NULL;
@@ -1204,7 +1208,8 @@ function og_nodeapi(&$node, $op, $teaser
       db_query($sql, $node->nid);
       break;
     case 'insert':
-      if (og_is_group_type($node->type)) {
+      // Translated group nodes won't be treated as groups because we only use the translation source as group.
+      if (og_is_group_type($node->type) && empty($node->translation_source)) {
         og_insert_group($node);
         // Make sure the node owner is a full powered member.
         og_save_subscription($node->nid, $node->uid, array('is_active' => 1, 'is_admin' => 1));
@@ -1237,7 +1242,8 @@ function og_nodeapi(&$node, $op, $teaser
       }
       break;
     case 'update':
-      if (og_is_group_type($node->type)) {
+      // Translated group nodes won't be treated as groups because we only use the translation source as group.
+      if (og_is_group_type($node->type) && !(isset($node->tnid) && $node->tnid != 0 && $node->tnid != $node->nid)) {
         og_update_group($node);
         // make sure the node owner is a full powered member
         og_save_subscription($node->nid, $node->uid, array('is_active' => 1, 'is_admin' => 1));
