"Shadow thread" automated reply with thread moving.
This commit is contained in:
parent
d8fe3ff8d8
commit
e8ad164358
|
@ -744,6 +744,14 @@
|
|||
// What to append to the post for public bans ("%s" is the message)
|
||||
$config['mod']['ban_message'] = '<span class="public_ban">(%s)</span>';
|
||||
|
||||
// When moving a thread to another board and choosing to keep a "shadow thread", an automated post (with a capcode) will
|
||||
// be made, linking to the new location for the thread. "%s" will be replaced with a standard cross-board post citation (>>>/board/xxx)
|
||||
$config['mod']['shadow_mesage'] = 'Moved to %s.';
|
||||
// Capcode to use when posting the above message.
|
||||
$config['mod']['shadow_capcode'] = 'Mod';
|
||||
// Name to use when posting the above message.
|
||||
$config['mod']['shadow_name'] = $config['anonymous'];
|
||||
|
||||
// Wait indefinitely when rebuilding everything
|
||||
$config['mod']['rebuild_timelimit'] = 0;
|
||||
|
||||
|
|
|
@ -614,9 +614,9 @@
|
|||
$query->bindValue(':name', $post['name']);
|
||||
$query->bindValue(':trip', $post['trip']);
|
||||
$query->bindValue(':body', $post['body']);
|
||||
$query->bindValue(':time', $post['time'] ? $post['time'] : time(), PDO::PARAM_INT);
|
||||
$query->bindValue(':time', isset($post['time']) ? $post['time'] : time(), PDO::PARAM_INT);
|
||||
$query->bindValue(':password', $post['password']);
|
||||
$query->bindValue(':ip', $post['ip'] ? $post['ip'] : $_SERVER['REMOTE_ADDR']);
|
||||
$query->bindValue(':ip', isset($post['ip']) ? $post['ip'] : $_SERVER['REMOTE_ADDR']);
|
||||
|
||||
if($post['mod'] && $post['sticky']) {
|
||||
$query->bindValue(':sticky', 1, PDO::PARAM_INT);
|
||||
|
|
33
mod.php
33
mod.php
|
@ -2255,15 +2255,40 @@
|
|||
// trigger themes
|
||||
rebuildThemes('post');
|
||||
|
||||
openBoard($boardName);
|
||||
|
||||
if($shadow) {
|
||||
// do something
|
||||
// lock thread
|
||||
$query = prepare(sprintf("UPDATE `posts_%s` SET `locked` = 1 WHERE `id` = :id", $board['uri']));
|
||||
$query->bindValue(':id', $postID, PDO::PARAM_INT);
|
||||
$query->execute() or error(db_error($query));
|
||||
|
||||
$post = Array(
|
||||
'mod' => true,
|
||||
'subject' => '',
|
||||
'email' => '',
|
||||
'name' => $config['mod']['shadow_name'],
|
||||
'capcode' => $config['mod']['shadow_capcode'],
|
||||
'trip' => '',
|
||||
'body' => sprintf($config['mod']['shadow_mesage'], '>>>/' . $targetBoard . '/' . $newID),
|
||||
'password' => '',
|
||||
'has_file' => false,
|
||||
// attach to original thread
|
||||
'thread' => $postID
|
||||
);
|
||||
|
||||
markup($post['body']);
|
||||
|
||||
$botID = post($post, false);
|
||||
|
||||
header('Location: ?/' . sprintf($config['board_path'], $boardName) . $config['dir']['res'] . sprintf($config['file_page'], $postID) . '#' . $botID, true, $config['redirect_http']);
|
||||
} else {
|
||||
openBoard($boardName);
|
||||
deletePost($postID);
|
||||
buildIndex();
|
||||
|
||||
openBoard($targetBoard);
|
||||
header('Location: ?/' . sprintf($config['board_path'], $boardName) . $config['dir']['res'] . sprintf($config['file_page'], $newID), true, $config['redirect_http']);
|
||||
}
|
||||
|
||||
header('Location: ?/' . sprintf($config['board_path'], $boardName) . $config['file_index'], true, $config['redirect_http']);
|
||||
} else {
|
||||
|
||||
$body = '<fieldset><legend>Move thread</legend>' .
|
||||
|
|
Loading…
Reference in New Issue