<?php

namespace ThurData\Servers\KerioEmail\Core\Models\Whmcs;

use \Illuminate\Database\Eloquent\Model as EloquentModel;
use ThurData\Servers\KerioEmail\App\Models\Whmcs\ProductConfigLinks;

/**
 * Description of Product
 *
 * @autor ThurData <info@thurdata.ch>
 */
class ProductConfigOption extends EloquentModel
{
    /**
     * Table name
     *
     * @var string
     */
    protected $table = 'tblproductconfigoptions';

    protected $primaryKey = 'id';
    
    /**
     * Eloquent guarded parameters
     * @var array
     */
    protected $guarded = ['id'];

    /**
     * Eloquent fillable parameters
     * @var array
     */
    protected $fillable = ['gid', 'optionname', 'optiontype', 'qtyminimum', 'qtymaximum', 'order', 'hidden'];

    /**
     * Indicates if the model should soft delete.
     *
     * @var bool
     */
    protected $softDelete = false;

    /**
     * Indicates if the model should be timestamped.
     *
     * @var bool
     */
    public $timestamps = false;
    
    public function __construct(array $attributes = [])
    {
        parent::__construct($attributes);
    }

    public function links()
    {
        return $this->hasMany(ProductConfigLinks::class, 'gid', 'gid');
    }

    public function suboptions()
    {
        return $this->hasMany("ThurData\Servers\KerioEmail\Core\Models\Whmcs\ProductConfigOptionSub", "configid");
    }

    public function isLinkedToProduct($id)
    {
       foreach($this->links as $link)
       {
           if((int) $link->pid === (int) $id)
           {
               return true;
           }
       }

        return false;
    }

}
