? feedback.327823.with.settings.patch
Index: feedback.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/feedback/feedback.admin.inc,v
retrieving revision 1.1.2.2
diff -u -u -p -r1.1.2.2 feedback.admin.inc
--- feedback.admin.inc	20 Feb 2010 22:30:53 -0000	1.1.2.2
+++ feedback.admin.inc	18 Nov 2010 09:52:06 -0000
@@ -120,3 +120,15 @@ function feedback_admin_view_form_submit
   }
 }
 
+/**
+ * Admin settings form.
+ */
+function feedback_admin_settings() {
+  $form = array();
+  $form['feedback_activate_footer'] = array(
+    '#title' => 'Show Feedback in footer when block is not used.',
+    '#type' => 'checkbox',
+    '#default_value' => variable_get('feedback_activate_footer', 0),
+  );
+  return system_settings_form($form);
+}
Index: feedback.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/feedback/feedback.module,v
retrieving revision 1.75.2.4
diff -u -u -p -r1.75.2.4 feedback.module
--- feedback.module	20 Feb 2010 23:59:32 -0000	1.75.2.4
+++ feedback.module	18 Nov 2010 09:52:06 -0000
@@ -77,12 +77,22 @@ function feedback_block($op = 'list', $d
  * Implementation of hook_footer().
  */
 function feedback_footer($main = 0) {
+  if (!variable_get('feedback_activate_footer', 0)) {
+    return;
+  }
   if (user_access('access feedback form') && $_GET['q'] != 'admin/reports/feedback') {
-    $block = (object)module_invoke('feedback', 'block', 'view', 'form');
-    $block->module = 'feedback';
-    $block->delta = 'form';
-    $block->region = 'footer';
-    return theme('block', $block);
+    return feedback_output();
+  }
+}
+
+/**
+ * Feedback output.
+ */
+function feedback_output() {
+  static $processed;
+  if (empty($processed)) {
+    $processed = TRUE;
+    return drupal_get_form('feedback_form');
   }
 }
 
