<?php

/**
 * @author Gabriel <anhaia.gabriel@email.com>
 */
class Medico_model extends CI_Model
{

    public $table = 'medicos';

    public function insert($medico)
    {
        $this->db->insert($this->table, $medico);

        return $this->db->insert_id();
    }

    public function update($idMedico, $especialidade)
    {
        $this->db->update($this->table, $especialidade, "id_medico = {$idMedico}");
    }

    public function find($id = null)
    {
        $this->db->from($this->table);

        $this->db->join('usuarios', "{$this->table}.id_usuario = usuarios.id_usuario");
        $this->db->join('enderecos', 'usuarios.id_endereco = enderecos.id_endereco');

        if (!empty($id)) {
            $this->db->where('id_medico', $id);

            return $this->db->get()->row();

        }

        return $this->db->get()->result();
    }

    public function delete($id)
    {
        $this->db->delete($this->table, "id_medico = {$id}");
        $this->db->delete('medicos_especialidades', "id_medico = {$id}");
    }

    public function updateEspecialidades($id, $especialidades)
    {
        $this->db->delete('medicos_especialidades', "id_medico = {$id}");

        foreach ($especialidades as $especialidade) {
            $this->db->insert('medicos_especialidades', [
                'id_medico' => $id,
                'id_especialidade' => $especialidade
            ]);
        }
    }
}