Zeile 42 | Zeile 42 |
---|
error_no_permission(); }
|
error_no_permission(); }
|
| $update = false;
|
if(!$mybb->user['pmfolders']) {
|
if(!$mybb->user['pmfolders']) {
|
$mybb->user['pmfolders'] = "1**$%%$2**$%%$3**$%%$4**";
| $update = true; $mybb->user['pmfolders'] = "0**$%%$1**$%%$2**$%%$3**$%%$4**"; } elseif ((int)my_substr($mybb->user['pmfolders'], 0, 1) != 0) { // Old folder structure. Need to update // Since MyBB 1.8.20 fid[0] represents 'Inbox' and fid[1] represents 'Unread' $update = true; $mybb->user['pmfolders'] = '0'. ltrim(str_replace("$%%$2**", "$%%$1**$%%$2**", $mybb->user['pmfolders']), '1'); }
|
|
|
| // Folder structure update required? if($update) {
|
$sql_array = array( "pmfolders" => $mybb->user['pmfolders'] );
| $sql_array = array( "pmfolders" => $mybb->user['pmfolders'] );
|
Zeile 174 | Zeile 187 |
---|
else { $resulttype = "pmsubjects";
|
else { $resulttype = "pmsubjects";
|
}
| }
|
$search_data = array( "keywords" => $mybb->get_input('keywords'),
| $search_data = array( "keywords" => $mybb->get_input('keywords'),
|
Zeile 267 | Zeile 280 |
---|
else { $sortby = $query_sortby = "dateline";
|
else { $sortby = $query_sortby = "dateline";
|
}
if($order != "asc") { $order = "desc"; }
| }
if($order != "asc") { $order = "desc"; }
|
if(!$mybb->settings['threadsperpage'] || (int)$mybb->settings['threadsperpage'] < 1) { $mybb->settings['threadsperpage'] = 20; }
|
if(!$mybb->settings['threadsperpage'] || (int)$mybb->settings['threadsperpage'] < 1) { $mybb->settings['threadsperpage'] = 20; }
|
| $query = $db->simple_select("privatemessages", "COUNT(*) AS total", "pmid IN(".$db->escape_string($search['querycache']).")"); $pmscount = $db->fetch_field($query, "total");
|
// Work out pagination, which page we're at, as well as the limits. $perpage = $mybb->settings['threadsperpage'];
| // Work out pagination, which page we're at, as well as the limits. $perpage = $mybb->settings['threadsperpage'];
|
Zeile 285 | Zeile 301 |
---|
if($page > 0) { $start = ($page-1) * $perpage;
|
if($page > 0) { $start = ($page-1) * $perpage;
|
| $pages = ceil($pmscount / $perpage); if($page > $pages) { $start = 0; $page = 1; }
|
} else {
| } else {
|
Zeile 303 | Zeile 325 |
---|
}
// Do Multi Pages
|
}
// Do Multi Pages
|
$query = $db->simple_select("privatemessages", "COUNT(*) AS total", "pmid IN(".$db->escape_string($search['querycache']).")"); $pmscount = $db->fetch_array($query);
| |
if($upper > $pmscount) { $upper = $pmscount; }
|
if($upper > $pmscount) { $upper = $pmscount; }
|
$multipage = multipage($pmscount['total'], $perpage, $page, "private.php?action=results&sid=".htmlspecialchars_uni($mybb->get_input('sid'))."&sortby={$sortby}&order={$order}");
| $multipage = multipage($pmscount, $perpage, $page, "private.php?action=results&sid=".htmlspecialchars_uni($mybb->get_input('sid'))."&sortby={$sortby}&order={$order}");
|
$messagelist = '';
$icon_cache = $cache->read("posticons");
| $messagelist = '';
$icon_cache = $cache->read("posticons");
|
Zeile 558 | Zeile 577 |
---|
// Attempt to see if this PM is a duplicate or not $to = array_map("trim", explode(",", $mybb->get_input('to')));
|
// Attempt to see if this PM is a duplicate or not $to = array_map("trim", explode(",", $mybb->get_input('to')));
|
| $to = array_unique($to); // Filter out any duplicates
|
$to_escaped = implode("','", array_map(array($db, 'escape_string'), array_map('my_strtolower', $to))); $time_cutoff = TIME_NOW - (5 * 60 * 60); $query = $db->query("
| $to_escaped = implode("','", array_map(array($db, 'escape_string'), array_map('my_strtolower', $to))); $time_cutoff = TIME_NOW - (5 * 60 * 60); $query = $db->query("
|
Zeile 704 | Zeile 724 |
---|
{ $optionschecked['readreceipt'] = 'checked="checked"'; }
|
{ $optionschecked['readreceipt'] = 'checked="checked"'; }
|
$to = htmlspecialchars_uni($mybb->get_input('to')); $bcc = htmlspecialchars_uni($mybb->get_input('bcc'));
| $to = htmlspecialchars_uni(implode(', ', array_unique(array_map('trim', explode(',', $mybb->get_input('to')))))); $bcc = htmlspecialchars_uni(implode(', ', array_unique(array_map('trim', explode(',', $mybb->get_input('bcc'))))));
|
}
$preview = '';
| }
$preview = '';
|
Zeile 859 | Zeile 879 |
---|
if($mybb->settings['maxpmquotedepth'] != '0') { $message = remove_message_quotes($message, $mybb->settings['maxpmquotedepth']);
|
if($mybb->settings['maxpmquotedepth'] != '0') { $message = remove_message_quotes($message, $mybb->settings['maxpmquotedepth']);
|
}
| }
|
if($mybb->input['do'] == 'forward') {
| if($mybb->input['do'] == 'forward') {
|
Zeile 924 | Zeile 944 |
---|
if($send_errors) {
|
if($send_errors) {
|
$to = htmlspecialchars_uni($mybb->get_input('to')); $bcc = htmlspecialchars_uni($mybb->get_input('bcc'));
| $to = htmlspecialchars_uni(implode(', ', array_unique(array_map('trim', explode(',', $mybb->get_input('to')))))); $bcc = htmlspecialchars_uni(implode(', ', array_unique(array_map('trim', explode(',', $mybb->get_input('bcc'))))));
|
}
// Load the auto complete javascript if it is enabled.
| }
// Load the auto complete javascript if it is enabled.
|
Zeile 996 | Zeile 1016 |
---|
'image' => 'groupimage', 'namestyle' => 'namestyle' );
|
'image' => 'groupimage', 'namestyle' => 'namestyle' );
|
|
|
foreach($data_key as $field => $key) { $pm[$key] = $groupscache[$pm['usergroup']][$field];
| foreach($data_key as $field => $key) { $pm[$key] = $groupscache[$pm['usergroup']][$field];
|
Zeile 1095 | Zeile 1115 |
---|
{ $uid_sql = $pm['toid']; $pm['recipients']['to'] = array($pm['toid']);
|
{ $uid_sql = $pm['toid']; $pm['recipients']['to'] = array($pm['toid']);
|
}
$show_bcc = 0;
| }
$show_bcc = 0;
|
// If we have any BCC recipients and this user is an Administrator, add them on to the query if(isset($pm['recipients']['bcc']) && count($pm['recipients']['bcc']) > 0 && $mybb->usergroup['cancp'] == 1) {
| // If we have any BCC recipients and this user is an Administrator, add them on to the query if(isset($pm['recipients']['bcc']) && count($pm['recipients']['bcc']) > 0 && $mybb->usergroup['cancp'] == 1) {
|
Zeile 1131 | Zeile 1151 |
---|
$bcc_recipients = implode(', ', $bcc_recipients); $bcc_form_val = implode(',', $bcc_form_val); eval("\$bcc = \"".$templates->get("private_read_bcc")."\";");
|
$bcc_recipients = implode(', ', $bcc_recipients); $bcc_form_val = implode(',', $bcc_form_val); eval("\$bcc = \"".$templates->get("private_read_bcc")."\";");
|
}
| }
|
else { $bcc_form_val = '';
|
else { $bcc_form_val = '';
|
}
| }
|
$replyall = false; if(count($to_recipients) > 1) {
| $replyall = false; if(count($to_recipients) > 1) {
|
Zeile 1144 | Zeile 1164 |
---|
}
if(count($to_recipients) > 0)
|
}
if(count($to_recipients) > 0)
|
{
| {
|
$to_recipients = implode($lang->comma, $to_recipients); } else
|
$to_recipients = implode($lang->comma, $to_recipients); } else
|
{
| {
|
$to_recipients = $lang->nobody; }
eval("\$pm['subject_extra'] = \"".$templates->get("private_read_to")."\";");
|
$to_recipients = $lang->nobody; }
eval("\$pm['subject_extra'] = \"".$templates->get("private_read_to")."\";");
|
|
|
add_breadcrumb($pm['subject']); $message = build_postbit($pm, 2);
| add_breadcrumb($pm['subject']); $message = build_postbit($pm, 2);
|
Zeile 1165 | Zeile 1185 |
---|
$optionschecked = array('savecopy' => 'checked="checked"'); if(!empty($mybb->user['signature']))
|
$optionschecked = array('savecopy' => 'checked="checked"'); if(!empty($mybb->user['signature']))
|
{
| {
|
$optionschecked['signature'] = 'checked="checked"'; } if($mybb->usergroup['cantrackpms'] == 1)
| $optionschecked['signature'] = 'checked="checked"'; } if($mybb->usergroup['cantrackpms'] == 1)
|
Zeile 1267 | Zeile 1287 |
---|
$query = $db->query(" SELECT pm.pmid, pm.subject, pm.toid, pm.readtime, u.username as tousername
|
$query = $db->query(" SELECT pm.pmid, pm.subject, pm.toid, pm.readtime, u.username as tousername
|
FROM ".TABLE_PREFIX."privatemessages pm
| FROM ".TABLE_PREFIX."privatemessages pm
|
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=pm.toid) WHERE pm.receipt='2' AND pm.folder!='3' AND pm.status!='0' AND pm.fromid='".$mybb->user['uid']."' ORDER BY pm.readtime DESC
| LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=pm.toid) WHERE pm.receipt='2' AND pm.folder!='3' AND pm.status!='0' AND pm.fromid='".$mybb->user['uid']."' ORDER BY pm.readtime DESC
|
Zeile 1280 | Zeile 1300 |
---|
$readmessage['profilelink'] = build_profile_link($readmessage['tousername'], $readmessage['toid']); $readdate = my_date('relative', $readmessage['readtime']); eval("\$readmessages .= \"".$templates->get("private_tracking_readmessage")."\";");
|
$readmessage['profilelink'] = build_profile_link($readmessage['tousername'], $readmessage['toid']); $readdate = my_date('relative', $readmessage['readtime']); eval("\$readmessages .= \"".$templates->get("private_tracking_readmessage")."\";");
|
}
| }
|
$stoptrackingread = ''; if(!empty($readmessages))
|
$stoptrackingread = ''; if(!empty($readmessages))
|
{
| {
|
eval("\$stoptrackingread = \"".$templates->get("private_tracking_readmessage_stop")."\";"); }
| eval("\$stoptrackingread = \"".$templates->get("private_tracking_readmessage_stop")."\";"); }
|
Zeile 1301 | Zeile 1321 |
---|
$pages = ceil($pages);
if($mybb->get_input('unread_page') == "last")
|
$pages = ceil($pages);
if($mybb->get_input('unread_page') == "last")
|
{
| {
|
$page = $pages; }
| $page = $pages; }
|
Zeile 1402 | Zeile 1422 |
---|
if(!empty($mybb->input['unreadcheck'])) { foreach($mybb->input['unreadcheck'] as $pmid => $val)
|
if(!empty($mybb->input['unreadcheck'])) { foreach($mybb->input['unreadcheck'] as $pmid => $val)
|
{
| {
|
$pmids[$pmid] = (int)$pmid;
|
$pmids[$pmid] = (int)$pmid;
|
}
| }
|
$pmids = implode(",", $pmids); $query = $db->simple_select("privatemessages", "uid", "pmid IN ($pmids) AND fromid='".$mybb->user['uid']."'"); while($pm = $db->fetch_array($query))
| $pmids = implode(",", $pmids); $query = $db->simple_select("privatemessages", "uid", "pmid IN ($pmids) AND fromid='".$mybb->user['uid']."'"); while($pm = $db->fetch_array($query))
|
Zeile 1415 | Zeile 1435 |
---|
$db->delete_query("privatemessages", "pmid IN ($pmids) AND receipt='1' AND status='0' AND fromid='".$mybb->user['uid']."'"); foreach($pmuids as $uid)
|
$db->delete_query("privatemessages", "pmid IN ($pmids) AND receipt='1' AND status='0' AND fromid='".$mybb->user['uid']."'"); foreach($pmuids as $uid)
|
{
| {
|
// Message is canceled, update PM count for this user update_pm_count($uid); }
| // Message is canceled, update PM count for this user update_pm_count($uid); }
|
Zeile 1426 | Zeile 1446 |
---|
}
if($mybb->input['action'] == "stopalltracking")
|
}
if($mybb->input['action'] == "stopalltracking")
|
{ // Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
| { // Verify incoming POST request verify_post_check($mybb->get_input('my_post_key'));
|
$plugins->run_hooks("private_stopalltracking_start");
| $plugins->run_hooks("private_stopalltracking_start");
|
Zeile 1442 | Zeile 1462 |
---|
}
if($mybb->input['action'] == "folders")
|
}
if($mybb->input['action'] == "folders")
|
{
| {
|
$plugins->run_hooks("private_folders_start");
$folderlist = '';
| $plugins->run_hooks("private_folders_start");
$folderlist = '';
|
Zeile 1454 | Zeile 1474 |
---|
$fid = $folderinfo[0]; $foldername = get_pm_folder_name($fid, $foldername);
|
$fid = $folderinfo[0]; $foldername = get_pm_folder_name($fid, $foldername);
|
if($folderinfo[0] == "1" || $folderinfo[0] == "2" || $folderinfo[0] == "3" || $folderinfo[0] == "4")
| if((int)$folderinfo[0] < 5)
|
{ $foldername2 = get_pm_folder_name($fid); eval("\$folderlist .= \"".$templates->get("private_folders_folder_unremovable")."\";");
| { $foldername2 = get_pm_folder_name($fid); eval("\$folderlist .= \"".$templates->get("private_folders_folder_unremovable")."\";");
|
Zeile 1496 | Zeile 1516 |
---|
if(empty($donefolders[$val]) )// Probably was a check for duplicate folder names, but doesn't seem to be used now { if(my_substr($key, 0, 3) == "new") // Create a new folder
|
if(empty($donefolders[$val]) )// Probably was a check for duplicate folder names, but doesn't seem to be used now { if(my_substr($key, 0, 3) == "new") // Create a new folder
|
{
| {
|
++$highestid; $fid = (int)$highestid; } else // Editing an existing folder { if($key > $highestid)
|
++$highestid; $fid = (int)$highestid; } else // Editing an existing folder { if($key > $highestid)
|
{
| {
|
$highestid = $key; }
$fid = (int)$key; // Use default language strings if empty or value is language string
|
$highestid = $key; }
$fid = (int)$key; // Use default language strings if empty or value is language string
|
switch($fid)
| if($val == get_pm_folder_name($fid) || trim($val) == '')
|
{
|
{
|
case 1: if($val == $lang->folder_inbox || trim($val) == '') { $val = ''; } break; case 2: if($val == $lang->folder_sent_items || trim($val) == '') { $val = ''; } break; case 3: if($val == $lang->folder_drafts || trim($val) == '') { $val = ''; } break; case 4: if($val == $lang->folder_trash || trim($val) == '') { $val = ''; } break;
| $val = '';
|
} }
|
} }
|
if($val != '' && trim($val) == '' && !($key >= 1 && $key <= 4))
| if($val != '' && trim($val) == '' && !(is_numeric($key) && $key <= 4))
|
{ // If the name only contains whitespace and it's not a default folder, print an error error($lang->error_emptypmfoldername); }
|
{ // If the name only contains whitespace and it's not a default folder, print an error error($lang->error_emptypmfoldername); }
|
if($val != '' || ($key >= 1 && $key <= 4))
| if($val != '' || (is_numeric($key) && $key <= 4))
|
{ // If there is a name or if this is a default folder, save it $foldername = $db->escape_string(htmlspecialchars_uni($val));
| { // If there is a name or if this is a default folder, save it $foldername = $db->escape_string(htmlspecialchars_uni($val));
|
Zeile 2079 | Zeile 2076 |
---|
if(!$mybb->input['fid'] || !array_key_exists($mybb->input['fid'], $foldernames)) {
|
if(!$mybb->input['fid'] || !array_key_exists($mybb->input['fid'], $foldernames)) {
|
$mybb->input['fid'] = 1;
| $mybb->input['fid'] = 0;
|
}
|
}
|
$folder = $mybb->input['fid']; $foldername = $foldernames[$folder];
| $fid = (int)$mybb->input['fid']; $folder = !$fid ? 1 : $fid; $foldername = $foldernames[$fid];
|
if($folder == 2 || $folder == 3) { // Sent Items Folder
| if($folder == 2 || $folder == 3) { // Sent Items Folder
|
Zeile 2135 | Zeile 2133 |
---|
// Do Multi Pages $query = $db->simple_select("privatemessages", "COUNT(*) AS total", "uid='".$mybb->user['uid']."' AND folder='$folder'");
|
// Do Multi Pages $query = $db->simple_select("privatemessages", "COUNT(*) AS total", "uid='".$mybb->user['uid']."' AND folder='$folder'");
|
$pmscount = $db->fetch_array($query);
| $pmscount = $db->fetch_field($query, "total");
|
if(!$mybb->settings['threadsperpage'] || (int)$mybb->settings['threadsperpage'] < 1) {
| if(!$mybb->settings['threadsperpage'] || (int)$mybb->settings['threadsperpage'] < 1) {
|
Zeile 2148 | Zeile 2146 |
---|
if($page > 0) { $start = ($page-1) *$perpage;
|
if($page > 0) { $start = ($page-1) *$perpage;
|
| $pages = ceil($pmscount / $perpage); if($page > $pages) { $start = 0; $page = 1; }
|
} else {
| } else {
|
Zeile 2165 | Zeile 2169 |
---|
}
if($mybb->input['order'] || ($sortby && $sortby != "dateline"))
|
}
if($mybb->input['order'] || ($sortby && $sortby != "dateline"))
|
{ $page_url = "private.php?fid={$folder}&sortby={$sortby}&order={$sortordernow}"; } else { $page_url = "private.php?fid={$folder}"; }
$multipage = multipage($pmscount['total'], $perpage, $page, $page_url); $messagelist = '';
| { $page_url = "private.php?fid={$fid}&sortby={$sortby}&order={$sortordernow}"; } else { $page_url = "private.php?fid={$fid}"; }
$multipage = multipage($pmscount, $perpage, $page, $page_url); $selective = $messagelist = '';
|
$icon_cache = $cache->read("posticons");
// Cache users in multiple recipients for sent & drafts folder
| $icon_cache = $cache->read("posticons");
// Cache users in multiple recipients for sent & drafts folder
|
Zeile 2184 | Zeile 2188 |
---|
if($sortfield == "username") { $u = "u.";
|
if($sortfield == "username") { $u = "u.";
|
}
| }
|
else { $u = "pm.";
| else { $u = "pm.";
|
Zeile 2206 | Zeile 2210 |
---|
if(is_array($recipients['to']) && count($recipients['to'])) { $get_users = array_merge($get_users, $recipients['to']);
|
if(is_array($recipients['to']) && count($recipients['to'])) { $get_users = array_merge($get_users, $recipients['to']);
|
}
| }
|
if(isset($recipients['bcc']) && is_array($recipients['bcc']) && count($recipients['bcc'])) {
| if(isset($recipients['bcc']) && is_array($recipients['bcc']) && count($recipients['bcc'])) {
|
Zeile 2228 | Zeile 2232 |
---|
}
if($folder == 2 || $folder == 3)
|
}
if($folder == 2 || $folder == 3)
|
{
| {
|
if($sortfield == "username")
|
if($sortfield == "username")
|
{
| {
|
$pm = "tu."; } else
|
$pm = "tu."; } else
|
{
| {
|
$pm = "pm."; } } else {
|
$pm = "pm."; } } else {
|
| if($fid == 1) { $selective = ' AND pm.status="0"'; }
|
if($sortfield == "username") { $pm = "fu.";
| if($sortfield == "username") { $pm = "fu.";
|
Zeile 2255 | Zeile 2264 |
---|
FROM ".TABLE_PREFIX."privatemessages pm LEFT JOIN ".TABLE_PREFIX."users fu ON (fu.uid=pm.fromid) LEFT JOIN ".TABLE_PREFIX."users tu ON (tu.uid=pm.toid)
|
FROM ".TABLE_PREFIX."privatemessages pm LEFT JOIN ".TABLE_PREFIX."users fu ON (fu.uid=pm.fromid) LEFT JOIN ".TABLE_PREFIX."users tu ON (tu.uid=pm.toid)
|
WHERE pm.folder='$folder' AND pm.uid='".$mybb->user['uid']."'
| WHERE pm.folder='$folder' AND pm.uid='".$mybb->user['uid']."'{$selective}
|
ORDER BY {$pm}{$sortfield} {$sortordernow} LIMIT $start, $perpage ");
| ORDER BY {$pm}{$sortfield} {$sortordernow} LIMIT $start, $perpage ");
|