24. ErrorException
…/­app/­composers/­ProductssingleComposer.php134
23. Illuminate\Exception\Handler handleError
…/­app/­composers/­ProductssingleComposer.php134
22. ProductssingleComposer getNextParent
…/­app/­composers/­ProductssingleComposer.php125
21. ProductssingleComposer getParentId
…/­app/­composers/­ProductssingleComposer.php56
20. ProductssingleComposer buildProductsNavbar
…/­app/­composers/­ProductssingleComposer.php29
19. ProductssingleComposer compose
<#unknown>0
18. call_user_func_array
…/­vendor/­laravel/­framework/­src/­Illuminate/­View/­Factory.php440
17. Illuminate\View\Factory Illuminate\View\{closure}
<#unknown>0
16. call_user_func_array
…/­vendor/­laravel/­framework/­src/­Illuminate/­Events/­Dispatcher.php199
15. Illuminate\Events\Dispatcher fire
…/­vendor/­laravel/­framework/­src/­Illuminate/­View/­Factory.php471
14. Illuminate\View\Factory callComposer
…/­vendor/­laravel/­framework/­src/­Illuminate/­View/­View.php107
13. Illuminate\View\View renderContents
…/­vendor/­laravel/­framework/­src/­Illuminate/­View/­View.php78
12. Illuminate\View\View render
…/­vendor/­laravel/­framework/­src/­Illuminate/­Http/­Response.php43
11. Illuminate\Http\Response setContent
…/­vendor/­symfony/­http-foundation/­Symfony/­Component/­HttpFoundation/­Response.php202
10. Symfony\Component\HttpFoundation\Response __construct
…/­vendor/­laravel/­framework/­src/­Illuminate/­Routing/­Router.php1501
9. Illuminate\Routing\Router prepareResponse
…/­vendor/­laravel/­framework/­src/­Illuminate/­Routing/­Router.php1036
8. Illuminate\Routing\Router dispatchToRoute
…/­vendor/­laravel/­framework/­src/­Illuminate/­Routing/­Router.php1001
7. Illuminate\Routing\Router dispatch
…/­vendor/­laravel/­framework/­src/­Illuminate/­Foundation/­Application.php775
6. Illuminate\Foundation\Application dispatch
…/­vendor/­laravel/­framework/­src/­Illuminate/­Foundation/­Application.php745
5. Illuminate\Foundation\Application handle
…/­vendor/­laravel/­framework/­src/­Illuminate/­Session/­Middleware.php72
4. Illuminate\Session\Middleware handle
…/­vendor/­laravel/­framework/­src/­Illuminate/­Cookie/­Queue.php47
3. Illuminate\Cookie\Queue handle
…/­vendor/­laravel/­framework/­src/­Illuminate/­Cookie/­Guard.php51
2. Illuminate\Cookie\Guard handle
…/­vendor/­stack/­builder/­src/­Stack/­StackedHttpKernel.php23
1. Stack\StackedHttpKernel handle
…/­vendor/­laravel/­framework/­src/­Illuminate/­Foundation/­Application.php641
0. Illuminate\Foundation\Application run
…/­public/­index.php50

ErrorException (E_NOTICE)

Callstack information; navigate with mouse or keyboard using Ctrl+↑ or Ctrl+↓
Copy-to-clipboard button
Exception message and its type
Code snippet where the error was thrown
Server state information
Application provided context information
ErrorException thrown with message "Trying to get property of non-object" Stacktrace: #24 ErrorException in /var/www/novol.de/app/composers/ProductssingleComposer.php:134 #23 Illuminate\Exception\Handler:handleError in /var/www/novol.de/app/composers/ProductssingleComposer.php:134 #22 ProductssingleComposer:getNextParent in /var/www/novol.de/app/composers/ProductssingleComposer.php:125 #21 ProductssingleComposer:getParentId in /var/www/novol.de/app/composers/ProductssingleComposer.php:56 #20 ProductssingleComposer:buildProductsNavbar in /var/www/novol.de/app/composers/ProductssingleComposer.php:29 #19 ProductssingleComposer:compose in <#unknown>:0 #18 call_user_func_array in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/View/Factory.php:440 #17 Illuminate\View\Factory:Illuminate\View\{closure} in <#unknown>:0 #16 call_user_func_array in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Events/Dispatcher.php:199 #15 Illuminate\Events\Dispatcher:fire in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/View/Factory.php:471 #14 Illuminate\View\Factory:callComposer in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/View/View.php:107 #13 Illuminate\View\View:renderContents in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/View/View.php:78 #12 Illuminate\View\View:render in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Http/Response.php:43 #11 Illuminate\Http\Response:setContent in /var/www/novol.de/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Response.php:202 #10 Symfony\Component\HttpFoundation\Response:__construct in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Routing/Router.php:1501 #9 Illuminate\Routing\Router:prepareResponse in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Routing/Router.php:1036 #8 Illuminate\Routing\Router:dispatchToRoute in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Routing/Router.php:1001 #7 Illuminate\Routing\Router:dispatch in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:775 #6 Illuminate\Foundation\Application:dispatch in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:745 #5 Illuminate\Foundation\Application:handle in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Session/Middleware.php:72 #4 Illuminate\Session\Middleware:handle in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Cookie/Queue.php:47 #3 Illuminate\Cookie\Queue:handle in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Cookie/Guard.php:51 #2 Illuminate\Cookie\Guard:handle in /var/www/novol.de/vendor/stack/builder/src/Stack/StackedHttpKernel.php:23 #1 Stack\StackedHttpKernel:handle in /var/www/novol.de/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:641 #0 Illuminate\Foundation\Application:run in /var/www/novol.de/public/index.php:50

