<?php

namespace App\Http\Controllers;

use App\Http\Resources\AreaResource;
use App\Seo;
use Illuminate\Http\Request;
use Illuminate\Support\Arr;

class SeoController extends Controller
{
    public function index(Request $request)
    {
        $params = $request->all();
        $uri = Arr::get($params, 'uri', '/');
        if (strpos($uri, "/profile/") !== false) {
            $uri = str_replace("/profile/", "", $uri);
            $uri = "/" . $uri;
        }
        $uri = str_replace("//", "/", $uri);
        $uri = str_replace("/?", "?", $uri);
        $uri = str_replace("?&", "?", $uri);
        $uri = str_replace("&&", "&", $uri);
        $uri = preg_replace('/(?:&|(\?))page=[^&]*(?(1)&|)?/i', "$1", $uri);
        $seoMeta = Seo::select('title', 'keywords', 'description', 'image')->where('uri', $uri)->first();
        $data = ['title' => config('settings.site_name'), 'keywords' => '', 'description' => '', 'image' => url('favicon-16x16.png')];
        if(isset($seoMeta) && $seoMeta->title != null) {
            $data['title'] = ($seoMeta->title != null) ? $seoMeta->title : "";
            $data['keywords'] = ($seoMeta->keywords != null) ? $seoMeta->keywords : "";
            $data['description'] = ($seoMeta->description != null) ? $seoMeta->description : "";
            if ($seoMeta->image != null && $seoMeta->image != "") $data['image'] = url($seoMeta->image);
        }

        return response()->json(['data' => $data], 200);
    }
}
