Exemple #1
0
function enviarEmailNuevaReserva($idReserva)
{
    try {
        global $smarty;
        $reservacion = getReserva($idReserva);
        $reservacion->id = encryptId($idReserva);
        $smarty->assign('reserva', $reservacion);
        $cart = $reservacion->cart;
        $data_user = array('nombre' => $reservacion->usuario->nombre, 'apellido' => $reservacion->usuario->apellido, 'email' => $reservacion->usuario->email, 'telefono' => $reservacion->usuario->telefono);
        $smarty->assign('usuario', $data_user);
        $hotel = getHotelById($reservacion->hotelId);
        $subject = 'New Booking ' . $hotel->nombres->es . ' [' . $reservacion->localizador . ']';
        $smarty->assign('entrada', $reservacion->alojamiento[0]->inicio);
        $smarty->assign('salida', $reservacion->alojamiento[0]->final);
        $noches = ceil((strtotime($reservacion->alojamiento[0]->final) - strtotime($reservacion->alojamiento[0]->inicio)) / (24 * 60 * 60));
        $smarty->assign('noches', $noches);
        $pais = getPais($reservacion->usuario->paisId);
        $smarty->assign('pais', $pais->nombre);
        $smarty->assign('base_url', $cart->url);
        $smarty->assign('currency', $moneda);
        $campania = false;
        $smarty->assign('hotel', $hotel);
        if ($hotel && $hotel->campaniaId) {
            $campania = getCampania($hotel->campaniaId);
            $smarty->assign('campania', $campania);
        }
        $body = $smarty->fetch('confirmacionEmail_nodesign.tpl');
        $cobroAnticipado = 0;
        foreach ($reservacion->productos as $producto) {
            $cobroAnticipado += $producto->importeInicial;
        }
        //generar factura
        if ($cobroAnticipado && $reservacion->estado == 'Aprobada') {
            $factura = generarFactura($reservacion, $hotel);
        } else {
            $factura = 0;
        }
        $mail = new Core_Mailer();
        /* enviando email al usuario */
        $enviado = $mail->send_email($data_user['email'], $subject, $body, $factura);
        if ($factura) {
            //TODO: eliminar pdf
            $mail = new Core_Mailer();
            @unlink($factura);
        }
        $emails = $hotel->emailReservas;
        $emails = explode(',', $emails);
        $reserva_url = getReservaUrl($idReserva);
        $smarty->assign('reserva_url', $reserva_url);
        $body = $smarty->fetch('reservaEmail_nodesign.tpl');
        if ($campania) {
            $subject = 'New Booking ' . $reservacion->localizador . ' [contrato ' . $campania->localizador . ']';
        } else {
            $subject = 'New Booking ' . $hotel->nombres->es . ' ' . $reservacion->localizador;
        }
        $emailDistribuidor = explode(',', $hotel->distribuidor->emailReservas);
        if ($emailDistribuidor && count($emailDistribuidor)) {
            foreach ($emailDistribuidor as $email) {
                if (strlen(trim($email)) > 0) {
                    $enviado = $mail->send_email($email, $subject, $body);
                }
            }
        }
        if ($reservacion->estado == 'Aprobada') {
            //cuando no es onrequest
            foreach ($emails as $email) {
                if (strlen(trim($email)) > 0) {
                    $enviado = $mail->send_email($email, $subject, $body);
                }
            }
            if ($reservacion->extras) {
                foreach ($reservacion->extras as $excursion) {
                    if ($excursion->emails && explode(',', $excursion->emails)) {
                        $smarty->assign('excursion', $excursion);
                        $body = $smarty->fetch('confirmacionExcursion_nodesign.tpl');
                        $emails = explode(',', $excursion->emails);
                        $subject = 'New Booking ' . $excursion->localizador;
                        foreach ($emails as $email) {
                            if (strlen(trim($email))) {
                                $mail->send_email($email, $subject, $body);
                            }
                        }
                    }
                }
            }
        }
    } catch (Exception $ex) {
        print_r($ex);
    }
}
Exemple #2
0
 $body = $smarty->fetch('confirmacionEmail_nodesign.tpl');
 if ($reservacion->pagos && count($reservacion->pagos) && $reservacion->pagos[0]->importe) {
     $factura = generarFactura($reservacion, $hotel);
 } else {
     $factura = 0;
 }
 $mail = new Core_Mailer();
 $enviado = $mail->send_email($reservacion->usuario->email, $subject, $body, $factura);
 if ($factura) {
     $mail = new Core_Mailer();
     @unlink($factura);
 }
 //enviar al hotel
 $smarty->configLoad('es.conf');
 $subject = 'New Booking ' . $reserva->localizador . ' [Contrato ' . $campania->localizador . ']';
 $reserva_url = getReservaUrl($reserva->id);
 $smarty->assign('reserva_url', $reserva_url);
 $body = $smarty->fetch('reservaEmail_nodesign.tpl');
 $emails = explode(',', $hotel->emailReservas);
 foreach ($emails as $email) {
     $enviado = $mail->send_email($email, $subject, $body);
 }
 //enviar a las excursiones
 if ($reservacion->extras) {
     foreach ($reservacion->extras as $excursion) {
         if ($excursion->emails && explode(',', $excursion->emails)) {
             $smarty->assign('excursion', $excursion);
             $body = $smarty->fetch('confirmacionExcursion_nodesign.tpl');
             $emails = explode(',', $excursion->emails);
             $subject = 'New Booking ' . $excursion->localizador;
             foreach ($emails as $email) {
Exemple #3
0
 if ($cobroAnticipado && $reservacion->estado == 'Aprobada') {
     $factura = generarFactura($reservacion, $hotel);
 } else {
     $factura = 0;
 }
 $mail = new Core_Mailer();
 /* enviando email al usuario */
 $enviado = $mail->send_email($data_user['email'], $subject, $body, $factura);
 if ($factura) {
     //TODO: eliminar pdf
     $mail = new Core_Mailer();
     @unlink($factura);
 }
 $emails = $hotel->emailReservas;
 $emails = explode(',', $emails);
 $reserva_url = getReservaUrl($idReserva);
 $smarty->assign('reserva_url', $reserva_url);
 //nueva maqueta para mail
 $body = $smarty->fetch('reservaEmail_nodesign.tpl');
 //$body = $smarty->fetch('reservaEmail.tpl');
 if ($campania) {
     $subject = 'New Booking ' . $reservacion->localizador . ' [contrato ' . $campania->localizador . ']';
 } else {
     $subject = 'New Booking ' . $hotel->nombres->es . ' ' . $reservacion->localizador;
 }
 $emailDistribuidor = explode(',', $hotel->distribuidor->emailReservas);
 $mail = new Core_Mailer();
 if ($emailDistribuidor && count($emailDistribuidor)) {
     foreach ($emailDistribuidor as $email) {
         if (strlen(trim($email)) > 0) {
             $enviado = $mail->send_email($email, $subject, $body);