Exemplo n.º 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);
    }
}
Exemplo n.º 2
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) {
                 if (strlen(trim($email))) {
                     $mail->send_email($email, $subject, $body);
                 }
             }
         }
Exemplo n.º 3
0
         $smarty->assign('hoteles', $hs);
         $html = $smarty->fetch('admin/hotel/filtros.tpl');
         $result['html'] = $html;
         $result['msg'] = 'ok';
     }
 } else {
     if (strcmp($action, 'urlValidacion') == 0) {
         if (isset($_POST['id'])) {
             $id = $_POST['id'];
             $hotel_v = getHotelById($id);
             $login_code = getLoginCodeByHotelId($id);
             $nombre = $hotel_v->nombre;
             $body = "\n            Hotel: {$nombre} <br>\n            Para validar sus reservas haga click en el siguiente link o copie y pegue la dirección en su navegador:<br>\n            <a href='{$vikahotel_url}/validar?login_code={$login_code}'>{$base_url}/validar?login_code={$login_code}</a><br>\n            <i>Enviado desde " . $smarty->getConfigVariable('sistema_nombre') . "</i>\n        ";
             try {
                 $mail = new Core_Mailer();
                 $mail->send_email($hotel_v->distribuidor->emailReservas, 'Url de validación de reservas de ' . $nombre, $body);
             } catch (Exception $e) {
                 print_r($e);
             }
             $result = array('msg' => 'ok', 'data' => 'Se le ha enviado un email al hotel con la url de validación de reservas');
         }
     } else {
         if (strcmp($action, 'updatefields') == 0) {
             if (isset($_POST['edit'])) {
                 $edit = $_POST['edit'];
                 foreach ($edit as $idHotel => $data) {
                     $updated = updateHotelData($idHotel, $data);
                 }
                 if ($updated) {
                     $result = array('msg' => 'ok', 'data' => 'Los datos fueron actualizados correctamente');
                 }
Exemplo n.º 4
0
}
if ($valid) {
    $usuario = getUsuarioByEmail($data['email']);
    if (count($usuario) == 0) {
        $usuario_id = registrarCliente($data);
        if ($usuario_id) {
            $usuario = getUsuario($usuario_id);
            try {
                $to = $data['email'];
                $subject = 'Gracias por registrarse en Vika Hotel';
                $smarty->assign('usuario', $usuario);
                $smarty->assign('empresa', $data);
                $smarty->assign('hoteles', $data['hotel']);
                $body = $smarty->fetch('admin/confirmacionRegistroEmail.tpl');
                $mail = new Core_Mailer();
                $mail->send_email($to, $subject, $body);
            } catch (Exception $e) {
                print_r($e);
            }
            $usuario_core->setUsuario($usuario, false);
            $campanias = getCampaniasByUsuario($usuario_id);
            if ($campanias && count($campanias)) {
                $url = $base_url . '/admin-campania-contrato/id:' . $campanias[0]->id;
                $result['url'] = $url;
                updateUsuario($usuario->id, array('status' => 'activado'));
            }
            $result['msg'] = 'ok';
            $result['data'] = 'Usted se ha registrado correctamente. Se le ha enviado su contraseña a su correo electrónico';
        } else {
            $result['data'] = 'Se produjo un error al guardar. Revise sus datos por favor';
        }
Exemplo n.º 5
0
<?php

if (isset($_GET['id'])) {
    $usuario = getUsuario($_GET['id']);
    if ($usuario) {
        if (strcmp(strtolower($usuario->status), 'pendiente') == 0) {
            activarUsuario($usuario->id);
            try {
                $mail = new Core_Mailer();
                $body = '<h3>Su cuenta ha sido activada</h3><br>';
                $body .= 'Inicie sesión con su cuenta y administre sus datos en ';
                $body .= '<a href="' . $base_url . '/admin-login">' . $base_url . '/admin-login</a>';
                $mail->send_email($usuario->email, 'Su cuenta ha sido activada', $body);
                $body = '<h3>Su cuenta ha sido activada</h3><br>';
                $body .= 'Usted será redireccionado a la página de login<br>';
                $body .= 'Si la página no redirecciona automáticamente haga click <a href="' . $base_url . '/admin-login">aquí</a>';
                $body .= '<script>setTimeout(function(){window.location = "' . $base_url . '/admin-login"}, 3500);</script>';
                echo $body;
            } catch (Exception $e) {
                var_dump($e);
            }
        } else {
            echo 'El link ha caducado';
        }
    } else {
        echo 'El link ha caducado';
    }
} else {
    echo 'El link ha caducado';
}
Exemplo n.º 6
0
                 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)) {
                             $mail = new Core_Mailer();
                             $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);
                                 }
                             }
                         }
                     }
                 }
             }
             header('Location:' . $base_url . '/' . $lang_set . '/confirmacion/r_id:' . $result['reserva_id'] . $end_url);
         } else {
             $result['data'] = 'Hay errores en los datos. Revíselos por favor.';
         }
     }
     /** end registrar reserva **/
 }
 if (isset($_GET['id']) || $invalid) {
     if (isset($_GET['id'])) {
Exemplo n.º 7
0
        if (isset($_POST['inicio']) && isset($_POST['final'])) {
            $inicio = $_POST['inicio'];
            $final = $_POST['final'];
            $body .= "desde el {$inicio} hasta {$final} <br>";
            if (isset($_POST['adultos']) && intval($_POST['adultos'])) {
                $adultos = $_POST['adultos'];
                $body .= "{$adultos} adultos ";
                if (isset($_POST['ninios']) && intval($_POST['ninios'])) {
                    $ninios = $_POST['ninios'];
                    $body .= "{$ninios} niños ";
                }
                $body .= '<br>';
            }
            if (isset($_POST['fechasFlexibles'])) {
                $body .= '<strong>(Mis fechas son flexibles)</strong><br>';
            }
        }
        $body .= "Mensaje: " . $data['mensaje'] . " <br/>";
        $body .= 'Enviado desde ' . $base_url;
        $subject = str_replace('_', ' ', $subject);
        foreach ($emails as $email) {
            if (strlen(trim($email))) {
                $mail->send_email(trim($email), $subject . ' ' . $hotel->nombre, $body, false, array('reply-to' => array($data['email'], $data['nombre'])));
            }
        }
    } catch (Exception $e) {
    }
    $result['msg'] = 'ok';
    $result['data'] = 'Hemos recibido tu mensaje. Gracias por contactarnos';
}
echo json_encode($result);