<?php

class KorwilTeam extends \Phalcon\Mvc\Model
{
    public function initialize()
    {
        $this->setSchema("jaga");
        $this->setSource("korwil_teams");
        $this->hasManyToMany(
            'id',
            'KorwilTeamUser',
            'team_id',
            'user_id',
            'UmUser',
            'um_id'
        );
        $this->hasManyToMany(
            'id',
            'KorwilTeamInstansi',
            'team_id',
            'instansi_id',
            'Instansi',
            'id'
        );
        $this->hasMany(
            'id',
            'KorwilTeamUser',
            'team_id',
            ['params' => ['conditions' => 'deleted_at is null']]
        );
        $this->belongsTo(
            'id_periode',
            'KorsupgahPeriode',
            'id'
        );
    }

    public function toArray($columns = null)
    {
        $result = parent::toArray($columns);

        return $result;
    }

    public function toDetail()
    {
        $result = $this->toArray();
        $result['instansi_list'] = $this->Instansi;
        $result['periode'] = $this->KorsupgahPeriode;

        $result['members'] = [];

        $members = $this->KorwilTeamUser;
        foreach ($members as $key => $member) {
            $result['members'][] = $member->toArrayWithUser();
        }

        return $result;
    }
}
