Example #1
1
 /**
  * Prepare the PJAX-specific response content.
  *
  * @param Response $response
  * @param string   $container
  *
  * @return $this
  */
 protected function filterResponse(Response $response, $container)
 {
     if (!$response->isSuccessful()) {
         $crawler = new Crawler($response->getContent());
         $response->setContent($this->fetchContents($crawler, '.exception_message'));
         return $this;
     }
     $crawler = new Crawler($response->getContent());
     $response->setContent($this->makeTitle($crawler) . $this->fetchContents($crawler, $container));
     return $this;
 }
Example #2
0
 /**
  * Show the form for creating a new resource.
  *
  * @return Response
  */
 public function saveUser(Response $response, Request $request)
 {
     $despo = new Valentine();
     $Userexists = Valentine::getExistingUser($request->input('id'));
     if (is_object($Userexists)) {
         if (!is_null($Userexists->interests)) {
             $response->setContent('/findlove');
             $response->withCookie(cookie()->forever('shy_first_college', $Userexists->college));
         } else {
             $response->setContent('/profile/complete');
         }
         $response->withCookie(cookie()->forever('shy_first_id', $Userexists->id));
         $response->withCookie(cookie()->forever('shy_first_sex', $Userexists->sex));
     } else {
         $despo->name = $request->input('name');
         $despo->age = $request->input('birthday', '');
         $despo->sex = $request->input('gender');
         $despo->userId = $request->input('id');
         $despo->tel = $request->input('name');
         $despo->social = $request->input('social');
         $despo->url = $request->input('link');
         $despo->email = $request->input('email');
         if ($despo->save()) {
             $response->setContent('/profile/complete');
             $response->withCookie(cookie()->forever('shy_first_id', $despo->id));
             $response->withCookie(cookie()->forever('shy_first_sex', $request->input('sex')));
         }
     }
     return $response;
 }
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request $request
  * @param  \Closure $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     $currentUserRoles = $this->grantedRoles();
     if (!$this->isAuthorized($currentUserRoles)) {
         return $this->response->setContent('Unauthorized')->setStatusCode(401);
     }
     return $next($request);
 }
Example #4
0
 /**
  * Render the feed.
  *
  * @return \Illuminate\Http\Response
  */
 public function render($type)
 {
     $this->setType($type);
     $data = $this->getFeedData();
     $view = $this->prepareView($data);
     $this->prepareHeaders();
     $this->response->setContent($view);
     return $this->response;
 }
Example #5
0
 /**
  * Injects the Mail Debug Popup into the Response.
  *
  * @param \Illuminate\Http\Response
  */
 protected function appendToResponse(Response $response)
 {
     $existingContent = $response->getContent();
     $closeBodyPosition = strripos($existingContent, '</body>');
     $appendedContent = "\n            <script>\n                window.open('" . route('mail-debug', ['file' => $this->debug->preview()]) . "','width=680,height=800,toolbar=0,menubar=0,location=0,status=1,scrollbars=1,resizable=1,left=0,top=0');\n            </script>";
     if ($closeBodyPosition !== false) {
         $response->setContent(substr($existingContent, 0, $closeBodyPosition) . $appendedContent . substr($existingContent, $closeBodyPosition));
         return;
     }
     $response->setContent($existingContent . $appendedContent);
 }
 /**
  * Create new Income Service
  *
  * @param IncomeServiceRequest $request
  * @param Guard $guard
  * @param Response $response
  * @param Gate $gate
  * @return ItemResponse|\Symfony\Component\HttpFoundation\Response
  */
 public function store(IncomeServiceRequest $request, Guard $guard, Response $response, Gate $gate)
 {
     if (!$gate->check('putPostDelete', new IncomeService())) {
         return $response->setContent('Unauthorized')->setStatusCode(401);
     }
     return new ItemResponse($this->dispatch(new CreateIncomeServiceCommand($request->get('service_id'), $request->get('service_date'), $guard->user()->id, 3, 'status')));
 }
 /**
  * @param \Illuminate\Http\Response $response
  *
  * @return $this
  */
 protected function addCookieConsentScriptToResponse(Response $response)
 {
     $content = $response->getContent();
     $closingBodyTagPosition = $this->getLastClosingBodyTagPosition($content);
     $content = '' . substr($content, 0, $closingBodyTagPosition) . view('cookieConsent::index')->render() . substr($content, $closingBodyTagPosition);
     return $response->setContent($content);
 }
    /**
     * Append disqus script on the end of the page.
     *
     * @param  \Illuminate\Http\Request $request
     * @param  \Illuminate\Http\Response $response
     * @return mixed
     */
    protected function appendDisqusScript($request, $response)
    {
        $content = $response->getContent();
        if (!Str::contains($content, '<div id="disqus_thread"></div>')) {
            return;
        }
        $uri = $request->getRequestUri();
        $pageUrl = url($uri);
        $pageId = 'route' . implode('.', explode('/', $uri));
        $username = config('disqus.username');
        $disqusHtml = <<<CDATA
<script>
     var disqus_config = function () {
         this.page.url = '{$pageUrl}';
         this.page.identifier = '{$pageId}';
     };

    (function() {  // DON'T EDIT BELOW THIS LINE
        var d = document, s = d.createElement('script');

        s.src = '//{$username}.disqus.com/embed.js';

        s.setAttribute('data-timestamp', +new Date());
        (d.head || d.body).appendChild(s);
    })();
</script>
<noscript>Please enable JavaScript to view the <a href=\\"https://disqus.com/?ref_noscript\\" rel=\\"nofollow\\">comments powered by Disqus.</a></noscript>
CDATA;
        $bodyPosition = strripos($content, '</body>');
        if (false !== $bodyPosition) {
            $content = substr($content, 0, $bodyPosition) . $disqusHtml . substr($content, $bodyPosition);
        }
        $response->setContent($content);
    }
 /**
  * Deletes members funds and recalculates total
  *
  * @param $incomeServiceId
  * @param $memberId
  * @return \Illuminate\Http\JsonResponse
  */
 public function deleteMemberFund($incomeServiceId, $memberId, Response $response, Gate $gate)
 {
     if (!$gate->check('putPostDelete', new IncomeServiceMemberFund())) {
         return $response->setContent('Unauthorized')->setStatusCode(401);
     }
     return response()->json($this->dispatch(new DeleteIncomeServiceMemberFundTotal($incomeServiceId, $memberId)));
 }
 /**
  *  Serializes the original content
  *
  *  @param Fractal\ResourceAbstract $resource
  *  @return $this
  */
 protected function serialize($resource)
 {
     $manager = new Fractal\Manager();
     $data = $manager->createData($resource)->toArray()['data'];
     $serialized = json_encode($data);
     return parent::setContent($serialized);
 }
 public function responseFactory($content, $code = 200)
 {
     $response = new Response();
     $response->setContent($content);
     $response->setStatusCode($code);
     return $response;
 }
