예제 #1
0
         $template->pparse('body');
         if (!defined('IN_PCP')) {
             include $phpbb_root_path . 'includes/page_tail.' . $phpEx;
         }
     } else {
         // display the page
         $page_title = _lang('Search_pm');
         if (!defined('IN_PCP')) {
             include $phpbb_root_path . 'includes/page_header.' . $phpEx;
         }
         $template->set_filenames(array('body' => 'privmsga_search_body.tpl'));
         privmsg_header($view_user_id, $folder_id, $privmsg_recip_id);
         // header
         $template->assign_vars(array('L_TITLE' => _lang('Search_pm'), 'L_SEARCH_FOLDER' => _lang('Search_folder'), 'L_SEARCH_FOLDER_EXPLAIN' => _lang('Search_folder_explain'), 'L_SEARCH_AUTHOR' => _lang('Search_recipient'), 'L_SEARCH_AUTHOR_EXPLAIN' => _lang('Search_recipient_explain'), 'L_SEARCH_WORDS' => _lang('Search_words'), 'L_SEARCH_WORDS_EXPLAIN' => _lang('Search_words_explain'), 'L_SUBMIT' => _lang('Submit'), 'L_CANCEL' => _lang('Cancel'), 'L_FIND_USERNAME' => _lang('Find_username'), 'U_SEARCH_USER' => append_sid("search.{$phpEx}?mode=searchuser")));
         // data
         $s_folders = '<option value="-1">' . _lang('All_folders') . '</option>' . get_folders_list(0, $folder_id);
         // vars
         $template->assign_vars(array('S_FOLDERS' => $s_folders, 'USERNAME' => empty($username) ? '' : str_replace("''", "'", $username), 'WORDS' => empty($search_words) ? '' : str_replace("''", "'", implode(', ', $search_words))));
         // system
         _hide(POST_USERS_URL, $view_user_id);
         _hide('pmmode', $pmmode);
         _hide('sid', $userdata['session_id']);
         $template->assign_vars(array('S_ACTION' => append_sid($main_pgm), 'S_HIDDEN_FIELDS' => _hidden_get()));
         // send to browser
         privmsg_footer();
         $template->pparse('body');
         if (!defined('IN_PCP')) {
             include $phpbb_root_path . 'includes/page_tail.' . $phpEx;
         }
     }
 }
