<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Client extends Model
{
    protected $guarded = [
        'id'
    ];
    public $table = "clients";
    // protected $appends = ['client_services'];

    public function country_info(){
        return $this->hasOne('App\Models\Country', 'alpha_2_code', 'country');
    }
    public function country_flag_info(){
      return $this->hasOne('App\Models\CountryFlag', 'country', 'country');
    }
    public function payment_type_info(){
        return $this->hasOne('App\Models\PaymentType', 'id', 'pay_mode');
    }

    public function service_info(){
        return $this->hasMany('App\Models\ClientCategory', 'client_id', 'id');
    }
    public function report_info(){
      return $this->hasMany('App\Models\MeetingReport', 'client', 'id');
    }
    public function auth_user_info(){
      return $this->hasOne('App\Models\SystemUser', 'id', 'auth_user_id');
    }
    public function created_by_info(){
      return $this->hasOne('App\Models\SystemUser', 'id', 'created_by');
    }
    public function modified_by_info(){
      return $this->hasOne('App\Models\SystemUser', 'id', 'last_modified_by');
    }
    public function short_code_info(){
      return $this->hasMany('App\Models\ShortCode', 'client_id', 'id');
    }


    public function getClientServicesAttribute(){
        $services = $this->service_info;
        $service_name_arr = [];
        foreach ($services as $value) {
          $service_name = Models\Service::find($value['category_id']);
          $service_name_arr[] = $service_name->name;
        }
        return $service_name_arr;
    }
}
