[CONTROLLER][FeedController] Make post processing happen more automatically, reducing noise in individual controllers. Now it's enough to simply extends App\Core\Controller\FeedController, to implement a feed
This commit is contained in:
@@ -33,6 +33,7 @@ declare(strict_types = 1);
|
||||
|
||||
namespace App\Core;
|
||||
|
||||
use App\Core\Controller\FeedController;
|
||||
use function App\Core\I18n\_m;
|
||||
use App\Util\Common;
|
||||
use App\Util\Exception\ClientException;
|
||||
@@ -130,6 +131,15 @@ abstract class Controller extends AbstractController implements EventSubscriberI
|
||||
Event::handle('OverrideTemplate', [$this->vars, &$template]); // Allow plugins to replace the template used for anything
|
||||
unset($this->vars['_template'], $response['_template']);
|
||||
|
||||
$controller = $request->get('_controller');
|
||||
if (\is_array($controller)) {
|
||||
$controller = $controller[0];
|
||||
}
|
||||
|
||||
if (is_subclass_of($controller, FeedController::class)) {
|
||||
$this->vars = FeedController::post_process($this->vars);
|
||||
}
|
||||
|
||||
// Respond in the most preferred acceptable content type
|
||||
$route = $request->get('_route');
|
||||
$accept = $request->getAcceptableContentTypes() ?: ['text/html'];
|
||||
|
Reference in New Issue
Block a user