function privmsg_list($privmsg_rowset, $recips, $folder_id, $select = false, $mark_ids = array(), $detailed = false)
{
    global $template, $userdata;
    global $lang, $images, $board_config, $phpEx, $phpbb_root_path;
    global $folders;
    global $main_pgm, $from_to_separator;
    global $all_marked, $marked_on_this_page;
    global $msg_days;
    global $nav_separator;
    global $icones;
    // is the post icon mod installed ?
    $mod_post_icon = function_exists('get_icon_title');
    // censor word
    $orig_word = array();
    $replacement_word = array();
    obtain_word_list($orig_word, $replacement_word);
    // get main folder
    $folder_main = $folder_id;
    if (!empty($folders['main'][$folder_id])) {
        $folder_main = $folders['main'][$folder_id];
    }
    // author/recip
    $from_to = '';
    switch ($folder_main) {
        case INBOX:
            $from_to = _lang('From');
            break;
        case OUTBOX:
            $from_to = _lang('To');
            break;
        case SENTBOX:
            $from_to = _lang('To');
            break;
        case SAVEBOX:
            $from_to = _lang('From') . $from_to_separator . _lang('To');
            break;
    }
    // get save sub-folder list
    $s_move_folder = '';
    if ($folder_main != SAVEBOX) {
        $s_move_folder = get_folders_list($folder_id);
    }
    $s_move_folder .= get_folders_list(SAVEBOX);
    // template name
    $template->set_filenames(array('privmsga_box' => 'privmsga_box.tpl'));
    $span = 4;
    if ($mod_post_icon) {
        $span++;
    }
    if ($select) {
        $span++;
    }
    // Header
    $template->assign_vars(array('L_DISPLAY_MESSAGES' => _lang('Display_messages'), 'S_SELECT_MSG_DAYS' => get_days_list($msg_days), 'L_GO' => _lang('Go'), 'L_CANCEL' => _lang('Cancel'), 'L_FLAG' => _lang('Flag'), 'L_SUBJECT' => $select ? _lang('Subject') : _lang('Private_Messages'), 'L_FROM_OR_TO' => $from_to, 'L_DATE' => _lang('Date'), 'L_MARK' => _lang('Mark'), 'L_NO_MESSAGES' => _lang('No_messages_folder'), 'L_DELETE_MARKED' => _lang('Delete_marked'), 'L_DELETE_ALL' => _lang('Delete_all'), 'L_MOVE_MARKED' => _lang('Move_marked'), 'L_SAVE_TO_MAIL' => _lang('Save_to_mail_message'), 'S_SELECT_MOVE' => $s_move_folder, 'SPAN_ALL' => $span, 'SPAN_SUBJECT' => $mod_post_icon ? 2 : 1));
    // process the display
    $all_marked = !empty($privmsg_rowset);
    $marked_on_this_page = array();
    $color = false;
    for ($i = 0; $i < count($privmsg_rowset); $i++) {
        $color = !$color;
        $privmsg_id = $privmsg_rowset[$i]['privmsg_id'];
        $privmsg_recip_id = $privmsg_rowset[$i]['selected_pm_id'];
        // get flag
        $read_icon_flag = _images('pm_readmsg');
        $read_icon_flag_alt = _lang('Read_message');
        $unread_icon_flag = _images('pm_unreadmsg');
        $unread_icon_flag_alt = _lang('Unread_message');
        $new_icon_flag = _images('pm_newmsg');
        $new_icon_flag_alt = _lang('New_message');
        // choose the good icon
        switch ($privmsg_rowset[$i]['selected_read']) {
            case NEW_MAIL:
                $icon_flag = $new_icon_flag;
                $icon_flag_alt = $new_icon_flag_alt;
                break;
            case UNREAD_MAIL:
                $icon_flag = $unread_icon_flag;
                $icon_flag_alt = $unread_icon_flag_alt;
                break;
            case READ_MAIL:
                $icon_flag = $read_icon_flag;
                $icon_flag_alt = $read_icon_flag_alt;
                break;
        }
        // get the status of the "select all" checkbox
        $marked = !empty($mark_ids) && in_array($privmsg_recip_id, $mark_ids);
        if (!$marked) {
            $all_marked = false;
        } else {
            $marked_on_this_page[] = $privmsg_recip_id;
        }
        // user display is the sender
        $a_in = true;
        $a_out = false;
        $w_from_to = array();
        if ($detailed) {
            $w_from_to = array($a_in, $a_out);
        } else {
            switch ($folder_main) {
                case INBOX:
                    $w_from_to = array($a_in);
                    break;
                case OUTBOX:
                    $w_from_to = array($a_out);
                    break;
                case SENTBOX:
                    $w_from_to = array($a_out);
                    break;
                case SAVEBOX:
                    $w_from_to = array($a_in, $a_out);
                    break;
                default:
                    message_die(GENERAL_ERROR, _lang('No_such_folder'), '', __LINE__, __FILE__);
                    break;
            }
        }
        $s_username = '';
        for ($k = 0; $k < count($w_from_to); $k++) {
            $from = $w_from_to[$k];
            if ($from) {
                $temp_url = empty($privmsg_rowset[$i]['privmsg_user_id']) ? append_sid("./index.{$phpEx}") : append_sid("./profile.{$phpEx}?mode=viewprofile&" . POST_USERS_URL . '=' . $privmsg_rowset[$i]['privmsg_user_id']);
                $temp_lib = empty($privmsg_rowset[$i]['privmsg_user_id']) ? $board_config['sitename'] : $privmsg_rowset[$i]['privmsg_from_username'];
                $s_username .= (empty($s_username) ? '' : ($j == 0 ? $from_to_separator : ', ')) . '<a href="' . $temp_url . '" class="' . $userclass . '">' . $temp_lib . '</a>';
            } else {
                for ($j = 0; $j < count($recips['data'][$privmsg_id]); $j++) {
                    $temp_url = empty($recips['data'][$privmsg_id][$j]['privmsg_user_id']) ? append_sid("./index.{$phpEx}") : append_sid("./profile.{$phpEx}?mode=viewprofile&" . POST_USERS_URL . '=' . $recips['data'][$privmsg_id][$j]['privmsg_user_id']);
                    $temp_lib = empty($recips['data'][$privmsg_id][$j]['privmsg_user_id']) ? $board_config['sitename'] : $recips['data'][$privmsg_id][$j]['privmsg_to_username'];
                    $s_username .= (empty($s_username) ? '' : ($j == 0 ? $from_to_separator : ', ')) . '<a href="' . $temp_url . '" class="' . $userclass . '">' . $temp_lib . '</a>';
                }
            }
            // add '...' if required
            if ($recips['over'][$privmsg_id]) {
                $s_username .= (empty($s_username) ? '' : ', ') . '...';
            }
        }
        $subject = preg_replace($orig_word, $replacement_word, $privmsg_rowset[$i]['privmsg_subject']);
        // nav sentence
        if ($detailed) {
            $w_folder_id = $privmsg_rowset[$i]['privmsg_folder_id'];
            $w_folder_main = $w_folder_id;
            if (!empty($folders['main'][$w_folder_id])) {
                $w_folder_main = $folders['main'][$w_folder_id];
            }
            $u_main = append_sid("{$main_pgm}&folder={$w_folder_main}");
            $l_main = _lang($folders['data'][$w_folder_main]['folder_name']);
            $u_subf = append_sid("{$main_pgm}&folder={$w_folder_id}");
            $l_subf = _lang($folders['data'][$w_folder_id]['folder_name']);
            if ($w_folder_main == $w_folder_id) {
                $u_main = $u_subf;
                $l_main = $l_subf;
                $u_subf = '';
                $l_subf = '';
            }
        }
        // post icons mod installed
        $post_icon = '';
        if ($mod_post_icon) {
            $topic_type = POST_NORMAL;
            $post_icon = get_icon_title($privmsg_rowset[$i]['privmsg_icon'], 1, $topic_type);
        }
        // display
        $template->assign_block_vars('pm_row', array('COLOR' => $color ? 'row1' : 'row2', 'FOLDER_IMG' => $icon_flag, 'L_FOLDER_ALT' => $icon_flag_alt, 'ICON' => $post_icon, 'SUBJECT' => $subject, 'U_SUBJECT' => append_sid("{$main_pgm}&pmmode=view&start={$pm_start}&folder={$folder_id}&" . POST_POST_URL . "={$privmsg_recip_id}"), 'S_USERNAME' => $s_username, 'DATE' => create_date($userdata['user_dateformat'], $privmsg_rowset[$i]['privmsg_time'], $userdata['user_timezone']), 'CHECKED' => $marked ? 'checked="checked"' : '', 'S_MARK_ID' => $privmsg_recip_id, 'U_FOLDER' => $u_main, 'L_FOLDER' => $l_main, 'U_SUBFOLDER' => $u_subf, 'L_SUBFOLDER' => $l_subf));
        // post icon mod installed
        if ($mod_post_icon) {
            $template->assign_block_vars('pm_row.switch_icon', array());
        } else {
            $template->assign_block_vars('pm_row.switch_icon_no', array());
        }
        // selection available
        if ($select) {
            $template->assign_block_vars('pm_row.privmsg_select', array());
        } else {
            $template->assign_block_vars('pm_row.privmsg_no_select', array());
        }
        // folder nav link asked
        if ($detailed) {
            $template->assign_block_vars('pm_row.detailed', array());
            if (!empty($u_subf)) {
                $template->assign_block_vars('pm_row.detailed.sub', array());
            } else {
                $template->assign_block_vars('pm_row.detailed.no_sub', array());
            }
        } else {
            $template->assign_block_vars('pm_row.not_detailed', array());
        }
    }
    // general marked
    $template->assign_vars(array('CHECKED' => $all_marked ? 'checked="checked"' : ''));
    // nothing to display
    if (count($privmsg_rowset) == 0) {
        $template->assign_block_vars('pm_empty', array());
    }
    // post icon nod installed
    if ($mod_post_icon) {
        $template->assign_block_vars('switch_icon', array());
    } else {
        $template->assign_block_vars('switch_icon_no', array());
    }
    // selection of pms available
    if ($select) {
        $template->assign_block_vars('privmsg_select', array());
        // save button : appears always for save box when we're not in savebox
        if ($folder_main != SAVEBOX || !empty($folders['sub'][$folder_main])) {
            $template->assign_block_vars('privmsg_select.switch_move', array());
        }
        // delete button
        $template->assign_block_vars('privmsg_select.switch_delete', array());
        // save to mail
        $template->assign_block_vars('privmsg_select.switch_savetomail', array());
    } else {
        if ($detailed) {
            $template->assign_block_vars('switch_cancel', array());
        } else {
            $template->assign_block_vars('privmsg_no_select', array());
        }
    }
    $template->assign_var_from_handle('PRIVMSGA_BOX', 'privmsga_box');
}
         _message_return($return_msg, $l_link, $u_link);
     }
 } else {
     // set the page title and include the page header
     $page_title = _lang('Rules_management');
     if (!defined('IN_PCP')) {
         include $phpbb_root_path . 'includes/page_header.' . $phpEx;
     }
     // template name
     $template->set_filenames(array('body' => 'privmsga_rules_edit_body.tpl'));
     // send header
     privmsg_header($view_user_id, $folder_id);
     // Header
     $template->assign_vars(array('L_TITLE' => _lang('Rules_management'), 'L_NAME' => _lang('Rules_name'), 'L_NAME_EXPLAIN' => _lang('Rules_name_explain'), 'L_RFOLDER' => _lang('Folder'), 'L_RFOLDER_EXPLAIN' => _lang('Rules_folder_explain'), 'L_GROUP' => _lang('Group'), 'L_GROUP_EXPLAIN' => _lang('Rules_group_explain'), 'L_USERNAME' => _lang('Username'), 'L_USERNAME_EXPLAIN' => _lang('Rules_user_explain'), 'L_WORD' => _lang('Rules_word'), 'L_WORD_EXPLAIN' => _lang('Rules_word_explain'), 'L_RULE_TYPE' => _lang('Rules_type'), 'L_RULE_TYPE_EXPLAIN' => _lang('Rules_type_explain'), 'L_RULE_TYPE_GROUP' => _lang('Rules_type_group'), 'L_RULE_TYPE_USER' => _lang('Rules_type_user'), 'L_RULE_TYPE_SYSUSER' => _lang('Rules_type_sysuser'), 'L_SYSUSER_EXPLAIN' => _lang('Rules_sysuser_explain'), 'L_RULE_TYPE_WORD' => _lang('Rules_type_word'), 'L_SUBMIT' => _lang('Submit'), 'L_EDIT' => _lang('Edit'), 'L_DELETE' => _lang('Delete'), 'L_CANCEL' => _lang('Cancel'), 'L_FIND_USERNAME' => _lang('Find_username'), 'U_SEARCH_USER' => append_sid("./search.{$phpEx}?mode=searchuser")));
     // folders list
     $s_folders = get_folders_list(0, $rules_folder_id);
     // groups list
     $s_groups = get_groups_list($view_userdata, $rules_group_id);
     $s_groups = '<option value="">' . _lang('Select_group') . '</option><option value="">' . str_repeat('-', strlen(_lang('Select_group')) + 5) . '</option>' . $s_groups;
     // data
     $template->assign_vars(array('RULES_NAME' => $rules_name, 'S_FOLDERS' => $s_folders, 'RULES_TYPE_GROUP' => $rules_type == 1 ? 'checked="checked"' : '', 'RULES_TYPE_USER' => $rules_type == 2 ? 'checked="checked"' : '', 'RULES_TYPE_SYSUSER' => $rules_type == 3 ? 'checked="checked"' : '', 'RULES_TYPE_WORD' => $rules_type == 4 ? 'checked="checked"' : '', 'GROUP_DISPLAY' => $rules_type == 1 ? '' : 'none', 'USER_DISPLAY' => $rules_type == 2 ? '' : 'none', 'SYSUSER_DISPLAY' => $rules_type == 3 ? '' : 'none', 'WORD_DISPLAY' => $rules_type == 4 ? '' : 'none', 'S_GROUPS' => $s_groups, 'RULES_USERNAME' => $rules_username, 'RULES_WORD' => $rules_word));
     // system
     _hide('pmmode', $pmmode);
     _hide('folder', $folder_id);
     _hide(POST_USERS_URL, $view_user_id);
     _hide('sid', $userdata['session_id']);
     $template->assign_vars(array('S_ACTION' => append_sid($main_pgm), 'S_HIDDEN_FIELDS' => _hidden_get()));
     // send to browser
     privmsg_footer();
     $template->pparse('body');
     if (!defined('IN_PCP')) {
예제 #4
0
 $delpm_img = $post_icons['delete_img'];
 $delpm = $post_icons['delete'];
 $forward_img = $post_icons['forward_img'];
 $forward = $post_icons['forward'];
 $savemail_img = $post_icons['savemail_img'];
 $savemail = $post_icons['savemail'];
 if (empty($cfg_save_to_mail)) {
     $savemail_img = '';
     $savemail = '';
 }
 // get save sub-folder list
 $s_move_folder = '';
 if ($folder_main != SAVEBOX) {
     $s_move_folder = get_folders_list($folder_id);
 }
 $s_move_folder .= get_folders_list(SAVEBOX);
 // standard process
 if (!defined('IN_PCP')) {
     // user icons
     $profile_img = '';
     $profile = '';
     $pm_img = '';
     $pm = '';
     $email_img = '';
     $email = '';
     $www_img = '';
     $www = '';
     $icq_status_img = '';
     $icq_img = '';
     $icq = '';
     $aim_img = '';