HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/shop.komma.nl/app/Properties/Models/PropertyValueTranslation.php
<?php


namespace App\Properties\Models;


use App\Properties\Resources\StateTrackingTrait;
use Komma\KMS\Core\AbstractTranslationModel;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Komma\KMS\Globalization\Languages\Models\Language;

/**
 * App\Properties\Models\PropertyValueTranslation
 *
 * @property int $id
 * @property int $language_id
 * @property int $property_value_id
 * @property string $name
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read mixed $state
 * @property-read Language $language
 * @property-read \App\Properties\Models\PropertyValue $translatable
 * @method static \Illuminate\Database\Eloquent\Builder|PropertyValueTranslation newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|PropertyValueTranslation newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|PropertyValueTranslation query()
 * @method static \Illuminate\Database\Eloquent\Builder|PropertyValueTranslation whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|PropertyValueTranslation whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|PropertyValueTranslation whereLanguageId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|PropertyValueTranslation whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|PropertyValueTranslation wherePropertyValueId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|PropertyValueTranslation whereUpdatedAt($value)
 * @mixin \Eloquent
 */
class PropertyValueTranslation extends AbstractTranslationModel implements PropertyKeyValueTranslationInterface
{
    use StateTrackingTrait;

    protected $fillable = ['language_id', 'property_value_id', 'name'];

    /**
     * The relations to eager load on every query.
     *
     * @var array
     */
    protected $with = ['translatable'];

    /**
     * @return belongsTo relation That resolves to a TranslatableModelInterface
     * @see AbstractTranslatableModel
     * @see PropertyValue for more information about what this is
     */
    public function translatable(): BelongsTo
    {
        return $this->belongsTo(PropertyValue::class, 'property_value_id');
    }

    /**
     * Accessor for name attribute
     */
    public function getNameAttribute()
    {
        return ucfirst(array_key_exists('name', $this->attributes) ? $this->attributes['name'] : '');
    }

    /**
     * Mutator for name attribute
     */
    public function setNameAttribute($name)
    {
        $this->attributes['name'] = strtolower($name);
    }
}