<?php
namespace App;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;

/**
 * Class WishlistUserResidentalCom
 *
 * @package App
 * @property string $user
 * @property string $residental_complex
 * @property-write mixed $residental_complex_id
 * @property-write mixed $user_id
 * @method static bool|null forceDelete()
 * @method static \Illuminate\Database\Eloquent\Builder|\App\WishlistUserResidentalCom newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|\App\WishlistUserResidentalCom newQuery()
 * @method static \Illuminate\Database\Query\Builder|\App\WishlistUserResidentalCom onlyTrashed()
 * @method static \Illuminate\Database\Eloquent\Builder|\App\WishlistUserResidentalCom query()
 * @method static bool|null restore()
 * @method static \Illuminate\Database\Query\Builder|\App\WishlistUserResidentalCom withTrashed()
 * @method static \Illuminate\Database\Query\Builder|\App\WishlistUserResidentalCom withoutTrashed()
 * @mixin \Eloquent
 */
class WishlistUserResidentalCom extends Model
{
    use SoftDeletes;

    protected $fillable = ['user_id', 'residental_complex_id'];
    protected $hidden = [];

    /**
     * Set to null if empty
     * @param $input
     */
    public function setUserIdAttribute($input)
    {
        $this->attributes['user_id'] = $input ? $input : null;
    }

    /**
     * Set to null if empty
     * @param $input
     */
    public function setResidentalComplexIdAttribute($input)
    {
        $this->attributes['residental_complex_id'] = $input ? $input : null;
    }
    
    public function user()
    {
        return $this->belongsTo(User::class, 'user_id');
    }
    
    public function residental_complex()
    {
        return $this->belongsTo(ResidentialComplex::class, 'residental_complex_id')->withTrashed();
    }
    
}