Example #12
0
 /**
  * Preparing Response
  *
  * @return Response
  */
 protected function setResponse()
 {
     $response = new Response();
     $response->setStatusCode($this->content['http_code']);
     $response->setContent($this->content);
     return $response;
 }
 public function create(Request $request)
 {
     $val = Url::saveUrl($request);
     $path = route('short_url', array('short' => $val->getAttribute('short')));
     $resp = new Response();
     $resp->setContent($path);
     return $resp;
 }
Example #14
0
 /**
  * Prepare the PJAX-specific response content.
  *
  * @param  Response $response
  * @param  string   $container
  * @return $this
  */
 protected function filterResponse(Response $response, $container)
 {
     $crawler = new Crawler($response->getContent());
     $response->setContent($this->makeTitle($crawler) . $this->fetchContents($crawler, $container));
     if ($crawler->filter('script[pjax-script]')->count() > 0) {
         $response->header('X-PJAX-Script', $crawler->filter('script[pjax-script]')->attr('src'));
     }
     return $this;
 }
 /**
  * Get HTML of the tool button
  *
  * @return Response The content
  */
 public static function getButton()
 {
     $response = new Response();
     $url = route('tool.button.script', ['locale' => Lang::getLocale()]);
     $content = '<script src="' . $url . '"></script>' . "\n";
     $content .= '<div id="' . static::getId() . '_button"></div>';
     $response->setContent($content);
     return $response;
 }
 /**
  *  @test
  */
 public function it_doesnt_parse_error_responses()
 {
     $response = new Response();
     $response->setContent('Content');
     $response->setStatusCode(500);
     $response->headers = new ResponseHeaderBag(['header' => 'value']);
     $responseParser = new ResponseParser($response);
     $this->assertFalse($responseParser->isCacheable());
     $this->assertNull($responseParser->cacheValue());
 }
Example #17
0
 /**
  * Convert document to JSON-API string, return as a Laravel Response.
  * @param Document $responseDocument
  * @return Response
  */
 public function serialize(Document $responseDocument)
 {
     $response = new Response();
     $jsonDocument = $this->formatDocument($responseDocument);
     $response->setContent($this->encodeJson($jsonDocument));
     // Add other headers
     $responseDocument->headers = array_merge($responseDocument->headers, ['Content-Type' => JsonApi::MIME_TYPE]);
     $response->headers->add($responseDocument->headers);
     return $response;
 }
