Example #1
0
 public static function getTipos()
 {
     $table = \modelos\Modelo_SQL::get_prefix_tabla(self::$table);
     $sql = "select distinct tipo from {$table}";
     $siglasTipos = \modelos\Modelo_SQL::execute($sql);
     return $siglasTipos;
 }
Example #2
0
 public static function update_Relatioship_PlayerTeam($post)
 {
     var_dump($post);
     $table = \modelos\Modelo_SQL::get_prefix_tabla(self::$table_je);
     $sql = "update {$table}\n            set num_min={$post['num_min']}, num_max={$post['num_max']}\n            where id={$post['id']} and\n           (equipo_id={$post['equipo_id']} and jugador_id={$post['jugador_id']})\n           ";
     echo $sql;
     return \core\sgbd\mysqli::execute($sql);
 }
Example #3
0
 public function getTeams_byConferenceName($conf_nombre_es)
 {
     $table_conf = \modelos\Modelo_SQL::get_prefix_tabla(self::$table_confs);
     $sql = "select * from {$table_conf} where nombre_es = {$conf_nombre_es}";
     $conferencia = \core\sgbd\mysqli::execute($sql);
     $clausulas['where'] = " {$conferencia['siglas']}";
     $teams = \modelos\Modelo_SQL::table(self::$table_teams)->select($clausulas);
     return $teams;
 }
Example #4
0
 /**
  * Función que nos dice si el usuario que esta conectado es empleado o no.
  * Con ella podemos evitar que un empleado pueda añadir articulos para comprar.
  * @param type $login
  * @return type boolean
  */
 public static function es_empleado($login)
 {
     //Para que los empleados no tengan la opción de crear un carrito de la compra
     $sql = 'select * from 3da2_usuarios_roles where login = "******" and rol = "empleados" ';
     if (count(\modelos\Modelo_SQL::execute($sql))) {
         //if ( count( self::execute($sql) ) ){
         self::$empleado = true;
     } else {
         self::$empleado = false;
     }
     return self::$empleado;
 }
Example #5
0
 public static function table($table_name)
 {
     $path_application = PATH_APPLICATION_APP . "modelos" . DS . strtolower($table_name) . ".php";
     $path_framework = PATH_ESMVCPHP . "app" . DS . "modelos" . DS . strtolower($table_name) . ".php";
     parent::set_table_name($table_name);
     if (is_file($path_application) or is_file($path_framework)) {
         $modelos_clase = "\\modelos\\" . strtolower($table_name);
         return new $modelos_clase();
     } else {
         return new self();
     }
 }
Example #6
0
 /**
  * Función que ofrecera al usuario un menú que le permitirá modificar sus datos
  * @author jergo
  * @param array $datos
  */
 public static function modificar_datos(array $datos = array())
 {
     $clausulas['where'] = "login = '******'";
     $datos["filas"] = \modelos\Modelo_SQL::tabla(self::$tabla_users)->select($clausulas);
     //Otra forma:
     //$tabla = \core\Modelo_SQL::get_prefix_tabla(self::$tabla_users);
     //$sql = "select * from $tabla where ".$clausulas['where'];
     //$datos["filas"] = \modelos\Modelo_SQL::execute($sql);
     //var_dump($datos);
     $datos['view_content'] = \core\Vista::generar("modificar_datos", $datos, true);
     $http_body = \core\Vista_Plantilla::generar("DEFAULT", $datos, true);
     \core\HTTP_Respuesta::enviar($http_body);
 }
Example #7
0
 /**
  * Valida los datos insertados por el usuario al realizar una modificación. Si estos son correctos mostrará la lista de elementos con 
  * la nueva inserción, sino mostrará los errores por los que nos se admitió los datos introducidos.
  * @param array $datos
  */
 public function validar_form_modificar(array $datos = array())
 {
     \core\HTTP_Requerimiento::request_come_by_post();
     $validaciones = \modelos\players::$validaciones_update;
     if (!($validacion = !\core\Validaciones::errores_validacion_request($validaciones, $datos))) {
         //validaciones en PHP
         $datos["errores"]["errores_validacion"] = "Corrija los errores, por favor.";
     } else {
         //$validacion = self::comprobar_files($datos);
         if ($validacion) {
             //Convertimos a formato MySQL
             self::convertir_a_formato_mysql($datos['values']);
             //Start transaction
             \modelos\Modelo_SQL::start_transaction();
             if (!($validacion = \modelos\players::updateDatos($datos))) {
                 // Devuelve true o false
                 //Roll back
                 \modelos\Modelo_SQL::rollback_transaction();
                 $datos["errores"]["errores_validacion"] = "No se han podido grabar los datos en la bd.";
             } else {
                 //Consolidar transaccion
                 \modelos\Modelo_SQL::commit_transaction();
                 //A continuacion con el id ya conseguido procedemos a grabar en la base de datos la imagen y el manual del articulo
                 //self::mover_files($datos);
             }
         }
     }
     //exit;
     /*
            if ( ! $validacion) //Devolvemos el formulario para que lo intente corregir de nuevo
                    \core\Distribuidor::cargar_controlador(self::$controlador, 'form_modificar', $datos);
            else {
                    $datos = array("alerta" => "Se han modificado correctamente.");
                    // Definir el controlador que responderá después de la inserción
                    \core\Distribuidor::cargar_controlador(self::$controlador, 'index', $datos);		
            }
     */
     if (!$validacion) {
         //Devolvemos el formulario para que lo intente corregir de nuevo
         $this->cargar_controlador(self::$controlador, 'form_modificar', $datos);
     } else {
         $_SESSION["alerta"] = "Se han modificado correctamente los datos";
         \core\HTTP_Respuesta::set_header_line("location", \core\URL::generar(\core\Distribuidor::get_controlador_instanciado()));
         \core\HTTP_Respuesta::enviar();
     }
 }
