? sender_config_2.patch
Index: modr8_admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/modr8/modr8_admin.inc,v
retrieving revision 1.2.2.9
diff -u -p -r1.2.2.9 modr8_admin.inc
--- modr8_admin.inc	16 Aug 2007 02:58:04 -0000	1.2.2.9
+++ modr8_admin.inc	16 Aug 2007 04:07:00 -0000
@@ -34,6 +34,13 @@ function modr8_settings_form() {  
     '#title' => t('E-mail'),
   );
   
+  $form['text']['modr8_email_from'] = array(
+    '#type' => 'textfield',
+    '#title' => t('Moderator email adress'),
+    '#description' => t('E-mail notices sent by modr8 will have this as the "From" address. Leave empty to use same "From" address  as is used for user registration other administrative notices as set at <a href="@site-info">Site information</a>.', array('@site-info' => url('admin/settings/site-information'))),
+    '#default_value' => variable_get('modr8_email_from', ''),
+  );
+
   $form['text']['modr8_send_approve'] = array(
     '#type' => 'checkbox',
     '#title' => t('Send approval messages'),
@@ -98,10 +105,17 @@ function modr8_settings_form() {  
     '#default_value' => variable_get('modr8_noact_text', $noact_default),
   	'#description' => t('Replacement strings are: %macros', array('%macros' => $macros)),
   );
+  $form['#validate'] = array('modr8_settings_validate' => array());
   
   return system_settings_form($form);
 }
 
+function modr8_settings_validate($form_id, $form_values) {
+  if ($form_values['modr8_email_from'] && !valid_email_address($form_values['modr8_email_from'])) {
+    form_set_error('modr8_email_from', t('You must either enter a valid e-mail address, or leave the moderator e-mail field empty.'));
+  }
+}
+
 function modr8_form($result = NULL) {
  
   $form = array(
@@ -296,9 +310,12 @@ function modr8_usermail($op, $nid, $valu
     $subject = strtr($subject, $replacements);
     $message = strtr($message, $replacements);
     
-    $sendmail_from = ini_get('sendmail_from');
-    $site_mail = variable_get('site_mail', $sendmail_from);
-    if (!strlen($site_mail) || $site_mail == $sendmail_from) {
+    $site_mail = variable_get('modr8_email_from', '');
+    if (!$site_mail) {
+      $sendmail_from = ini_get('sendmail_from');
+      $site_mail = variable_get('site_mail', $sendmail_from);
+    } 
+    if (empty($site_mail) || $site_mail == $sendmail_from) {
       drupal_set_message(t('You should create an administrator mail address for your site! <a href="@url">Do it here</a>.', array('@url' => url('admin/settings/site-information'))), 'error');
     }
     // send the email
