<?php

namespace App\Models;

class PropertyWebComponentMapping extends BaseModel
{
    /**
     * The database table used by the model.
     *
     * @var string
     */
    protected $table = 'property_web_component_mapping';
    protected $appends = ['parameterArray','languageArray'];

    const CREATED_AT = 'created_at';
    const UPDATED_AT = 'updated_at';

    protected $dateFormat = 'U';
    protected $guarded = [];
    protected $hidden = [];

    function getParameterArrayAttribute()
    {
        $attribute = [];
        if (!empty($this->parameter)) {
            $attribute = json_decode($this->parameter, 1);
        }
        return $attribute;
    }

    function getLanguageArrayAttribute()
    {
        $attribute = [];
        if (!empty($this->language)) {
            $attribute = json_decode($this->language, 1);
        }
        return $attribute;
    }

    public function webComponent()
    {
        return $this->hasOne('App\Models\PropertyWebComponent', 'id', 'component_id')->select(['id', 'component', 'name','parameter','icon']);
    }

}
