Exemple #1
0
function Publicacion_Aprobar($id_publicacion)
{
    $id_usuario = db_obtener('ventas_publicaciones', 'id_usuario', "id_publicacion={$id_publicacion}");
    $DiasDeVigencia = db_obtener('ventas_usuarios', 'nDiasVigencia', "id_usuario={$id_usuario}");
    $c = "UPDATE ventas_publicaciones SET tipo=" . _A_aceptado . ", fecha_fin=date_add(CURDATE(), INTERVAL {$DiasDeVigencia} DAY) WHERE id_publicacion='{$id_publicacion}' AND id_usuario='{$id_usuario}' LIMIT 1";
    $r = db_consultar($c);
    $db_afectados_buffer = db_afectados();
    if ($db_afectados_buffer > 0) {
        require_once 'PHP/anunciadores.php';
        $c = "SELECT id_publicacion, titulo FROM ventas_publicaciones WHERE id_publicacion={$id_publicacion}";
        $r = db_consultar($c);
        $f = mysql_fetch_assoc($r);
        tweet('Nueva publicacion: ' . $f['titulo'] . ' | http://www.yomachete.com/clasificados-en-el-salvador-vendo-' . $f['id_publicacion'] . "_" . SEO($f['titulo']));
    }
    return $db_afectados_buffer;
}
Exemple #2
0
 if (isset($_POST['enviar'])) {
     if (isset($_POST['aplicacion_notas'])) {
         db_actualizar_datos(db_prefijo . 'prospectos_aplicados', array('notas' => $_POST['aplicacion_notas']), 'ID_aplicacion="' . db_codex($_POST['ID_aplicacion']) . '" AND ID_prospecto="' . db_codex($_POST['ID_prospecto']) . '"');
     }
     enviar_prospecto($_POST['ID_aplicacion'], $_POST['ID_prospecto']);
 }
 if (isset($_POST['omitir_envio'])) {
     db_actualizar_datos(db_prefijo . 'prospectos_aplicados', array('enviado' => mysql_datetime()), 'ID_aplicacion="' . $_POST['ID_aplicacion'] . '"');
 }
 if (isset($_POST['eliminar'])) {
     $c = 'DELETE FROM ' . db_prefijo . 'prospectos_aplicados WHERE ID_aplicacion="' . db_codex($_POST['ID_aplicacion']) . '" AND ID_prospecto="' . db_codex($_POST['ID_prospecto']) . '"';
     db_consultar($c);
 }
 if (isset($_POST['asignar'])) {
     // FIXME: atomizar
     $test = db_obtener(db_prefijo . 'prospectos_aplicados', 'ID_agente_us', 'ID_aplicacion="' . db_codex($_POST['ID_aplicacion']) . '" AND ID_prospecto="' . db_codex($_POST['ID_prospecto']) . '"');
     if ($test) {
         echo jQuery('alert("Lo siento, alguien mas tomó esta aplicación antes que tu.");');
     } else {
         db_actualizar_datos(db_prefijo . 'prospectos_aplicados', array('ID_agente_us' => _F_usuario_cache('ID_usuario'), 'fecha_aceptada' => mysql_datetime()), 'ID_aplicacion="' . db_codex($_POST['ID_aplicacion']) . '" AND ID_prospecto="' . db_codex($_POST['ID_prospecto']) . '"');
         $nota = 'El agente le dará seguimiento a este prospecto';
         aplicacion_ingresar_nota($_POST['ID_aplicacion'], $nota, _T_historial_sistema);
         echo jQuery('alert("Ud. llevará el caso de la aplicación con ID #' . $_POST['ID_aplicacion'] . '.");');
     }
 }
 if (isset($_POST['aplicacion_resignada'])) {
     db_actualizar_datos(db_prefijo . 'prospectos_aplicados', array('ID_agente_us' => 0, 'fecha_aceptada' => mysql_datetime()), 'ID_aplicacion="' . db_codex($_POST['ID_aplicacion']) . '" AND ID_prospecto="' . db_codex($_POST['ID_prospecto']) . '"');
     $nota = 'El agente US <b>' . _F_usuario_cache('nombre') . '</b> se ha resignado con esta aplicación.';
     aplicacion_ingresar_nota($_POST['ID_aplicacion'], $nota, _T_historial_sistema);
 }
 if (isset($_POST['aplicacion_valida'])) {
Exemple #3
0
<?php

if (!isset($_SESSION['cache_datos_usuario']['su'])) {
    protegerme();
}
if (isset($_POST['convertir'])) {
    if (usuario_cache('nivel') == NIVEL_administrador) {
        $ID_empresa = $_SESSION['cache_datos_usuario']['ID_empresa'];
    }
    if (isset($_SESSION['cache_datos_usuario']['su'])) {
        $ID_empresa = $_SESSION['cache_datos_usuario']['su'];
    }
    $ID_usuario = db_obtener('usuario', 'ID_usuario', 'ID_empresa=' . $_POST['ID_empresa'], 'ORDER BY RAND()');
    $_SESSION['cache_datos_usuario'] = _F_usuario_datos($ID_usuario, 'ID_usuario');
    $_SESSION['cache_datos_usuario']['nivel'] = NIVEL_empresa;
    // Por si cae en un no nivel empresa
    if (isset($ID_empresa)) {
        $_SESSION['cache_datos_usuario']['su'] = $ID_empresa;
    }
    header("Location: " . PROY_URL);
    exit;
}
if (isset($_POST['administrar'])) {
    $_SESSION['cache_datos_usuario']['ID_empresa'] = $_SESSION['cache_datos_usuario']['su'];
    $_SESSION['cache_datos_usuario']['nivel'] = NIVEL_administrador;
    unset($_SESSION['cache_datos_usuario']['su']);
    header("Location: " . PROY_URL);
}
?>
<h1>Ver sistema como empresa</h1>
Esta utilidad le permite cambiar temporalmente su nivel a empresa y su ID_empresa a la que Ud. desee.
Exemple #4
0
function SSL_MOSTRAR_FACTURA($id_factura)
{
    $transaccion = db_obtener(db_prefijo . 'SSL_compra_contenedor', 'transaccion', 'codigo_compra="' . $id_factura . '"');
    list($factura, $f) = SSL_COMPRA_FACTURA($transaccion);
    // Correo para el staff
    $to = PROY_MAIL_BROADCAST_NOMBRE . PROY_MAIL_BROADCAST;
    $subject = 'Compra en ' . PROY_NOMBRE_CORTO . ' - ' . dechex(crc32(microtime()));
    $message = "<hr />\n" . $factura . "<hr />\n";
    $headers = 'Reply-To: ' . (empty($f['tarjeta_de']) ? @$f['nombre_t_credito'] : @$f['tarjeta_de']) . ' <' . (empty($f['correo_contacto']) ? PROY_MAIL_REPLYTO : @$f['correo_contacto']) . '>' . "\r\n";
    @correo($to, $subject, $message, $headers);
    // Correo para el cliente
    if (!empty($f['correo_contacto'])) {
        $to = sprintf('"%s" <%s>', empty($f['tarjeta_de']) ? @$f['nombre_t_credito'] : @$f['tarjeta_de'], @$f['correo_contacto']);
        $subject = 'Su compra en ' . PROY_NOMBRE_CORTO . ' - ' . dechex(crc32(microtime()));
        $message = "<p>Gracias por su compra en " . PROY_NOMBRE_CORTO . ", su pedido ha sido recibido en nuestro sistema.</p><p>Por favor corrobore que todos los datos presentandos a continuación sean correctos.</p><hr />\n" . $factura . "<hr />\n";
        $headers = 'Reply-To: ' . PROY_MAIL_REPLYTO_NOMBRE . PROY_MAIL_REPLYTO . "\r\n";
        @correo($to, $subject, $message, $headers);
    }
    echo '<h1>Transaccion completada</h1>';
    echo '<p>¡Gracias por su compra!, el equipo de Flor360.com comenzara a elaborar su pedido con las flores mas frescas disponibles en este preciso momento.</p>';
    echo '<hr />';
    echo '<h2>Factura</h2>';
    echo $factura;
    echo '<hr />';
    echo sprintf('<p>Puede consultar el estado de su orden desde la siguiente dirección Web:<br /> <input type="text" value="%s" width="100%%" /></p>', PROY_URL . 'informacion?tipo=estado&pin=' . $transaccion);
    echo sprintf('<p>Su copia del recibo virtual se encuentra en la siguiente dirección web<br /> <input type="text" value="%s" width="100%%" /></p>', PROY_URL . 'informacion?tipo=factura&pin=' . $transaccion);
    echo '<p>Por favor guarde las direcciones anteriores para poder consultarlas en un futuro o si desea cancelar su orden</p>';
    echo '<p class="medio-oculto"><strong>Nota:</strong> es posible que lo contactemos telefonicamente para aclarar la transaccion si algun dato es invalido</p>';
    return;
}
    exit;
}
if (isset($_POST['enviar']) && $editable) {
    //Validemos
    $valido = true;
    if (!isset($_POST['paso1'])) {
        echo '<p class="error">Error: debe establecer el motivo del cese laboral del empleado.</p>';
        $valido = false;
    } elseif (!in_array($_POST['paso1'], array('Renuncia', 'Despido', 'Recorte de Personal'))) {
        echo '<p class="error">Error: intento de violacion al sistema #1</p>';
        $valido = false;
    } elseif ($_POST['paso1'] == 'Despido' && empty($_POST['paso4'])) {
        $_POST['paso4'] = 'No especificado.';
    } elseif ($_POST['paso1'] == 'Despido') {
        // Si era un numero, veamos que exista.
        $articulo_codigo_laboral = db_obtener('codigo_laboral_despido', 'contenido', 'ID_articulo=' . db_codex($_POST['paso4']));
        if (!$articulo_codigo_laboral) {
            echo '<p class="error">Error: intento de violacion al sistema #4.2</p>';
            $valido = false;
        }
    }
    if (!isset($_POST['paso2'])) {
        echo '<p class="error">Error: debe establecer su valoración del empleado.</p>';
        $valido = false;
    } elseif (!in_array($_POST['paso2'], array('volveria a contratarlo', 'no volveria a contratarlo'))) {
        echo '<p class="error">Error: intento de violacion al sistema #2</p>';
        $valido = false;
    }
    if (!isset($_POST['paso3'])) {
        echo '<p class="error">Error: debe establecer la fecha del cese laboral del empleado.</p>';
        $valido = false;
Exemple #6
0
function PROCESAR_VARIEDADES()
{
    global $db_link, $contenedor;
    if (isset($_POST['btn_clonar_foto_variedad'])) {
        $foto = db_obtener(db_prefijo . 'producto_variedad', 'foto', 'codigo_variedad=' . $_POST['codigo_variedad']);
        $c = 'UPDATE flores_producto_variedad SET foto="' . $foto . '" WHERE codigo_producto="' . $contenedor['codigo_producto'] . '" AND codigo_variedad <> "' . $_POST['codigo_variedad'] . '"';
        db_consultar($c);
        return;
    }
    // Determinar si necesitamos mostrar PME para agregar una variedad
    if (isset($_POST['btn_agregar_variedad']) || isset($_POST['btn_editar_variedad']) || isset($_POST['btn_eliminar_variedad']) || isset($_POST['referencia']) && $_POST['referencia'] == 'variedades') {
        $_POST['con_referencia'] = true;
        $_POST['PME_sys_sfn[0]'] = '0';
        $_POST['PME_sys_fl'] = '0';
        $_POST['PME_sys_qfn'] = '';
        $_POST['PME_sys_fm'] = '0';
        if (isset($_POST['btn_agregar_variedad'])) {
            $_POST['PME_sys_rec'] = '1';
            $_POST['PME_sys_operation'] = 'Agregar';
            $_POST['f360_contenedor'] = $contenedor['codigo_producto'];
        }
        if (isset($_POST['codigo_variedad'])) {
            $_POST['PME_sys_rec'] = $_POST['codigo_variedad'];
            if (isset($_POST['btn_editar_variedad'])) {
                $_POST['PME_sys_operation'] = 'Cambiar';
            } elseif (isset($_POST['btn_eliminar_variedad'])) {
                $_POST['PME_sys_operation'] = 'Suprimir';
            }
        }
        if (isset($_POST['PME_sys_saveadd']) || isset($_POST['PME_sys_savechange']) || isset($_POST['PME_sys_savedelete'])) {
            ob_start();
        }
        require 'PHP/gestor_variedades.php';
        if (isset($_POST['PME_sys_saveadd']) || isset($_POST['PME_sys_savechange']) || isset($_POST['PME_sys_savedelete'])) {
            ob_end_clean();
            unset($_POST);
        }
    }
}
Exemple #7
0
// Esta bien el Nº de DUI?
if (!preg_match('/\\d{8}-\\d/', $_POST['DUI'])) {
    $comprobacion_fallos[] = 'Numero de DUI invalido, asegurese de ingresar los nueve digitos, incluyendo el guion. Ej. <strong>12345678-9</strong>';
}
// Esta bien el Nº de NIT?
if (!preg_match('/\\d{4}-\\d{6}-\\d{3}-\\d/', $_POST['NIT'])) {
    $comprobacion_fallos[] = 'Numero de NIT invalido, asegurese de ingresar los catorce digitos, incluyendo guiones. Ej. <strong>1234-567890-1234-4</strong>';
}
$op['estricto'] = 1;
$op['modo'] = 'no_descontar_creditos';
$op['funcion'] = 'empleado_buscar__vista_antecedente';
$op['DUI'] = $_POST['DUI'];
$op['NIT'] = $_POST['NIT'];
$op['ID_empresa'] = $_POST['ID_empresa'];
$op['arrRango'] = array('fecha_inicio' => $_POST['fi'], 'fecha_final' => $_POST['ff']);
$resultados_busqueda = empleado_buscar($op);
$enlaces_rapidos = '<p>Enlaces rápidos: <a href="' . PROY_URL . '~empleado" alt="Empleados de su empresa">búsqueda de mis empleados</a>, <a href="' . PROY_URL . '~empleado?agregar" alt="Agregar empleado a su empresa">agregar nuevo empleado</a> o <a href="' . PROY_URL . '" title="Pagina de inicio de BCA">pagina de inicio de BCA</a></p>';
$arrRango = array('fecha_inicio' => $_POST['fi'], 'fecha_final' => $_POST['ff']);
ob_start();
require_once "-empleado.amigable.cese.reporte.php";
$cese_reporte = ob_get_clean();
$html = $resultados_busqueda . $cese_reporte;
$titulo = 'Antecedente laboral [periodo del ' . strftime('%e de %B de %G', $_POST['fi']) . ' al ' . strftime('%e de %B de %G', $_POST['ff']) . '] - DUI [' . $_POST['DUI'] . '] / NIT [' . $_POST['NIT'] . ']';
$razon_social = db_obtener(db_prefijo . 'empresa', 'razon_social', 'ID_empresa = ' . $_POST['ID_empresa']);
$HEAD_titulo = "BCA - {$titulo}";
echo $html;
if (!isset($_POST['impresion'])) {
    echo '<form autocomplete="off" action ="' . PROY_URL_ACTUAL_DINAMICA . '" method="post"><input type="submit" name="impresion" value="Vista para impresión" />' . ui_form_old_post_to_hidden() . '</form>';
} else {
    $GLOBAL_solo_body = true;
}
Exemple #8
0
$CAMPOS[] = 'pv.foto AS "variedad_foto"';
$CAMPOS[] = 'pv.receta AS "variedad_receta"';
$CAMPOS[] = 'IF(pc.titulo="","sin titulo",pc.titulo) AS "contenedor_titulo"';
$CAMPOS[] = 'pc.descripcion AS "contenedor_descripcion"';
$CAMPOS[] = 'pc.codigo_producto';
$CAMPOS[] = 'cat.codigo_categoria';
$CAMPOS[] = 'cat.titulo AS "titulo_categoria"';
// Obtenemos el modo de operacion
// Superior = mostrar todos los tipo/categoria/especial que pertenezcan al menu
// Filtro = ejecutar el query con where = filtro
// Normal (por defecto) = mostrar los productos dentro del codigo_categoria seleccionado
if (isset($_GET['modo']) && $_GET['modo'] == 'superior') {
    $variante = '';
    $WHERE = 'WHERE cat.codigo_menu=' . db_codex($_GET['codigo_categoria']);
    // Para titulo y refinado
    $titulo = db_obtener(db_prefijo . 'menu', 'titulo', 'codigo_menu="' . db_codex($_GET['codigo_categoria']) . '"');
    $HEAD_titulo = PROY_NOMBRE . ' - las mas frescas flores y plantas para toda ocasión! - ' . $titulo;
    $HEAD_descripcion = "Flor360 la primera floristería en línea de El Salvador te ofrece una gran variedad de {$titulo} frescas para eventos, bodas, dia de la madre, funerales y todo evento social.";
} elseif (isset($_GET['modo']) && $_GET['modo'] == 'filtro') {
    $c = sprintf('SELECT nombre_filtro, filtro_sql, descripcion_filtro FROM %s WHERE nombre_filtro="%s"', db_prefijo . 'filtros', db_codex($_GET['codigo_categoria']));
    $FILTRO = mysql_fetch_assoc(db_consultar($c));
    if (empty($FILTRO['filtro_sql'])) {
        echo 'Filtro inválido';
        return;
    }
    $WHERE = 'WHERE ' . $FILTRO['filtro_sql'];
    $HEAD_titulo = PROY_NOMBRE . ' - exclusividad en flores';
    $HEAD_descripcion = 'Flor360 - ' . $FILTRO['descripcion_filtro'];
} else {
    $variante = 'codigo_categoria=' . db_codex($_GET['codigo_categoria']);
    $WHERE = sprintf('WHERE %s', $variante);
Exemple #9
0
function empleado_buscar__vista_consulta_global(&$r, &$arrErrores, &$arrAdvertencias, &$op)
{
    global $arrHEAD;
    // Flag 'no_resultados_no_error' en uso, no se toma la falta de resultados como error.
    $tabla = '';
    $buffer = '<h1>Resultado de consulta global de empleado</h1>';
    if (count($arrErrores)) {
        return '<p class="error">' . join('<p><p class="error">', $arrErrores) . '</p>';
    }
    if (!mysql_numrows($r)) {
        return 'No se encontro ningún empleado registrado con ese DUI y NIT.';
    }
    $arrHEAD[] = JS_onload('
    $("#mostrar-graficos-cargos-laborales-empresa").click(function() {$("#graficos-cargos-laborales-empresa").toggle();});
    $("#mostrar-faltas-laborales").click(function() {$("#graficos-faltas-laborales").toggle();});
    ');
    /*****************************************/
    $tabla .= '<h2>Gráfico de antecedente laboral</h2>';
    $arrBuffer = cargo_obtener_para(0, 0, $op['DUI'], $op['NIT'], 'cargo_obtener_para__vista_lista', 'ASC');
    $tabla .= ui_timeline($arrBuffer);
    $tabla .= '<h2><input type="button" class="fs6" id="mostrar-graficos-cargos-laborales-empresa" value="Mostrar/Ocultar" /> gráfico de cargos laborales por empresa</h2>';
    $tabla .= '<div style="display:none" id="graficos-cargos-laborales-empresa">';
    $arrBuffer2 = cargo_obtener_para(0, 0, $op['DUI'], $op['NIT'], 'cargo_obtener_para__vista_lista2', 'ASC');
    $tabla .= ui_timeline($arrBuffer2, array('grupo_mayor' => true));
    $tabla .= '</div>';
    /*****************************************/
    reset($arrBuffer);
    $fecha_min = time();
    $fecha_max = 0;
    while ($dato = each($arrBuffer)) {
        $dato = $dato[1];
        $dato_siguiente = current($arrBuffer);
        $fecha_minima = strtotime($dato['fecha_inicio']);
        $fecha_maxima = strtotime($dato['fecha_fin']);
        $fecha_min = min($fecha_min, $fecha_minima);
        $fecha_max = max($fecha_max, $fecha_maxima);
        if ($dato['razon_social'] != $dato_siguiente['razon_social'] || !$dato_siguiente) {
            if (!$dato['flag_cese'] && date('Ymd', $fecha_max) == date('Ymd')) {
                $fecha_fin = 'a la fecha';
            } else {
                $fecha_fin = $dato['fecha_fin_formato'];
            }
            $antecedente = '<form target="_blank" action="' . PROY_URL . '~antecedente" method="post">' . ui_input('ID_empresa', $dato['ID_empresa'], 'hidden') . ui_input('DUI', $dato['DUI'], 'hidden') . ui_input('NIT', $dato['NIT'], 'hidden') . ui_input('fi', $fecha_min, 'hidden') . ui_input('ff', strtotime(date('Y-m-d', $fecha_max) . '+1 day'), 'hidden') . ui_input('', 'ver antecedente laboral', 'submit') . '</form>';
            $tabla .= '<hr class="hr-consulta" />';
            $tabla .= '<table class="t100 tfija">';
            $tabla .= '<tr><th>Empresa</th><th>Nombre registrado</th><th>Periodo laborado</th><th>Acciones</th></tr>';
            $tabla .= sprintf('<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>', '<acronym title="Contacto para referencia: ' . $dato['contacto_rrhh'] . ', tel.: ' . $dato['telefono_rrhh'] . '">' . $dato['razon_social'] . '</acronym>', $dato['apellidos'] . ', ' . $dato['nombres'], $dato['fecha_inicio_formato'] . ' - ' . $fecha_fin, $antecedente);
            $tabla .= '</table>';
            $estado = empleado_estado($dato['ID_empleado'], array('fecha_inicio' => strtotime($dato['fecha_inicio'] . '+1 day'), 'fecha_final' => strtotime($dato['fecha_fin'] . '+1 day')));
            if ($estado == 'recontratable') {
                $estado = 'El empleado no labora en esta empresa.<br />';
                $estado .= 'Segun el desempeño laboral observado (<strong>como parametro de evaluación del individuo</strong>), la empresa <strong>' . $dato['razon_social'] . '</strong> ' . db_obtener(db_prefijo . 'cese', 'calificacion', 'ID_empleado=' . $dato['ID_empleado'], 'ORDER BY fecha_cese DESC') . '.';
            } else {
                $estado = 'El empleado se encuentra laborando en esta empresa';
            }
            $tabla .= '<table class="t100 a-izq">';
            $tabla .= '<tr><td>Estado laboral actual: ' . $estado . '</td></tr>';
            //if (!empty($f['calificacion'])) $tabla .= '<tr><td>Calificación laboral: '.$f['calificacion'].'</td></tr>';
            //if (!empty($f['comentario_cese'])) $tabla .= '<tr><td>Comentario sobre el cese laboral: '.$f['cese_comentario'].'</td></tr>';
            $tabla .= '</table>';
            $fecha_min = time();
            $fecha_max = 0;
        }
    }
    $buffer .= $tabla;
    return $buffer;
}
Exemple #10
0
<?php

if (isset($view_mode)) {
    $ID_orden = db_obtener(db_prefijo . 'ordenes', 'ID_orden', 'ID_seguimiento="' . $_GET['track_id'] . '"');
    $_POST['PME_sys_sfn[0]'] = '0';
    $_POST['PME_sys_fl'] = '0';
    $_POST['PME_sys_qfn'] = '';
    $_POST['PME_sys_fm'] = '0';
    $_POST['PME_sys_rec'] = $ID_orden;
    $_POST['PME_sys_operation'] = 'View';
    $_POST['PME_sys_navfmdown'] = '0';
}
$opts['dbh'] = $db_link;
$opts['page_name'] = PROY_URL_ACTUAL;
$opts['tb'] = db_prefijo . 'ordenes';
// Name of field which is the unique key
$opts['key'] = 'ID_orden';
// Type of key field (int/real/string/date etc.)
$opts['key_type'] = 'int';
// Sorting field(s)
$opts['sort_field'] = array('ID_orden');
// Number of records to display on the screen
// Value of -1 lists all records in a table
$opts['inc'] = 15;
// Options you wish to give the users
// A - add,  C - change, P - copy, V - view, D - delete,
// F - filter, I - initial sort suppressed
$opts['options'] = 'ACPVDF';
// Number of lines to display on multiple selection filters
$opts['multiple'] = '4';
// Navigation style: B - buttons (default), T - text links, G - graphic links