diff -ur l10n_server_orig/l10n_community/l10n_community.module l10n_server/l10n_community/l10n_community.module
--- l10n_server_orig/l10n_community/l10n_community.module	2011-10-14 11:41:32.000000000 +0200
+++ l10n_server/l10n_community/l10n_community.module	2011-10-16 09:10:28.000000000 +0200
@@ -342,6 +342,27 @@
       drupal_add_css(drupal_get_path('module', 'l10n_community') . '/l10n_community-rtl.css', 'module');
     }
   }
+
+  if (module_exists('l10n_groups')) {
+    global $user;
+    $global_permission = array(
+      'start over packages',
+    );
+    $args = $global_permission;
+    array_unshift($args, $user->uid);
+    if ($result = db_query("SELECT o.rid, r.name FROM {og_users_roles} o INNER JOIN {role} r ON r.rid = o.rid INNER JOIN {permission} p ON p.rid = r.rid WHERE o.uid = %d AND p.perm IN (" . db_placeholders($global_permission, 'text') . ")", $args)) {
+      $reset = FALSE;
+      while ($role = db_fetch_object($result)) {
+        if (!array_key_exists($role->rid, $user->roles)) {
+          $reset = TRUE;
+          $user->roles[$role->rid] = $role->name;
+        }
+      }
+      if ($reset) {
+        user_access(NULL, $user, TRUE);
+      }
+    }
+  }
 }
 
 /**
