diff options
author | Joas Schilling <nickvergessen@gmx.de> | 2014-11-21 21:00:00 +0100 |
---|---|---|
committer | Joas Schilling <nickvergessen@gmx.de> | 2014-11-21 21:00:00 +0100 |
commit | 1104f788c313caaa4a8754dc674de01647b89ca3 (patch) | |
tree | c148ac55b482f384c0526b6361ee350ba8ef3e29 | |
parent | 95a8f400529a26b403cb22f8b71106780f31d21e (diff) | |
parent | d56da0d68f5b7bdba21a475cf08e88fa6a9fbde2 (diff) | |
download | forums-1104f788c313caaa4a8754dc674de01647b89ca3.tar forums-1104f788c313caaa4a8754dc674de01647b89ca3.tar.gz forums-1104f788c313caaa4a8754dc674de01647b89ca3.tar.bz2 forums-1104f788c313caaa4a8754dc674de01647b89ca3.tar.xz forums-1104f788c313caaa4a8754dc674de01647b89ca3.zip |
Merge branch 'develop-ascraeus' into develop
Conflicts:
phpBB/styles/subsilver2/template/confirm_delete_body.html
-rw-r--r-- | phpBB/includes/mcp/mcp_main.php | 14 | ||||
-rw-r--r-- | phpBB/styles/prosilver/template/confirm_delete_body.html | 4 |
2 files changed, 16 insertions, 2 deletions
diff --git a/phpBB/includes/mcp/mcp_main.php b/phpBB/includes/mcp/mcp_main.php index 19a0ee3051..227ae84bd6 100644 --- a/phpBB/includes/mcp/mcp_main.php +++ b/phpBB/includes/mcp/mcp_main.php @@ -813,8 +813,17 @@ function mcp_delete_topic($topic_ids, $is_soft = false, $soft_delete_reason = '' $user->add_lang('posting'); + // 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 +836,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 +849,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'; } diff --git a/phpBB/styles/prosilver/template/confirm_delete_body.html b/phpBB/styles/prosilver/template/confirm_delete_body.html index f164b5f357..f0a7ab2bdb 100644 --- a/phpBB/styles/prosilver/template/confirm_delete_body.html +++ b/phpBB/styles/prosilver/template/confirm_delete_body.html @@ -2,6 +2,7 @@ <form action="{S_CONFIRM_ACTION}" method="post"> <p>{MESSAGE_TEXT}</p> + <!-- IF not S_SHADOW_TOPICS --> <!-- IF not S_SOFTDELETED and S_ALLOWED_DELETE and S_ALLOWED_SOFTDELETE --> <label> <strong>{L_DELETE_PERMANENTLY}{L_COLON}</strong> @@ -14,6 +15,7 @@ <strong>{L_DELETE_REASON}{L_COLON}</strong><br /><span>{L_DELETE_REASON_EXPLAIN}</span><br /> <input type="text" name="delete_reason" value="" class="inputbox autowidth" maxlength="120" size="45" /> </label> + <!-- ENDIF --> <fieldset class="submit-buttons"> <input type="button" name="confirm" value="{L_YES}" class="button1" /> @@ -33,6 +35,7 @@ <p>{MESSAGE_TEXT}</p> + <!-- IF not S_SHADOW_TOPICS --> <fieldset class="fields1"> <!-- IF not S_SOFTDELETED and S_ALLOWED_DELETE and S_ALLOWED_SOFTDELETE --> <dl> @@ -51,6 +54,7 @@ <dd><input type="text" name="delete_reason" id="delete_reason" value="" class="inputbox autowidth" maxlength="120" size="45" /></dd> </dl> </fieldset> + <!-- ENDIF --> <fieldset class="submit-buttons"> {S_HIDDEN_FIELDS} |