alecpl
2008-05-01 7ec922fdf5817750c29bcb1748e50d799db2eb00
program/steps/mail/func.inc
@@ -19,7 +19,6 @@
*/
require_once('lib/html2text.inc');
require_once('lib/enriched.inc');
require_once('include/rcube_smtp.inc');
@@ -72,10 +71,10 @@
  $OUTPUT->set_env('junk_mailbox', $CONFIG['junk_mbox']);
if (!$OUTPUT->ajax_call)
  rcube_add_label('checkingmail', 'deletemessage', 'movemessagetotrash');
  rcube_add_label('checkingmail', 'deletemessage', 'movemessagetotrash', 'movingmessage');
// set page title
if (empty($_action) || $_action == 'list')
if (empty($RCMAIL->action) || $RCMAIL->action == 'list')
  $OUTPUT->set_pagetitle(rcmail_localize_foldername($IMAP->get_mailbox_name()));
@@ -408,30 +407,43 @@
  if (!$attrib['id'])
    $attrib['id'] = 'rcmquotadisplay';
  if(isset($attrib['display']))
    $_SESSION['quota_display'] = $attrib['display'];
  $OUTPUT->add_gui_object('quotadisplay', $attrib['id']);
  // allow the following attributes to be added to the <span> tag
  $attrib_str = create_attrib_string($attrib, array('style', 'class', 'id', 'display'));
  $out = '<span' . $attrib_str . '>';
  $out .= rcmail_quota_content($attrib['display']);
  $out .= rcmail_quota_content();
  $out .= '</span>';
  return $out;
  }
function rcmail_quota_content($display)
function rcmail_quota_content($quota=NULL)
  {
  global $IMAP, $COMM_PATH;
  if (!$IMAP->get_capability('QUOTA'))
    $quota_text = rcube_label('unknown');
  else if ($quota = $IMAP->get_quota())
  $display = isset($_SESSION['quota_display']) ? $_SESSION['quota_display'] : '';
  if (is_array($quota) && !empty($quota['used']) && !empty($quota['total']))
    {
    $quota_text = sprintf("%s / %s (%.0f%%)",
                          show_bytes($quota["used"] * 1024),
                          show_bytes($quota["total"] * 1024),
                          $quota["percent"]);
      if (!isset($quota['percent']))
        $quota['percent'] = $quota['used'] / $quota['total'];
    }
  elseif (!$IMAP->get_capability('QUOTA'))
    return rcube_label('unknown');
  else
    $quota = $IMAP->get_quota();
  if ($quota)
    {
    $quota_text = sprintf('%s / %s (%.0f%%)',
                          show_bytes($quota['used'] * 1024),
                          show_bytes($quota['total'] * 1024),
                          $quota['percent']);
    // show quota as image (by Brett Patterson)
    if ($display == 'image' && function_exists('imagegif'))
@@ -958,7 +970,7 @@
      continue;
    if ($hkey=='date' && !empty($headers[$hkey]))
      $header_value = format_date(strtotime($headers[$hkey]));
      $header_value = format_date($headers[$hkey]);
    else if (in_array($hkey, array('from', 'to', 'cc', 'bcc', 'reply-to')))
      $header_value = Q(rcmail_address_string($headers[$hkey], NULL, $attrib['addicon']), 'show');
    else
@@ -1127,7 +1139,8 @@
  // add comments arround html and other tags
  $out = preg_replace(array(
      '/(<!DOCTYPE.+)/i',
      '/(<!DOCTYPE[^>]*>)/i',
      '/(<\?xml[^>]*>)/i',
      '/(<\/?html[^>]*>)/i',
      '/(<\/?head[^>]*>)/i',
      '/(<title[^>]*>.*<\/title>)/Ui',
@@ -1406,10 +1419,12 @@
    // clean Bcc from header for recipients
    $send_headers = $headers;
    unset($send_headers['Bcc']);
    // here too, it because txtHeaders() below use $message->_headers not only $send_headers
    unset($message->_headers['Bcc']);
    // send message
    $smtp_response = array();
    $sent = smtp_mail($from, $a_recipients, ($foo = $message->txtHeaders($send_headers)), $msg_body, $smtp_response);
    $sent = smtp_mail($from, $a_recipients, ($foo = $message->txtHeaders($send_headers, true)), $msg_body, $smtp_response);
    // log error
    if (!$sent)
@@ -1460,7 +1475,7 @@
    $recipient = array_shift($IMAP->decode_address_list($message['headers']->mdn_to));
    $mailto = $recipient['mailto'];
    $compose = new rc_mail_mime(rcmail_header_delm());
    $compose = new rcube_mail_mime(rcmail_header_delm());
    $compose->setParam(array(
      'text_encoding' => 'quoted-printable',
      'html_encoding' => 'quoted-printable',
@@ -1487,7 +1502,7 @@
    $body = rcube_label("yourmessage") . "\r\n\r\n" .
      "\t" . rcube_label("to") . ': ' . rcube_imap::decode_mime_string($message['headers']->to, $message['headers']->charset) . "\r\n" .
      "\t" . rcube_label("subject") . ': ' . $message['subject'] . "\r\n" .
      "\t" . rcube_label("sent") . ': ' . format_date(strtotime($message['headers']->date), $CONFIG['date_long']) . "\r\n" .
      "\t" . rcube_label("sent") . ': ' . format_date($message['headers']->date, $CONFIG['date_long']) . "\r\n" .
      "\r\n" . rcube_label("receiptnote") . "\r\n";
    
    $ua = !empty($CONFIG['useragent']) ? $CONFIG['useragent'] : "RoundCube Webmail (Version ".RCMAIL_VERSION.")";
@@ -1528,7 +1543,7 @@
  'messagecontentframe' => 'rcmail_messagecontent_frame',
  'messagepartframe' => 'rcmail_message_part_frame',
  'messagepartcontrols' => 'rcmail_message_part_controls',
  'searchform' => 'rcmail_search_form'
  'searchform' => array($OUTPUT, 'search_form'),
));
?>