public function getLocaledAtAttribute(Request $request) { $this->attributes['locale'] = $request->getLocale(); }
/** * Get the locale. * * @return string * @static */ public static function getLocale() { //Method inherited from \Symfony\Component\HttpFoundation\Request return \Illuminate\Http\Request::getLocale(); }
private function performLocalRequest(Request $parentRequest = null, $url, $method, $data, &$statusCode = null) { $urlInfo = parse_url($url); if (array_key_exists('query', $urlInfo) == true && mb_strlen($urlInfo['query']) > 0) { mb_parse_str($urlInfo['query'], $_GET); } // create the request object $cookies = $parentRequest ? $parentRequest->cookies->all() : []; $server = $parentRequest ? $parentRequest->server->all() : []; $request = Request::createFromBase(SymfonyRequest::create($url, $method, [], $cookies, [], $server, json_encode($data))); $request->headers->set('Content-Type', 'application/json'); if ($parentRequest !== null) { $locale = $parentRequest->getLocale(); $request->setSession($parentRequest->getSession()); $request->setLocale($locale); $request->headers->set('Accept-Language', [$locale]); } // execute the request // TODO: handle errors gracefully $kernel = $GLOBALS['kernel']; //$this->app->make(\Illuminate\Contracts\Http\Kernel::class); $response = $kernel->handle($request, HttpKernelInterface::SUB_REQUEST); $statusCode = $response->getStatusCode(); $content = $response->getContent(); return $content; }