aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB
diff options
context:
space:
mode:
authorbrunoais <brunoaiss@gmail.com>2014-12-03 17:53:10 +0000
committerbrunoais <brunoaiss@gmail.com>2014-12-03 17:53:10 +0000
commita8d3cbe53be10bc4414b0034d3cd145a978015fd (patch)
treea8e5d3e2b08407f32b145bc73c9b1618ddc50a72 /phpBB
parent70483d60886ad416c3dd40f29e1128e031322e1e (diff)
downloadforums-a8d3cbe53be10bc4414b0034d3cd145a978015fd.tar
forums-a8d3cbe53be10bc4414b0034d3cd145a978015fd.tar.gz
forums-a8d3cbe53be10bc4414b0034d3cd145a978015fd.tar.bz2
forums-a8d3cbe53be10bc4414b0034d3cd145a978015fd.tar.xz
forums-a8d3cbe53be10bc4414b0034d3cd145a978015fd.zip
[ticket/13159] Allow to do extra auth checks on report posting
PHPBB3-13159
Diffstat (limited to 'phpBB')
-rw-r--r--phpBB/report.php18
1 files changed, 18 insertions, 0 deletions
diff --git a/phpBB/report.php b/phpBB/report.php
index 1b5d3c9d46..3ea6bb40c5 100644
--- a/phpBB/report.php
+++ b/phpBB/report.php
@@ -99,6 +99,24 @@ if ($post_id)
// Check required permissions
$acl_check_ary = array('f_list' => 'POST_NOT_EXIST', 'f_read' => 'USER_CANNOT_READ', 'f_report' => 'USER_CANNOT_REPORT');
+ /**
+ * This event allows you to do extra auth checks and verify if the user
+ * has the required permissions
+ *
+ * @event core.report_post_auth
+ * @var array forum_data All data available from the forums table on this post's forum
+ * @var array report_data All data available from the topics and the posts tables on this post (and its topic)
+ * @var array acl_check_ary An array with the ACL to be tested. The evaluation is made in the same order as the array is sorted
+ * The key is the ACL name and the value is the language key for the error message.
+ * @since 3.1.3-RC1
+ */
+ $vars = array(
+ 'forum_data',
+ 'report_data',
+ 'acl_check_ary',
+ );
+ extract($phpbb_dispatcher->trigger_event('core.report_post_auth', compact($vars)));
+
foreach ($acl_check_ary as $acl => $error)
{
if (!$auth->acl_get($acl, $forum_id))