diff --git a/admin/admin_log.php b/admin/admin_log.php
index 8b631c509..976b0ac54 100644
--- a/admin/admin_log.php
+++ b/admin/admin_log.php
@@ -225,6 +225,7 @@ if ($log_rowset) {
case $log_type['mod_topic_unlock']:
case $log_type['mod_topic_set_downloaded']:
case $log_type['mod_topic_unset_downloaded']:
+ case $log_type['mod_topic_renamed']:
case $log_type['mod_post_delete']:
case $log_type['mod_post_pin']:
case $log_type['mod_post_unpin']:
diff --git a/library/ajax/mod_action.php b/library/ajax/mod_action.php
index b6b3da9b8..9de6f8f19 100644
--- a/library/ajax/mod_action.php
+++ b/library/ajax/mod_action.php
@@ -11,7 +11,7 @@ if (!defined('IN_AJAX')) {
die(basename(__FILE__));
}
-global $userdata, $bb_cfg, $lang, $datastore;
+global $userdata, $bb_cfg, $lang, $datastore, $log_action;
$mode = (string)$this->request['mode'];
@@ -36,8 +36,8 @@ switch ($mode) {
case 'edit_topic_title':
$topic_id = (int)$this->request['topic_id'];
- $topic_title = (string)$this->request['topic_title'];
- $new_title = clean_title($topic_title);
+ $old_title = get_topic_title($topic_id);
+ $new_title = clean_title((string)$this->request['topic_title']);
if (!$topic_id) {
$this->ajax_die($lang['INVALID_TOPIC_ID']);
@@ -68,6 +68,14 @@ switch ($mode) {
$datastore->update('network_news');
}
+ // Log action
+ $log_action->mod('mod_topic_renamed', array(
+ 'forum_id' => $t_data['forum_id'],
+ 'topic_id' => $topic_id,
+ 'topic_title' => $old_title,
+ 'topic_title_new' => $new_title,
+ ));
+
$this->response['topic_id'] = $topic_id;
$this->response['topic_title'] = $new_title;
break;
diff --git a/library/language/source/main.php b/library/language/source/main.php
index 500a20eed..1f940472f 100644
--- a/library/language/source/main.php
+++ b/library/language/source/main.php
@@ -2552,6 +2552,7 @@ $lang['LOG_ACTION']['LOG_TYPE'] = array(
'mod_topic_split' => 'Topic:
split',
'mod_topic_set_downloaded' => 'Topic:
set downloaded',
'mod_topic_unset_downloaded' => 'Topic:
unset downloaded',
+ 'mod_topic_renamed' => 'Topic:
renamed',
'mod_post_delete' => 'Post:
deleted',
'mod_post_pin' => 'Post:
pinned',
'mod_post_unpin' => 'Post:
unpinned',
diff --git a/src/Legacy/LogAction.php b/src/Legacy/LogAction.php
index a9b1df22e..766d17e3c 100644
--- a/src/Legacy/LogAction.php
+++ b/src/Legacy/LogAction.php
@@ -22,13 +22,14 @@ class LogAction
'mod_topic_unlock' => 4,
'mod_topic_set_downloaded' => 5,
'mod_topic_unset_downloaded' => 6,
- 'mod_post_delete' => 7,
- 'mod_post_pin' => 8,
- 'mod_post_unpin' => 9,
- 'mod_topic_split' => 10,
- 'adm_user_delete' => 11,
- 'adm_user_ban' => 12,
- 'adm_user_unban' => 13,
+ 'mod_topic_renamed' => 7,
+ 'mod_post_delete' => 8,
+ 'mod_post_pin' => 9,
+ 'mod_post_unpin' => 10,
+ 'mod_topic_split' => 11,
+ 'adm_user_delete' => 12,
+ 'adm_user_ban' => 13,
+ 'adm_user_unban' => 14,
];
public $log_type_select = [];
public $log_disabled = false;