From 8f1255a3877fe0372f7fc1457e43137a0d574f29 Mon Sep 17 00:00:00 2001
From: Neil Drumm <drumm@3064.no-reply.drupal.org>
Date: Tue, 15 Aug 2006 05:09:49 +0000
Subject: [PATCH] #78549 by beginner, test for function existence instead of
 module existence.

---
 modules/node/content_types.inc | 2 +-
 modules/node/node.module       | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/modules/node/content_types.inc b/modules/node/content_types.inc
index b5db1e00cd48..95fc1f47c09b 100644
--- a/modules/node/content_types.inc
+++ b/modules/node/content_types.inc
@@ -17,7 +17,7 @@ function node_overview_types() {
 
   foreach ($names as $key => $name) {
     $type = $types[$key];
-    if (module_exist($type->module)) {
+    if (function_exists($type->module .'_form')) {
       $name = check_plain($name);
       $type_url_str = str_replace('_', '-', $type->type);
       // Populate the operations field.
diff --git a/modules/node/node.module b/modules/node/node.module
index c05e8dc3eef4..a85a91ca12ba 100644
--- a/modules/node/node.module
+++ b/modules/node/node.module
@@ -1062,7 +1062,7 @@ function node_menu($may_cache) {
       'type' => MENU_CALLBACK);
 
     foreach (node_get_types() as $type) {
-      if (module_exist($type->module)) {
+      if (function_exists($type->module .'_form')) {
         $name = check_plain($type->name);
         $type_url_str = str_replace('_', '-', $type->type);
         $items[] = array(
@@ -2010,7 +2010,7 @@ function node_add($type) {
   else {
     // If no (valid) node type has been provided, display a node type overview.
     foreach ($types as $type) {
-      if (module_exist($type->module) && node_access('create', $type->type)) {
+      if (function_exists($type->module .'_form') && node_access('create', $type->type)) {
         $type_url_str = str_replace('_', '-', $type->type);
         $title = t('Add a new %s.', array('%s' => check_plain($type->name)));
         $out = '<dt>'. l($type->name, "node/add/$type_url_str", array('title' => $title)) .'</dt>';
-- 
GitLab