--- pmgrowl.module	2009-05-21 10:43:00.000000000 -0500
+++ pmgrowl.module	2009-06-05 08:51:03.827928100 -0500
@@ -6,13 +6,20 @@
  * pmgrowl provides private message received notifications using the jGrowl jQuery plugin
  */
 
-// Add required files
-drupal_add_css(drupal_get_path('module', 'pmgrowl') .'/jgrowl/jquery.jgrowl.css');
-drupal_add_js(drupal_get_path('module', 'pmgrowl') .'/jgrowl/jquery.jgrowl_minimized.js', 'footer');
-drupal_add_js(drupal_get_path('module', 'pmgrowl') .'/pmgrowl.js', 'footer');
-
-// Pass in the interval for checking messages. Multiply by 1000 to move to milliseconds instead of seconds
-drupal_add_js(array('pmGrowlInterval' => variable_get('pmgrowl_interval', 30) * 1000), 'setting');
+/**
+ * Implementation of hook_init().
+ */
+function pmgrowl_init() {
+  if (user_access('read privatemsg')) {
+    // Add required files
+    drupal_add_css(drupal_get_path('module', 'pmgrowl') .'/jgrowl/jquery.jgrowl.css');
+    drupal_add_js(drupal_get_path('module', 'pmgrowl') .'/jgrowl/jquery.jgrowl_minimized.js', 'footer');
+    drupal_add_js(drupal_get_path('module', 'pmgrowl') .'/pmgrowl.js', 'footer');
+  
+    // Pass in the interval for checking messages. Multiply by 1000 to move to milliseconds instead of seconds
+    drupal_add_js(array('pmGrowlInterval' => variable_get('pmgrowl_interval', 30) * 1000), 'setting');
+  }
+}
 
 /**
  * Implementation of hook_menu().
