diff --git a/modules/commons/commons_documents/commons_documents.install b/modules/commons/commons_documents/commons_documents.install
index 3b00af87b24b35e0d7923e681941ee00a9ead35c..ed7eb7724654a0537095b829846edbdb614a0f49 100644
--- a/modules/commons/commons_documents/commons_documents.install
+++ b/modules/commons/commons_documents/commons_documents.install
@@ -1,6 +1,58 @@
 <?php
 
 /**
+ * Implements hook_enable().
+ */
+function commons_documents_enable() {
+  // Revert base documents feature so that the og permissions are (re)created.
+  features_revert(array('commons_documents' => array('og_features_permission', 'field_instance', 'field_base', 'variable', 'views_view', 'node')));
+  return array();
+}
+
+/**
+ * Implements hook_install().
+ * When documents is installed the first time, make sure the default permissions
+ * are set correctly.
+ */
+function commons_documents_install() {
+  commons_documents_default_permissions();
+}
+
+/**
+ * Default permissions hook, called during install and a one-time update. See
+ * https://drupal.org/node/2162127 for more information.
+ */
+function commons_documents_default_permissions() {
+  $perms = array(
+    'administrator member' => array(
+      'create document content' => 1,
+      'update own document content' => 1,
+      'update any document content' => 1,
+      'delete own document content' => 1,
+      'delete any document content' => 1,
+    ),
+    'member' => array(
+      'create document content' => 1,
+      'update own document content' => 1,
+      'delete own document content' => 1,
+    ),
+    'non-member' => array(),
+  );
+
+  foreach( og_get_all_group('node') as $gid) {
+    //og_get_all_group is returning a few non-groups for some reason, so doublecheck
+    if ($group = node_load($gid)) {
+      if ($group->type === 'group') {
+        // get the specific rids for this gid
+        $gid_rids = og_roles('node','group',$gid);
+        foreach ($gid_rids as $rid => $role_name) {
+          og_role_change_permissions($rid, $perms[$role_name]);
+        }
+      }
+    }
+  }
+}
+/**
  * Disable summary on Document nodes.
  */
 function commons_documents_update_7000() {
@@ -76,3 +128,11 @@ function commons_documents_update_7006() {
   features_revert($revert);
   return array();
 }
+
+/**
+ * Set document-related default permissions in existing groups when the content-type is enabled.
+ */
+function commons_documents_update_7007() {
+  commons_documents_default_permissions();
+  return array();
+}
