File "sis_programas_nuevo.php"
Full path: /home/wwwitravel/public_html/cymchiletours.cl/sis_programas_nuevo.php
File
size: 10.45 KB B
MIME-type: text/x-php
Charset: utf-8
Download Open Edit Advanced Editor Back
<?php
//-----------------------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------------------
// brain : Cristian Fernandez O.
// e-mail : cristian.fernandez@factobyte.cl
//-----------------------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------------------
// requiere sesion : Si
session_start();
//-----------------------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------------------
// ruta a la raiz del sistema:
$ruta_raiz = "";
//-----------------------------------------------------------------------------------------------
//-----------------------------------------------------------------------------------------------
// asociacion de archivos externos a la pagina:
include("soul/inc_soul.php");
//***********************************************************************************************
//***********************************************************************************************
tagHead($ruta_raiz, "Nuevo programa");
tagBody();
//cabecera del sitio
generaCabeceraSistema($ruta_raiz);
if (!validaInicioSesion()){
//acceso no autorizado
redireccionaAccesoNoAutorizado($ruta_raiz);
}
elseif (!validaPrivilegiosAcceso("sis_programas_nuevo")){
//no tiene privilegios de acceso
redireccionaSinPrivilegiosAcceso($ruta_raiz);
}
else {
//banner de sistema
generaCabeceraSistemaBanner($ruta_raiz, 0, "ADMINISTRACIÓN");
?>
<div id="contenidos">
<div id="contenidos-content">
<h1>NUEVO PROGRAMA</h1>
<hr class="linea_titulo">
<br>
<?
if ((empty($_REQUEST["txt_nombre"])) || (!empty($_FILES["file_img"]["tmp_name"]))) {
//------------------------------------------
// se desplega formulario
//------------------------------------------
if (!empty($_REQUEST["codmensaje"])){
//mensaje de sistema
switch ($_REQUEST["codmensaje"]){
case 1:
//faltan datos requeridos
echo "<h6>¡ DEBE INGRESAR TODOS LOS DATOS REQUERIDOS !</h6>";
echo "<p class=\"contenidos-texto-centrado\">Inténtalo nuevamente</p>";
break;
case 2:
//error en cantidad de dias-noches
echo "<h6>¡ LA CANTIDAD DE NOCHES NO PUEDE SER SUPERIOR A LOS DÍAS !</h6>";
echo "<p class=\"contenidos-texto-centrado\">Inténtalo nuevamente</p>";
break;
}
echo "<br>";
}
?>
<h3>INGRESE LOS SIGUIENTES DATOS PARA CREAR UN NUEVO PROGRAMA</h3>
<p class="contenidos-texto-centrado">Dato (requerido) no es opcional</p>
<br>
<div id="contenidos-formulario">
<form id="form" method="post" enctype="multipart/form-data">
<h2>IMAGEN PRODUCTO</h2>
<?
$max_upload_file_size = substr(ini_get("post_max_size"), 0, strpos(strtoupper(ini_get("post_max_size")), "M"));
if (($max_upload_file_size + 0) > 0)
$max_upload_file_size = ", y máx. de ".$max_upload_file_size." Mbs. de peso";
else
$max_upload_file_size = "";
$img_tmp = "soul/imgs/progrs/default.jpg";
if (is_uploaded_file($_FILES["file_img"]["tmp_name"])){
//cargó imagen
if ($_FILES["file_img"]["type"] != "image/jpeg")
echo "<br><h6>¡ LA IMAGEN NO ES JPG !</h6>";
else {
$img_arr_medidas = getimagesize($_FILES["file_img"]["tmp_name"]);
$img_ancho = $img_arr_medidas[0];
$img_alto = $img_arr_medidas[1];
if (($img_ancho < 600) && ($img_alto < 300))
echo "<br><h6>¡ LA IMAGEN NO CUMPLE LAS MEDIDAS MÍNIMAS !</h6>";
else {
$img_tmp = "soul/imgs/progrs/".generaClavePrimaria()."-".mb_strtolower($_FILES["file_img"]["name"]);
move_uploaded_file($_FILES["file_img"]["tmp_name"], $img_tmp);
creaThumbIMG($img_tmp, "producto");
?>
<input type="hidden" name="txt_img" value="<?= $img_tmp ?>">
<?
}
}
}
?>
<p class="contenidos-texto-centrado">Imagen es opcional. Debe ser mínimo de 1.200 pxls. de ancho o 500 pxls. de alto<?= $max_upload_file_size ?>, en formato .jpg</p>
<p class="contenidos-texto-centrado">(Esta es la imagen asociada al producto):</p>
<div class="programas-imgprog"><img src="<?= $img_tmp ?>" alt="programa"></div>
<label class="form-file">
CAMBIAR IMAGEN
<input type="file" name="file_img" id="file_img" accept="image/jpeg, image/jpg">
</label>
<br>
<h2>DATOS PROGRAMA</h2>
<p>Opción de menú (requerido):</p>
<? generaComboMenuOpciones("cmb_menu", "cmb_menu", -1, true, "", "", false, "", true, false) ?>
<p>Nombre programa (requerido):</p>
<input type="text" name="txt_nombre" id="txt_nombre" class="txt_programa" maxlength="200" placeholder="Nombre" required />
<p>Descripción programa (requerido):</p>
<textarea name="txt_descripcion" id="txt_descripcion" class="txt_descripcion_long" placeholder="Descripción" required></textarea>
<p>Programa descargable en archivo PDF (opcional):</p>
<div id="contenidos-programa-pdf"></div>
<label class="form-file">
SELECCIONAR PDF
<input type="file" name="file_pdf" id="file_pdf" accept="application/pdf">
</label>
<br>
<p>Mapa de ubicación de Google Maps (Opcional. Debe copiar url desde maps.google.com opción COMPARTIR > Insertar un mapa > COPIAR HTML, y pegar acá. Si pega código erróneo arrojará error):</p>
<textarea name="txt_mapa" id="txt_mapa" class="" placeholder="URL mapa Google Maps"></textarea>
<p>Cantidad de días (requerido):</p>
<input type="number" name="txt_cant_dias" id="txt_cant_dias" maxlength="3" min="0" max="999" pattern="[0-9]{1,3}" title="Solo se permiten números. Mínimo 1 dígito. Máximo 3 dígitos" placeholder="Días" required />
<p>Cantidad de noches (requerido):</p>
<input type="number" name="txt_cant_noches" id="txt_cant_noches" maxlength="3" min="0" max="999" pattern="[0-9]{1,3}" title="Solo se permiten números. Mínimo 1 dígito. Máximo 3 dígitos" placeholder="Noches" required />
<p>Valor programa en moneda CLP (requerido):</p>
<input type="number" name="txt_precio" id="txt_precio" maxlength="9" min="0" max="999999999" pattern="[0-9]{1,9}" title="Solo se permiten números. Mínimo 1 dígito. Máximo 9 dígitos" placeholder="Precio" required />
<p>Moneda asociada (requerido):</p>
<? generaComboDivisasPrograma("cmb_moneda", "cmb_moneda", -1, true, "", "", false, "", true, false) ?>
<div id="anula-float"></div>
<p>Condiciones (requerido):</p>
<? generaComboCondicionesPrograma("cmb_condiciones", "cmb_condiciones", -1, true, "", "", false, "", true, false) ?>
<p>¿ Clasificar como destacado ? (requerido):</p>
<select name="cmb_destacado" id="cmb_destacado" required>
<option value="11" selected>NO</option>
<option value="12">SI</option>
</select>
<button type="submit" class="boton_naranja">CREAR »</button>
</form>
<div id="anula-float"></div>
</div>
<?
}
else {
//------------------------------------------
// se procesan datos recibidos
//------------------------------------------
$req_img = $_REQUEST["txt_img"];
$req_menu = $_REQUEST["cmb_menu"];
$req_nombre = mb_strtoupper(trim($_REQUEST["txt_nombre"]));
$req_descripcion = trim($_REQUEST["txt_descripcion"]);
$req_mapa = trim($_REQUEST["txt_mapa"]);
$req_cant_dias = trim($_REQUEST["txt_cant_dias"]);
$req_cant_noches = trim($_REQUEST["txt_cant_noches"]);
$req_precio = trim($_REQUEST["txt_precio"]);
$req_moneda = $_REQUEST["cmb_moneda"];
$req_condiciones = $_REQUEST["cmb_condiciones"];
$req_destacado = $_REQUEST["cmb_destacado"];
if ((empty($req_menu)) || (empty($req_nombre)) || (empty($req_descripcion)) || (empty($req_cant_dias)) || (empty($req_cant_noches)) || (empty($req_precio)) || (empty($req_moneda)) || (empty($req_condiciones)) || (empty($req_destacado))){
//faltan datos requeridos
?>
<form method="post" name="form">
<input type="hidden" name="codmensaje" value="1">
</form>
<script>document.form.submit()</script>
<?
}
elseif ($req_cant_noches > $req_cant_dias){
//error en cantidad de dias-noches
?>
<form method="post" name="form">
<input type="hidden" name="codmensaje" value="2">
</form>
<script>document.form.submit()</script>
<?
}
else {
//todo ok, se guarda registro
//conexion a bdd
$id_conexion = abreConeccionBdd();
//fecha y hora de sistema
$fecha_actual = date("Y-m-d");
$hora_actual = date("H:i:s");
//imagen asociada
if (empty($req_img))
$req_img = "soul/imgs/progrs/default.jpg";
//programa en pdf
$url_file = "";
if (is_uploaded_file($_FILES["file_pdf"]["tmp_name"])){
// $url_file = "soul/docs/progs/".generaClavePrimaria()."-".mb_strtolower($_FILES["file_pdf"]["name"]);
$url_file = "soul/docs/progs/".generaClavePrimaria().".pdf";
move_uploaded_file($_FILES["file_pdf"]["tmp_name"], $url_file);
}
//mapa de google maps
if (!empty($req_mapa))
$req_mapa = modificaAnchoAltoMapaGoogleMaps($req_mapa);
if ($req_condiciones == "NO")
$req_condiciones = 0;
//construccion del script
$script = "INSERT INTO fb_programa VALUES(NULL, '".$req_nombre."', '".$req_descripcion."', '".$req_mapa."', '".$url_file."', ".$req_cant_dias.", ".$req_cant_noches.", ".$req_precio.", '".$req_img."', ".$req_menu.", ".$req_moneda.", ".$req_condiciones.", ".$req_destacado.", 1, '".$fecha_actual."', '".$hora_actual."', ".$_SESSION["per_codigo_persona"].", '".$fecha_actual."', '".$hora_actual."', ".$_SESSION["per_codigo_persona"].")";
//ejecucion del script
mysql_query($script, $id_conexion);
?>
<h5>¡ EL PROGRAMA HA SIDO CORRECTAMENTE CREADO !</h5>
<p class="contenidos-texto-centrado">Ahora aparecerá en su listado de programas</p>
<br>
<button type="button" class="boton_naranja" onclick="window.location='sis_programas.php'">IR A PROGRAMAS »</button>
<?
//cierre conexion a bdd
cierraConeccionBdd($id_conexion);
}
}
?>
<div id="anula-float"></div>
</div>
</div>
<?
}
//pie del sitio
generaPieSistema($ruta_raiz);
tagFoot();
?>