Fix up PM export script

This commit is contained in:
Adrian Kuschelyagi Malacoda 2020-07-27 02:57:19 -05:00
parent 6716f274db
commit 1a2dbbe65b

View File

@ -1,34 +1,31 @@
<?php
include("smf_api.php");
global $smcFunc;
# SELECT * FROM `smf_personal_messages` AS `pms`, `smf_members` AS `senders`, `smf_pm_recipients` AS `recipients` WHERE `pms`.`id_member_from` = `senders`.`id_member` AND `pms`.`id_pm` = `recipients`.`id_pm` AND (`recipients`.`id_member` = 1 OR `pms`.`id_member_from` = 1);
//include("smf_api.php");
include("SSI.php");
global $smcFunc, $user_info, $db_prefix, $db_name;
// SELECT * FROM `smf_personal_messages` AS `pms`, `smf_members` AS `senders`, `smf_pm_recipients` AS `recipients` WHERE `pms`.`id_member_from` = `senders`.`id_member` AND `pms`.`id_pm` = `recipients`.`id_pm` AND (`recipients`.`id_member` = 1 OR `pms`.`id_member_from` = 1);
$user_data = smfapi_getUserData();
$request = $smcFunc['db_query']('', '
SELECT `pms`_`id_pm`, `pms`.`subject`, `pms`.`body`, `pms`.`msgtime`,
`pms`.`from_name` AS `sender_username`,
SELECT `pms`.`id_pm`, `pms`.`subject`, `pms`.`body`, `pms`.`msgtime`,
`senders`.`member_name` AS `sender_username`,
`senders`.`real_name` AS `sender_display_name`,
`recipient_members`.`member_name` AS `recipient_username`,
`recipient_members`.`real_name` AS `recipient_display_name`
FROM `{db_prefix}_personal_messages` AS `pms`,
`{db_prefix}_members` AS `senders`,
`{db_prefix}_members` AS `recipient_members`,
`{db_prefix}_pm_recipients` AS `recipients`
FROM {db_prefix}personal_messages AS `pms`,
{db_prefix}members AS `senders`,
{db_prefix}members AS `recipient_members`,
{db_prefix}pm_recipients AS `recipients`
WHERE `pms`.`id_member_from` = `senders`.`id_member`
AND `recipient_members`.`id_member` = `recipients`.`id_member`
AND `pms`.`id_pm` = `recipients`.`id_pm`
AND (`recipients`.`id_member` = {int:id_member} OR `pms`.`id_member_from` = {int:id_member})',
array(
'id_member' => $user_data['id_member'],
'id_member' => $user_info['id'],
)
);
$results = $smcFunc['db_fetch_assoc']($request);
$smcFunc['db_free_result']($request);
function format_name ($result, $type) {
$username = $result["$type_username"];
$display_name = $result["$type_display_name"];
$username = $result["${type}_username"];
$display_name = $result["${type}_display_name"];
$name = $display_name;
if ($display_name != $username) {
$name = "$name ($username)";
@ -38,29 +35,35 @@ function format_name ($result, $type) {
echo "<html>
<head>
<title>Personal Messages sent to/from ${user_data['real_name']}</title>
<title>Personal Messages sent to/from ${user_info['name']}</title>
<style type='text/css'>
.label { font-weight: bold }
h2 { font-size: 17px }
article { border-top: 1px solid black; }
section { margin-top: 15px; margin-bottom: 15px; }
</style>
</head>
<body>";
<body>
<h1>Personal Messages sent to/from ${user_info['name']}</h1>";
foreach ($results as $row) {
while ($row = $smcFunc['db_fetch_assoc']($request)) {
$to = format_name($row, "recipient");
$from = format_name($row, "sender");
$date = $row['msgtime'];
$date = strftime("%c", $row['msgtime']);
$body = parse_bbc($row['body'], true, "pm" . $row['id_pm']);
echo "<article>
<header>
<h2>${result['subject']}</h2>
<div><span class='label'>To:</span> $to</div>
<h2><a href='#${row['id_pm']}' id='${row['id_pm']}'>${row['subject']}</a></h2>
<div><span class='label'>From:</span> $from</div>
<div><span class='label'>Date:</span> $from</div>
<div><span class='label'>To:</span> $to</div>
<div><span class='label'>Date:</span> $date</div>
</header>
<section>$body</section>
</article>";
}
print_r($results);
flush();
}
$smcFunc['db_free_result']($request);
echo "</body></html>";