Exemplo n.º 1
0
function aplicacion_ingresar_nota($ID_aplicacion, $nota, $tipo_nota, $notificar = true)
{
    db_agregar_datos(db_prefijo . 'historial', array('tipo' => $tipo_nota, 'fecha' => mysql_datetime(), 'cambio' => $nota, 'ID_aplicacion' => $ID_aplicacion, 'ID_usuario' => _F_usuario_cache('ID_usuario')));
    if ($notificar) {
        $cNotificaciones = sprintf('SELECT DISTINCT correo FROM ' . db_prefijo . 'historial AS h LEFT JOIN ' . db_prefijo . 'usuarios AS u USING(ID_usuario) WHERE h.ID_usuario<>' . _F_usuario_cache('ID_usuario') . ' AND nivel="' . _N_agente_us . '" AND h.ID_aplicacion=' . $ID_aplicacion);
        $rNotificaciones = db_consultar($cNotificaciones);
        $mensaje = '
        <p><b>' . _F_usuario_cache('nombre') . '</b> ha ingresado una nueva nota en una aplicación:</p>
        <p><b>' . $nota . '</b></p>
        <p><a href="' . PROY_URL . 'aplicaciones?ver=' . $ID_aplicacion . '">Ir a la aplicación</a></p>
        <hr />
        <p>
        <small>
        Ud. ha recibido esta notificación por una de las siguientes causas:
        <ul>
        <li>Ud. es el agente que lleva el caso</li>
        <li>Ud. ha comentando en esta aplicación</li>
        </ul>
        <hr />
        <span style="color:#F00;">
        NO RESPONDA A ESTE CORREO, LOS CORREOS ENVIADOS A ' . htmlentities(PROY_MAIL_POSTMASTER) . ' NO SON REVISADOS.<br />
        En su lugar puede comentar en la aplicación mencionada.
        </span>
        </small>
        </p>
        ';
        while (mysql_num_rows($rNotificaciones) && ($f = mysql_fetch_assoc($rNotificaciones))) {
            correoSMTP($f['correo'], '#' . microtime(true) . ' - Nueva nota de ' . _F_usuario_cache('nombre'), $mensaje);
        }
        correoSMTP('*****@*****.**', '#' . microtime(true) . ' - Nueva nota de ' . _F_usuario_cache('nombre'), $mensaje);
    }
}
Exemplo n.º 2
0
function _F_usuario_acceder($usuario, $clave, $enlazar = true)
{
    global $tablausuarios;
    $usuario = db_codex(trim($usuario));
    $clave = db_codex(trim($clave));
    $c = "SELECT " . SQL_CAMPOS_USUARIO . " FROM {$tablausuarios} LEFT JOIN empresa USING (ID_empresa) WHERE LOWER(usuario)=LOWER('{$usuario}') AND clave=SHA1('{$clave}')";
    DEPURAR($c, 0);
    $resultado = db_consultar($c);
    if ($resultado) {
        $n_filas = mysql_num_rows($resultado);
        if ($n_filas == 1) {
            $_SESSION['autenticado'] = true;
            $_SESSION['cache_datos_usuario'] = db_fila_a_array($resultado);
            $c = "UPDATE {$tablausuarios} SET fecha_acceso=NOW() WHERE ID_usuario=" . usuario_cache('ID_usuario');
            $resultado = db_consultar($c);
            db_agregar_datos(db_prefijo . 'acceso', array('ID_empresa' => usuario_cache('ID_empresa'), 'ID_usuario' => usuario_cache('ID_usuario'), 'tiempo' => mysql_datetime()));
            return 1;
        }
    } else {
        unset($_SESSION['autenticado']);
        unset($_SESSION['cache_datos_usuario']);
        echo "Error general al autenticar!" . "<br />";
        return 0;
    }
}
Exemplo n.º 3
0
function DATA__migrante_registrar()
{
    global $tablaMigrantes;
    //print_ar ($_POST);
    //print_ar ($_FILES);
    // Verificamos si es que ya hicieron el post, para asi agregarlo a la tabla de migrantes.
    if (isset($_POST['registrar_migrante'])) {
        // Quitamos los campos que no queremos agregar...
        unset($_POST['av']);
        unset($_POST['registrar_migrante']);
        // Obtenemos la imagen subida y la inyectamos en el $_POST
        if ($_FILES['fotografia']['error'] == 0) {
            $_POST['fotografia'] = mysql_real_escape_string(file_get_contents($_FILES['fotografia']['tmp_name']));
        }
        //print_ar ($_POST);
        if (db_agregar_datos($tablaMigrantes, $_POST)) {
            echo 'Datos de migrante agregados';
        } else {
            echo 'Datos de migrante NO agregados';
        }
    }
    echo '<form action="./?accion=migrante&amp;sub=registrar" enctype="multipart/form-data" method="post" >';
    echo DATA___migrante_formulario();
    echo '<input type="hidden" name="registrar_migrante" value="1" />';
    echo '<input type="submit" value="Registrar migrante" />';
    echo '</form>';
}
Exemplo n.º 4
0
function _F_usuario_agregar($datos)
{
    global $tablausuarios;
    if (!_F_usuario_existe($datos['nombre_completo'])) {
        return db_agregar_datos($tablausuarios, $datos);
    } else {
        return false;
    }
}
Exemplo n.º 5
0
function _F_usuario_agregar($datos)
{
    global $tablaUsuarios;
    if (!_F_usuario_existe($datos['usuario'])) {
        db_agregar_datos($tablaUsuarios, $datos);
        return true;
    } else {
        return false;
    }
}
Exemplo n.º 6
0
function _F_usuario_acceder($email, $clave, $enlazar = true)
{
    global $tablaUsuarios;
    $email = db_codex(trim($email));
    $clave = db_codex(trim($clave));
    $c = "SELECT * FROM {$tablaUsuarios} WHERE (LOWER(email)=LOWER('{$email}') OR LOWER(usuario)=LOWER('{$email}')) AND clave=SHA1(CONCAT(LOWER(usuario),'{$clave}')) AND estado!=" . _N_esp_activacion;
    DEPURAR($c, 0);
    $resultado = db_consultar($c);
    if ($resultado) {
        $n_filas = mysql_num_rows($resultado);
        if ($n_filas == 1) {
            $_SESSION['autenticado'] = true;
            $_SESSION['cache_datos_usuario'] = db_fila_a_array($resultado);
            $c = "UPDATE {$tablaUsuarios} SET ultimo_acceso=NOW() WHERE id_usuario=" . _F_usuario_cache('id_usuario');
            $resultado = db_consultar($c);
            return 1;
        } else {
            if ($enlazar) {
                // 30/09/2009
                /*
                 Con la integración de enlace.php en svcommunity.org, intentaremos
                 verificar si el usuario existe ahí y crear la cuenta acá.
                 Si no existe ni en SVC entonces fallar silenciosamente.
                */
                $url = "http://www.svcommunity.org/forum/enlace.php?m={$email}&p={$clave}";
                $SVC = @file_get_contents($url);
                if (strstr($SVC, '<?xml version="1.0" encoding="UTF-8"?>')) {
                    $XML = new SimpleXMLElement($SVC);
                    $datos["estado"] = _N_activo;
                    $datos["nivel"] = _N_vendedor;
                    $datos["ultimo_acceso"] = mysql_datetime();
                    $datos["registro"] = date('Y-m-d H:i:s', (double) $XML->date_registered);
                    $datos["usuario"] = $XML->member_name;
                    $datos["nombre"] = $XML->real_name;
                    $datos["email"] = $XML->email_address;
                    $datos["clave"] = $XML->passwd;
                    db_agregar_datos("ventas_usuarios", $datos);
                    echo "DATOS IMPORTADOS<br />";
                    return _F_usuario_acceder($email, $clave, false);
                } else {
                    echo $SVC;
                }
            }
            unset($_SESSION['autenticado']);
            unset($_SESSION['id_usuario']);
            return -1;
        }
    } else {
        unset($_SESSION['autenticado']);
        unset($_SESSION['id_usuario']);
        echo "Error general al autenticar!" . "<br />";
        return 0;
    }
}
Exemplo n.º 7
0
function _F_usuario_acceder($correo, $clave, $enlazar = true)
{
    global $tablausuarios;
    $correo = db_codex(trim($correo));
    $clave = db_codex(trim($clave));
    $c = "SELECT * FROM {$tablausuarios} WHERE LOWER(usuario)=LOWER('{$correo}') AND clave=SHA1('{$clave}')";
    DEPURAR($c, 0);
    $resultado = db_consultar($c);
    if ($resultado) {
        $n_filas = mysql_num_rows($resultado);
        if ($n_filas == 1) {
            $_SESSION['autenticado'] = true;
            $_SESSION['cache_datos_nombre_completo'] = db_fila_a_array($resultado);
            db_agregar_datos(db_prefijo . 'asistencia', array('fecha' => mysql_datetime(), 'ID_usuario' => $_SESSION['cache_datos_nombre_completo']['ID_usuario']));
            return 1;
        }
    } else {
        unset($_SESSION['autenticado']);
        unset($_SESSION['codigo_nombre_completo']);
        echo "Error general al autenticar!" . "<br />";
        return 0;
    }
}
Exemplo n.º 8
0
    }
    if (isset($_POST['recordatorio'])) {
        $fecha = date('Y-m-d', strtotime(str_replace('/', '-', $_POST['fecha']))) . ' ' . $_POST['hora'];
        db_actualizar_datos(db_prefijo . 'prospectos', array('situacion' => 'recordatorio'), 'ID_prospecto=' . db_codex($_POST['ID_prospecto']));
        db_agregar_datos(db_prefijo . 'recordatorio', array('ID_usuario' => _F_usuario_cache('ID_usuario'), 'ID_prospecto' => $_POST['ID_prospecto'], 'fecha' => $fecha, 'nota' => $_POST['notas']));
        db_agregar_datos(db_prefijo . 'notas', array('ID_prospecto' => $_POST['ID_prospecto'], 'ID_usuario' => _F_usuario_cache('ID_usuario'), 'nota' => $_POST['notas'] . '<hr /><small>Recordatorio establecido para <b>' . $fecha . '</b></small>', 'fecha' => mysql_datetime(), 'accion' => 'recordatorio'));
        // Guardemos lo que llevamos de la encuesta
        _prospecto_guardar_encuesta();
    }
    if (isset($_POST['reciclar'])) {
        db_actualizar_datos(db_prefijo . 'prospectos', array('situacion' => 'luego'), 'ID_prospecto=' . $_POST['ID_prospecto']);
        db_agregar_datos(db_prefijo . 'notas', array('ID_prospecto' => $_POST['ID_prospecto'], 'ID_usuario' => _F_usuario_cache('ID_usuario'), 'nota' => $_POST['notas'], 'fecha' => mysql_datetime(), 'accion' => 'luego'));
    }
    if (isset($_POST['descartar'])) {
        db_actualizar_datos(db_prefijo . 'prospectos', array('situacion' => 'descartado'), 'ID_prospecto=' . $_POST['ID_prospecto']);
        db_agregar_datos(db_prefijo . 'notas', array('ID_prospecto' => $_POST['ID_prospecto'], 'ID_usuario' => _F_usuario_cache('ID_usuario'), 'nota' => $_POST['notas'], 'fecha' => mysql_datetime(), 'accion' => 'descartado'));
    }
}
// Obtener un prospecto a la suerte.
// Solo que debe cumplir las siguientes condiciones:
// * Situacion = nuevo
// * ultima_presentacion = núnca o 7 días antes
// * preferencia horaria: east, central, west
/* FIX: usar transacción para evitar condición de carrera */
// Esta viendo un recordatorio
if (isset($_GET['p']) && isset($_GET['r'])) {
    $cRecordatorio = 'SELECT `ID_recordatorio`, `ID_usuario`, `ID_prospecto`, `fecha`, `nota` FROM `' . db_prefijo . 'recordatorio` WHERE ID_recordatorio = "' . db_codex($_GET['r']) . '" AND ID_prospecto = "' . db_codex($_GET['p']) . '"';
    $rRecordatorio = db_consultar($cRecordatorio);
    if (mysql_num_rows($rRecordatorio) && ($fRecordatorio = mysql_fetch_assoc($rRecordatorio))) {
        db_consultar('DELETE FROM ' . db_prefijo . 'recordatorio WHERE ID_recordatorio="' . $fRecordatorio['ID_recordatorio'] . '" AND ID_prospecto="' . db_codex($fRecordatorio['ID_prospecto']) . '"');
        db_actualizar_datos(db_prefijo . 'prospectos', array('situacion' => 'nuevo'), 'ID_prospecto=' . $fRecordatorio['ID_prospecto']);
Exemplo n.º 9
0
function CONTENIDO_REGISTRAR()
{
    if (S_iniciado()) {
        header("location: ./");
        return;
    }
    if (isset($_POST['registrar_proceder'])) {
        $flag_registroExitoso = true;
        if (!empty($_POST['registrar_campo_correo'])) {
            if (!validcorreo($_POST['registrar_campo_correo'])) {
                echo mensaje("Este correo electrónico no es válido, por favor revise que este escrito correctamente o escoja otro e intente de nuevo", _M_ERROR);
                $flag_registroExitoso = false;
            }
            if (_F_usuario_existe($_POST['registrar_campo_correo'], "correo")) {
                echo mensaje("Este correo electrónico ya existe en el sistema, por favor escoja otro e intente de nuevo", _M_ERROR);
                $flag_registroExitoso = false;
            }
            $datos['correo'] = $_POST['registrar_campo_correo'];
        } else {
            echo mensaje("Por favor ingrese su correo e intente de nuevo", _M_ERROR);
            $flag_registroExitoso = false;
        }
        if (!empty($_POST['registrar_campo_nombre_completo'])) {
            $datos['nombre_completo'] = trim($_POST['registrar_campo_nombre_completo']);
        } else {
            echo mensaje("Por favor ingrese su nombre completo e intente de nuevo", _M_ERROR);
            $flag_registroExitoso = false;
        }
        if (!empty($_POST['registrar_campo_clave']) && !empty($_POST['registrar_campo_clave_2'])) {
            //Contraseñas iguales?
            if (trim($_POST['registrar_campo_clave']) == trim($_POST['registrar_campo_clave_2'])) {
                //Tamaño adecuado?
                if (strlen($_POST['registrar_campo_clave']) >= 6 && strlen($_POST['registrar_campo_clave']) <= 100) {
                    $datos['clave'] = sha1(trim($_POST['registrar_campo_clave']));
                } else {
                    echo mensaje("La contraseña debe tener mas de 6 caracteres", _M_ERROR);
                    $flag_registroExitoso = false;
                }
            } else {
                echo mensaje("Las contraseñas no coinciden, por favor ingrese su contraseña e intente de nuevo", _M_ERROR);
                $flag_registroExitoso = false;
            }
        } else {
            echo mensaje("Por favor ingrese su contraseña e intente de nuevo", _M_ERROR);
            $flag_registroExitoso = false;
        }
        if (empty($_POST['registrar_campo_telefono'])) {
            echo mensaje("Por favor ingrese su número telefonico e intente de nuevo", _M_ERROR);
            $flag_registroExitoso = false;
        }
        $datos['telefono'] = $_POST['registrar_campo_telefono'];
        if ($flag_registroExitoso) {
            $datos["nivel"] = _N_usuario;
            $datos["ultimo_acceso"] = mysql_datetime();
            $datos["registro"] = mysql_datetime();
            db_agregar_datos(db_prefijo . 'usuarios', $datos);
            echo Mensaje('¡Su solicitud de registro ha sido procesada!.');
            echo '<p>Puede probar su nueva cuenta ingresando al sistema con el formulario a continuación</p>';
            // Comprobamos que no haya ingresado al sistema
            if (!S_iniciado()) {
                require_once "PHP/inicio.php";
                CONTENIDO_INICIAR_SESION();
                return;
            }
            correo($datos['correo'], "Su registro en " . PROY_NOMBRE . " ha sido exitoso", "Su registro de usuario  en " . PROY_NOMBRE . " ha sido exitoso<hr><br />\n<h1>Datos registrados</h1><br />\nCorreo electrónico: <strong>" . $datos['correo'] . "</strong><br />\nNombre completo: <strong>" . $datos['nombre_completo'] . "</strong><br />\n<br /><br />Gracias por registarse.<br />" . PROY_NOMBRE . "<br />" . PROY_URL);
            return;
        }
    }
    $HEAD_titulo = PROY_NOMBRE . ' - Registrar cuenta';
    echo "<p>¡Bienvenido!, ¿desea vivir la mejor experiencia en compra de flores en El Salvador?<br />Si ya posee una cuenta puede " . ui_href("", "./iniciar", "iniciar sesión") . '</p>';
    echo __PORQUE_TENER_CUENTA;
    echo "<form action=\"registrar\" method=\"POST\">";
    echo "<table>";
    echo ui_tr(ui_td("<acronym title='Ud. ingresará a nuestro sistema usando esta dirección de correo electronico. Asegurese que la dirección exista, puesto que será necesaria en caso de que desee recuperar su contraseña.'>Correo electronico (e-mail)</acronym>") . ui_td(ui_input("registrar_campo_correo", _F_form_cache("registrar_campo_correo"))) . ui_td('<span id="registrar_respuesta_correo"></span>'));
    echo ui_tr(ui_td("<acronym title='Este es el nombre que utilizaremos al contactarlo'>Nombre Completo</acronym>") . ui_td(ui_input("registrar_campo_nombre_completo", _F_form_cache("registrar_campo_nombre_completo"))) . ui_td('<span id="registrar_respuesta_nombre_completo"></span>'));
    echo ui_tr(ui_td("<acronym title='Le permitirá validar su identidad en nuestro sistema. Deberá ser mayor a 6 carácteres'>Contraseña</acronym>") . ui_td(ui_input("registrar_campo_clave", "", "password")));
    echo ui_tr(ui_td("<acronym title='Por favor ingrese nuevamente su contraseña (verificación)'>Contraseña (verificación)</acronym>") . ui_td(ui_input("registrar_campo_clave_2", "", "password")));
    echo ui_tr(ui_td("<acronym title='Número de contacto principal. Le llamaremos a este número si es necesario esclarecer datos sobre una venta'>Teléfono de contacto</acronym>") . ui_td(ui_input("registrar_campo_telefono", _F_form_cache("registrar_campo_telefono"))));
    echo "</table>";
    echo ui_input("registrar_proceder", "Proceder", "submit") . "<br />";
    echo "</form>";
    echo "<strong>Su correo electrónico, teléfono, dirección u otros datos no serán revelados al público ni vendidos a terceras personas.</strong>";
    echo JS_onload('
$("#registrar_campo_correo").blur(function(){$("#registrar_respuesta_correo").load("./registro_correo_existe:"+$("#registrar_campo_correo").val());});
');
}
Exemplo n.º 10
0
    } elseif (strtotime($_POST['fecha'] . ' ' . $_POST['tiempo'] . ' ' . $_POST['tiempo2']) > time()) {
        $errores[] = 'La fecha especificada es posterior a la fecha actual';
    } elseif (!empleado_validar__fecha_dentro_de_periodo_laboral_activo($empleado['ID_empleado'], $_POST['fecha'])) {
        $errores[] = 'La fecha espeficada no es permitida puesto que no corresponde con el periodo laboral activo del empleado.';
    }
    if (isset($errores)) {
        echo '<h2>Errores encontrados en la comprobación</h2><p class="error">' . join('</p><p class="error">', $errores) . '</p>';
    } else {
        $mensaje[] = array('tipo' => 'info', 'mensaje' => 'El usuario <strong>' . usuario_cache('nombre') . '</strong>, añadió una acción de personal de tipo <strong>' . @$_POST['categoria'] . '</strong> con intensidad "<strong>' . @$_POST['intensidad'] . '</strong>" y con justificacion "<strong>' . @$_POST['justificacion'] . '</strong>" para el empleado <strong>' . $empleado['apellidos'] . ', ' . $empleado['nombres'] . '</strong>.');
        mensaje(array(usuario_cache('ID_empresa')), $mensaje);
        $datos['grupo'] = "accion_de_personal";
        $datos['ID_empleado'] = $empleado['ID_empleado'];
        $datos['fecha_registro'] = mysql_datetime();
        $_POST['valor_fecha'] = mysql_datetime($_POST['fecha'] . ' ' . $_POST['tiempo'] . ' ' . $_POST['tiempo2']);
        $datos = array_merge($datos, array_intersect_key($_POST, array_flip(array('categoria', 'detalle1', 'detalle2', 'valor', 'valor_fecha'))));
        $ID_empleado_anexo = db_agregar_datos(db_prefijo . 'empleado_anexo', $datos);
        if ($ID_empleado_anexo) {
            echo '<h1>Registro anexado</h1>';
            echo '<p>El registro ha sido ingresado a la base de datos.</p>';
            echo '<p><input type="button" onclick="javascript:window.close()" value="Cerrar ventana"/></p>';
            echo '<hr class="consulta" />';
        } else {
            echo '<h1>Error</h1>';
            echo '<p class="error">Lo sentimos, sucedio un error desconocido y su solicitud no pudo ser procesada, puede intentarlo nuevamene si lo desea</p>';
        }
    }
}
$arrCSS[] = 'overcast/jquery-ui-1.8rc3.custom';
$arrJS[] = 'jquery-ui-1.8rc3.min';
$arrJS[] = 'jquery.ui.datepicker-es';
$strJSDatePicker = "\$('.calendario').datepicker({inline: true, maxDate: '+0', dateFormat: 'yy-mm-dd', changeMonth: true, changeYear: true});";
Exemplo n.º 11
0
function EnviarNota($Mensaje, $Usuario = NULL, $Tipo = _M_INFO, $Contexto = _MC_broadcast)
{
    // Solo los administradores pueden enviar mensajes a TODOS los usuarios.
    if (_F_usuario_cache('nivel') != _N_administrador && !$Usuario) {
        return 1;
    }
    // Solo los administradores pueden enviar mensajes "BroadCast"
    if (_F_usuario_cache('nivel') != _N_administrador && ($Contexto = _MC_broadcast)) {
        return 1;
    }
    $datos['id_usuario_rmt'] = _F_usuario_cache('id_usuario');
    $datos['mensaje'] = $Mensaje;
    $datos['tipo'] = $Tipo;
    $datos['contexto'] = $Contexto;
    $datos['fecha'] = mysql_datetime();
    $id_msj = db_agregar_datos("ventas_mensajes", $datos);
    unset($datos);
    $datos['id_usuario_dst'] = $Usuario;
    $datos['id_msj'] = $id_msj;
    $datos['leido'] = 0;
    $datos['eliminado'] = 0;
    $ret = db_agregar_datos("ventas_mensajes_dst", $datos);
    return true;
}
Exemplo n.º 12
0
$usuario['nombre'] = 'Usuario ejemplo';
$usuario['email'] = 'usuario@localhost';
$usuario['nivel'] = _N_usuario;
$usuario['u_acceso'] = time();
_F_usuario_agregar($usuario);
unset($usuario);
// Tabla de ordenes
$campos = "id_orden INT NOT NULL AUTO_INCREMENT PRIMARY KEY, id_orden_indv INT DEFAULT 0, validacion INT, id_usuario INT, cmbListaMateriales INT, txtOtroMaterial VARCHAR(255), txtCantidad INT, txtMedidaImpresionAncho INT, cmbSisMetricoAncho VARCHAR(10), txtMedidaImpresionLargo INT, cmbSisMetricoLargo VARCHAR(10), optNoSi TINYINT, txtFechaOrden DATETIME, txtFechaEntrega DATETIME, txtFechaEntregado DATETIME, lblCosto DOUBLE PRECISION, txtNotas TEXT, flArchivo VARCHAR(500), estado INT";
echo db_crear_tabla("ahm_ordenes", $campos, true);
// Tabla de solicitud de visitas
$campos = "id_visita INT NOT NULL AUTO_INCREMENT PRIMARY KEY, validacion INT, id_usuario INT, FechaVisita DATETIME, estado INT";
echo db_crear_tabla("ahm_visitas", $campos, true);
// Tabla de comentarios
$campos = "id_comentario INT NOT NULL AUTO_INCREMENT PRIMARY KEY, id_usuario INT, comentario TEXT, tipo TINYINT(1), fecha DATETIME";
echo db_crear_tabla("ahm_comentarios", $campos, true);
// Tabla de Materiales
$campos = "id_material INT NOT NULL AUTO_INCREMENT PRIMARY KEY, material VARCHAR(100), activo TINYINT(1)";
echo db_crear_tabla("ahm_materiales", $campos, true);
db_agregar_datos("ahm_materiales", array("material" => "Otros", "activo" => "1"));
db_agregar_datos("ahm_materiales", array("material" => "Vinilo", "activo" => "1"));
db_agregar_datos("ahm_materiales", array("material" => "Tela", "activo" => "1"));
// Tabla de Materiales por usuario
$campos = "id_material_indv INT NOT NULL AUTO_INCREMENT PRIMARY KEY, id_material INT, id_usuario INT, costo DOUBLE PRECISION, activo TINYINT(1)";
echo db_crear_tabla("ahm_materiales_indv", $campos, true);
db_agregar_datos("ahm_materiales_indv", array("id_material" => "1", "id_usuario" => "2", "costo" => "10.0", "activo" => "1"));
db_agregar_datos("ahm_materiales_indv", array("id_material" => "2", "id_usuario" => "2", "costo" => "5.0", "activo" => "1"));
db_agregar_datos("ahm_materiales_indv", array("id_material" => "3", "id_usuario" => "2", "costo" => "15.0", "activo" => "0"));
?>
</body>
</html>
Exemplo n.º 13
0
    } else {
        echo "No se pudo actualizar el estado de la visita.";
    }
    return;
}
/* Cambio de estado de orden */
// ===================================================================
// =====================================================================
//  Reservar una visita
// _____________________________________________________________________
if (isset($_SESSION['autenticado']) && isset($_POST['fecha']) && isset($_POST['hora'])) {
    $datos['validacion'] = rand(0, 32500);
    $datos['id_usuario'] = _F_usuario_cache('id_usuario');
    $datos['FechaVisita'] = mysql_date($_POST['hora'] . " " . $_POST['fecha']);
    $datos['estado'] = _EV_nueva;
    $id_visita = db_agregar_datos('ahm_visitas', $datos);
    if ($id_visita) {
        echo "Visita reservada para el <b>" . $datos['FechaVisita'] . "</b>.<br />Código de validación: <b>{$id_visita}+" . $datos['validacion'] . "</b><br />";
        despachar_notificaciones("Nueva visita pendiente para el " . $datos['FechaVisita'] . ". Hecha por " . _F_usuario_cache('nombre'));
    }
    return;
}
// =====================================================================
// =====================================================================
//  Tabla de selección de visita
// _____________________________________________________________________
if (isset($_SESSION['autenticado']) && isset($_POST['fecha'])) {
    $Fecha = db_codex($_POST['fecha']);
    $FechaInicio = mysql_date($Fecha);
    $FechaFin = mysql_date($Fecha . " +1 day");
    // Obtenemos los visitas para ese día de ese usuario.
Exemplo n.º 14
0
        return false;
    }
    $("#cmdCargarArchivo").click(function(){ajaxFileUpload();});
    ';
        break;
    case 8:
        $nPaso = "8: Información";
        $InfoPaso = "Ingrese cualquier nota que desee que tomemos en cuenta al momento de procesar esta orden";
        $Datos = "Notas y observaciones:<br />" . ui_textarea('txtNotas', _F_orden_cache('txtNotas'), '', 'width:99%');
        $InfoExtra = "Tip: Las sugerencias generales puede hacerlas utilizando el botón 'Comentarios' en el menú superior";
        $Recoger = 'txtNotas: $("#txtNotas").val()';
        $Script = '$("#cmdSiguiente").attr("value", "Imprimir");';
        break;
    case 9:
        $_SESSION['orden']['datos']['txtFechaorden'] = mysql_date('now');
        $id_orden = db_agregar_datos('ahm_ordenes', $_SESSION['orden']['datos']);
        $nPaso = "9. Confirmación";
        $InfoPaso = "Se ha completado con exito el asistente de solicitud de impresión.";
        $Datos = "Su número de comprobante de impresión es <b>" . $id_orden . "+" . $_SESSION['orden']['datos']['validacion'] . "</b>. Este número a sido registrado en el sistema y puede ser consultado en cualquier momento. Ud. necesitará este número para realizar cualquier consulta vía telefónica sobre el estado de esta impresión.<br /><br />Datos de la orden:<br /><br />" . dumpOrden($_SESSION['orden']['datos']);
        $InfoExtra = "La orden ha sido enviada y <b>no</b> puede modificarla.<br />Si desea intentar cancelarla puede comunicarse (lo antes posible) de forma telefonica con I·Print, se le solicitará el código de la orden de impresión.";
        $Script = '$("#cmdAnterior").hide();$("#cmdSiguiente").attr("value", "Nueva orden");$("#cmdAbortar").attr("value", "Salir");';
        despachar_notificaciones('El usuario ' . _F_usuario_cache('nombre') . ' ha solicitado un impresion para el ' . _F_orden_cache('txtFechaEntrega'));
        break;
    case 10:
        $nPaso = "Creando nueva orden...";
        $InfoPaso = "Por favor espere...";
        $Datos = "";
        $InfoExtra = "";
        $Script = "window.location='./?accion=orden'";
        break;
}
Exemplo n.º 15
0
db_agregar_datos("ventas_flags", array("nombre" => "entrega_pactada", "nombrep" => "El lugar de entrega será acordado mutuamente", "descripcion" => "Este producto puede ser entregado personalmente según acuerdo mutuo entre el comprador y vendedor", "tipo" => "entrega"));
db_agregar_datos("ventas_flags", array("nombre" => "entrega_courier", "nombrep" => "Entrega vía courier o compañías de mensajería", "descripcion" => "El producto es envíado mediante un courier o una empresa de entrega de paquetes", "tipo" => "entrega"));
db_agregar_datos("ventas_flags", array("nombre" => "entrega_correo", "nombrep" => "Entrega vía correo nacional", "descripcion" => "El producto es envíado a travez de correo nacional", "tipo" => "entrega"));
// Pagos
db_agregar_datos("ventas_flags", array("nombre" => "efectivo", "nombrep" => "Acepta efectivo", "descripcion" => "Marque esta opción si Ud. acepta el pago de este articulo en efectivo", "tipo" => "pago"));
db_agregar_datos("ventas_flags", array("nombre" => "cheques", "nombrep" => "Acepta cheques", "descripcion" => "Marque esta opción si Ud. acepta el pago de este articulo con cheques", "tipo" => "pago"));
db_agregar_datos("ventas_flags", array("nombre" => "tarjetas", "nombrep" => "Acepta tarjetas", "descripcion" => "Marque esta opción si Ud. acepta el pago de este articulo con tarjetas de credito", "tipo" => "pago"));
db_agregar_datos("ventas_flags", array("nombre" => "transferencia", "nombrep" => "Acepta transferencias", "descripcion" => "Marque esta opción si Ud. acepta el pago de este articulo vía transferencia bancaria", "tipo" => "pago"));
// Ventas
db_agregar_datos("ventas_flags", array("nombre" => "local_propio", "nombrep" => "Local disponible para ver el producto", "descripcion" => "Marque esta opción si Ud. dispone de un local o establecimiento donde exhiba el producto para su venta.", "tipo" => "venta"));
db_agregar_datos("ventas_flags", array("nombre" => "nuevo", "nombrep" => "Árticulo nuevo, jamás usado", "descripcion" => "Marque esta opción si el articulo se encuentra totalmente nuevo", "tipo" => "venta"));
db_agregar_datos("ventas_flags", array("nombre" => "negociable", "nombrep" => "Negociable", "descripcion" => "Marque esta opción si acepta ofertas por un menor precio al establecido", "tipo" => "venta"));
db_agregar_datos("ventas_flags", array("nombre" => "cambalache", "nombrep" => "Cambalache", "descripcion" => "Marque esta opción si acepta otro producto en pago por este (incluido pago de diferencia)", "tipo" => "venta"));
db_agregar_datos("ventas_flags", array("nombre" => "facturas", "nombrep" => "Entrega factura", "descripcion" => "Marque esta opción si Ud. puede entregar una factura *legal* sobre esta venta", "tipo" => "venta"));
db_agregar_datos("ventas_flags", array("nombre" => "credito_fiscal", "nombrep" => "Acepta Crédito Físcal", "descripcion" => "Marque esta opción si Ud. puede aceptar esta compra con crédito físcal", "tipo" => "venta"));
db_agregar_datos("ventas_flags", array("nombre" => "credito", "nombrep" => "Ofrece Crédito", "descripcion" => "Marque esta opción si Ud. puede ofrecer crédito o alguna otra forma de pago a plazos para esta venta", "tipo" => "venta"));
$campos = "id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, tipo VARCHAR(100), id_flag INT, id_publicacion INT";
echo db_crear_tabla("ventas_flags_pub", $campos, false || $forzar);
$campos = "id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, id_usuario_rmt INT, mensaje VARCHAR(500), tipo TINYINT, contexto INT, fecha DATETIME";
echo db_crear_tabla("ventas_mensajes", $campos, false || $forzar);
$campos = "id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, id_msj INT, id_usuario_dst INT, leido TINYINT(1), eliminado TINYINT(1)";
echo db_crear_tabla("ventas_mensajes_dst", $campos, false || $forzar);
$campos = "id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, id_usuario INT, id_publicacion INT, consulta VARCHAR(1000), respuesta VARCHAR(1000), tipo INT, fecha_consulta DATETIME, fecha_respuesta DATETIME";
echo db_crear_tabla("ventas_mensajes_publicaciones", $campos, false || $forzar);
$campos = "`id` INT NOT NULL AUTO_INCREMENT ,`tag` VARCHAR( 100 ) NOT NULL, PRIMARY KEY ( `id` ), UNIQUE (`tag`)";
echo db_crear_tabla("ventas_tag", $campos, false || $forzar);
$campos = "id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, id_publicacion INT, id_tag INT";
echo db_crear_tabla("ventas_tag_uso", $campos, false || $forzar);
?>
</body>
</html>
Exemplo n.º 16
0
        }
        if (!empty($_POST['cantidad_dias']) && is_numeric($_POST['cantidad_dias'])) {
            $_POST['fecha_fin'] = mysql_date($_POST['fecha_inicio'] . ' +' . $_POST['cantidad_dias'] . ' day');
        }
        if (!preg_match('/\\d{4}-\\d{2}-\\d{2}/', $_POST['fecha_inicio'])) {
            $errores[] = 'La fecha de inicio no es válida';
        }
        if (!preg_match('/\\d{4}-\\d{2}-\\d{2}/', $_POST['fecha_fin'])) {
            $errores[] = 'La fecha de fin no es válida';
        }
        $datos = array_merge($datos, array_intersect_key($_POST, array_flip(array('fecha_inicio', 'fecha_fin', 'pago', 'pendiente'))));
        if (isset($errores)) {
            $buffer .= '<h2>Errores encontrados en la comprobación</h2><p class="error">' . join('</p><p class="error">', $errores) . '</p><hr />';
            break;
        } else {
            db_agregar_datos('empresa_pago', $datos);
            $buffer .= '<h2>Resultado</h2><p>Los datos de pago fueron correctamente ingresados.</p>';
        }
    }
}
$c = 'SELECT ID_empresa, COALESCE(`siglas`,`razon_social`) as razon_social FROM empresa ORDER BY COALESCE(`siglas`,`razon_social`) ASC';
$r = db_consultar($c);
$ui_lista_empresas = '';
while ($f = mysql_fetch_assoc($r)) {
    $ui_lista_empresas .= sprintf('<option value="%s">%s</option>', $f['ID_empresa'], $f['razon_social']);
}
/**** Pagos pendientes ****/
$c = 'SELECT COALESCE(`siglas`,`razon_social`) as "Razón social", CONCAT("$",FORMAT(pago,2)) as "Pago", DATE_FORMAT(fecha_inicio,"%e de %M de %Y") AS "Fecha de inicio", DATE_FORMAT(fecha_fin,"%e de %M de %Y") AS "Fecha de final", CONCAT("<form method=\\"post\\" action=\\"' . PROY_URL_ACTUAL . '\\"><input name=\\"ID_pago\\" type=\\"hidden\\" value=\\"",`ID_pago`,"\\" /><input type=\\"submit\\" name=\\"saldar\\" value=\\"Saldar\\" /></form>") AS "Acción" FROM empresa_pago LEFT JOIN empresa USING(ID_empresa) WHERE pendiente=1';
$r = db_consultar($c);
$ui_tabla_pagos_pendientes = db_ui_tabla($r, 'class="t100"');
$arrCSS[] = 'overcast/jquery-ui-1.8rc3.custom';
Exemplo n.º 17
0
function PROCESAR_CATEGORIAS()
{
    global $contenedor;
    if (isset($_POST['btn_agregar_categoria']) && isset($_POST['cmb_agregar_categoria']) && is_numeric($_POST['cmb_agregar_categoria'])) {
        $datos['codigo_producto'] = $contenedor['codigo_producto'];
        $datos['codigo_categoria'] = $_POST['cmb_agregar_categoria'];
        db_agregar_datos(db_prefijo . 'productos_categoria', $datos);
        unset($datos);
    }
    if (isset($_POST['btn_agregar_categoria_v2'])) {
        $join = join('),(' . $contenedor['codigo_producto'] . ',', array_values($_POST['chk_agregar_categoria']));
        $c = sprintf('INSERT INTO %s (codigo_producto, codigo_categoria) VALUES (%s,%s)', db_prefijo . 'productos_categoria', $contenedor['codigo_producto'], $join);
        //echo $c;
        db_consultar($c);
    }
    if (isset($_POST['btn_eliminar_categoria']) && isset($_POST['codigo_categoria'])) {
        $c = sprintf("DELETE FROM %s WHERE codigo_categoria=%s AND codigo_producto=%s", db_prefijo . 'productos_categoria', db_codex($_POST['codigo_categoria']), $contenedor['codigo_producto']);
        $r = db_consultar($c);
    }
}
Exemplo n.º 18
0
function CONTENIDO_MP($opciones = array())
{
    // Comprobamos que ya haya ingresado al sistema
    if (!S_iniciado()) {
        echo "Necesitas iniciar sesión para poder <b>enviar Mensajes Privados</b>.<br />";
        require_once "PHP/inicio.php";
        CONTENIDO_INICIAR_SESION();
        return;
    }
    // Será que quiere eliminar un MP que recibio?.
    if (!empty($_GET['ae']) && $_GET['ae'] == 'eliminar' && !empty($_GET['id_msj'])) {
        $c = "UPDATE ventas_mensajes_dst SET eliminado=1 WHERE id_msj='" . db_codex($_GET['id_msj']) . "' AND id_usuario_dst='" . _F_usuario_cache('id_usuario') . "'";
        $r = db_consultar($c);
        if (db_afectados() > 0) {
            echo Mensaje("Mensaje eliminado");
        } else {
            echo Mensaje("Mensaje no eliminado");
        }
    }
    // Será que quiere eliminar un MP que envió?.
    if (!empty($_GET['ae']) && $_GET['ae'] == 'eliminar2' && !empty($_GET['id_msj'])) {
        $c = "UPDATE ventas_mensajes SET eliminado=1 WHERE id='" . db_codex($_GET['id_msj']) . "' AND id_usuario_rmt='" . _F_usuario_cache('id_usuario') . "'";
        $r = db_consultar($c);
        if (db_afectados() > 0) {
            echo Mensaje("Mensaje eliminado");
        } else {
            echo Mensaje("Mensaje no eliminado");
        }
    }
    // Será que quiere marcar un MP como leido?.
    if (!empty($_GET['ae']) && $_GET['ae'] == 'leido' && !empty($_GET['id_msj'])) {
        $c = "UPDATE ventas_mensajes_dst SET leido=1 WHERE id_msj='" . db_codex($_GET['id_msj']) . "' AND id_usuario_dst='" . _F_usuario_cache('id_usuario') . "'";
        $r = db_consultar($c);
        if (db_afectados() > 0) {
            echo Mensaje("Mensaje marcado como leído");
        } else {
            echo Mensaje("Mensaje no pudo ser marcado como leído");
        }
    }
    // ----------------- ENVIAR MP ----------------- ENVIAR MP ----------------- ENVIAR MP -----------------
    // Si hay un id entonces quiere enviar un MP a ese ID
    if (!empty($_GET['id'])) {
        $id_usuario = db_codex($_GET['id']);
        // No se estará enviando el mensaje a el mismo verdad? XD
        if ($id_usuario == _F_usuario_cache('id_usuario')) {
            echo Mensaje("auto-enviarse mensajes privados no es permitido", _M_ERROR);
            return;
        }
        //Existe el usuario al cual quiere enviar el mensaje?
        if (!_F_usuario_existe($id_usuario, 'id_usuario')) {
            echo Mensaje("ha especificado un usuario de destino no existente en el sitema", _M_ERROR);
            return;
        }
        // Hay envío de MP?
        if (isset($_POST['enviar_mp']) && isset($_POST['mensaje'])) {
            // Será que quiere enviar una respuesta a otro MP
            if (!empty($_GET['id_msj'])) {
                $c = "SELECT a.id, id_usuario_rmt, (SELECT usuario FROM ventas_usuarios AS b WHERE b.id_usuario = a.id_usuario_rmt LIMIT 1) AS nombre_rmt, fecha, mensaje, tipo, contexto, asunto, fecha FROM ventas_mensajes AS a LEFT JOIN ventas_mensajes_dst as vmd ON a.id=vmd.id_msj WHERE vmd.id_msj='" . $_GET['id_msj'] . "' AND a.contexto=" . _MC_privado . " AND vmd.id_usuario_dst='" . _F_usuario_cache('id_usuario') . "' LIMIT 1";
                $r = db_consultar($c);
                // Será que se quiere pasar de vivo cambiando el id_msj
                if (mysql_num_rows($r) == 0) {
                    echo Mensaje("No puedes responder Mensajes <b>Privados</b> de otras personas.", _M_ERROR);
                    return;
                }
                $f = mysql_fetch_array($r);
                $_POST['asunto'] .= '[RESPUESTA A] ' . $f['asunto'];
                $_POST['mensaje'] .= '<br />' . htmlentities("-En respuesta a:\n" . $f['mensaje']);
            }
            //Agregamos el mensaje
            $datos["id_usuario_rmt"] = _F_usuario_cache('id_usuario');
            $datos["mensaje"] = $_POST['mensaje'];
            $datos["asunto"] = $_POST['asunto'];
            $datos["tipo"] = _M_NOTA;
            $datos["contexto"] = _MC_privado;
            $datos["fecha"] = mysql_datetime();
            $id_msj = db_agregar_datos("ventas_mensajes", $datos);
            unset($datos);
            //Agregamos el destinatario
            $datos["id_msj"] = $id_msj;
            $datos["id_usuario_dst"] = $id_usuario;
            $datos["leido"] = 0;
            $datos["eliminado"] = 0;
            $id_msj = db_agregar_datos("ventas_mensajes_dst", $datos);
            unset($datos);
            // Notificación por email del MP al destinatario:
            $usuario_destino = _F_usuario_datos($id_usuario);
            $mensaje = 'Acaban de enviarte un mensaje privado de parte de ' . _F_usuario_cache('usuario') . ' en ' . PROY_NOMBRE . ".<br /><br />\n\n";
            $mensaje .= 'IMPORTANTE: Recuerda, esto es solamente una notificación. Por favor, no respondas a este email.' . "<br /><br />\n\n";
            $mensaje .= 'El mensaje que te enviaron fue:' . "<br /><br />\n\n";
            $mensaje .= $_POST['mensaje'] . ".<br /><br />\n\n";
            $mensaje .= 'Responda a este mensaje privado aquí: ' . PROY_URL . 'perfil?op=mp';
            @email($usuario_destino['email'], 'Nuevo Mensaje Privado: ' . $_POST['asunto'], $mensaje);
            //Notificación visual al usuario que envió el MP
            echo Mensaje("¡Su mensaje privado ha sido enviado!");
            echo '<h1>Opciones</h1>';
            echo '<ul>';
            echo '<li><a href="' . PROY_URL . '">Ir pagina de inicio</a></li>';
            echo '<li><a href="' . curPageURL(true) . '">Ir a mi perfil</a></li>';
            echo '</ul>';
            return;
        }
        // ----------------- ENVIAR MP ----------------- ENVIAR MP ----------------- ENVIAR MP -----------------
        // No ha enviado el MP aún, mostrar el formulario de envío.
        if (!empty($_GET['id_msj'])) {
            $c = "SELECT a.id, id_usuario_rmt, (SELECT usuario FROM ventas_usuarios AS b WHERE b.id_usuario = a.id_usuario_rmt LIMIT 1) AS nombre_rmt, fecha, mensaje, tipo, contexto, asunto, fecha FROM ventas_mensajes AS a LEFT JOIN ventas_mensajes_dst as vmd ON a.id=vmd.id_msj WHERE vmd.id_msj='" . $_GET['id_msj'] . "' AND a.contexto=" . _MC_privado . " AND vmd.id_usuario_dst='" . _F_usuario_cache('id_usuario') . "'";
            $r = db_consultar($c);
            // Será que se quiere pasar de vivo cambiando el id_msj
            if (mysql_num_rows($r) == 0) {
                echo Mensaje("No puedes responder Mensajes <b>Privados</b> de otras personas.", _M_ERROR);
                return;
            }
            $f = mysql_fetch_array($r);
            $Asunto = 'RESPUESTA A: ' . $f['asunto'];
            $EnRespuestaA = htmlentities("---En respuesta a:\n" . $f['mensaje'], ENT_QUOTES, 'UTF-8');
        }
        $usuario_destino = _F_usuario_datos($id_usuario);
        echo '<form action="' . $_SERVER['REQUEST_URI'] . '" method="POST">';
        echo 'Este mensaje será enviado al usuario <b>' . $usuario_destino['usuario'] . '</b><br />';
        echo '<table>';
        echo ui_tr(ui_td('Asunto: ') . ui_td(ui_input('asunto', @$Asunto, "text", '', 'width:100%')));
        echo ui_tr(ui_td('Mensaje: ') . ui_td(ui_textarea('mensaje', '', '', 'width:100%')));
        echo '</table>';
        if (!empty($_GET['id_msj'])) {
            echo "<p><b>Se anexará automaticamente a su mensaje el siguiente texto:</b><br />", @$EnRespuestaA, "</p>";
        }
        echo ui_input("enviar_mp", "Enviar", "submit") . '<br />';
        echo '</form>';
    } else {
        echo '<h1>Mensajes privados</h1>';
        echo '<h2>Categorías</h2>';
        echo '<p><a class="btnlnk" href="', PROY_URL, 'perfil?op=mp">Nuevos</a> <a class="btnlnk" href="', PROY_URL, 'perfil?op=mpl">Leidos</a> <a class="btnlnk" href="', PROY_URL, 'perfil?op=mpe">Enviados</a></p>';
        echo '<h2>Mensajes</h2>';
        // Mostrale sus mensajes privados
        /* Necesito:
         * id de usuario del remitente
         * asunto
         * mensaje
         * fecha
         * nombre del remitente
         */
        if (empty($opciones['vista'])) {
            $opciones['vista'] = "nuevos";
        }
        switch ($opciones['vista']) {
            case 'nuevos':
                $c = "SELECT a.id, id_usuario_rmt, (SELECT usuario FROM ventas_usuarios AS b WHERE b.id_usuario = a.id_usuario_rmt LIMIT 1) AS 'usuario', fecha, mensaje, tipo, contexto, asunto, fecha FROM ventas_mensajes AS a LEFT JOIN ventas_mensajes_dst AS vmd ON a.id=vmd.id_msj WHERE a.contexto=" . _MC_privado . " AND vmd.leido=0 AND vmd.eliminado=0 AND vmd.id_usuario_dst='" . _F_usuario_cache('id_usuario') . "' ORDER BY fecha DESC";
                break;
            case 'leidos':
                $c = "SELECT a.id, id_usuario_rmt, (SELECT usuario FROM ventas_usuarios AS b WHERE b.id_usuario = a.id_usuario_rmt LIMIT 1) AS 'usuario', fecha, mensaje, tipo, contexto, asunto, fecha FROM ventas_mensajes AS a LEFT JOIN ventas_mensajes_dst AS vmd ON a.id=vmd.id_msj WHERE a.contexto=" . _MC_privado . " AND vmd.leido=1 AND vmd.eliminado=0 AND vmd.id_usuario_dst='" . _F_usuario_cache('id_usuario') . "' ORDER BY fecha DESC";
                break;
            case 'enviados':
                $c = "SELECT a.id, (SELECT usuario FROM ventas_usuarios AS b WHERE b.id_usuario = vmd.id_usuario_dst LIMIT 1) AS 'usuario', fecha, mensaje, tipo, contexto, asunto, fecha FROM ventas_mensajes AS a LEFT JOIN ventas_mensajes_dst AS vmd ON a.id=vmd.id_msj WHERE a.contexto=" . _MC_privado . " AND a.eliminado=0 AND a.id_usuario_rmt='" . _F_usuario_cache('id_usuario') . "' ORDER BY fecha DESC";
                break;
        }
        $r = db_consultar($c);
        if (mysql_num_rows($r) > 0) {
            echo '<table class="ancha resultados">';
            while ($f = mysql_fetch_array($r)) {
                echo ui_tr(ui_th('Usuario') . ui_th('Fecha') . ui_th('Asunto'));
                echo ui_tr(ui_td($f['usuario']) . ui_td(fechatiempo_h_desde_mysql_datetime($f['fecha'])) . ui_td($f['asunto']));
                echo '<tr><td colspan="3">' . $f['mensaje'] . '</td></tr>';
                switch ($opciones['vista']) {
                    case 'nuevos':
                        echo '<tr><td colspan="3"><a href="./perfil?op=mp&ae=responder&id=' . $f['id_usuario_rmt'] . '&id_msj=' . $f['id'] . '">responder</a> / <a href="./perfil?op=mp&ae=eliminar&id_msj=' . $f['id'] . '">eliminar</a> / <a href="./perfil?op=mp&ae=leido&id_msj=' . $f['id'] . '">marcar como leído</a></td></tr>';
                        break;
                    case 'leidos':
                        echo '<tr><td colspan="3"><a href="./perfil?op=mpl&ae=responder&id=' . $f['id_usuario_rmt'] . '&id_msj=' . $f['id'] . '">responder</a> / <a href="./perfil?op=mp&ae=eliminar&id_msj=' . $f['id'] . '">eliminar</a></td></tr>';
                        break;
                    case 'enviados':
                        echo '<tr><td colspan="3"><a href="./perfil?op=mpe&ae=eliminar2&id_msj=' . $f['id'] . '">eliminar</a></td></tr>';
                        break;
                }
                echo '<tr><td colspan="3"><hr /></td></tr>';
            }
            echo '</table>';
        } else {
            echo Mensaje('no tienes mensajes privados', _M_INFO);
        }
        return;
    }
}
Exemplo n.º 19
0
function SSL_COMPRA_PROCESAR()
{
    global $variedad;
    if (isset($_POST['btn_cancelar'])) {
        if (isset($_POST['variedad'])) {
            $c = 'SELECT titulo, descripcion FROM flores_producto_contenedor LEFT JOIN flores_producto_variedad USING (codigo_producto) WHERE codigo_variedad="' . db_codex($_POST['variedad']) . '"';
            $r = mysql_fetch_assoc(db_consultar($c));
            $location = PROY_URL . 'arreglos-florales-floristerias-en-el-salvador-' . SEO($f['titulo'] . '-' . $f['codigo_producto']);
        } else {
            $location = PROY_URL;
        }
        header("Location: " . $location);
        ob_end_clean;
        exit;
    }
    if (!isset($_POST['btn_comprar']) || !isset($_POST['variedad'])) {
        return false;
    }
    // Revisamos si ya envió la compra, no vaya a ser doble compra.
    if (db_contar(db_prefijo . 'SSL_compra_contenedor', 'transaccion="' . db_codex($_POST['transaccion']) . '"')) {
        header("Location: " . PROY_URL);
        exit;
    }
    // Verificamos que todos los datos sean válidos
    $ERRORES = array();
    require_once 'PHP/ssl.vericard.php';
    $_POST['txt_numero_t_credito'] = preg_replace('/[^\\d]/', '', $_POST['txt_numero_t_credito']);
    if (!checkCreditCard($_POST['txt_numero_t_credito'], $_POST['cmb_tipo_t_credito'], $ccerror, $ccerrortext)) {
        $ERRORES[] = $ccerrortext;
    }
    // Tratamos de ver si la direccion de entrega es valida
    if (strlen(preg_replace('[^\\w]', '', $_POST['txt_direccion_entrega'])) < 10) {
        $ERRORES[] = 'Por favor revise que la dirección de entrega sea correcta y suficimientemente detallada.';
    }
    // Tratamos de ver si la direccion de entrega es valida
    if (!preg_match('/^\\d{4}-\\d{2}-\\d{2}$/', $_POST['txt_fecha_entrega'])) {
        $ERRORES[] = 'Por favor revise que la fecha de entrega sea en este formato: año-mes-dia.';
    }
    if (!preg_match('/^\\d{2}\\/\\d{2}$/', $_POST['txt_fecha_expiracion'])) {
        $ERRORES[] = 'Por favor revise que la fecha de expiración de la tarjeta de crédito sea en el formato MES/AÑO incluyendo la pleca (/).';
    }
    if (!preg_match('/^\\d{3,4}$/', $_POST['txt_ccv'])) {
        $ERRORES[] = 'Por favor revise que el número de verificación de la tarjeta de crédito sean tres (3) números. Sirvase de las instrucciones para encontrar este número en su tarjeta de crédito.';
    }
    if (strlen($_POST['txt_nombre_t_credito']) < 10) {
        $ERRORES[] = 'El nombre del acreedor de la tarjeta de crédito parece inválido';
    }
    /*
        if (!validcorreo($_POST['txt_correo_contacto']))
        {
            $ERRORES[] = 'El correo ingresado no parece valido, por favor compruebelo.';
        }
    */
    if (count($ERRORES) > 0) {
        echo '<h1>Lo sentimos, hay errores en los datos ingresados</h1>';
        echo '<p>Hemos detectado los siguientes errores en los datos introducidos y no podremos procesar su compra a menos que sean corregidos:</p>';
        echo '<p class="error">' . join('</p><p class="error">', $ERRORES) . '</p>';
        return;
    }
    // Encriptamos la tarjeta de credito
    $t_credito = db_codex(preg_replace('/[^\\d]/', '', trim($_POST['txt_numero_t_credito'])));
    $c = sprintf('SELECT AES_ENCRYPT("%s","%s") AS t_credito_AES', $t_credito, db__key_str);
    $r = db_consultar($c);
    $f = mysql_fetch_assoc($r);
    $DATOS['codigo_compra'] = '0';
    $DATOS['codigo_usuario'] = '0';
    $DATOS['estado'] = 'nuevo';
    $DATOS['fecha'] = mysql_datetime();
    $DATOS['codigo_variedad'] = @$variedad['codigo_variedad'];
    $DATOS['precio_grabado'] = @$variedad['precio'];
    $DATOS['n_credito'] = @$f['t_credito_AES'];
    $DATOS['tipo_t_credito'] = @$_POST['cmb_tipo_t_credito'];
    $DATOS['telefono_destinatario'] = @$_POST['txt_telefono_destinatario'];
    $DATOS['telefono_remitente'] = @$_POST['txt_telefono_remitente'];
    $DATOS['fecha_exp_t_credito'] = @$_POST['txt_fecha_expiracion'];
    $DATOS['nombre_t_credito'] = @$_POST['txt_nombre_t_credito'];
    $DATOS['pin_4_reverso_t_credito'] = @$_POST['txt_ccv'];
    $DATOS['direccion_entrega'] = @$_POST['txt_direccion_entrega'];
    $DATOS['fecha_entrega'] = @$_POST['txt_fecha_entrega'];
    $DATOS['tarjeta_de'] = @$_POST['txt_tarjeta_de'];
    $DATOS['tarjeta_para'] = @$_POST['txt_tarjeta_para'];
    $DATOS['tarjeta_cuerpo'] = @$_POST['txt_tarjeta_cuerpo'];
    $DATOS['usuario_notas'] = @$_POST['txt_usuario_notas'];
    $DATOS['correo_contacto'] = @$_POST['txt_correo_contacto'];
    $DATOS['transaccion'] = @$_POST['transaccion'];
    $DATOS['precio_envio'] = @(double) $_POST['destino'];
    if ($_POST['txt_numero_t_credito'] == str_repeat('1', 16)) {
        return '<p>ERROR</p>';
    }
    return db_agregar_datos(db_prefijo . 'SSL_compra_contenedor', $DATOS);
}
Exemplo n.º 20
0
function INTERFAZ__ADMIN_TIENDAS_AGREGAR()
{
    if (isset($_POST['crear'])) {
        $flag_valido = true;
        $usuario = _F_usuario_datos($_POST['email'], 'email');
        if (!is_array($usuario)) {
            $flag_valido = false;
            echo Mensaje("abortado porque el usuario no existe");
        }
        if ($flag_valido) {
            $datos['id_usuario'] = $usuario['id_usuario'];
            $datos['tiendaURL'] = db_codex(@$_POST['url']);
            $datos['tiendaTitulo'] = db_codex(@$_POST['titulo']);
            $datos['tiendaSubtitulo'] = db_codex(@$_POST['subtitulo']);
            $datos['tiendaCSS'] = db_codex(@$_POST['css']);
            $r = db_agregar_datos('ventas_tienda', $datos);
            if ($r) {
                echo Mensaje("Agregado correctamente");
            }
        }
    }
    ?>
<form action="./admin_tienda_agregar" method="post">
<table class="semi-ancha limpio">
    <tr><td class="fDer">Correo Usuario</td><td class="fInput"><input name="email" type="text" value=""/></td><tr>
    <tr><td class="fDer">URL</td><td class="fInput"><input name="url" type="text" value=""/></td><tr>
    <tr><td class="fDer">Titulo</td><td class="fInput"><input name="titulo" type="text" value=""/></td><tr>
    <tr><td class="fDer">Subtitulo</td><td class="fInput"><input name="subitulo" type="text" value=""/></td><tr>
    <tr><td class="fDer">CSS</td><td class="fInput"><textarea name="css"></textarea></td><tr>
</table>
<input type="submit" name="crear" value="Crear">
</form>
<?php 
}
Exemplo n.º 21
0
function CONTENIDO_PUBLICACION($op = "")
{
    global $HEAD_titulo, $HEAD_descripcion;
    if (!isset($_GET['publicacion'])) {
        echo Mensaje("PUBLICACION: ERROR INTERNO", _M_ERROR);
        return;
    }
    $ticket = db_codex($_GET['publicacion']);
    $publicacion = ObtenerDatos($ticket);
    if (!$publicacion) {
        echo Mensaje("disculpe, la publicación solicitada no existe.", _M_INFO);
        return;
    }
    echo ui_publicacion_barra_acciones('contenido', $publicacion);
    // Si ya fue vendido
    if ($publicacion['tipo'] == _A_vendido) {
        echo '<h1>Publicación concluida</h1>';
        echo '<p>Lo sentimos, el vendedor nos ha informado la venta ya fue realizada.</p>';
        echo '<p>¡Pero no se vaya!, puesto que puede revisar la categoría de esta publicación para encontrar uno similar! - <a href="clasificados-en-el-salvador-' . $publicacion['id_categoria'] . '-.html">Revisar la categoría de este producto</a></p>';
        echo '<p>O bien puede aprovechar para realizar una publicación similar. - <a href="vender?op=' . $publicacion['id_categoria'] . '">Realizar publicación en esta categoría</a></p>';
        return;
    }
    // Si no esta aprobado solo lo puede ver un Administrador
    if ($op != "previsualizacion" && $publicacion['tipo'] != _A_aceptado && _F_usuario_cache('nivel') != _N_administrador) {
        echo Mensaje("esta publicacion NO se encuentra disponible", _M_ERROR);
        return;
    }
    // Ya venció el tiempo de publicación?.
    if (@$_SESSION['opciones']['deshabilitar_tiempo_de_caducidad'] == 1 && $op != "previsualizacion" && strtotime($publicacion['fecha_fin']) < strtotime(date('d-m-Y', time()))) {
        echo Mensaje("disculpe, la publicación solicitada ha caducado.", _M_INFO);
        echo "Esta publicacion caducó el " . $publicacion['fecha_fin'] . "<br />";
        if (_F_usuario_cache('id_usuario') == $publicacion['id_usuario']) {
            echo 'Para asegurarnos que su venta sigue vigente y con datos actuales, Ud. debera revisar su publicacion y publicarla nuevamente.' . ui_href("", "vender?ticket={$ticket}", "Presione en este enlace si desea extender el tiempo de su publicación");
        }
        return;
    }
    // Operaciones especiales con la publicación que no necesite permisos de administración
    if (isset($_GET['se'])) {
        switch ($_GET['se']) {
            case 'pub2pdf':
                break;
            case 'pub2mail':
                CONTENIDO_PUB2MAIL($publicacion);
                return;
                break;
            case 'pubrep':
                CONTENIDO_PUBREP($publicacion);
                return;
                break;
            case 'cerrar':
                CONTENIDO_CERRAR($publicacion);
                return;
                break;
            case 'editar':
                CONTENIDO_EDITAR($publicacion);
                return;
                break;
        }
    }
    // Preprocesamos cualquier codigo de operación
    if (isset($_GET['op']) && isset($_GET['id']) && _F_usuario_cache('nivel') == _N_administrador) {
        $id = db_codex($_GET['id']);
        switch ($_GET['op']) {
            case "eliminar":
                $c = "DELETE FROM ventas_mensajes_publicaciones WHERE id='{$id}' LIMIT 1";
                break;
            case "privado":
                $c = "UPDATE ventas_mensajes_publicaciones SET tipo='" . _MeP_Privado . "' WHERE id='{$id}' LIMIT 1";
                break;
            case "publico":
                $c = "UPDATE ventas_mensajes_publicaciones SET tipo='" . _MeP_Publico . "' WHERE id='{$id}' LIMIT 1";
                break;
        }
        $r = db_consultar($c);
        if (db_afectados() == 1) {
            echo Mensaje("Operación exitosa.", _M_INFO);
        } else {
            echo Mensaje("Operación erronea.", _M_ERROR);
        }
    }
    $Vendedor = _F_usuario_datos(@$publicacion['id_usuario']);
    $imagenes = ObtenerImagenesArr($ticket, "");
    // Grabamos cualquier consulta enviada
    if (_autenticado() && isset($_POST['consulta']) && isset($_POST['enviar_consulta']) && _F_usuario_cache('id_usuario') != @$Vendedor['id_usuario']) {
        // Consulta publica
        $datos['id_usuario'] = _F_usuario_cache('id_usuario');
        $datos['id_publicacion'] = $ticket;
        $datos['consulta'] = substr(strip_tags(db_codex($_POST['consulta'])), 0, 300);
        $datos['tipo'] = isset($_POST['tipo_consulta']) ? _MeP_Publico : _MeP_Privado;
        $datos['fecha_consulta'] = mysql_datetime();
        db_agregar_datos("ventas_mensajes_publicaciones", $datos);
        unset($datos);
        // Enviamos un mensaje al vendedor
        email($Vendedor['email'], PROY_NOMBRE . " - nueva consulta en la publicación: " . $publicacion['titulo'], "Le han realizado una consulta en la siguiente publicacion: <a href=\"http://yomachete.com/clasificados-en-el-salvador-vendo-" . $publicacion['id_publicacion'] . "_" . SEO($publicacion['titulo']) . "\">" . $publicacion['titulo'] . '</a>');
    }
    // Grabamos cualquier respuesta enviada
    if (_autenticado() && isset($_POST['cmdEnviarRespuesta']) && is_array($_POST['txtEnviarRespuesta']) && _F_usuario_cache('id_usuario') == @$Vendedor['id_usuario']) {
        foreach ($_POST['txtEnviarRespuesta'] as $id => $respuesta) {
            $respuesta = substr(strip_tags(db_codex($respuesta)), 0, 300);
            $id = db_codex($id);
            $c = "UPDATE ventas_mensajes_publicaciones SET respuesta='{$respuesta}', fecha_respuesta=NOW() WHERE id='{$id}' AND id_publicacion='{$ticket}' LIMIT 1";
            $r = db_consultar($c);
            // Notificamos al dueño del mensaje
            if (db_afectados() > 0) {
                $c = 'SELECT email FROM ventas_usuarios WHERE id_usuario = (SELECT id_usuario FROM ventas_mensajes_publicaciones WHERE id=' . $id . ' AND id_publicacion=' . $ticket . ' LIMIT 1)';
                $r = db_consultar($c);
                $f = mysql_fetch_assoc($r);
                if (!empty($f['email'])) {
                    email($f['email'], PROY_NOMBRE . " - respuesta a su consulta en la publicación: " . $publicacion['titulo'], "Hay una respuesta a su consulta en la siguiente publicacion: <a href=\"http://yomachete.com/clasificados-en-el-salvador-vendo-" . $publicacion['id_publicacion'] . "_" . SEO($publicacion['titulo']) . "\">" . $publicacion['titulo'] . '</a>');
                }
            }
        }
    }
    echo "<h1>" . @$publicacion['titulo'] . "</h1>";
    echo "<hr /><div id=\"pub_descripcion_corta\">" . @$publicacion['descripcion_corta'] . "</div>";
    echo "<hr />";
    // Categoria en la que se encuentra ubicado el producto
    echo "<b>Categoría de la publicación:</b> " . get_path_format(@$publicacion);
    echo "<br />";
    // Fechas de publicación
    echo "<b>Inicio de la publicación:</b> " . fecha_desde_mysql_datetime(@$publicacion['fecha_ini']);
    if (@$_SESSION['opciones']['deshabilitar_tiempo_de_caducidad'] == 0) {
        echo "<br /><b>Fin de la publicación:</b> " . fecha_desde_mysql_datetime(@$publicacion['fecha_fin']);
    }
    echo "<br />";
    // Formas de entrega para el producto (no disponible para ciertos rubros: inmuebles.
    echo "<b>Formas de entrega:</b>" . " <span  class=\"auto_mostrar\">[<a id=\"ver_mas_entrega\">ver...</a>]</span>";
    echo "<div id=\"detalle_entrega\" class=\"auto_ocultar\">";
    echo db_ui_checkboxes("", "ventas_flags", "id_flag", "nombrep", "descripcion", ObtenerFlags($ticket, "entrega"), 'disabled="disabled"', "tipo='entrega'");
    echo "</div>";
    echo "<br />";
    // Caracteristicas adicionales:
    echo "<b>Características adicionales:</b>" . " <span  class=\"auto_mostrar\">[<a id=\"ver_mas_adicional\">ver...</a>]</span>";
    echo "<div id=\"detalle_adicional\" class=\"auto_ocultar\">";
    echo db_ui_checkboxes("", "ventas_flags", "id_flag", "nombrep", "descripcion", ObtenerFlags($ticket, "venta"), 'disabled="disabled"', "tipo='venta'");
    echo "</div>";
    echo "<br />";
    // Precio y formas de pago aceptadas
    echo "<b>Precio:</b> \$" . number_format(@$publicacion['precio'], 2, ".", ",") . " <span  class=\"auto_mostrar\">[<a id=\"ver_mas_precio\">ver formas de pago...</a>]</span>";
    echo "<div id=\"detalle_precio\" class=\"auto_ocultar\">";
    echo db_ui_checkboxes("", "ventas_flags", "id_flag", "nombrep", "descripcion", ObtenerFlags($ticket, "pago"), 'disabled="disabled"', "tipo='pago'");
    echo "</div>";
    echo "<br />";
    // Datos sobre el vendedor
    echo "<b>Vendedor:</b> " . ui_href("", "perfil?id=" . $Vendedor['id_usuario'], $Vendedor['usuario']) . (_F_usuario_cache('id_usuario') != $Vendedor['id_usuario'] ? " / enviar un <b>" . ui_href("", PROY_URL . "perfil?op=mp&amp;id=" . $Vendedor['id_usuario'], "Mensaje Privado") . "</b> " : " ") . "<span  class=\"auto_mostrar\">[<a id=\"ver_mas_vendedor\">ver datos sobre el vendedor...</a>]</span>";
    echo "<div id=\"detalle_vendedor\" class=\"auto_ocultar\">";
    echo "<ul>";
    echo "<li>Registrado desde: " . fechatiempo_desde_mysql_datetime(@$Vendedor['registro']) . "</li>";
    echo "<li>Ultima actividad: " . fechatiempo_desde_mysql_datetime(@$Vendedor['ultimo_acceso']) . "</li>";
    $Vendedor['cantidad_publicaciones'] = ObtenerEstadisticasUsuario(@$Vendedor['id_usuario'], _EST_CANT_PUB_ACEPT);
    echo "<li>Cantidad de publicaciones: " . $Vendedor['cantidad_publicaciones'] . "</li>";
    echo "</ul>";
    echo "</div>";
    if (isset($imagenes) && is_array($imagenes)) {
        echo "<hr /><h1>Fotografías y/o ilustraciones</h1><center>";
        foreach ($imagenes as $archivo) {
            echo "<div style='display:inline-block;margin:0 10px;'><a class=\"fancybox\" href=\"./imagen_" . $archivo . ".jpg\" target=\"_blank\" rel=\"contenido\"><img src=\"./imagen_" . $archivo . "m.jpg\" /></a><br /></div>";
        }
        echo "<div style=\"clear:both\"></div>";
        echo "</center>";
    }
    echo "<hr /><h1>Descripción</h1><center><div class=\"clasificados-en-el-salvador-vendo-descripcion\">";
    $descripcion = @$publicacion['descripcion'];
    if (!is_array($descripcion)) {
        echo $descripcion;
    } else {
        print_r($descripcion);
    }
    echo "</div></center>";
    if ($op != "previsualizacion") {
        echo '<hr /><div class="cuadro_importante">';
        $c = "SELECT id, id_usuario, (SELECT usuario FROM ventas_usuarios AS b WHERE b.id_usuario=a.id_usuario) AS usuario, consulta, respuesta, respuesta, tipo, fecha_consulta, fecha_respuesta FROM ventas_mensajes_publicaciones AS a WHERE id_publicacion={$ticket}";
        $r = db_consultar($c);
        if ($r && mysql_num_rows($r) > 0) {
            echo "<h1>Consultas</h1>";
            echo '<form method="POST" action="clasificados-en-el-salvador-vendo-' . $ticket . '">';
            echo '<table id="tabla_consultas" class="ancha">';
            $flag_activar_enviar_respuestas = false;
            while ($f = mysql_fetch_array($r)) {
                // Si es consulta privada solo se muestra si corresponde al usuario actual o al vendedor
                if ($f['tipo'] == _MeP_Privado && _F_usuario_cache('id_usuario') != $f['id_usuario'] && _F_usuario_cache('id_usuario') != @$Vendedor['id_usuario']) {
                    continue;
                }
                // Determinamos si es pregunta privada o publica
                $Privada = $f['tipo'] == _MeP_Privado ? "_privada" : "";
                $ControlesAdmin = "";
                if (_F_usuario_cache('nivel') == _N_administrador) {
                    $ControlesAdmin = " [" . ui_href("", "./clasificados-en-el-salvador-vendo-{$ticket}?op=eliminar&id=" . $f['id'], "X") . "]" . ($f['tipo'] == _MeP_Publico ? "[" . ui_href("", "clasificados-en-el-salvador-vendo-{$ticket}?op=privado&id=" . $f['id'], "p") . "]" : "[" . ui_href("", "clasificados-en-el-salvador-vendo-{$ticket}?op=publico&id=" . $f['id'], "P") . "]");
                }
                echo '<tr class="pregunta' . $Privada . '"><td class="col1">' . $f['usuario'] . '</td><td class="col2">' . htmlentities($f['consulta'], ENT_QUOTES, "utf-8") . "</td><td class=\"col3\">" . fechatiempo_h_desde_mysql_datetime($f['fecha_consulta']) . $ControlesAdmin . "</td></tr>";
                // Si es el dueño de la venta y no ha respondido la consulta le damos la opción de hacerlo.
                if (!$f['respuesta'] && _F_usuario_cache('id_usuario') == @$Vendedor['id_usuario']) {
                    $f['respuesta'] = ui_input("txtEnviarRespuesta[" . $f['id'] . "]", "", "text", "txtRespuesta", 'MAXLENGTH="300"');
                    $flag_activar_enviar_respuestas = true;
                } elseif (!$f['respuesta']) {
                    $f['respuesta'] = htmlentities('<el vendedor aún no ha dado respuesta a esta consulta>', ENT_QUOTES, "utf-8");
                } else {
                    $f['respuesta'] = htmlentities($f['respuesta'], ENT_QUOTES, "utf-8");
                }
                echo '<tr class="respuesta' . $Privada . '"><td class="col1">' . @$Vendedor['usuario'] . '</td><td class="col2">' . $f['respuesta'] . '</td><td class="col3">' . fechatiempo_h_desde_mysql_datetime($f['fecha_respuesta']) . "</td></tr>";
            }
            if ($flag_activar_enviar_respuestas) {
                echo '<tr><td id="envio" colspan="3">' . ui_input("cmdEnviarRespuesta", "Enviar todas las respuestas", "submit") . '</td></tr>';
            }
            echo '</table>';
            echo '</form>';
        } else {
            echo Mensaje("No hay consultas realizadas por el momento", _M_INFO);
        }
        // Enviar consultas
        if (!S_iniciado()) {
            echo "<hr />Necesitas iniciar sesión para poder <b>realizar consultas</b>.<br />";
            require_once "PHP/inicio.php";
            CONTENIDO_INICIAR_SESION();
        } elseif (_autenticado() && _F_usuario_cache('id_usuario') != @$Vendedor['id_usuario']) {
            echo '<div id="area_consulta"><form method="POST" action="' . $_SERVER['REQUEST_URI'] . '"><p>Realizar consulta al vendedor:</p>' . ui_input("consulta", "", "text", "", "width:100%;", 'MAXLENGTH="300"') . "<br />" . "<table><tr><td>" . ui_input("tipo_consulta", "publica", "checkbox") . "&nbsp; marque esta opción si desea hacer pública esta consulta (<a title=\"Usela si Ud. cree que las demas personas deben leer esta pregunta y su respectiva respuesta\">?</a>).</td><td id=\"trbtn\">" . ui_input("enviar_consulta", "Enviar", "submit") . "</td></tr></table>" . '</form></div>';
        }
        echo '</div>';
        // Mostrar "Otros productos de este vendedor". Si tiene mas de un producto claro :)
        if ($Vendedor['cantidad_publicaciones'] > 1) {
            echo '<hr />';
            echo '<div class="cuadro_importante centrado">';
            echo '<h1>Otras publicaciones de este vendedor</h1>';
            echo VISTA_ArticuloEnBarra("a.id_publicacion <> '" . $publicacion['id_publicacion'] . "' AND a.id_usuario = '" . $Vendedor['id_usuario'] . "' AND a.tipo='" . _A_aceptado . "' AND a.fecha_fin >= CURDATE()");
            echo '</div>';
        }
        // Mostrar "Productos similares". Escoger de la misma categoria los
        // productos que esten en el rango de +/-25% del precio actual
        $PrecioMin = (double) @$publicacion['precio'] * 0.5;
        // -50%
        $PrecioMax = (double) @$publicacion['precio'] * 1.5;
        // +50%
        echo '<hr />';
        echo '<div class="cuadro_importante centrado">';
        echo '<h1>Publicaciones similares</h1>';
        echo VISTA_ArticuloEnBarra("a.id_categoria IN (SELECT id_categoria FROM ventas_categorias WHERE padre = (SELECT padre from ventas_categorias WHERE id_categoria='" . $publicacion['id_categoria'] . "' LIMIT 1)) AND precio >= '{$PrecioMin}' AND precio <= '{$PrecioMax}' AND id_publicacion <> '" . $publicacion['id_publicacion'] . "' AND a.tipo='" . _A_aceptado . "' AND a.fecha_fin >= CURDATE()");
        echo '</div>';
        // Mostrar opciones adicionales
        echo '
    <a href="' . $_SERVER['REQUEST_URI'] . '?se=pub2pdf"><img src="IMG/pub_extop_ipdf.gif" title="Obtener una copia de esta venta en formato PDF" alt="[descargar venta en PDF]" /></a>
    <a href="' . $_SERVER['REQUEST_URI'] . '?se=pub2mail"><img src="IMG/pub_extop_mail.gif" title="Enviar esta publicación a un amigo" alt="[enviar por email]" /></a>
    <a href="' . $_SERVER['REQUEST_URI'] . '?se=pubrep"><img src="IMG/pub_extop_reportar.gif" title="Notificar a los administradores de una publicación fraudulenta" alt="[reportar publicación]" /></a>
    ';
    }
    echo JS_onload('
    $(".auto_ocultar").hide();
    $(".auto_mostrar").show();
    $("#ver_mas_precio").click(function() {$("#detalle_precio").toggle("fast");});
    $("#ver_mas_entrega").click(function() {$("#detalle_entrega").toggle("fast");});
    $("#ver_mas_adicional").click(function() {$("#detalle_adicional").toggle("fast");});
    $("#ver_mas_vendedor").click(function() {$("#detalle_vendedor").toggle("fast");});
    ');
    $HEAD_titulo = PROY_NOMBRE . ' - ' . @$publicacion['titulo'];
    $HEAD_descripcion = @$publicacion['descripcion_corta'];
}
Exemplo n.º 22
0
        mensaje(array(usuario_cache('ID_empresa')), $mensaje);
        empleado_difundir_actualizaciones($empleado['DUI'], $empleado['NIT'], 'ha cesado laborales en la empresa <strong>' . usuario_cache('razon_social') . '</strong>. Según su desempeño laboral, la empresa antes mencionada expresó que <strong>' . $_POST['paso2'] . '</strong>.');
        echo '<h1>Registro de cese laboral para  ' . $empleado['apellidos'] . ', ' . $empleado['nombres'] . ' @ ' . $empleado['razon_social'] . '; creado</h1>';
        echo '<p>El registro del cese laboral ha sido ingresado. Para editar este cese laboral deberá contactar con su ejecutivo de cuenta en ' . PROY_NOMBRE . '.</p>';
        $datos['ID_usuario'] = usuario_cache('ID_usuario');
        $datos['ID_empresa'] = usuario_cache('ID_empresa');
        $datos['ID_empleado'] = $empleado['ID_empleado'];
        $datos['fecha_ingreso'] = mysql_date();
        $datos['motivo'] = $_POST['paso1'];
        $datos['calificacion'] = $_POST['paso2'];
        $datos['fecha_cese'] = $_POST['paso3'];
        $datos['codigo_laboral'] = $_POST['paso1'] == 'Despido' ? $articulo_codigo_laboral : '';
        $datos['comentario'] = $_POST['paso5'];
        $datos['indemnizado'] = $_POST['paso6'];
        $datos['motivo_interno'] = $_POST['motivo_interno'];
        db_agregar_datos('cese', $datos);
        $editable = false;
    }
}
if (!$editable) {
    require_once "-empleado.amigable.cese.reporte.php";
    return;
}
$arrCSS[] = 'overcast/jquery-ui-1.8rc3.custom';
$arrJS[] = 'jquery-ui-1.8rc3.min';
$arrJS[] = 'jquery.ui.datepicker-es';
$arrHEAD[] = JS_onload('$(".paso1").click(function(){$("input[name=paso4]").attr("checked",false);$("#codigo-laboral").toggle($(".paso1:checked").val() == "Despido");$("#codigo-laboral-no").toggle($(".paso1:checked").val() != "Despido");});
                       $("#codigo-laboral").accordion({ event: "mouseover", collapsible: true });
                       $("#codigo-laboral-no").show();
                       $("#codigo-laboral").hide();
                       $("#paso3").datepicker({inline: true, maxDate: "+0", dateFormat: "yy-mm-dd", changeMonth: true, changeYear: true});
Exemplo n.º 23
0
            $datos['fotografia'] = sha1(microtime());
            Imagen__Convertir_JPEG($_FILES['fotografia']['tmp_name'], 'IMG/fotografias/' . $datos['fotografia'] . '.jpg');
        }
        $datos['ID_empresa'] = usuario_cache('ID_empresa');
        $datos['ID_usuario'] = usuario_cache('ID_usuario');
        $datos['fecha_ingreso'] = mysql_date();
        $datos = array_merge($datos, array_intersect_key($_POST, array_flip(array('DUI', 'NIT', 'nombres', 'apellidos', 'conocido_por', 'op_fecha_nacimiento', 'op_lugar_nacimiento', 'op_direccion', 'op_correo', 'op_estado_civil', 'op_idioma', 'op_informatica', 'op_interes', 'op_referencias', 'op_telefono1', 'op_telefono2', 'op_movil1', 'op_movil2'))));
        $ID_empleado = db_agregar_datos(db_prefijo . 'empleado', $datos);
        // Su primer cargo laboral - aww :)
        unset($datos);
        $datos['ID_empresa'] = usuario_cache('ID_empresa');
        $datos['ID_usuario'] = usuario_cache('ID_usuario');
        $datos['ID_empleado'] = $ID_empleado;
        $datos['fecha_ingreso'] = mysql_date();
        $datos = array_merge($datos, array_intersect_key($_POST, array_flip(array('fecha_inicio', 'cargo', 'salario'))));
        $ID_historial = db_agregar_datos(db_prefijo . 'historial', $datos);
        echo '<h1>Resultado de solicitud de ingreso de nuevo registro de empleado</h1>';
        if ($ID_empleado && $ID_historial) {
            $mensaje['mensaje'] = 'El usuario <strong>' . usuario_cache('nombre') . '</strong>, añadió un nuevo empleado [<strong>' . $_POST['apellidos'] . ',' . $_POST['nombres'] . '</strong>] a su empresa.';
            $mensaje['tipo'] = 'info';
            mensaje(array(usuario_cache('ID_empresa')), array($mensaje));
            empleado_difundir_actualizaciones($_POST['DUI'], $_POST['NIT'], 'ha sido registrado en la empresa <strong>' . usuario_cache('razon_social') . '</strong>. Registrado con nombre <strong>' . $_POST['apellidos'] . ',' . $_POST['nombres'] . '</strong>.');
            echo '<p>Gracias, su solicitud de ingreso de datos a sido recibida y aceptada. El nuevo registro de empleado ya se encuentra disponible.</p>';
            echo '<p>Si desea añadir mas cargos laborales a su empleado dirijase a <a href="' . PROY_URL . '~empleado?cargo=' . $ID_empleado . '">cargos laborales para ' . $_POST['apellidos'] . ', ' . $_POST['nombres'] . '</a></p>';
            echo '<p>Tambien puede <a href="' . PROY_URL . '~empleado" alt="Empleados de su empresa">revisar sus registros de empleado</a>, <a href="' . PROY_URL . '~empleado?agregar" alt="Agregar empleado a su empresa">agregar otro empleado</a> o <a href="' . PROY_URL . '" title="Pagina de inicio de BCA">regresar a la pagina de inicio de BCA</a></p>';
            return;
        } else {
            $buffer = '<p class="error">Lo sentimos, sucedio un error desconocido y su solicitud no pudo ser procesada, puede intentarlo nuevamene si lo desea</p>';
        }
    }
}
Exemplo n.º 24
0
function CONTENIDO_REGISTRAR()
{
    if (S_iniciado()) {
        header("location: ./");
        return;
    }
    if (isset($_POST['registrar_proceder'])) {
        $flag_registroExitoso = true;
        if (!empty($_POST['registrar_campo_email'])) {
            if (!validEmail($_POST['registrar_campo_email'])) {
                echo mensaje("Este correo electrónico no es válido, por favor revise que este escrito correctamente o escoja otro e intente de nuevo", _M_ERROR);
                $flag_registroExitoso = false;
            }
            if (_F_usuario_existe($_POST['registrar_campo_email'], "email")) {
                echo mensaje("Este correo electrónico ya existe en el sistema, por favor escoja otro e intente de nuevo", _M_ERROR);
                $flag_registroExitoso = false;
            }
            $datos['email'] = $_POST['registrar_campo_email'];
        } else {
            echo mensaje("Por favor ingrese su email e intente de nuevo", _M_ERROR);
            $flag_registroExitoso = false;
        }
        if (!empty($_POST['registrar_campo_usuario'])) {
            if (_F_usuario_existe($_POST['registrar_campo_usuario'])) {
                echo mensaje("Este nombre de usuario ya existe en el sistema, por favor escoja otro e intente de nuevo", _M_ERROR);
                $flag_registroExitoso = false;
            }
            if (strpos(trim($_POST['registrar_campo_usuario']), " ")) {
                echo mensaje("Este nombre de usuario no es válido (contiene espacios), por favor escoja otro e intente de nuevo", _M_ERROR);
                $flag_registroExitoso = false;
            }
            $datos['usuario'] = trim($_POST['registrar_campo_usuario']);
        } else {
            echo mensaje("Por favor ingrese su usuario e intente de nuevo", _M_ERROR);
            $flag_registroExitoso = false;
        }
        if (!empty($_POST['registrar_campo_clave']) && !empty($_POST['registrar_campo_clave_2'])) {
            //Contraseñas iguales?
            if (trim($_POST['registrar_campo_clave']) == trim($_POST['registrar_campo_clave_2'])) {
                //Tamaño adecuado?
                if (strlen($_POST['registrar_campo_clave']) >= 6 && strlen($_POST['registrar_campo_clave']) <= 100) {
                    $datos['clave'] = sha1(strtolower($datos['usuario']) . trim($_POST['registrar_campo_clave']));
                } else {
                    echo mensaje("La contraseña debe tener mas de 6 caracteres", _M_ERROR);
                    $flag_registroExitoso = false;
                }
            } else {
                echo mensaje("Las contraseñas no coinciden, por favor ingrese su contraseña e intente de nuevo", _M_ERROR);
                $flag_registroExitoso = false;
            }
        } else {
            echo mensaje("Por favor ingrese su contraseña e intente de nuevo", _M_ERROR);
            $flag_registroExitoso = false;
        }
        if (!empty($_POST['registrar_campo_telefono'])) {
            if (_F_usuario_existe($_POST['registrar_campo_telefono'], "telefono1")) {
                echo mensaje("Este teléfono ya existe en el sistema, por favor escoja otro e intente de nuevo", _M_ERROR);
                $flag_registroExitoso = false;
            }
            $datos['telefono1'] = $_POST['registrar_campo_telefono'];
        } else {
            echo mensaje("Por favor ingrese su número telefonico e intente de nuevo", _M_ERROR);
            $flag_registroExitoso = false;
        }
        if ($flag_registroExitoso) {
            $datos["estado"] = _N_esp_activacion;
            $datos["nivel"] = _N_vendedor;
            $datos["ultimo_acceso"] = mysql_datetime();
            $datos["registro"] = mysql_datetime();
            db_agregar_datos("ventas_usuarios", $datos);
            echo "¡Su solicitud de registro ha sido procesada!<br />Sin embargo su cuenta estará activa cuando un Administrador apruebe su nueva cuenta.<br />Un mensaje será enviado su correo electrónico en el que se le confirmará que su cuenta esta activa.<br />Este proceso puede tardar entre 10 minutos y 2 horas en llevarse a cabo, gracias por su espera.<br />";
            echo "Le invitamos a seguir navegando en nuestro sitio mientras su cuenta es activada. " . ui_href("registrar_continuar", "./", "Continuar") . "<br />";
            email($datos['email'], "Su registro en " . PROY_NOMBRE . " ha sido exitoso", "Su registro de usuario  en " . PROY_NOMBRE . " ha sido exitoso, sin embargo los Administradores deberán activar manualmente su cuenta para que Ud. puede acceder.<br />\nSe le notificará por esta vía cuando la activación sea realizada.<br />\n\n<hr><br />\n<h1>Datos registrados</h1><br />\nCorreo electrónico: <strong>" . $datos['email'] . "</strong><br />\nUsuario: <strong>" . $datos['usuario'] . "</strong><br />\n<br /><br />Gracias por su amable espera.<br />" . PROY_NOMBRE . "<br />" . PROY_URL);
            email_x_nivel(_N_administrador, "Aprobación de nuevo usuario pendiente: " . $_POST['registrar_campo_usuario'] . ' ~ ' . crc32(microtime()), 'Estimado administrador de ' . PROY_NOMBRE . ', hay un nuevo usuario esperando aprobación.<br />Puede realizar la aprobación ingresando en la siguiente dirección: <a href="' . PROY_URL . 'admin_usuarios_activacion">Administración: activación de usuarios</a>');
            return;
        }
    }
    echo "¡Bienvenido!, ¿deseas formar parte del comercio electrónico?<br />Si ya posees una cuenta puedes " . ui_href("registrar_iniciar_sesion", "./iniciar", "iniciar sesión") . ".<br />Todos los campos son requeridos<br />";
    echo "<form action=\"registrar\" method=\"POST\">";
    echo "<table>";
    echo ui_tr(ui_td("<acronym title='Ud. ingresará a nuestro sistema usando esta dirección de correo electronico. Asegurese que la dirección exista, puesto que será necesaria en caso de que desee recuperar su contraseña.'>Correo electronico (e-mail)</acronym>") . ui_td(ui_input("registrar_campo_email", _F_form_cache("registrar_campo_email"))) . ui_td('<span id="registrar_respuesta_email"></span>'));
    echo ui_tr(ui_td("<acronym title='Este es el nombre que se le mostrará a los usuarios del sitio. Puede utilizar su código de vendedor o el apodo que Ud. prefiera'>Nombre de Usuario</acronym>") . ui_td(ui_input("registrar_campo_usuario", _F_form_cache("registrar_campo_usuario"))) . ui_td('<span id="registrar_respuesta_usuario"></span>'));
    echo ui_tr(ui_td("<acronym title='Le permitirá validar su identidad en nuestro sistema. Deberá ser mayor a 6 carácteres'>Contraseña</acronym>") . ui_td(ui_input("registrar_campo_clave", "", "password")));
    echo ui_tr(ui_td("<acronym title='Por favor ingrese nuevamente su contraseña (verificación)'>Contraseña (verificación)</acronym>") . ui_td(ui_input("registrar_campo_clave_2", "", "password")));
    echo ui_tr(ui_td("<acronym title='Número de contacto principal. Le llamaremos a este número si es necesario esclarecer datos sobre una venta'>Teléfono de contacto</acronym>") . ui_td(ui_input("registrar_campo_telefono", _F_form_cache("registrar_campo_telefono"))));
    echo "</table>";
    echo ui_input("registrar_proceder", "Proceder", "submit") . "<br />";
    echo "</form>";
    echo "<strong>Su correo electrónico y teléfono no serán revelados al público ni vendidos a terceras personas.</strong>";
    echo JS_onload('
$("#registrar_campo_email").blur(function(){$("#registrar_respuesta_email").load("./registro_correo_existe:"+$("#registrar_campo_email").val());});
$("#registrar_campo_usuario").blur(function(){$("#registrar_respuesta_usuario").load("./registro_usuario_existe:"+$("#registrar_campo_usuario").val());});
');
}
Exemplo n.º 25
0
function DATA_clientes($sub)
{
    switch ($sub) {
        case 'registrar':
            if (isset($_POST['cmdEnviar'])) {
                unset($_POST['cmdEnviar']);
                // Chequear validez
                if (_F_form_cache('usuario') && strlen(_F_form_cache('clave')) > 5 && _F_form_cache('nombre') && _F_form_cache('email')) {
                    $_POST['usuario'] = strtolower($_POST['usuario']);
                    $_POST['clave'] = md5($_POST['clave']);
                    $_POST['nivel'] = _N_usuario;
                    $_POST['contraclave'] = '';
                    $_POST['avatar'] = '';
                    $_POST['u_acceso'] = time();
                    if (_F_usuario_agregar($_POST)) {
                        echo JS_growl("Usuario exitosamente agregado.");
                        unset($_POST);
                    } else {
                        echo JS_growl("Usuario NO pudo ser registrado, ya existia.");
                    }
                } else {
                    echo JS_growl("Faltan datos o contraseña demasiado corta (6 caracteres minimo).");
                }
            }
            echo "<div style='position:absolute;left:200px;width:70%'>";
            echo "<form action='./?accion=clientes&sub=registrar' method='POST'>";
            echo "<table class='limpia'>";
            echo ui_tr(ui_td("Nombre del usuario", "", "font-weight:bold") . ui_td(ui_input("usuario", _F_form_cache('usuario'))));
            echo ui_tr(ui_td("Clave del usuario", "", "font-weight:bold") . ui_td(ui_input("clave", _F_form_cache('clave'), "password")));
            echo ui_tr(ui_td("Nombre del cliente", "", "font-weight:bold") . ui_td(ui_input("nombre", _F_form_cache('nombre'))));
            echo ui_tr(ui_td("email", "", "font-weight:bold") . ui_td(ui_input("email", _F_form_cache('email'))));
            echo ui_tr(ui_td("Telefono 1") . ui_td(ui_input("telefono1", _F_form_cache('telefono1'))));
            echo ui_tr(ui_td("Telefono 2") . ui_td(ui_input("telefono2", _F_form_cache('telefono2'))));
            echo ui_tr(ui_td("Telefono 3") . ui_td(ui_input("telefono3", _F_form_cache('telefono3'))));
            //echo ui_tr(ui_td("").ui_td(ui_input(""))); //Avatar
            echo ui_tr(ui_td("Notas") . ui_td(ui_textarea("notas", _F_form_cache('notas'))));
            echo "</table>";
            echo ui_input("cmdEnviar", "Registrar", "submit");
            echo ui_input("cmdCancelar", "Cancelar", "button");
            echo "</form>";
            echo "<br /><br />\nNotas:\n<ol>\n<li>El nombre de usuario será convertido a minúsculas</li>\n<li>La contraseña debe ser mayor a 6 letras</li>\n<li>Los campos en negrita son obligatorios</li>\n</ol>";
            echo "</div>";
            echo JS_onload('$("#cmdCancelar").click(function(){window.location="./?accion=clientes"});');
            break;
        case "editar":
        case "materiales":
            $id_usuario = mysql_real_escape_string($_GET['usuario']);
            $c = "SELECT id_material, material, coalesce((SELECT costo FROM ahm_materiales_indv AS b WHERE id_usuario='{$id_usuario}' and a.id_material = b.id_material),0) AS costo, (SELECT activo FROM ahm_materiales_indv AS b WHERE id_usuario='{$id_usuario}' and a.id_material = b.id_material) as activo FROM ahm_materiales AS a;";
            $resultado = db_consultar($c);
            $n_filas = mysql_num_rows($resultado);
            echo "<div style='position:relative;width:90%;margin-left:auto;margin-right:auto'>";
            echo "<form action='./?accion=clientes' method='POST'>";
            echo "<table style='width:100%' summary='Materiales disponibles'>";
            echo "<thead>";
            echo ui_tr(ui_th("Código") . ui_th("Material") . ui_th("Coto (\$)") . ui_th("Activo"));
            echo "</thead>";
            echo "<tfoot>";
            echo "<tr><td colspan='8'>Se encontraron en total <span style='color:#00F'>{$n_filas}</span> materiales disponibles. " . ui_input("cmdGrabarMateriales", "Grabar lista de materiales", "submit") . ui_input("cmdCancelar", "Cancelar", "button", "", "", 'onclick="window.location=\'./?accion=clientes\'"') . "</td></tr>";
            echo "</tfoot>";
            echo "<tbody>";
            for ($i = 0; $i < $n_filas; $i++) {
                $id_material = mysql_result($resultado, $i, "id_material");
                $material = mysql_result($resultado, $i, "material");
                $costo = ui_input("txt_" . mysql_result($resultado, $i, "id_material"), mysql_result($resultado, $i, "costo"));
                $activo = ui_input("chk_" . mysql_result($resultado, $i, "id_material"), "1", "checkbox", "", "", mysql_result($resultado, $i, "activo") ? 'checked="checked"' : '');
                echo ui_tr(ui_td($id_material) . ui_td($material) . ui_td($costo) . ui_td($activo));
            }
            echo "</tbody>";
            echo "</table>";
            echo ui_input('id_usuario', $_GET['usuario'], 'hidden');
            echo "</form>";
            echo "</div>";
            break;
        default:
            echo "<div style='position:relative;width:90%;margin-left:auto;margin-right:auto'>";
            //**************************************************************************
            // ¿Será que necesitamos registrar los materiales?
            //__________________________________________________________________________
            if (isset($_POST['cmdGrabarMateriales']) && isset($_POST['id_usuario'])) {
                // echo print_ar($_POST);
                // Primero nos deshacemos de los materiales a su cuenta.
                $id_usuario = mysql_real_escape_string($_POST['id_usuario']);
                $c = "DELETE FROM ahm_materiales_indv WHERE id_usuario='{$id_usuario}'";
                db_consultar($c);
                foreach ($_POST as $key => $value) {
                    if (ereg("^txt_([0-9]+)\$", $key, $reg_)) {
                        $activo = isset($_POST['chk_' . $reg_[1]]) ? 1 : 0;
                        db_agregar_datos("ahm_materiales_indv", array("id_usuario" => $id_usuario, "id_material" => $reg_[1], "costo" => $_POST['txt_' . $reg_[1]], "activo" => $activo));
                    }
                }
                echo "<b>Los materiales fueron registrados.</b><br /><br />";
            }
            //**************************************************************************
            $c = "SELECT id_usuario, usuario, nombre, email, u_acceso FROM ahm_usuarios";
            $resultado = db_consultar($c);
            $n_filas = mysql_num_rows($resultado);
            echo "<table style='width:100%' summary='Lista de clientes'>";
            echo "<thead>";
            echo ui_tr(ui_th("N°") . ui_th("Usuario") . ui_th("Nombre") . ui_th("email") . ui_th("Acceso") . ui_th("Acción"));
            echo "</thead>";
            echo "<tfoot>";
            echo "<tr><td colspan='8'>Se encontraron en total <span style='color:#00F'>{$n_filas}</span> usuarios/clientes registrados. <a href='./?accion=clientes&amp;sub=registrar'>Clic aquí para registrar uno nuevo</a></td></tr>";
            echo "</tfoot>";
            echo "<tbody>";
            for ($i = 0; $i < $n_filas; $i++) {
                $id_usuario = mysql_result($resultado, $i, "id_usuario");
                $usuario = mysql_result($resultado, $i, "usuario");
                $nombre = mysql_result($resultado, $i, "nombre");
                $email = mysql_result($resultado, $i, "email");
                $u_acceso = date("h:ia @ d/m/Y", mysql_result($resultado, $i, "u_acceso"));
                $Accion = "[<a href='./?accion=clientes&amp;sub=editar&amp;usuario={$id_usuario}'>Modificar</a>][<a href='./?accion=clientes&amp;sub=materiales&amp;usuario={$id_usuario}'>Materiales</a>]";
                echo ui_tr(ui_td($id_usuario) . ui_td($usuario) . ui_td($nombre) . ui_td($email) . ui_td($u_acceso) . ui_td($Accion));
            }
            echo "</tbody>";
            echo "</table>";
            echo "</div>";
    }
}
Exemplo n.º 26
0
function empleado_buscar($op)
{
    $arrErrores = array();
    $arrAdvertencias = array();
    // Revisamos las opciones
    $funcion = isset($op['funcion']) ? $op['funcion'] : 'empleado_buscar__vista_estandar';
    $arrPARAMS = array_intersect_key($op, array('ID_empresa' => '', 'DUI' => '', 'NIT' => '', 'nombres' => '', 'apellidos' => ''));
    $WHERE = $CAMPOS = $PARAMS = $ORDER_BY = $GROUP_BY = '';
    if (count($arrPARAMS)) {
        foreach ($arrPARAMS as $campo => $valor) {
            if ($valor) {
                $valor = db_codex($valor);
                $PARAMS .= " AND empleado.{$campo}=\"{$valor}\"";
            }
        }
    }
    if (!empty($op['nombre_completo'])) {
        $op['nombre_completo'] = db_codex($op['nombre_completo']);
        $PARAMS .= ' AND MATCH (nombres,apellidos) AGAINST("' . $op['nombre_completo'] . '" IN BOOLEAN MODE)';
        if (isset($op['limite']) && $op['limite'] == 'solo_activos_si_nombre') {
            $op['WHERE'] = 'AND (SELECT COUNT(*) FROM cese WHERE cese.ID_empleado=empleado.ID_empleado AND cese.fecha_cese > ALL(SELECT fecha_inicio FROM historial WHERE historial.ID_empleado=empleado.ID_empleado)) = 0';
        }
    }
    if (isset($op['limite']) && $op['limite'] == 'solo_activos') {
        $op['WHERE'] = 'AND (SELECT COUNT(*) FROM cese WHERE cese.ID_empleado=empleado.ID_empleado AND cese.fecha_cese > ALL(SELECT fecha_inicio FROM historial WHERE historial.ID_empleado=empleado.ID_empleado)) = 0';
    }
    if (isset($op['limite']) && $op['limite'] == 'solo_inactivos') {
        $op['WHERE'] = 'AND (SELECT COUNT(*) FROM cese WHERE cese.ID_empleado=empleado.ID_empleado AND cese.fecha_cese > ALL(SELECT fecha_inicio FROM historial WHERE historial.ID_empleado=empleado.ID_empleado)) > 0';
    }
    if (isset($op['estricto'])) {
        if (empty($arrPARAMS['DUI']) || empty($arrPARAMS['NIT']) || !preg_match('/\\d{8}-\\d/', $arrPARAMS['DUI']) || !preg_match('/\\d{4}-\\d{6}-\\d{3}-\\d/', $arrPARAMS['NIT'])) {
            $arrErrores[] = 'DUI o NIT faltantes o inválidos';
            $PARAMS = '= 0';
        }
    }
    if (!empty($op['campos'])) {
        $CAMPOS = ',' . $op['campos'];
    }
    if (!empty($op['WHERE'])) {
        $WHERE = ' ' . $op['WHERE'];
    }
    if (!empty($op['ORDER_BY'])) {
        $ORDER_BY = ' ORDER BY ' . $op['ORDER_BY'];
    }
    if (!empty($op['GROUP_BY'])) {
        $GROUP_BY = ' GROUP BY ' . $op['GROUP_BY'];
    }
    $c = sprintf('SELECT %s %s FROM `empleado` LEFT JOIN `empresa` USING(ID_empresa) LEFT JOIN `usuario` USING(`ID_usuario`) LEFT JOIN `cese` USING(ID_empleado) WHERE 1 %s %s %s %s', SQL_CAMPOS_EMPLEADO, $CAMPOS, $WHERE, $PARAMS, $ORDER_BY, $GROUP_BY);
    $r = db_consultar($c);
    // Grabar el resultado de la consulta solo si no es un admin o admin disfrazado de empresa
    if (usuario_cache('nivel') != NIVEL_administrador && !isset($_SESSION['cache_datos_usuario']['su'])) {
        unset($datos);
        $datos['ID_empresa'] = usuario_cache('ID_empresa');
        $datos['ID_usuario'] = usuario_cache('ID_usuario');
        $datos['DUI'] = @$op['DUI'];
        $datos['NIT'] = @$op['NIT'];
        $datos['contenido'] = @$op['nombre_completo'];
        $datos['limite'] = @$op['limite'];
        $datos['query'] = $c;
        $datos['modalidad'] = @$op['modo'];
        $datos['tiempo'] = mysql_datetime();
        db_agregar_datos('consulta', $datos);
    }
    if (!isset($op['no_resultados_no_error']) && !mysql_num_rows($r)) {
        $arrErrores[] = 'No se encontraron registros de empleados <strong>activos</strong> que coincidan con su criterio de búsqueda';
    }
    return call_user_func($funcion, $r, $arrErrores, $arrAdvertencias, $op);
}