Currently the in-board method for the notifications is hardcoded and
cannot be disabled. This method should be in his own class extending
`phpbb\notification\method\method_interface`.
It also add the possibility, for each method, to be enabled by default (ie:
no entry in the DB => notification enabled).
https://tracker.phpbb.com/browse/PHPBB3-11444https://tracker.phpbb.com/browse/PHPBB3-11967
PHPBB3-11444
Moving report.php's content into different services and controllers to
better comply with the MVC model.
Also implementing:
* Replacement for reasons_display()
* Adding assign_meta_refresh_var() to \controller\helper
* Adding separate routes for easy configuration
* Updating unit tests to expect to correct results
* Add BC tests
PHPBB3-13654
Events added for the functions approve_posts(), approve_topics()
and disapprove_posts() in mcp_queue.php, so that you can send notifications
during approval and disapproval.
PHPBB3-13537
Topics was not correctly counted (the counter didn't count topics
that were re-approved, for example, but only the ones that were
unapproved.
This should also fix the test that wasn't working correctly.
PHPBB3-12270
Since a call was added to self::approve_topic(), the poster would
get double-notified about it (even if it was later marked as read).
Also, when creating a new topic with a quote, it would not be
notified, this has also been fixed.
PHPBB3-12270
When clicking on approving a topic's first post in the MCP to
approve the topic itself, the confirm box dialog asks whether
to approve the post or not, instead of asking to approve the
topic.
To achieve this fix, we just need to count the topics to be
approved and check if it's greater than zero.
PHPBB3-12270
I forgot to put the brackets (so it follows the phpBB coding
standards) and changed "count($topic_id_list) > 0"
to "!empty($topic_id_list)", making the syntax more
comprehensible.
PHPBB3-12270
A variable (that's not essential) has been removed, two if's
has been merged to an if-else control structure. A variable
named topic_ids_list has been renamed to topic_id_list to follow
the naming standard in that file's code.
Also, the debug error has been fixed by changing the topic data
key 'username' to 'post_username' in the array_merge function
in approve_topics().
PHPBB3-12270
This patch should finally work correctly: Add the correct
notification for post/topic approval without touching templates.
This has been done by calling the function approve_topics()
inside the approve_posts() function. It's the simplest way for
this to work correctly. There may be a call to the DB but other
ways (if any), without touching templates, would have been too
messy for a function like this.
PHPBB3-12270
Following the previous commits, this patch removes the changes
done to templates to depend only on code, as suggested by
@nickvergessen.
All previous modifications have been removed, with another one
which checks, in the approve_posts() function, if it is sending a
notification for post approval and it is the first one in the
topic, send notification indicating that the topic has been
approved (and not the post). If not the first post in the topic,
do just as before (send a notification about a newly approved
post).
PHPBB3-12270
When you submit a post with needed approval (say user A), and then
it gets approved by another user (user B), a subscribed user (user C)
to that forum would receive a notification indicating:
-A has replied to topic 'New Topic' in the forum 'xyz'.
The expected result would be:
-A has posted a new topic 'New topic' in the forum 'xyz'.
This has fixed by adding a TOPIC_ID template variable to
mcp_post.html and, in there, depending if the first post is the topic's
first post or not, add a input's with name topic_id_list[] or
post_id_list[] and then the respective value (TOPIC_ID or POST_ID).
PHPBB3-12270
* github-nickvergessen/ticket/12371:
[ticket/12371] Fix language string
[ticket/12371] Fix typos in comment
[ticket/12371] Fix redirect link for approve_post and post_in_queue
[ticket/12371] Delete the approve_post notification when editing a post
[ticket/12371] Fix language in comment
[ticket/12371] Reapprove the post and topic again in tests
[ticket/12371] Correctly set is_starter when editing first post of the topic
[ticket/12371] Add functional tests for reapproving
[ticket/12371] Fix query in mcp_sorting()
[ticket/12371] Rename disapprove and softdelete tests
[ticket/12371] We do not group quote notifications anymore
[ticket/12371] Fix SQL query
[ticket/11772] Do not send out new topic/post notifications when reapproving
[ticket/12052] Use different visibility when post was edited
[ticket/12052] Add support for ITEM_UNAPPROVED to set_post_visibility method
[ticket/12371] Do not add unlimited users as responders
[ticket/12371] Do not update the notification entry unneccessarily
[ticket/12371] Do not delete post related notifications when a post is deleted
[ticket/12371] Allow notification types to redirect to a different url
[ticket/12371] Do not group "quote" notifications
# By Nicofuma
# Via Nicofuma
* remotes/Nicofuma/ticket/12445:
[ticket/12445] Change the formulation
[ticket/12445] Disapproved post: the name of the poster should be in logs
* There MUST NOT be trailing whitespace at the end of lines.
* There MUST NOT be whitespace before the first content of a file.
* There MUST NOT be whitespace after the last content of a file.
* Functions MUST NOT contain multiple empty lines in a row.
PHPBB3-12458
Only add notifications, if we are not reapproving post
When the topic was already approved, but was edited and
now needs re-approval, we don't want to notify the users again.
PHPBB3-11772
The user should be redirected back to:
- the topic, if he came from viewtopic and the topic still exists
- the forum, if he came from viewtopic, but the topic does not exist anymore
PHPBB3-11352
# By Joas Schilling
# Via Joas Schilling
* nickvergessen/feature/pagination-class:
[ticket/11849] Fix more function calls
[ticket/11849] Update more MCP calls to pagination class
[ticket/11849] Update some ACP modules with new pagination
[ticket/11849] Update rest of the UCP modules
[ticket/11849] Update UCP notifications and pm folder
[ticket/11849] Update search and memberlist
[ticket/11849] Update pagination in viewonline.php
[ticket/11849] Remove old pagination test
[ticket/11849] Update pagination code in viewtopic.php
[ticket/11849] Replace pagination in viewforum.php with class
[ticket/11849] Add service definition
[ticket/11849] Remove pagination functions
[ticket/11849] Test validate_start and on_page
[ticket/11849] Move pagination code to class
The $redirect assignment is not necessary because the variable has already been
set near the start of the functions. The redirect value will also never default
to index.php because a default value has already been provided when $redirect
is initially assigned and passed to the template as a hidden field.
PHPBB3-11672