thomascube
2009-07-03 3ca3bd467ab9c5306de4a30c52f737e92eb39a9c
Add plugin hooks 'smtp_connect' and 'list_identities' (#1485954, #1485958)

2 files modified
23 ■■■■ changed files
program/include/rcube_smtp.inc 13 ●●●●● patch | view | raw | blame | history
program/steps/settings/func.inc 10 ●●●●● patch | view | raw | blame | history
program/include/rcube_smtp.inc
@@ -51,7 +51,18 @@
 */
function smtp_mail($from, $recipients, &$headers, &$body, &$response)
  {
  global $SMTP_CONN, $CONFIG, $RCMAIL;
  global $SMTP_CONN, $RCMAIL;
  // let plugins alter smtp connection config
  $CONFIG = $RCMAIL->plugins->exec_hook('smtp_connect', array(
    'smtp_server' => $RCMAIL->config->get('smtp_server'),
    'smtp_port'   => $RCMAIL->config->get('smtp_port', 25),
    'smtp_user'   => $RCMAIL->config->get('smtp_user'),
    'smtp_pass'   => $RCMAIL->config->get('smtp_pass'),
    'smtp_auth_type' => $RCMAIL->config->get('smtp_auth_type'),
    'smtp_helo_host' => $RCMAIL->config->get('smtp_helo_host'),
  ));
  $smtp_timeout = null;
  $smtp_host = $CONFIG['smtp_server'];
  $smtp_port = is_numeric($CONFIG['smtp_port']) ? $CONFIG['smtp_port'] : 25;
program/steps/settings/func.inc
@@ -408,17 +408,19 @@
function rcmail_identities_list($attrib)
  {
  global $OUTPUT, $USER;
  global $OUTPUT, $USER, $RCMAIL;
  // add id to message list table if not specified
  if (!strlen($attrib['id']))
    $attrib['id'] = 'rcmIdentitiesList';
  // define list of cols to be displayed
  $a_show_cols = array('name', 'email');
  // get all identites from DB and define list of cols to be displayed
  $plugin = $RCMAIL->plugins->exec_hook('list_identities', array(
    'list' => $USER->list_identities(),
    'cols' => array('name', 'email')));
  // create XHTML table  
  $out = rcube_table_output($attrib, $USER->list_identities(), $a_show_cols, 'identity_id');
  $out = rcube_table_output($attrib, $plugin['list'], $plugin['cols'], 'identity_id');
  
  // set client env
  $OUTPUT->add_gui_object('identitieslist', $attrib['id']);