From 42191f7ed1f5f9edcc3d3626d3857e05fc3c29b9 Mon Sep 17 00:00:00 2001
From: Angie Byron <webchick@24967.no-reply.drupal.org>
Date: Tue, 4 Aug 2009 06:44:48 +0000
Subject: [PATCH] #76422 by coreyp_1: Greet admin users with a prompt to create
 content types rather than an access denied page when no content types exist
 on node/add.

---
 modules/node/node.module    | 6 ++++++
 modules/node/node.pages.inc | 3 +++
 2 files changed, 9 insertions(+)

diff --git a/modules/node/node.module b/modules/node/node.module
index 19c636fa7a6f..5d8f3b5a756b 100644
--- a/modules/node/node.module
+++ b/modules/node/node.module
@@ -1649,6 +1649,12 @@ function _node_add_access() {
       return TRUE;
     }
   }
+  if (user_access('administer content types')) {
+    // There are no content types defined that the user has permission to create,
+    // but the user does have the permission to administer the content types, so
+    // grant them access to the page anyway.
+    return TRUE;
+  }
   return FALSE;
 }
 
diff --git a/modules/node/node.pages.inc b/modules/node/node.pages.inc
index 42fd59b8ed09..56b210df71de 100644
--- a/modules/node/node.pages.inc
+++ b/modules/node/node.pages.inc
@@ -43,6 +43,9 @@ function theme_node_add_list($content) {
     }
     $output .= '</dl>';
   }
+  else {
+    $output = '<p>' . t('You have not created any content types yet. Please go to the <a href="@create-content">content type creation page</a> to add a new content type.', array('@create-content' => url('admin/structure/types/add'))) . '</p>';
+  }
   return $output;
 }
 
-- 
GitLab