Create New Item
×
Item Type
File
Folder
Item Name
File Manager
/
cymchiletours.cl
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?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(); ?>