Trying to get property of non-object

    }

    private function getNextParent($parentId)
    {
        $category = Category::where('id', $parentId)
            ->where(array('hide' => 0, 'site_id' => $this->site_id, 'lang' => \App::getLocale()))->first();

        if ($category->parent) {
            return $this->getNextParent($category->parent);
        } else {
    }

    private function getNextParent($parentId)
    {
        $category = Category::where('id', $parentId)
            ->where(array('hide' => 0, 'site_id' => $this->site_id, 'lang' => \App::getLocale()))->first();

        if ($category->parent) {
            return $this->getNextParent($category->parent);
        } else {
    }

    private function getParentId($category)
    {
        if ($category->parent == 0) {
            return $category->id;
        } else {
            return $this->getNextParent($category->parent);
        }
    }
            return $this->getParentToDepth($category->parent);
        }
    }


    private function buildProductsNavbar($product)
    {
        $categories = Category::where('parent', $this->getParentId($product->category->first()))
            ->where(array('hide' => 0, 'site_id' => $this->site_id, 'lang' => \App::getLocale()))
            ->orderBy('weight')->get();
		$view->with('productCategory', $product->category->first()->id);

        if(\App::getLocale() != 'pl')
            $langPrefix2 = \App::getLocale().'_';
        else
            $langPrefix2 = '';

        $productNavbar = $this->buildProductsNavbar($product);
        $view->with('moveMobile', $this->getDepth($product->category->first()->id).'00%');
        $view->with('productNavbar', $productNavbar);
<#unknown>
		// Once we have the class and method name, we can build the Closure to resolve
		// the instance out of the IoC container and call the method on it with the
		// given arguments that are passed to the Closure as the composer's data.
		return function() use ($class, $method, $container)
		{
			$callable = array($container->make($class), $method);
 
			return call_user_func_array($callable, func_get_args());
		};
	}
