from = Yii::app()->params['email_remitente']; $mensaje->setTo($to); $mensaje->subject = $subject; $mensaje->view = $view; $mensaje->setBody($body, 'text/html'); return (Yii::app()->mail->send($mensaje) > 0); } /** * @brief Envía un correo de confirmación de cuenta. * @param string $destino dirección de destino * @return boolean */ public static function enviarConfirmacionActivacion($destino) { Yii::trace('Enviando correo para confirmar activación', 'application.helpers.EMail'); return self::_enviar($destino, Yii::t('profind', 'Gracias por registrarse en PROFIND.'), 'confirmacion_usuario', array('email' => $destino)); } /** * @brief Envía un correo informando de la cancelación de cuenta * @param string $destino dirección de destino * @return boolean */ public static function enviarConfirmacionCancelacion($destino) { Yii::trace('Enviando correo para confirmar cancelación', 'application.helpers.EMail'); return self::_enviar($destino, Yii::t('profind', 'Confirmación de cancelación de su cuenta en PROFIND'), 'confirmacion_cancelacion_usuario', array('email' => $destino)); } /** * @brief Envía un correo de recuperación de password con una URL de verificación. * @param string $destino dirección de destino * @param string $key clave de seguridad necesaria para construir la URL de recuperación * @return boolean */ public static function enviarRecuperacion($destino, $key) { Yii::trace('Enviando correo con URL para recuperar la contraseña', 'application.helpers.EMail'); $url_recuperacion = Yii::app()->params['frontpage'] . '?' . 'key=' . $key . '&email=' . urlencode($destino); return self::_enviar($destino, Yii::t('profind', 'Recuperación de su cuenta en PROFIND'), 'recuperacion_password_usuario', array('email' => $destino, 'url' => $url_recuperacion)); } /** * @brief Envía un correo confirmando el cambio de password. * También se envia una URL de recuperación por si fuera un cambio no permitido. * @param string $destino dirección de destino * @param string $key clave de seguridad necesaria para construir la URL de recuperación * @return boolean */ public static function enviarNotificacionCambioPassword($destino, $key) { Yii::trace('Enviando correo confirmando el cambio de contraseña', 'application.helpers.EMail'); $url_recuperacion = Yii::app()->params['frontpage'] . '?' . 'key=' . $key . '&email=' . urlencode($destino); return self::_enviar($destino, Yii::t('profind', 'Se ha modificado su password en PROFIND'), 'notificacion_cambio_password_usuario', array('email' => $destino, 'url' => $url_recuperacion)); } /** * @brief Envía un correo de registro de agente con una URL para confirmar la cuenta. * @param string $destino dirección de destino * @param string $key clave de seguridad necesaria para construir la URL de confirmación * @return boolean */ public static function enviarBienvenidaAgente($destino, $key) { Yii::trace('Enviando correo de bienvenida a agente', 'application.helpers.EMail'); $url_activacion = Yii::app()->params['frontpage'] . '?' . 'key=' . $key . '&email=' . urlencode($destino) . '&x=1'; return self::_enviar($destino, Yii::t('profind', 'Complete su registro de agente en PROFIND'), 'registro_agente', array('email' => $destino, 'url' => $url_activacion)); } /** * @brief Envía un correo de registro de coordinador con una URL para confirmar la cuenta. * @param string $destino dirección de destino * @param string $key clave de seguridad necesaria para construir la URL de confirmación * @return boolean */ public static function enviarBienvenidaCoordinador($destino, $key) { Yii::trace('Enviando correo de bienvenida a coordinador', 'application.helpers.EMail'); $url_activacion = Yii::app()->createAbsoluteUrl('usuario/activar', array("key" => $key, "email" => $destino)); return self::_enviar($destino, Yii::t('profind', 'Complete su registro en PROFIND'), 'registro_usuario', array('email' => $destino, 'url' => $url_activacion)); } /** * @brief Envía un mail de registro a un usuario (coordinador/agente) con * una URL de confirmación de baja. * @param string $destino dirección de destino * @param string $key clave de seguridad necesaria para construir la URL de confirmación * @return boolean */ public static function enviarSolicitudBaja($destino, $key) { Yii::trace('Enviando correo con URL para realizar la baja de la cuenta', 'application.helpers.EMail'); $url_cancelacion = $this->createAbsoluteUrl('usuario/cancelar', array("key" => $key, "email" => $destino)); return self::_enviar($destino, Yii::t('profind', 'Solicitud de cancelación de su cuenta en PROFIND'), 'solicitud_cancelacion_usuario', array('email' => $destino, 'url' => $url_cancelacion)); } /** * @brief Envía un correo confirmando el cambio de producto. * @param string $destino dirección de destino * @param string $id_producto identificación del producto * @return boolean */ public static function enviarNotificacionCambioProducto($destino, $id_producto) { Yii::trace('Enviando correo confirmando el cambio de producto', 'application.helpers.EMail'); $producto = Producto::model()->findByPk($id_producto); return self::_enviar($destino, Yii::t('profind', 'Se ha modificado su producto en PROFIND'), 'notificacion_cambio_producto', array( 'email' => $destino, 'producto' => $producto->titulo, 'importe' => $producto->coste_mensual, )); } } ?>