diff options
author | Wolfsblvt <clemenshusung@gmx.de> | 2015-01-19 16:23:24 +0100 |
---|---|---|
committer | Wolfsblvt <clemenshusung@gmx.de> | 2015-01-23 12:53:46 +0100 |
commit | b88b8305fd6f25d6726bcdbb9fb1fe68cf6b1315 (patch) | |
tree | aa656599b89551e1d36254b52fdfca0865b07868 /phpBB | |
parent | 61df1ac2b394d8bc9c28a2f8e16672cb9221b63e (diff) | |
download | forums-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.php | 35 |
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)) |