if (!($result2 = $db->sql_query($sql))) {
                message_die(GENERAL_ERROR, 'Can\'t read message recipients', '', __LINE__, __FILE__, $sql);
            }
            $recips = array();
            while ($row = $db->sql_fetchrow($result2)) {
                $recips[] = $row;
            }
            $user_id = $userdata['user_id'];
            $copy = true;
            send_mail('save_to_mail', $privmsg, $user_id, $recips, $post_subject, $private_message, $privmsg['privmsg_time'], $copy);
        }
        // return message
        $return_msg = 'Message_saved_to_mail';
        $l_link = 'Click_return_message';
        $u_link = append_sid("{$main_pgm}&folder={$folder_id}&" . POST_USERS_URL . "={$view_user_id}");
        _message_return($return_msg, $l_link, $u_link);
    }
    // return to box display
    $pmmode = '';
    $mark_ids = array();
}
//---------------------------------
//
//  main list
//
//---------------------------------
if ($pmmode == '') {
    // some inits
    $s_privmsg_ids = '';
    $privmsg_rowset = array();
    $recips = array();
//
//	main entry
//
//-----------------------------
if ($pmmode == 'search') {
    if ($cancel) {
        $pmmode = '';
        $pm_start = 0;
        $cancel = false;
    } else {
        if ($submit) {
            // send any error messages
            if ($error) {
                $l_link = 'Click_return_folders';
                $u_link = append_sid("{$main_pgm}&pmmode=search&folder={$folder_id}&username="******"&words=" . urlencode($words));
                _message_return($error_msg, $l_link, $u_link);
            }
            // base request
            $sql_tables = PRIVMSGA_RECIPS_TABLE . ' pr, ' . PRIVMSGA_TABLE . ' p';
            $sql_where = "p.privmsg_id = pr.privmsg_id\n\t\t\t\t\t\tAND pr.privmsg_user_id = {$view_user_id}\n\t\t\t\t\t\tAND pr.privmsg_status <> " . STS_DELETED . "\n\t\t\t\t\t\tAND pr.privmsg_folder_id IN ({$s_search_folders})";
            // add recipient selection
            if (!empty($search_user_id) && $search_user_id != ANONYMOUS) {
                $sql_tables .= ', ' . PRIVMSGA_RECIPS_TABLE . ' pa';
                $sql_where .= "\n\t\t\t\t\t\tAND pa.privmsg_id = pr.privmsg_id\n\t\t\t\t\t\tAND pa.privmsg_user_id = {$search_user_id}\n\t\t\t\t\t\tAND pa.privmsg_direct <> pr.privmsg_direct";
            }
            // add words selection
            $cond = 'OR';
            if (!empty($search_words)) {
                $s_search_words_subject = '';
                $s_search_words_text = '';
                for ($i = 0; $i < count($search_words); $i++) {
        if (empty($message)) {
            _error('Empty_message');
        }
        // send the message
        if (!$error) {
            $w_id = $pmmode == 'edit' ? $privmsg_id : 0;
            $error_msg = send_pm($w_id, $view_userdata, $privmsg_to_user_ids, trim(strip_tags(_read_var('subject'))), trim(_read_var('message')), intval($post_icon), $html_on, $bbcode_on, $smilies_on, $attach_sig);
            if (!empty($error_msg)) {
                $error = true;
            }
        }
        // send end message
        if (!$error) {
            $u_link = append_sid("{$main_pgm}&folder=" . INBOX);
            $l_link = _lang('Click_return_inbox');
            _message_return('Message_sent', $l_link, $u_link);
        }
    }
}
// display the page
$page_title = _lang('Read_pm');
if (!defined('IN_PCP')) {
    include $phpbb_root_path . 'includes/page_header.' . $phpEx;
}
switch ($pmmode) {
    case 'post':
        $post_a = _lang('Send_a_new_message');
        break;
    case 'reply':
    case 'quote':
    case 'forward':