Example #8
0
 public static function getTeamsFromPlayer($player_id)
 {
     //        $table = self::$table_je;
     //        $clausulas['where'] = "jugador_id = $player_id";
     //
     //        return \core\sgbd\mysqli::select($clausulas, $table);
     /*Otra forma*/
     $table = \modelos\Modelo_SQL::get_prefix_tabla(self::$table_je);
     $sql = "select equipo_id from {$table}";
     $sql .= " where jugador_id = {$player_id}";
     $ids = \core\sgbd\mysqli::execute($sql);
     $equipos = null;
     foreach ($ids as $value) {
         $equipos[] = $value['equipo_id'];
     }
     //var_dump($equipos);
     return $equipos;
 }
Example #9
0
 /**
  * Función que a través del id de un artículo guarda en la BD la referencia de los archivos multimedia del mismo que serán guardados en los recusros de la aplicación.  
  * @param array $datos
  */
 private static function mover_files(array $datos)
 {
     $id = $datos["values"]['id'];
     if ($_FILES["foto"]["size"]) {
         if ($datos["values"]["foto"] = self::mover_foto($id)) {
             $validacion = \modelos\Modelo_SQL::tabla(self::$tabla)->update($datos["values"]);
         }
     }
     if ($_FILES["manual"]["size"]) {
         if ($datos["values"]["manual"] = self::mover_manual($id)) {
             $validacion = \modelos\Modelo_SQL::tabla(self::$tabla)->update($datos["values"]);
         }
     }
 }
Example #10
0
 public static function getJuegos_by_categoria($categoria)
 {
     $clausulas['where'] = self::soloJuegosBasicos($clausulas);
     //sacamos el id de la categoria
     $table = \modelos\Modelo_SQL::get_prefix_tabla(self::$tabla_cat);
     $sql = "select id from {$table} where categoria like '%{$categoria}%'";
     $categorias = \modelos\Modelo_SQL::execute($sql);
     if (!count($categorias)) {
         $table = \modelos\Modelo_SQL::get_prefix_tabla(self::$tabla_req);
         $sql = "select id from {$table} where tipo like '%{$categoria}%'";
         $categorias = \modelos\Modelo_SQL::execute($sql);
         if (!count($categorias)) {
             return;
         }
         //Por número
         $num = (int) substr($categoria, 0, 1);
         if ($num == 0) {
             $num = 1;
         }
         if ($categoria === '2jugadores') {
             //numero exacto para 2 jugadores
             $clausulas['where'] .= " and requerimiento_id = {$categorias[0]['id']}";
         } else {
             $clausulas['where'] .= " and ( requerimiento_id = {$categorias[0]['id']} or (num_min_jug = {$num} and num_max_jug >= {$num}) )";
             //categoria extraida
         }
         $juegos = \modelos\Modelo_SQL::table(self::$tabla_j)->select($clausulas);
         return $juegos;
     } else {
         $clausulas['where'] .= " and categoria_id = {$categorias[0]['id']} ";
         //categoria extraida
         return \modelos\Modelo_SQL::table(self::$tabla_j)->select($clausulas);
     }
 }
Example #11
0
 /**
  * Función que a través del id de un artículo guarda en la BD la referencia de los archivos multimedia del mismo que serán guardados en los recusros de la aplicación.  
  * @param array $datos
  */
 private static function mover_files(array $datos)
 {
     //var_dump($datos);
     $id = $datos["values"]['id'];
     //var_dump($_FILES);
     if (!empty($_FILES["escudo"]["size"])) {
         if ($datos["values"]["escudo"] = self::mover_imagen($id)) {
             $validacion = \modelos\Modelo_SQL::tabla(self::$tabla_e)->update($datos["values"]);
         }
     }
     //Creamos una carpeta para guardar más fotos en ella al añadir detalles
     $nombre = \modelos\ficheros::getNombreCarpeta($id);
     $file_path = PATH_APPLICATION . "recursos" . DS . "ficheros" . DS . "teams";
     \modelos\ficheros::crearCarpeta($file_path, $nombre);
 }
