From 959541d5050eaf80c72aa0f8be3d8dba4f7ccde3 Mon Sep 17 00:00:00 2001 From: Savetheinternet Date: Mon, 28 Mar 2011 17:24:23 +1100 Subject: Added needed "board" column to modlogs (see commit comment for required SQL query) --- mod.php | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) (limited to 'mod.php') diff --git a/mod.php b/mod.php index 3db8ea6d..57a8cdcb 100644 --- a/mod.php +++ b/mod.php @@ -128,9 +128,15 @@ } elseif(preg_match('/^\/log$/', $query)) { if($mod['type'] < $config['mod']['modlog']) error($config['error']['noaccess']); - $body = ''; + $boards = Array(); + $_boards = listBoards(); + foreach($_boards as &$_b) { + $boards[$_b['id']] = $_b['uri']; + } + + $body = '
UserIP addressAgoAction
'; - $query = prepare("SELECT `id`,`username`,`ip`,`time`,`text` FROM `modlogs` INNER JOIN `mods` ON `mod` = `id` ORDER BY `time` DESC LIMIT :limit"); + $query = prepare("SELECT `mods`.`id`,`username`,`ip`,`board`,`time`,`text` FROM `modlogs` INNER JOIN `mods` ON `mod` = `mods`.`id` ORDER BY `time` DESC LIMIT :limit"); $query->bindValue(':limit', $config['mod']['modlog_page'], PDO::PARAM_INT); $query->execute() or error(db_error($query)); @@ -143,6 +149,12 @@ '' . '' . '' . + '' + : 'deleted?') + : '-') . '' . ''; } @@ -173,12 +185,17 @@ $query = prepare("DELETE FROM `pms` WHERE `id` = :id"); $query->bindValue(':id', $id, PDO::PARAM_INT); $query->execute() or error(db_error($query)); + + modLog('Deleted a PM'); + header('Location: ?/', true, $config['redirect_http']); } else { $query = prepare("UPDATE `pms` SET `unread` = 0 WHERE `id` = :id"); $query->bindValue(':id', $id, PDO::PARAM_INT); $query->execute() or error(db_error($query)); + modLog('Read a PM'); + $body = '
UserIP addressAgoBoardAction
' . $log['username'] . '' . $log['ip'] . '' . ago($log['time']) . '' . + ($log['board'] ? + (isset($boards[$log['board']]) ? + '' . sprintf($config['board_abbreviation'], $boards[$log['board']]) . '' . $log['text'] . '
From' . ($mod['type'] >= $config['mod']['editusers'] ? '' . htmlentities($pm['username']) . '' : @@ -234,6 +251,8 @@ $query->bindValue(':time', time(), PDO::PARAM_INT); $query->execute() or error(db_error($query)); + modLog('Sent a PM to ' . $to['username']); + echo Element('page.html', Array( 'config'=>$config, 'title'=>'PM sent', @@ -399,6 +418,8 @@ $query = prepare("DELETE FROM `mods` WHERE `id` = :id"); $query->bindValue(':id', $modID, PDO::PARAM_INT); $query->execute() or error(db_error($query)); + + modLog('Deleted user #' . $modID); } else { // Promote/demote if($mod['type'] < $config['mod']['promoteusers']) error($config['error']['noaccess']); @@ -436,6 +457,9 @@ $query->bindValue(':username', $_POST['username']); $query->bindValue(':id', $modID, PDO::PARAM_INT); $query->execute() or error(db_error($query)); + modLog('Edited login details for user "' . $_mod['username'] . '"'); + } else { + modLog('Changed own password'); } if(!empty($_POST['password'])) { $query = prepare("UPDATE `mods` SET `password` = :password WHERE `id` = :id"); @@ -602,6 +626,8 @@ if($mod['type'] < $config['mod']['deleteboard']) error($config['error']['noaccess']); // Delete board + modLog('Deleted board ' . sprintf($config['board_abbreviation'], $board['uri'])); + // Delete entire board directory rrmdir($board['uri'] . '/'); @@ -800,6 +826,8 @@ } $body .= 'Complete!

'; + modLog('Rebuilt everything'); + echo Element('page.html', Array( 'config'=>$config, 'title'=>'Rebuilt', @@ -1191,7 +1219,7 @@ } // Record the action - modLog("Created a ban for {$_POST['ip']} with reason {$_POST['reason']}"); + modLog('Created a ' . ($expire ? $expire . ' second' : 'permanent') . " ban for {$_POST['ip']} with " . (!empty($_POST['reason']) ? "reason \"{$_POST['reason']}\"" : 'no reason')); $query->execute() or error(db_error($query)); -- cgit v1.3