Ignore:
Timestamp:
Oct 16, 2007, 11:18:11 PM (17 years ago)
Author:
rub
Message:

Resolved issue 0000763: mail triggers:
Add triggers on mail part:

o NBM
o Group mail
o process send mail

+ check group_id null on group mail

Merge branch-1_7 2138:2139 into BSF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/functions_mail.inc.php

    r2136 r2140  
    242242      $lang = $switch_lang[$language]['lang'];
    243243    }
     244
     245    $user['language'] = $language;
    244246  }
    245247}
     
    272274      $lang = $switch_lang[$language]['lang'];
    273275    }
     276    $user['language'] = $language;
    274277  }
    275278}
     
    293296function pwg_mail_notification_admins($keyargs_subject, $keyargs_content)
    294297{
     298  // Check arguments
     299  if
     300    (
     301      empty($keyargs_subject) or
     302      empty($keyargs_content)
     303    )
     304  {
     305    return false;
     306  }
     307
    295308  global $conf, $user;
    296309  $return = true;
     
    377390  $assign_vars = array(), $language_selected = '')
    378391{
     392  // Check arguments
     393  if
     394    (
     395      empty($group_id) or
     396      empty($email_format) or
     397      empty($keyargs_subject) or
     398      empty($tpl_shortname)
     399    )
     400  {
     401    return false;
     402  }
     403
    379404  global $conf;
    380405  $return = true;
     
    449474          $mail_template->set_filename($tpl_shortname,
    450475            (empty($dirname) ? '' : $dirname.'/').$tpl_shortname.'.tpl');
    451           $mail_template->assign_vars($assign_vars);
     476
     477          $mail_template->assign_vars(
     478            trigger_event('mail_group_assign_vars', $assign_vars));
    452479
    453480          $return = pwg_mail
     
    479506 *
    480507 * @param:
    481  *   - to: Receiver, or receivers of the mail.
     508 *   - to: receiver(s) of the mail.
    482509 *   - args: function params of mail function:
    483510 *       o from: sender [default value webmaster email]
     
    691718  }
    692719
    693   /*Testing block
    694   {
    695     global $user;
     720  return
     721    trigger_event('send_mail',
     722      false, /* Result */
     723      trigger_event('send_mail_to', $to),
     724      trigger_event('send_mail_subject', $cvt_subject),
     725      trigger_event('send_mail_content', $content),
     726      trigger_event('send_mail_headers', $headers),
     727      $args
     728    );
     729}
     730
     731/*
     732 * pwg sendmail
     733 *
     734 * @param:
     735 *   - result of other sendmail
     736 *   - to: Receiver or receiver(s) of the mail.
     737 *   - subject  [default value 'PhpWebGallery']
     738 *   - content: content of mail
     739 *   - headers: headers of mail
     740 *
     741 * @return boolean (Ok or not)
     742 */
     743function pwg_send_mail($result, $to, $subject, $content, $headers)
     744{
     745 if (!$result)
     746 {
     747    global $conf_mail;
     748
     749    if ($conf_mail['use_smtp'])
     750    {
     751      include_once( PHPWG_ROOT_PATH.'include/class_smtp_mail.inc.php' );
     752      $smtp_mail = new smtp_mail(
     753        $conf_mail['smtp_host'], $conf_mail['smtp_user'], $conf_mail['smtp_password'],
     754        $conf_mail['email_webmaster']);
     755      return $smtp_mail->mail($to, $subject, $content, $headers);
     756    }
     757    else
     758    {
     759      if ($conf_mail['mail_options'])
     760      {
     761        $options = '-f '.$conf_mail['email_webmaster'];
     762        return mail($to, $subject, $content, $headers, $options);
     763      }
     764      else
     765      {
     766        return mail($to, $subject, $content, $headers);
     767      }
     768    }
     769 }
     770}
     771
     772/*Testing block
     773function pwg_send_mail_test($result, $to, $subject, $content, $headers, $args)
     774{
     775    global $user, $lang_info;
    696776    @mkdir(PHPWG_ROOT_PATH.'testmail');
    697777    $filename = PHPWG_ROOT_PATH.'testmail/mail.'.$user['username'].'.'.$lang_info['code'].'.'.$args['template'].'.'.$args['theme'];
     
    706786    $file = fopen($filename, 'w+');
    707787    fwrite($file, $to);
    708     fwrite($file, $cvt_subject);
     788    fwrite($file, $subject);
    709789    fwrite($file, $headers);
    710790    fwrite($file, $content);
    711791    fclose($file);
    712792    return true;
    713   }*/
    714 
    715   if ($conf_mail['use_smtp'])
    716   {
    717     include_once( PHPWG_ROOT_PATH.'include/class_smtp_mail.inc.php' );
    718     $smtp_mail = new smtp_mail(
    719       $conf_mail['smtp_host'], $conf_mail['smtp_user'], $conf_mail['smtp_password'],
    720       $conf_mail['email_webmaster']);
    721     return $smtp_mail->mail($to, $cvt_subject, $content, $headers);
    722   }
    723   else
    724   {
    725     if ($conf_mail['mail_options'])
    726     {
    727       $options = '-f '.$conf_mail['email_webmaster'];
    728       return mail($to, $cvt_subject, $content, $headers, $options);
    729     }
    730     else
    731     {
    732       return mail($to, $cvt_subject, $content, $headers);
    733     }
    734   }
    735 }
     793}
     794add_event_handler('send_mail', 'pwg_send_mail_test', 0, 6);*/
     795
     796
     797add_event_handler('send_mail', 'pwg_send_mail', EVENT_HANDLER_PRIORITY_NEUTRAL, 5);
     798trigger_action('functions_mail_included');
    736799
    737800?>
Note: See TracChangeset for help on using the changeset viewer.