Index: subscriptions_mail.cron.inc
===================================================================
--- subscriptions_mail.cron.inc	(revision 53)
+++ subscriptions_mail.cron.inc	(revision 464)
@@ -243,6 +243,13 @@
  */
 function _subscriptions_mail_send($mailkey, $name, $to, $subject, $body, $from, $uid, $send_intervals) {
   global $user;
+  
+  // Allow subscription notification emails to be blocked. Useful for staging
+  // and development servers.
+  if (variable_get('subscriptions_mail_trash_silently', 0)) {
+    watchdog('subscriptions', 'notification email has been discarded due to the subscriptions_mail_trash_silently variable being set')
+    return;
+  }
 
   $mail_success = drupal_mail('subscriptions_mail', $mailkey, $to, user_preferred_language($user), array(
     'account' => $user,
Index: subscriptions.admin.inc
===================================================================
--- subscriptions.admin.inc	(revision 53)
+++ subscriptions.admin.inc	(revision 464)
@@ -85,6 +85,9 @@
       '#weight'        => -101,
     );
   }
+  if (variable_get('subscriptions_mail_trash_silently', 0)) {
+    drupal_set_message('All notification emails will be discarded because the subscriptions_mail_trash_silently variable is set to TRUE — see the README.txt file for more information.', 'error');
+  }
 
   return system_settings_form($form);
 }
Index: README.txt
===================================================================
--- README.txt	(revision 53)
+++ README.txt	(revision 464)
@@ -262,3 +262,25 @@
 
 
 
+
+
+Blocking sending of email notifications
+---------------------------------------
+
+The Subscriptions module can be configured to discard all notification emails
+by adding a kill-switch in your settings.php file. This is often useful during
+development and testing when you have a database of real users subscribed to
+receive notifications, but you do not wish to send these notifications from a 
+development or staging server.
+
+Add a single line at the end of the settings.php file like this:
+
+  $conf['subscriptions_mail_trash_silently'] = TRUE;
+
+Note that by default, this variable is set to FALSE, unless you specifically
+override it. Although it cannot be configured directly from the settings page
+in the administration interface, you will receive an error message on that
+page to remind you that this kill-switch has been enabled from the code.
+
+Also see the MailLog module for site-wide control that allows blocking of all
+email messages.
Index: subscriptions_mail.install
===================================================================
--- subscriptions_mail.install	(revision 53)
+++ subscriptions_mail.install	(revision 464)
@@ -16,6 +16,7 @@
  * Implementation of hook_uninstall().
  */
 function subscriptions_mail_uninstall() {
+  variable_del('subscriptions_mail_trash_silently');
   variable_del('subscriptions_number_of_mails');
   variable_del('subscriptions_site_mail_name');
   variable_del('subscriptions_site_mail');