Example #18
0
 /**
  * @param \Illuminate\Http\Response $response
  */
 protected function handleDebugbar($response)
 {
     $content = $response->getContent();
     $assets = ['debugbar.css', 'codex-debugbar.css'];
     $out = '';
     foreach ($assets as $style) {
         $out .= '<link type="text/css" rel="stylesheet" href="' . asset('vendor/codex-dev/' . $style) . '"/>';
     }
     $content = str_replace('</body>', $out . '</body>', $content);
     $response->setContent($content);
 }
Example #19
0
 public function render($data, $serializerGroups = array())
 {
     $result = is_array($data) ? array('data' => array('items' => $data)) : array('data' => $data);
     $response = new Response();
     $context = SerializationContext::create()->enableMaxDepthChecks();
     if ($serializerGroups) {
         $context->setGroups($serializerGroups);
     }
     $content = Serializer::serialize($result, 'json', $context);
     $response->setContent($content);
     $response->header('Content-Type', 'application/json', true);
     return $response;
 }
Example #20
0
 /**
  * {@inheritDoc}
  */
 public function setContent($content)
 {
     // Attempt to set the content string, if we encounter an unexpected value
     // then we most likely have an object that cannot be type cast. In that
     // case we'll simply leave the content as null and set the original
     // content value the continue.
     try {
         return parent::setContent($content);
     } catch (UnexpectedValueException $exception) {
         $this->original = $content;
         return $this;
     }
 }
Example #21
0
 public function makeResponse()
 {
     $content = $this->renderToString();
     if ($this->redirect !== null) {
         $url = '' . $this->redirect;
         return new RedirectResponse($url);
     }
     $response = new Response();
     // Headers are also calculated in render to string
     if ($this->isJsonResponse()) {
         $response->header("Content-type", "application/json;");
     }
     $response->setContent($content);
     return $response;
 }
Example #22
0
 /**
  * Extract the HTML from the container that has been updated.
  *
  * @param Request $request
  * @param Response $response
  * @param $initial_url
  * @return \Illuminate\Http\Response
  */
 private function replaceContent($request, $response, $initial_url)
 {
     /**
      * Replace the full HTML content with the extracted pjax-only content
      */
     $response->setContent($this->getContent($response));
     // Check if the response was redirected. If it was, send X-PJAX-URL header
     $current_url = $request->getRequestUri();
     if ($response->isRedirection()) {
         $newUrl = $response->headers->get('Location');
         $response->header('X-PJAX-URL', $newUrl);
     } elseif ($current_url !== $initial_url) {
         $response->header('X-PJAX-URL', $current_url);
     }
     // Send the PJAX layout version if it has been set in the config file
     return $this->setPjaxLayoutVersion($response);
 }
