<?php

class Agronet_MailController extends Agro_Controller_Action {
    private $inicioTextoPadrao = true;
	
	public function formAction() {
		$this->getHelper('layout')->disableLayout();
		$this->view->form = new Agronet_Form_Mail();
	}
	
	public function sendAction () {
		$this->getHelper('ViewRenderer')->setNoRender();
		$this->getHelper('layout')->disableLayout();

		try {
		    $this->enviarEmail(
              $this->getRequest()->getParam('para'),
              $this->getRequest()->getParam('assunto'),
              $this->getRequest()->getParam('mensagem')
            );

			$result = array('status' => true, 'message' => 'E-mail enviado com sucesso.');
		} catch (Exception $e) {
			$result = array('status' => false, 'message' => $e->getMessage());
		}
		
		$this->getResponse()->setBody(Zend_Json::encode($result));
	}

	public function enviarEmail(string $destinatario, string $assunto, string $conteudo, string $usuario = '')
    {
        $mail = new Agro_Mail();
        $mail->addTo($destinatario);
        $mail->setSubject($assunto);

        if (!empty($usuario)) {
            $mail->setTipoUsuario($usuario);
        }

        $mail->inicioTextoPadrao($this->inicioTextoPadrao);
        $mail->setBody($conteudo);
        $mail->send();
    }

    public function inicioTextoPadrao(bool $inicioTextoPadrao)
    {
        $this->inicioTextoPadrao = $inicioTextoPadrao;
    }
}
