Index: feedback.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/feedback/feedback.admin.inc,v
retrieving revision 1.2
diff -u -p -r1.2 feedback.admin.inc
--- feedback.admin.inc	8 Jan 2010 17:05:10 -0000	1.2
+++ feedback.admin.inc	7 Nov 2010 21:27:44 -0000
@@ -9,7 +9,7 @@
 /**
  * Build a (sortable) form containing a checkbox for each feedback entry.
  */
-function feedback_admin_view_form($form, &$form_state) {
+function feedback_admin_view_form($form_id, $form_state) {
   $status_headings = array(
     0 => t('Open feedback messages'),
     1 => t('Processed feedback messages'),
@@ -56,7 +56,7 @@ function feedback_admin_view_form($form,
       );
       $form['feedback-messages'][$status][$fid]['location'] = array('#markup' => l(truncate_utf8($entry->location, 32, FALSE, TRUE), $entry->url));
       $form['feedback-messages'][$status][$fid]['date'] = array('#markup' => format_date($entry->timestamp, 'small'));
-      $form['feedback-messages'][$status][$fid]['user'] = array('#markup' => theme('username', $entry));
+      $form['feedback-messages'][$status][$fid]['user'] = array('#theme' => 'username', '#account' => $entry);
       $form['feedback-messages'][$status][$fid]['message'] = array('#markup' => feedback_format_message($entry));
     }
   }
@@ -67,7 +67,8 @@ function feedback_admin_view_form($form,
 /**
  * Output a sortable table containing all feedback entries.
  */
-function theme_feedback_admin_view_form($form) {
+function theme_feedback_admin_view_form($variables) {
+  $form = $variables['form'];
   $output = '';
   foreach (element_children($form['feedback-messages']) as $status) {
     $item = &$form['feedback-messages'][$status];
@@ -94,7 +95,7 @@ function theme_feedback_admin_view_form(
     }
     // Inject the table.
     $item['messages'] = array(
-      '#markup' => theme('table', $form['#feedback_header'], $rows) . theme('pager', array(), $status),
+      '#markup' => theme('table', array( 'header' => $form['#feedback_header'], 'rows' => $rows)) . theme('pager', array( 'element' => $status)),
       '#weight' => -1,
     );
     // Render the fieldset.
Index: feedback.js
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/feedback/feedback.js,v
retrieving revision 1.6
diff -u -p -r1.6 feedback.js
--- feedback.js	8 Jan 2010 22:21:07 -0000	1.6
+++ feedback.js	7 Nov 2010 21:27:44 -0000
@@ -4,42 +4,46 @@
 /**
  * Attach auto-submit to admin view form.
  */
-Drupal.behaviors.feedbackAdminForm = function (context) {
-  $('#feedback-admin-view-form', context).once('feedback-processed', function () {
-    $(this).find('fieldset.feedback-messages :input[type="checkbox"]').click(function () {
-      this.form.submit();
+Drupal.behaviors.feedbackAdminForm = {
+  attach: function(context) {
+    $('#feedback-admin-view-form', context).once('feedback-processed', function () {
+      $(this).find('fieldset.feedback-messages :input[type="checkbox"]').click(function () {
+        this.form.submit();
+      });
     });
-  });
+  }
 };
 
 /**
  * Attach collapse behavior to the feedback form block.
  */
-Drupal.behaviors.feedbackForm = function (context) {
-  $('#block-feedback-form', context).once('feedback-processed', function () {
-    var $block = $(this);
-    $block.find('span.feedback-link')
-      .prepend('<span id="feedback-form-toggle">[ + ]</span> ')
-      .css('cursor', 'pointer')
-      .toggle(function () {
-          Drupal.feedbackFormToggle($block, false);
-        },
-        function() {
-          Drupal.feedbackFormToggle($block, true);
-        }
-      );
-    $block.find('form').hide()
-      .find(':input[name="ajax"]').val(1).end()
-      .submit(function() {
-        // Toggle throbber/button.
-        $('#feedback-throbber', this).addClass('throbbing');
-        $('#feedback-submit', this).fadeOut('fast', function () {
-          Drupal.feedbackFormSubmit($(this).parents('form'));
+Drupal.behaviors.feedbackForm = {
+  attach: function(context) {
+    $('#block-feedback-form', context).once('feedback-processed', function () {
+      var $block = $(this);
+      $block.find('span.feedback-link')
+        .prepend('<span id="feedback-form-toggle">[ + ]</span> ')
+        .css('cursor', 'pointer')
+        .toggle(function () {
+            Drupal.feedbackFormToggle($block, false);
+          },
+          function() {
+            Drupal.feedbackFormToggle($block, true);
+          }
+        );
+      $block.find('form').hide()
+        .find(':input[name="ajax"]').val(1).end()
+        .submit(function() {
+          // Toggle throbber/button.
+          $('#feedback-throbber', this).addClass('throbbing');
+          $('#feedback-submit', this).fadeOut('fast', function () {
+            Drupal.feedbackFormSubmit($(this).parents('form'));
+          });
+          return false;
         });
-        return false;
-      });
-    $block.show();
-  });
+      $block.show();
+    });
+  }
 };
 
 /**
Index: feedback.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/feedback/feedback.module,v
retrieving revision 1.79
diff -u -p -r1.79 feedback.module
--- feedback.module	20 Feb 2010 23:59:29 -0000	1.79
+++ feedback.module	7 Nov 2010 21:27:44 -0000
@@ -28,7 +28,7 @@ function feedback_permission() {
 function feedback_theme() {
   return array(
     'feedback_admin_view_form' => array(
-      'arguments' => array('form' => array()),
+      'render element' => 'form',
     ),
   );
 }
@@ -60,9 +60,9 @@ function feedback_init() {
 }
 
 /**
- * Implementation of hook_block_list().
+ * Implementation of hook_block_info().
  */
-function feedback_block_list() {
+function feedback_block_info() {
   $blocks['form'] = array(
     'info' => t('Feedback form'),
   );
@@ -87,28 +87,6 @@ function feedback_block_view($delta = ''
 }
 
 /**
- * Implementation of hook_page_build().
- */
-function feedback_page_build(&$page) {
-  if (user_access('access feedback form') && $_GET['q'] != 'admin/reports/feedback') {
-    $block = (object) feedback_block_view('form');
-    $block->module = 'feedback';
-    $block->delta = 'form';
-    $block->region = 'footer';
-    $build = $block->content;
-    unset($block->content);
-    $build += array(
-      '#block' => $block,
-      '#weight' => 0,
-      '#sorted' => TRUE,
-    );
-    $build['#theme_wrappers'][] ='block';
-
-    $page['page_bottom']['feedback'] = $build;
-  }
-}
-
-/**
  * Form builder function for a user feedback form.
  */
 function feedback_form($form, &$form_state) {
@@ -134,7 +112,7 @@ function feedback_form($form, &$form_sta
     if ($feedbacks) {
       $rows = '';
       foreach ($feedbacks as $feedback) {
-        $rows .= '<div class="feedback-submitted">'. theme('username', $feedback) .' '. format_date($feedback->timestamp, 'small') .':</div>';
+        $rows .= '<div class="feedback-submitted">'. theme('username', array('#account' => $feedback)) .' '. format_date($feedback->timestamp, 'small') .':</div>';
         $rows .= '<div class="feedback-body">'. feedback_format_message($feedback) .'</div>';
       }
       $form['messages'] = array(
@@ -149,7 +127,6 @@ function feedback_form($form, &$form_sta
     '#attributes' => array('class' => array('feedback-message')),
     '#cols' => 20,
     '#title' => t('Message'),
-    '#required' => TRUE,
     '#wysiwyg' => FALSE,
   );
   $form['submit'] = array(
@@ -164,8 +141,13 @@ function feedback_form($form, &$form_sta
 }
 
 function feedback_form_submit($form, &$form_state) {
-  feedback_add_entry($form_state['values']['message'], $form_state['values']['location']);
-  $message = t('Thanks for your feedback!');
+  if ( trim($form_state['values']['message']) == '' ) {
+    $message = t('Please enter a message');
+  }
+  else {
+    feedback_add_entry($form_state['values']['message'], $form_state['values']['location']);
+    $message = t('Thanks for your feedback!');
+  }  
   if ($form_state['values']['ajax']) {
     drupal_json_output(array('message' => $message));
     exit;
