<?php

namespace App\Http\Controllers;

use App\Facades\Services\BackendUserService;
use App\Models\GenericBackoffice\WebsiteObject;
use Illuminate\Http\Request;
use Illuminate\Support\Str;

class SpaController extends Controller
{
    public function index()
    {
        $status = 404;
        $uri = request()->getPathInfo();
        if (Str::startsWith($uri,'/search')) {
            $status = 200;
        }

        $query = WebsiteObject::join('website_objects_lang', 'website_objects.website_object_id', '=', 'website_objects_lang.website_object_id')
            ->where('lang_uri', $uri)
            ->where('website_objects_lang.wo_language_id', getActiveLanguage());

        $user = BackendUserService::getLoggedUser();

        if (is_null($user)) {
            $query->with('websites')->where('status', 'published');
        }

        $count = $query->count();

        if ($count > 0) {
            $status = 200;
        }

        return response()->view('app')->setStatusCode($status);
    }
}