<#unknown>
		// payload to each of them so that they receive each of these arguments.
		if ( ! is_array($payload)) $payload = array($payload);
 
		$this->firing[] = $event;
 
		foreach ($this->getListeners($event) as $listener)
		{
			$response = call_user_func_array($listener, $payload);
 
			// If a response is returned from the listener and event halting is enabled
	 * Call the composer for a given view.
	 *
	 * @param  \Illuminate\View\View  $view
	 * @return void
	 */
	public function callComposer(View $view)
	{
		$this->events->fire('composing: '.$view->getName(), array($view));
	}
 
    protected function renderContents()
    {
        // We will keep track of the amount of views being rendered so we can flush
        // the section after the complete rendering operation is done. This will
        // clear out the sections for any separate views that may be rendered.
        $this->factory->incrementRender();
 
        $this->factory->callComposer($this);
 
        $contents = $this->getContents();
     *
     * @param  \Closure  $callback
     * @return string
     */
    public function render(Closure $callback = null)
    {
        try {
            $contents = $this->renderContents();
 
            $response = isset($callback) ? $callback($this, $contents) : null;
		}
 
		// If this content implements the "RenderableInterface", then we will call the
		// render method on the object so we will avoid any "__toString" exceptions
		// that might be thrown and have their errors obscured by PHP's handling.
		elseif ($content instanceof RenderableInterface)
		{
			$content = $content->render();
		}
 
     * @throws \InvalidArgumentException When the HTTP status code is not valid
     *
     * @api
     */
    public function __construct($content = '', $status = 200, $headers = array())
    {
        $this->headers = new ResponseHeaderBag($headers);
        $this->setContent($content);
        $this->setStatusCode($status);
        $this->setProtocolVersion('1.0');
	 * @param  mixed  $response
	 * @return \Illuminate\Http\Response
	 */
	protected function prepareResponse($request, $response)
	{
		if ( ! $response instanceof SymfonyResponse)
		{
			$response = new Response($response);
		}
 
		$response = $this->callRouteBefore($route, $request);
 
		if (is_null($response))
		{
			$response = $route->run($request);
		}
 
		$response = $this->prepareResponse($request, $response);
 
		// After we have a prepared response from the route or filter we will call to
		// If no response was returned from the before filter, we will call the proper
		// route instance to get the response. If no route is found a response will
		// still get returned based on why no routes were found for this request.
		$response = $this->callFilter('before', $request);
 
		if (is_null($response))
		{
			$response = $this->dispatchToRoute($request);
		}
 
		}
 
		if ($this->runningUnitTests() && ! $this['session']->isStarted())
		{
			$this['session']->start();
		}
 
		return $this['router']->dispatch($this->prepareRequest($request));
	}
 
	{
		try
		{
			$this->refreshRequest($request = Request::createFromBase($request));
 
			$this->boot();
 
			return $this->dispatch($request);
		}
		catch (\Exception $e)
		if ($this->sessionConfigured())
		{
			$session = $this->startSession($request);
 
			$request->setSession($session);
		}
 
		$response = $this->app->handle($request, $type, $catch);
 
		// Again, if the session has been configured we will need to close out the session
	 * @param  \Symfony\Component\HttpFoundation\Request  $request
	 * @param  int   $type
	 * @param  bool  $catch
	 * @return \Symfony\Component\HttpFoundation\Response
	 */
	public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
	{
		$response = $this->app->handle($request, $type, $catch);
 
		foreach ($this->cookies->getQueuedCookies() as $cookie)
	 * @param  \Symfony\Component\HttpFoundation\Request  $request
	 * @param  int   $type
	 * @param  bool  $catch
	 * @return \Symfony\Component\HttpFoundation\Response
	 */
	public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
	{
		return $this->encrypt($this->app->handle($this->decrypt($request), $type, $catch));
	}
 
    {
        $this->app = $app;
        $this->middlewares = $middlewares;
    }
 
    public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true)
    {
        return $this->app->handle($request, $type, $catch);
    }
 
	 * @param  \Symfony\Component\HttpFoundation\Request  $request
	 * @return void
	 */
	public function run(SymfonyRequest $request = null)
	{
		$request = $request ?: $this['request'];
 
		$response = with($stack = $this->getStackedClient())->handle($request);
 
		$response->send();
| Once we have the application, we can simply call the run method,
| which will execute the request and send the response back to
| the client's browser allowing them to enjoy the creative
| and wonderful application we have whipped up for them.
|
*/
 
$app->run();
 
empty
empty
empty
empty
empty
Key Value
USER www-data
HOME /var/www
HTTP_USER_AGENT claudebot
HTTP_ACCEPT */*
HTTP_HOST novol.de
REDIRECT_STATUS 200
SERVER_NAME novol.de
SERVER_PORT 443
SERVER_ADDR 51.75.52.15
REMOTE_PORT 49202
REMOTE_ADDR 44.206.248.122
SERVER_SOFTWARE nginx/1.14.2
GATEWAY_INTERFACE CGI/1.1
HTTPS on
REQUEST_SCHEME https
SERVER_PROTOCOL HTTP/2.0
DOCUMENT_ROOT /var/www/novol.de/public
DOCUMENT_URI /index.php
REQUEST_URI /de/produkt/3794/polierschwamm
SCRIPT_NAME /index.php
CONTENT_LENGTH
CONTENT_TYPE
REQUEST_METHOD GET
QUERY_STRING
SCRIPT_FILENAME /var/www/novol.de/public/index.php
PATH_INFO
FCGI_ROLE RESPONDER
PHP_SELF /index.php
REQUEST_TIME_FLOAT 1710839367.551
REQUEST_TIME 1710839367
empty
0. Whoops\Handler\PrettyPageHandler