aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB
diff options
context:
space:
mode:
authorWolfsblvt <clemenshusung@gmx.de>2015-01-19 16:23:24 +0100
committerWolfsblvt <clemenshusung@gmx.de>2015-01-23 12:53:46 +0100
commitb88b8305fd6f25d6726bcdbb9fb1fe68cf6b1315 (patch)
treeaa656599b89551e1d36254b52fdfca0865b07868 /phpBB
parent61df1ac2b394d8bc9c28a2f8e16672cb9221b63e (diff)
downloadforums-b88b8305fd6f25d6726bcdbb9fb1fe68cf6b1315.tar
forums-b88b8305fd6f25d6726bcdbb9fb1fe68cf6b1315.tar.gz
forums-b88b8305fd6f25d6726bcdbb9fb1fe68cf6b1315.tar.bz2
forums-b88b8305fd6f25d6726bcdbb9fb1fe68cf6b1315.tar.xz
forums-b88b8305fd6f25d6726bcdbb9fb1fe68cf6b1315.zip
[ticket/13518] Add core event to markread() in functions.php
Adding core event core.markread_before to to funtion markread() in functions.php, so that you now are able to add additional stuff inside the markread process, for example notifications designed in extensions. PHPBB3-13518
Diffstat (limited to 'phpBB')
-rw-r--r--phpBB/includes/functions.php35
1 files changed, 34 insertions, 1 deletions
diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php
index 1a3560dbb1..54ca2cca88 100644
--- a/phpBB/includes/functions.php
+++ b/phpBB/includes/functions.php
@@ -1150,10 +1150,43 @@ function phpbb_timezone_select($template, $user, $default = '', $truncate = fals
function markread($mode, $forum_id = false, $topic_id = false, $post_time = 0, $user_id = 0)
{
global $db, $user, $config;
- global $request, $phpbb_container;
+ global $request, $phpbb_container, $phpbb_dispatcher;
$post_time = ($post_time === 0 || $post_time > time()) ? time() : (int) $post_time;
+ $should_markread = true;
+
+ /**
+ * This event is used for performing actions directly before marking forums,
+ * topics or posts as read.
+ *
+ * It is also possible to prevent the marking. For that, the $should_markread parameter
+ * should be set to FALSE.
+ *
+ * @event core.markread_before
+ * @var string mode Variable containing marking mode value
+ * @var mixed forum_id Variable containing forum id, or false
+ * @var mixed topic_id Variable containing topic id, or false
+ * @var int post_time Variable containing post time
+ * @var int user_id Variable containing the user id
+ * @var bool should_markread Flag indicating if the markread should be done or not.
+ * @since 3.1.4-RC1
+ */
+ $vars = array(
+ 'mode',
+ 'forum_id',
+ 'topic_id',
+ 'post_time',
+ 'user_id',
+ 'should_markread',
+ );
+ extract($phpbb_dispatcher->trigger_event('core.markread_before', compact($vars)));
+
+ if (!$should_markread)
+ {
+ return;
+ }
+
if ($mode == 'all')
{
if ($forum_id === false || !sizeof($forum_id))