mirror of
https://github.com/phpbb/phpbb.git
synced 2025-07-30 21:40:43 +02:00
- Bug #56255 - Moving topics to a forum where you are on queue
- Allow some error handling in compress class by returning false if file does not exist. git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@10427 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
@@ -66,8 +66,6 @@ function make_forum_select($select_id = false, $ignore_id = false, $ignore_acl =
|
||||
{
|
||||
global $db, $user, $auth;
|
||||
|
||||
$acl = ($ignore_acl) ? '' : (($only_acl_post) ? 'f_post' : array('f_list', 'a_forum', 'a_forumadd', 'a_forumdel'));
|
||||
|
||||
// This query is identical to the jumpbox one
|
||||
$sql = 'SELECT forum_id, forum_name, parent_id, forum_type, forum_flags, forum_options, left_id, right_id
|
||||
FROM ' . FORUMS_TABLE . '
|
||||
@@ -98,18 +96,21 @@ function make_forum_select($select_id = false, $ignore_id = false, $ignore_acl =
|
||||
$right = $row['right_id'];
|
||||
$disabled = false;
|
||||
|
||||
if ($acl && !$auth->acl_gets($acl, $row['forum_id']))
|
||||
if (!$ignore_acl && $auth->acl_get('f_list', $row['forum_id']))
|
||||
{
|
||||
// List permission?
|
||||
if ($auth->acl_get('f_list', $row['forum_id']))
|
||||
if ($only_acl_post && !$auth->acl_get('f_post', $row['forum_id']) || (!$auth->acl_get('m_approve', $row['forum_id']) && !$auth->acl_get('f_noapprove', $row['forum_id'])))
|
||||
{
|
||||
$disabled = true;
|
||||
}
|
||||
else
|
||||
else if (!$only_acl_post && !$auth->acl_gets(array('a_forum', 'a_forumadd', 'a_forumdel'), $row['forum_id']))
|
||||
{
|
||||
continue;
|
||||
$disabled = true;
|
||||
}
|
||||
}
|
||||
else if (!$ignore_acl)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (
|
||||
((is_array($ignore_id) && in_array($row['forum_id'], $ignore_id)) || $row['forum_id'] == $ignore_id)
|
||||
|
@@ -80,6 +80,11 @@ class compress
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// $src does not exist
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -89,6 +94,11 @@ class compress
|
||||
*/
|
||||
function add_custom_file($src, $filename)
|
||||
{
|
||||
if (!file_exists($src))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
$this->data($filename, file_get_contents($src), false, stat($src));
|
||||
return true;
|
||||
}
|
||||
|
@@ -568,7 +568,7 @@ function mcp_move_topic($topic_ids)
|
||||
{
|
||||
$additional_msg = $user->lang['FORUM_NOT_POSTABLE'];
|
||||
}
|
||||
else if (!$auth->acl_get('f_post', $to_forum_id))
|
||||
else if (!$auth->acl_get('f_post', $to_forum_id) || (!$auth->acl_get('m_approve', $to_forum_id) && !$auth->acl_get('f_noapprove', $to_forum_id)))
|
||||
{
|
||||
$additional_msg = $user->lang['USER_CANNOT_POST'];
|
||||
}
|
||||
|
Reference in New Issue
Block a user