Файл: concrete5.7.5.6/concrete/src/Routing/ClosureRouteCallback.php
Строк: 43
<?php
namespace ConcreteCoreRouting;
use SymfonyComponentHttpKernel;
use Response;
use Request;
class ClosureRouteCallback extends RouteCallback
{
public function execute(Request $request, ConcreteCoreRoutingRoute $route, $parameters)
{
$resolver = new HttpKernelControllerControllerResolver();
$arguments = $resolver->getArguments($request, $this->callback);
$callback_response = call_user_func_array($this->callback, $arguments);
if ($callback_response instanceof ConcreteCoreHttpResponse) {
return $callback_response;
}
$r = new Response();
$r->setContent($callback_response);
return $r;
}
public function __sleep()
{
unset($this->callback);
}
public static function getRouteAttributes($callback)
{
$callback = new static($callback);
return array('callback' => $callback);
}
}