Example #23
0
 /**
  * Return an ajax or prettify with whoops.
  *
  * @param  Exception $e
  * @param  \Illuminate\Http\Request    $request
  * @param  \Illuminate\Http\Response    $response
  *
  * @return mixed
  */
 public function renderPretty(Exception $e, $request, $response)
 {
     if ($this->areYouAnAjax($request)) {
         $res = [];
         $res['status'] = 'error';
         $res['message'] = empty($e->getMessage()) ? $response::$statusTexts[$response->getStatusCode()] : $e->getMessage();
         $res['file'] = $e->getFile();
         $res['line'] = $e->getLine();
         $res['statusCode'] = $response->getStatusCode();
         $res['statusText'] = $response::$statusTexts[$response->getStatusCode()];
         $res['error'] = $res;
         return $response->setContent($res);
     } else {
         if (view()->exists('errors.' . $response->getStatusCode())) {
             return response()->view('errors.' . $response->getStatusCode(), compact('response'));
         }
         $whoops = (new Run())->pushHandler(new PrettyPageHandler());
         return $whoops->handleException($e);
     }
 }
 /**
  * TODO: добавить кеширование вывода
  * 
  * @param FrontendPage $frontPage
  * @return \Illuminate\View\View|null
  * @throws LayoutNotFoundException
  */
 protected function render(FrontendPage $frontPage)
 {
     event('frontend.found', [$frontPage]);
     app()->singleton('frontpage', function () use($frontPage) {
         return $frontPage;
     });
     $layout = $frontPage->getLayoutView();
     if (is_null($layout)) {
         throw new LayoutNotFoundException();
     }
     $widgetCollection = new PageWidgetCollection($frontPage);
     $html = (string) $frontPage->getLayoutView();
     if (auth()->check() and auth()->user()->hasRole(['administrator', 'developer'])) {
         $injectHTML = (string) view('cms::app.partials.toolbar');
         // Insert system HTML before closed tag body
         $matches = preg_split('/(<\\/body>)/i', $html, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
         if (count($matches) > 1) {
             /* assemble the HTML output back with the iframe code in it */
             $html = $matches[0] . $injectHTML . $matches[1] . $matches[2];
         }
     }
     $response = new Response();
     $response->header('Content-Type', $frontPage->getMime());
     if (config('cms.show_response_sign', TRUE)) {
         $response->header('X-Powered-CMS', \CMS::NAME . '/' . \CMS::VERSION);
     }
     $response->setContent($html);
     // Set the ETag header
     $response->setEtag(sha1($html));
     $response->setLastModified($frontPage->getCreatedAt());
     // mark the response as either public or private
     $response->setPublic();
     // Check that the Response is not modified for the given Request
     if ($response->isNotModified($this->request)) {
         // return the 304 Response immediately
         return $response;
     }
     return $response;
 }
 /**
  * @param View   $layout
  * @param string $mime
  *
  * @return \Illuminate\View\View|null
  * @throws LayoutNotFoundException
  */
 protected function render(View $layout = null, $mime = 'text\\html')
 {
     if (is_null($layout)) {
         throw new LayoutNotFoundException(trans('pages::core.messages.layout_not_set'));
     }
     $html = $layout->render();
     $response = new Response();
     $response->header('Content-Type', $mime);
     if (config('cms.show_response_sign', true)) {
         $response->header('X-Powered-CMS', CMS::getFullName());
     }
     $response->setContent($html);
     // Set the ETag header
     $response->setEtag(md5($html));
     // mark the response as either public or private
     $response->setPublic();
     // Check that the Response is not modified for the given Request
     if ($response->isNotModified($this->request)) {
         // return the 304 Response immediately
         return $response;
     }
     return $response;
 }
Example #26
0
 /**
  * @param $proxyResponse
  * @param $cookie
  * @return Response
  */
 private function setApiResponse($proxyResponse, $cookie)
 {
     $response = new Response($proxyResponse->getContent(), $proxyResponse->getStatusCode());
     if ($proxyResponse->getStatusCode() === 200) {
         if ($this->callMode === ProxyAux::MODE_LOGIN) {
             $response->setContent(json_encode($this->successAccessToken()));
         }
         if (isset($cookie)) {
             $response->withCookie($cookie);
         }
     }
     return $response;
 }
 public function setContent($content)
 {
     parent::setContent($content);
     return $this;
 }
Example #28
0
 /**
  * @param $proxyResponse
  * @param $cookie
  * @return Response
  */
 private function setApiResponse($proxyResponse, $cookie)
 {
     $response = new Response($proxyResponse->getContent(), $proxyResponse->getStatusCode());
     if ($proxyResponse->getStatusCode() === 200 || in_array($proxyResponse->getStatusCode(), $this->allowedErrors['errorCodes'])) {
         $content = $proxyResponse->getContent();
         if (array_key_exists('error', $content) && in_array($content['error'], $this->allowedErrors['except'])) {
             return $response;
         }
         if ($this->callMode === ProxyAux::MODE_LOGIN) {
             $response->setContent(json_encode($this->successAccessToken()));
         }
         if (isset($cookie)) {
             $response->withCookie($cookie);
         }
     }
     return $response;
 }
Example #29
0
 /**
  * Display an attachment file such as image
  *
  * @param Project    $project
  * @param Issue      $issue
  * @param Attachment $attachment
  * @param Request    $request
  *
  * @return Response
  */
 public function getDisplayAttachment(Project $project, Issue $issue, Attachment $attachment, Request $request)
 {
     $issue->setRelation('project', $project);
     $attachment->setRelation('issue', $issue);
     $path = config('tinyissue.uploads_dir') . '/' . $issue->project_id . '/' . $attachment->upload_token . '/' . $attachment->filename;
     $storage = \Storage::disk('local');
     $length = $storage->size($path);
     $time = $storage->lastModified($path);
     $type = $storage->getDriver()->getMimetype($path);
     $response = new Response();
     $response->setEtag(md5($time . $path));
     $response->setExpires(new \DateTime('@' . ($time + 60)));
     $response->setLastModified(new \DateTime('@' . $time));
     $response->setPublic();
     $response->setStatusCode(200);
     $response->header('Content-Type', $type);
     $response->header('Content-Length', $length);
     $response->header('Content-Disposition', 'inline; filename="' . $attachment->filename . '"');
     $response->header('Cache-Control', 'must-revalidate');
     if ($response->isNotModified($request)) {
         // Return empty response if not modified
         return $response;
     }
     // Return file if first request / modified
     $response->setContent($storage->get($path));
     return $response;
 }
 /**
  * Prepare the PJAX-specific response content.
  *
  * @param  Response $response
  * @param  string   $container
  * @return $this
  */
 protected function filterResponse(Response $response, $container)
 {
     $crawler = new Crawler($response->getContent());
     $response->setContent($this->makeTitle($crawler) . $this->fetchContents($crawler, $container));
     return $this;
 }