<?php

namespace App\Http\Controllers;

use App\Models\storecontents;
use Illuminate\Http\Request;

class StoreContentController extends GenericController
{
    protected $layout = "layouts.main";
    protected $data = array();
    public $module = 'store_contents';
    static $per_page = '10';

    public function __construct()
    {
        $this->model = new storecontents();
        parent::__construct();
    }

    public function index(Request $request)
    {
        $this->grab($request);
        if ($this->access['is_view'] == 0 && $this->access['is_search'] == 0)
            return redirect('dashboard')->with('message', __('core.note_restric'))->with('status', 'error');
        elseif ($this->access['is_view'] == 0 && $this->access['is_search'] == 1)
            $storeContents = [];
        else
            $storeContents = storecontents::all();

        return view('manage.store_contents.index', array_merge($this->data, ['rows' => $storeContents]));
    }

    public function store(Request $request)
    {
        $id = 'NULL';
        if (isset($request->id) && !empty($request->id)) {
            $id = $request->id;
            $store_content = storecontents::findOrFail($request->id);
        } else {
            $store_content = new storecontents();
        }

        $validationRules = [
            'store_id' => "required|exists:stores,id|unique:store_contents,store_id,{$id},id,region_code,{$request->region_code}",
            'region_code' => "required|exists:regions,code|unique:store_contents,region_code,{$id},id,store_id,{$request->store_id}"
        ];
        $request->validate($validationRules);

        $store_content->store_id = $request->store_id;
        $store_content->region_code = $request->region_code;
        $store_content->name = json_encode($request->name);
        $store_content->about_store = json_encode($request->about_store);
        $store_content->cb_terms = json_encode($request->cb_terms);
        $store_content->more_about_store_title = json_encode($request->more_about_store_title);
        $store_content->more_about_store = json_encode($request->more_about_store);
        $store_content->sp_terms_title = json_encode($request->sp_terms_title);
        $store_content->sp_terms = json_encode($request->sp_terms);
        $store_content->h1_tag = json_encode($request->h1_tag);
        $store_content->h2_tag = json_encode($request->h2_tag);
        $store_content->meta_title = json_encode($request->meta_title);
        $store_content->meta_kw = json_encode($request->meta_kw);
        $store_content->meta_desc = json_encode($request->meta_desc);
        $store_content->secrets = json_encode($request->secrets);
        $store_content->save();
        return redirect()->to('/manage/store_contents');
    }

}