1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-31 14:00:31 +02:00

[ticket/13654] Moving reporting into controller

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
This commit is contained in:
MateBartus
2015-02-25 21:13:20 +01:00
parent 2c0b1252c8
commit a089ff5eb0
26 changed files with 1208 additions and 343 deletions

View File

@@ -13,6 +13,7 @@ imports:
- { resource: services_notification.yml }
- { resource: services_password.yml }
- { resource: services_profilefield.yml }
- { resource: services_report.yml }
- { resource: services_text_formatter.yml }
- { resource: services_twig.yml }
- { resource: services_user.yml }

View File

@@ -0,0 +1,53 @@
services:
# ----- Report controller -----
phpbb.report.controller:
class: phpbb\report\controller\report
arguments:
- @config
- @user
- @template
- @controller.helper
- @request
- @captcha.factory
- @phpbb.report.handler_factory
- @phpbb.report.report_reason_list_provider
- %core.root_path%
- %core.php_ext%
# ----- Report handler factory -----
phpbb.report.handler_factory:
class: phpbb\report\handler_factory
arguments:
- @service_container
# ----- Report UI provider -----
phpbb.report.report_reason_list_provider:
class: phpbb\report\report_reason_list_provider
arguments:
- @dbal.conn.driver
- @template
- @user
# ----- Report handlers -----
# Scope MUST be prototype for all the handlers to work correctly.
phpbb.report.handlers.report_handler_pm:
class: phpbb\report\report_handler_pm
scope: prototype
arguments:
- @dbal.conn.driver
- @dispatcher
- @config
- @auth
- @user
- @notification_manager
phpbb.report.handlers.report_handler_post:
class: phpbb\report\report_handler_post
scope: prototype
arguments:
- @dbal.conn.driver
- @dispatcher
- @config
- @auth
- @user
- @notification_manager

View File

@@ -0,0 +1,17 @@
phpbb_report_pm_controller:
path: /pm/{id}/report
methods: [GET, POST]
defaults:
_controller: phpbb.report.controller:handle
mode: "pm"
requirements:
id: \d+
phpbb_report_post_controller:
path: /post/{id}/report
methods: [GET, POST]
defaults:
_controller: phpbb.report.controller:handle
mode: "post"
requirements:
id: \d+

View File

@@ -11,3 +11,6 @@
phpbb_help_routing:
resource: "help.yml"
prefix: /help
phpbb_report_routing:
resource: "report.yml"