| +-----------------------------------------------------------------------+ $Id: func.inc 587 2007-05-28 19:21:36Z thomasb $ */ require_once('lib/html2text.inc'); require_once('lib/enriched.inc'); $EMAIL_ADDRESS_PATTERN = '/([a-z0-9][a-z0-9\-\.\+\_]*@[a-z0-9]([a-z0-9\-][.]?)*[a-z0-9]\\.[a-z]{2,5})/i'; if (empty($_SESSION['mbox'])) $_SESSION['mbox'] = $IMAP->get_mailbox_name(); // set imap properties and session vars if ($mbox = get_input_value('_mbox', RCUBE_INPUT_GPC)) { $IMAP->set_mailbox($mbox); $_SESSION['mbox'] = $mbox; } if (!empty($_GET['_page'])) { $IMAP->set_page((int)$_GET['_page']); $_SESSION['page'] = (int)$_GET['_page']; } // set mailbox to INBOX if not set if (empty($_SESSION['mbox'])) $_SESSION['mbox'] = $IMAP->get_mailbox_name(); // set default sort col/order to session if (!isset($_SESSION['sort_col'])) $_SESSION['sort_col'] = $CONFIG['message_sort_col']; if (!isset($_SESSION['sort_order'])) $_SESSION['sort_order'] = $CONFIG['message_sort_order']; // set message set for search result if (!empty($_REQUEST['_search']) && isset($_SESSION['search'][$_REQUEST['_search']])) $IMAP->set_search_set($_SESSION['search'][$_REQUEST['_search']]); // define url for getting message parts if (strlen($_GET['_uid'])) $GET_URL = rcmail_url('get', array('_mbox'=>$IMAP->get_mailbox_name(), '_uid'=>get_input_value('_uid', RCUBE_INPUT_GET))); // set current mailbox in client environment $OUTPUT->set_env('mailbox', $IMAP->get_mailbox_name()); $OUTPUT->set_env('quota', $IMAP->get_capability('quota')); if ($CONFIG['trash_mbox']) $OUTPUT->set_env('trash_mailbox', $CONFIG['trash_mbox']); if ($CONFIG['drafts_mbox']) $OUTPUT->set_env('drafts_mailbox', $CONFIG['drafts_mbox']); if ($CONFIG['junk_mbox']) $OUTPUT->set_env('junk_mailbox', $CONFIG['junk_mbox']); if (!$OUTPUT->ajax_call) rcube_add_label('checkingmail'); // return the mailboxlist in HTML function rcmail_mailbox_list($attrib) { global $IMAP, $CONFIG, $OUTPUT, $COMM_PATH; static $s_added_script = FALSE; static $a_mailboxes; // add some labels to client rcube_add_label('purgefolderconfirm'); rcube_add_label('deletemessagesconfirm'); // $mboxlist_start = rcube_timer(); $type = $attrib['type'] ? $attrib['type'] : 'ul'; $add_attrib = $type=='select' ? array('style', 'class', 'id', 'name', 'onchange') : array('style', 'class', 'id'); if ($type=='ul' && !$attrib['id']) $attrib['id'] = 'rcmboxlist'; // allow the following attributes to be added to the