Example #1
0
 def edit(self):
     errores = []
     if request.method == 'GET':
         genero = Genero.encontrar_por_id(request.args.get("genero_id"))
         return render_template('generos/edit.html', genero=genero)
     elif request.method == 'POST':
         if Genero.existe_genero_con_nombre(request.form["nombre"]):
             genero = Genero.encontrar_por_id(request.args.get("genero_id"))
             errores.append(
                 "Ya existe un genero con el nombre especificado.")
             return render_template('generos/edit.html',
                                    genero=genero,
                                    errores=errores)
         else:
             Genero.edit(request.form["nombre"], request.form["id"])
             return self.index()
Example #2
0
 def index(self):
     libros = Libro.all()
     data = []
     for libro in libros:
         autor = Author.id(libro["autor"])
         genero = Genero.encontrar_por_id(libro["genero"])
         data.append({"libro": libro, "autor": autor, "genero": genero})
     return render_template('libros/index.html', libros=data)
Example #3
0
    def libro(self, libro_id):
        try:
            int(libro_id)
        except:
            abort(404)
        libro = Libro.id(libro_id)
        autor = Author.id(libro["autor"])
        genero = Genero.encontrar_por_id(libro["genero"])
        editorial = Editorial.id(libro["editorial"])
        reseñas = Reseña.reseñas_de_un_libro_con_id(libro_id)
        capitulos = Capitulo.libro(libro_id)
        perfil_tiene_reseña = False
        perfil_leyo_el_libro = False

        cantidad = Libro.obtenerCantidadDeReseñasDeUnLibro(
            libro_id)[0]['cantidad']
        total = Libro.obtenerCalificacionTotalDeUnLibro(libro_id)[0]['total']
        promedio = 0
        if (cantidad != 0):
            promedio = round((total / cantidad), 2)

        if "perfil_id" in session and not session["admin"]:
            perfil_id = session["perfil_id"]
            leido = Libro.leido(libro_id, perfil_id)
            leyendo = Libro.leyendo(libro_id, perfil_id)
            favorito = Libro.favorito(libro_id, perfil_id)
            if Libro.el_perfil_dio_una_reseña_al_libro(session['perfil_id'],
                                                       libro_id):
                perfil_tiene_reseña = True
            if Libro.el_perfil_leyo_el_libro(session['perfil_id'], libro_id):
                perfil_leyo_el_libro = True
        else:
            leido = None
            favorito = None
            leyendo = None
        return render_template('libros/show.html',
                               libro=libro,
                               autor=autor,
                               genero=genero,
                               editorial=editorial,
                               capitulos=capitulos,
                               leido=leido,
                               favorito=favorito,
                               leyendo=leyendo,
                               reseñas=reseñas,
                               perfil_tiene_reseña=perfil_tiene_reseña,
                               perfil_leyo_el_libro=perfil_leyo_el_libro,
                               promedio=promedio)