aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/mcp
diff options
context:
space:
mode:
authorOliver Schramm <oliver.schramm97@gmail.com>2014-10-20 00:24:16 +0200
committerOliver Schramm <oliver.schramm97@gmail.com>2014-10-20 00:24:16 +0200
commit30213816ae2824f423b49b5e9c91806b0676ce4b (patch)
tree25044a276191644e0bbf89bd9f90d75d5f29a0a2 /phpBB/includes/mcp
parentc939f1b2c7c0d496b2a39434b7eb5da7a9749b01 (diff)
downloadforums-30213816ae2824f423b49b5e9c91806b0676ce4b.tar
forums-30213816ae2824f423b49b5e9c91806b0676ce4b.tar.gz
forums-30213816ae2824f423b49b5e9c91806b0676ce4b.tar.bz2
forums-30213816ae2824f423b49b5e9c91806b0676ce4b.tar.xz
forums-30213816ae2824f423b49b5e9c91806b0676ce4b.zip
[ticket/13100] Display only confirmation buttons when deleting shadow topic
PHPBB3-13100
Diffstat (limited to 'phpBB/includes/mcp')
-rw-r--r--phpBB/includes/mcp/mcp_main.php15
1 files changed, 13 insertions, 2 deletions
diff --git a/phpBB/includes/mcp/mcp_main.php b/phpBB/includes/mcp/mcp_main.php
index 19a0ee3051..fb9d89755e 100644
--- a/phpBB/includes/mcp/mcp_main.php
+++ b/phpBB/includes/mcp/mcp_main.php
@@ -813,8 +813,18 @@ function mcp_delete_topic($topic_ids, $is_soft = false, $soft_delete_reason = ''
$user->add_lang('posting');
+ $only_shadow = false;
+ // If there are only shadow topics, we neither need a reason nor softdelete
+ $sql = 'SELECT topic_id
+ FROM ' . TOPICS_TABLE . '
+ WHERE ' . $db->sql_in_set('topic_id', $topic_ids) . '
+ AND topic_moved_id = 0';
+ $result = $db->sql_query_limit($sql, 1);
+ $only_shadow = !$db->sql_fetchfield('topic_id');
+ $db->sql_freeresult($result);
+
$only_softdeleted = false;
- if ($auth->acl_get('m_delete', $forum_id) && $auth->acl_get('m_softdelete', $forum_id))
+ if (!$only_shadow && $auth->acl_get('m_delete', $forum_id) && $auth->acl_get('m_softdelete', $forum_id))
{
// If there are only soft deleted topics, we display a message why the option is not available
$sql = 'SELECT topic_id
@@ -827,6 +837,7 @@ function mcp_delete_topic($topic_ids, $is_soft = false, $soft_delete_reason = ''
}
$template->assign_vars(array(
+ 'S_SHADOW_TOPICS' => $only_shadow,
'S_SOFTDELETED' => $only_softdeleted,
'S_TOPIC_MODE' => true,
'S_ALLOWED_DELETE' => $auth->acl_get('m_delete', $forum_id),
@@ -839,7 +850,7 @@ function mcp_delete_topic($topic_ids, $is_soft = false, $soft_delete_reason = ''
$l_confirm .= '_PERMANENTLY';
$s_hidden_fields['delete_permanent'] = '1';
}
- else if (!$auth->acl_get('m_softdelete', $forum_id))
+ else if ($only_shadow || !$auth->acl_get('m_softdelete', $forum_id))
{
$s_hidden_fields['delete_permanent'] = '1';
}