<?php
class EmailDevolucaoProdutoDonoLoja extends Pedido
{
    public function __construct($registry)
    {
        parent::__construct($registry);
        parent::getConfigMail();
    }

    public function sendTask($typeemail, $returnId, $attribute_value)
    {
        try {
            if (!$this->config->get('config_return_mail')) {
                throw new exception('O configuração de alerta de devolução de produto esta desabilitada. E-mail referente a devolução: ' . $returnId . ' não enviado!');
            }

            parent::getInfosTemplateOrder($returnId);
            $this->getInfosReturn($returnId);

            $this->mail->setTo($this->to);
            $this->mail->setSender($this->sender);
            $this->mail->setSubject(html_entity_decode($this->subject, ENT_QUOTES, 'UTF-8'));
            $this->mail->setHtml(parent::getTemplate($typeemail));
            $this->mail->send(true);

            parent::sendAdditionalEmail($attribute_value);
        } catch (Exception $e) {
            throw $e;
        }
    }

    public function getInfosReturn($returnId)
    {
        $this->to = $this->config->get('config_email');
        $this->subject = $this->config->get('config_name') . ' - Devolução ' . $returnId;

        $this->load->model('account/return');
        $this->load->type('tipocomum');
        $returnInfo = $this->model_account_return->getReturn($returnId);

        if (!$returnInfo) {
            throw new exception('Devolução não encontrada.' . $returnInfo);
        }

        $this->template->data['returnId'] = $returnId;
        $this->template->data['orderId'] = $returnInfo['order_id'];
        $this->template->data['fullName'] = $returnInfo['firstname'] . ' ' . $returnInfo['lastname'];
        $this->template->data['email'] = $returnInfo['email'];
        $this->template->data['product'] = $returnInfo['product'];
        $this->template->data['quantity'] = $returnInfo['quantity'];
        $this->template->data['reason'] = $returnInfo['reason'];
        $this->template->data['comment'] = $returnInfo['comment'];
        $this->template->data['opened'] = Type_DsimDnao::getNickFromValue($returnInfo['opened']);
        $this->template->data['orderDate'] = ftr_geral::formatDate($returnInfo['date_ordered'], 'br');

        $this->template->data['returnLink'] = $this->urlAdmin->link('sale/return/info', 'return_id=' . $returnId, 'SSL');
    }
}