Example #12
0
 private static function buscarInmuebles(array $post = array())
 {
     //var_dump($post);
     //Clausulas para la busqueda:
     if (isset($post['referencia']) && $post['referencia'] != '') {
         $post['referencia'] = trim($post['referencia']);
         //Eliminamos los espacios en blanco del inicio y final
         $clausulas['where'] = " referencia like '%{$post['referencia']}%'";
     } else {
         $clausulas['where'] = " 1 ";
         //Siempre es true
         if (isset($post['tipo_inmueble']) && $post['tipo_inmueble'] != '') {
             $clausulas['where'] .= " and tipo like '{$post['tipo_inmueble']}'";
         }
         if (isset($post['buscar_nombre'])) {
             $clausulas['where'] .= " and ( localidad like '%{$post['buscar_nombre']}%' or provincia like '%{$post['buscar_nombre']}%' or cp = '{$post['buscar_nombre']}' )";
         }
         //Si precio_venta es igual a cero quiere decir que esta para alquilar y viceversa. Si amboa son cero saldrá en ambas consultas.
         if (isset($post['tipo_transacion']) && $post['tipo_transacion'] != '') {
             if ($post['tipo_transacion'] === 'venta') {
                 $clausulas['where'] .= " and (precio_alquiler = 0 or precio_venta > 0)";
                 if (isset($post['precio_max']) && $post['precio_max'] != '') {
                     $clausulas['where'] .= " and precio_venta <= '{$post['precio_max']}'";
                 }
             } elseif ($post['tipo_transacion'] === 'alquiler') {
                 $clausulas['where'] .= " and (precio_venta = 0 or precio_alquiler > 0)";
                 if (isset($post['precio_max']) && $post['precio_max'] != '') {
                     $clausulas['where'] .= " and precio_alquiler <= '{$post['precio_max']}'";
                 }
             }
         } elseif (isset($post['precio_max']) && $post['precio_max'] != '') {
             $clausulas['where'] .= " and (  precio_venta <= '{$post['precio_max']}' ";
             $clausulas['where'] .= " or ( precio_alquiler <= '{$post['precio_max']}' and precio_alquiler <> 0 ) ) ";
         }
         $clausulas['order_by'] = ' rand()';
     }
     $datos["bienes"] = \modelos\Modelo_SQL::table(self::$tabla)->select($clausulas);
     // Recupera todas las filas ordenadas
     //$datos["bienes"] = \modelos\Modelo_SQL::execute($sql);
     //var_dump($datos);
     //¡¡OJO!! no hacemos la conversión y habrá que hacerla luego en la vista mediante el modelo
     return $datos['bienes'];
 }
Example #13
0
 /**
  * Elimina un comentario enviado mediante un formulario
  * @author Jorge Rodriguez "Jergo" <*****@*****.**>
  * @param array $datos
  */
 public function validar_form_eliminar_comentario(array $datos = array())
 {
     self::request_come_by_post();
     //Si viene por POST sigue adelante
     $validaciones = array("id" => "errores_requerido && errores_texto && errores_numero_entero_positivo && errores_referencia:id/" . self::$tabla2 . "/id", "usuario_login" => "errores_requerido && errores_texto", "comentario" => "errores_requerido && errores_texto");
     if (!($validacion = !\core\Validaciones::errores_validacion_request($validaciones, $datos))) {
         //validaciones en PHP
         $datos["errores"]["errores_validacion"] = "Corrija los errores, por favor.";
     } else {
         //Cogemos el nombre del articulo antes de borrarlo, para luego poder mostrar la misma página
         $where = ' id = ' . $datos['values']['id'];
         $sql = 'select * from ' . \core\Modelo_SQL::get_prefix_tabla(self::$tabla2) . ' where ' . $where;
         $fila = \core\Modelo_SQL::execute($sql);
         $articulo_id = $fila[0]['articulo_id'];
         if (!($validacion = \modelos\Modelo_SQL::delete($datos["values"], self::$tabla2))) {
             // Devuelve true o false
             $datos["errores"]["errores_validacion"] = "No se han podido grabar los datos en la bd.";
         }
     }
     if (!$validacion) {
         //Devolvemos el formulario para que lo intente corregir de nuevo
         \core\Distribuidor::cargar_controlador(self::$controlador, 'editar_comentario', $datos);
     } else {
         // Se ha grabado la modificación. Devolvemos el control al la situacion anterior a la petición del form_modificar
         //$datos = array("alerta" => "Se han grabado correctamente los detalles");
         // Definir el controlador que responderá después de la inserción
         //\core\Distribuidor::cargar_controlador(self::$tabla, 'index', $datos);
         $_SESSION["alerta"] = "El comentario ha sido eliminado";
         //header("Location: ".\core\URL::generar("self::$controlador/index"));
         $articulo_nombre = str_replace(" ", "-", $datos['values']['articulo_nombre']);
         $clausulas['where'] = " id = {$articulo_id} ";
         $filas = \modelos\Datos_SQL::select($clausulas, self::$tabla);
         $articulo_nombre = $filas[0]['nombre'];
         $articulo_nombre = str_replace(" ", "-", $articulo_nombre);
         \core\HTTP_Respuesta::set_header_line("location", \core\URL::generar(self::$controlador . "/juego/" . $articulo_id . "/" . $articulo_nombre));
         \core\HTTP_Respuesta::enviar();
     }
 }