--- messagefx.module
+++ messagefx.module
@@ -47,47 +47,49 @@
  * Implementation of hook_help().
  */
 function messagefx_help() {
-  static $a = 0;
-  if (drupal_get_messages(NULL, FALSE) && $a == 0) {
-
-    $message_types = unserialize(MESSAGETYPES);
-
-    foreach ($message_types as $message_type) {
-      switch (variable_get($message_type .'_effect', 'Pulsate')) {
-        case 'Pulsate' :
-          jquery_ui_add(array('effects.pulsate'));
-          $js .= "\$('div[class=\"messages ". $message_type ."\"]').effect('pulsate', {times:". variable_get($message_type .'_times', 5) ."}, ". variable_get($message_type .'_length', 200) .");";
-          break;
-        case 'Shake' :
-          jquery_ui_add(array('effects.shake'));
-          $js .= "\$('div[class=\"messages ". $message_type ."\"]').effect('shake', {times:". variable_get($message_type .'_times', 5) ."}, ". variable_get($message_type .'_length', 200) .");";
-          break;
-        case 'Bounce' :
-          jquery_ui_add(array('effects.bounce'));
-          $js .= "\$('div[class=\"messages ". $message_type ."\"]').effect('bounce', {times:". variable_get($message_type .'_times', 5) ."}, ". variable_get($message_type .'_length', 400) .");";
-          break;
-        case 'FadeIn' :
-          $js .= "\$('div[class=\"messages ". $message_type ."\"]').hide().fadeIn(". variable_get($message_type .'_length', 400) .");";
-          break;
-        case 'Highlight' :
-          jquery_ui_add(array('effects.highlight'));
-          $js .= "\$('div[class=\"messages ". $message_type ."\"]').effect('highlight', {color:'". variable_get($message_type .'_colorpicker_textfield', '#FF3') ."'}, ". variable_get($message_type .'_length', 500) .");";
-          break;
-        case 'Growl' :
-          drupal_add_js(drupal_get_path('module', 'messagefx') .'/jquery.jgrowl.js', 'module', 'footer', $preprocess = FALSE);
-          drupal_add_css(drupal_get_path('module', 'messagefx') .'/jquery.jgrowl.css', 'module', 'screen');
-          drupal_add_css(drupal_get_path('module', 'messagefx') .'/messagefx.css', 'module', 'screen');
-          $js .= "if(\$('div[class=\"messages ". $message_type ."\"]').html() != null){\$.jGrowl.defaults.position = '". variable_get($message_type .'_growl_position', 'top-right') ."'; \$.jGrowl(\$('div[class=\"messages ". $message_type ."\"]').html(), {header: '". variable_get($message_type .'_growl_header', $message_type .' Message') ."', theme: 'jGrowl-". $message_type ."', sticky: ". variable_get($message_type .'_growl_sticky', TRUE) .", life: ". variable_get($message_type .'_length', 3000) ."});\$('div.jGrowl div.jGrowl-". $message_type ."').css({background: '". variable_get($message_type .'_colorpicker_textfield', '#000') ."'}).fadeTo(0, 0.85);}";
-          break;
+  if (module_exists('jquery_ui')){
+    static $a = 0;
+    if (drupal_get_messages(NULL, FALSE) && $a == 0) {
+
+      $message_types = unserialize(MESSAGETYPES);
+
+      foreach ($message_types as $message_type) {
+        switch (variable_get($message_type .'_effect', 'Pulsate')) {
+          case 'Pulsate' :
+            jquery_ui_add(array('effects.pulsate'));
+            $js .= "\$('div[class=\"messages ". $message_type ."\"]').effect('pulsate', {times:". variable_get($message_type .'_times', 5) ."}, ". variable_get($message_type .'_length', 200) .");";
+            break;
+          case 'Shake' :
+            jquery_ui_add(array('effects.shake'));
+            $js .= "\$('div[class=\"messages ". $message_type ."\"]').effect('shake', {times:". variable_get($message_type .'_times', 5) ."}, ". variable_get($message_type .'_length', 200) .");";
+            break;
+          case 'Bounce' :
+            jquery_ui_add(array('effects.bounce'));
+            $js .= "\$('div[class=\"messages ". $message_type ."\"]').effect('bounce', {times:". variable_get($message_type .'_times', 5) ."}, ". variable_get($message_type .'_length', 400) .");";
+            break;
+          case 'FadeIn' :
+            $js .= "\$('div[class=\"messages ". $message_type ."\"]').hide().fadeIn(". variable_get($message_type .'_length', 400) .");";
+            break;
+          case 'Highlight' :
+            jquery_ui_add(array('effects.highlight'));
+            $js .= "\$('div[class=\"messages ". $message_type ."\"]').effect('highlight', {color:'". variable_get($message_type .'_colorpicker_textfield', '#FF3') ."'}, ". variable_get($message_type .'_length', 500) .");";
+            break;
+          case 'Growl' :
+            drupal_add_js(drupal_get_path('module', 'messagefx') .'/jquery.jgrowl.js', 'module', 'footer', $preprocess = FALSE);
+            drupal_add_css(drupal_get_path('module', 'messagefx') .'/jquery.jgrowl.css', 'module', 'screen');
+            drupal_add_css(drupal_get_path('module', 'messagefx') .'/messagefx.css', 'module', 'screen');
+            $js .= "if(\$('div[class=\"messages ". $message_type ."\"]').html() != null){\$.jGrowl.defaults.position = '". variable_get($message_type .'_growl_position', 'top-right') ."'; \$.jGrowl(\$('div[class=\"messages ". $message_type ."\"]').html(), {header: '". variable_get($message_type .'_growl_header', $message_type .' Message') ."', theme: 'jGrowl-". $message_type ."', sticky: ". variable_get($message_type .'_growl_sticky', TRUE) .", life: ". variable_get($message_type .'_length', 3000) ."});\$('div.jGrowl div.jGrowl-". $message_type ."').css({background: '". variable_get($message_type .'_colorpicker_textfield', '#000') ."'}).fadeTo(0, 0.85);}";
+            break;
+        }
       }
-    }
 
-    if ($js) {
-      $js = '$(function(){'. $js .'});';
-      drupal_add_js($js, 'inline', 'footer', $preprocess = FALSE);
+      if ($js) {
+        $js = '$(function(){'. $js .'});';
+        drupal_add_js($js, 'inline', 'footer', $preprocess = FALSE);
+      }
     }
+    $a++;
   }
-  $a++;
 }
 
 /**
