示例#1
0
def pelicula(valor):
    print(url_for('static', filename='styles.css'))
    genres = database.getgenres()
    peli = database.getmovie(valor)[0]
    categorias = database.getgenres_movie(valor)
    actores = database.getactors_movie(valor)
    directores = database.getdirectors_movie(valor)
    producto = database.getproduct(valor)[0]

    if 'usuario' not in session:
        if request.method == 'POST':
            if not 'carrito' in session:
                session['carrito'] = []
            session['carrito'].append(producto)

    else:
        if request.method == 'POST':
            user = session['usuario']
            usuarios = database.getuser(user)
            id_usuario = usuarios[0]['customerid']
            # INSERT A ORDERDETAIL PARA ORDER CON STATUS NULL
            # database.getCurrentOrder()
            # database.inserIntoCarrito(str(id_usuario), str(producto['prod_id']))
            database.insertIntoOrders(producto['price'], str(id_usuario),
                                      producto['prod_id'])

    return render_template('pelicula.html',
                           peli=peli,
                           genres=genres,
                           categorias=categorias,
                           directores=directores,
                           actores=actores,
                           producto=producto)
示例#2
0
def perfil():
    genres = database.getgenres()
    user = session['usuario']
    usuarios = database.getuser(user)
    usuario = usuarios[0]
    id_usuario = usuario['customerid']
    username = usuario['username']  #nombre de usuario
    passw = usuario['password']  #ps
    name = usuario['firstname']  #nombre
    mail = usuario['email']  #mail
    card = usuario['creditcard']  #tarjeta
    cvc = usuario['cvc']  #cvc
    saldo = usuario['income']  #saldo
    error = False

    if request.method == 'POST':
        saldo_new = request.form['saldo_nuevo']
        if float(saldo_new) < 0:
            error = True
        else:
            saldo = float(saldo) + float(saldo_new)
            database.setUserSaldo(id_usuario, saldo)

    return render_template('perfil.html',
                           genres=genres,
                           name=name,
                           passw=passw,
                           username=username,
                           mail=mail,
                           card=card,
                           saldo=saldo,
                           error=error,
                           title=username)
示例#3
0
def ventas():
    print(url_for('static', filename='styles.css'))
    movies = database.topventas()
    genres = database.getgenres()
    titulo = "Top ventas por año"
    return render_template('index.html',
                           title=titulo,
                           movies=movies,
                           genres=genres)
示例#4
0
def masvistas():
    print(url_for('static', filename='styles.css'))
    movies = database.masVistas()
    titulo = "Muuuvies mas vistas"
    genres = database.getgenres()
    return render_template('index.html',
                           title=titulo,
                           movies=movies,
                           genres=genres)
示例#5
0
def novedades():
    print(url_for('static', filename='styles.css'))
    movies = database.novedades()
    genres = database.getgenres()
    titulo = "Novedades"
    return render_template('index.html',
                           title=titulo,
                           movies=movies,
                           genres=genres)
示例#6
0
def categorias(cat):
    print(url_for('static', filename='styles.css'))
    genres = database.getgenres()
    titulo = genres[int(cat) - 1]['genre']
    genreid = genres[int(cat) - 1]['genreid']
    print("QUEREMOS EL GENRE DE ID", genreid)
    pelis = database.getmoviesbygenre(genreid)
    return render_template('index.html',
                           title=titulo,
                           movies=pelis,
                           genres=genres)
示例#7
0
def index():
    if 'carrito' not in session:
        session['carrito'] = []
    print(url_for('static', filename='styles.css'))
    movies = database.todas()
    genres = database.getgenres()
    titulo = "Todas las muuuvies"
    return render_template('index.html',
                           title=titulo,
                           movies=movies,
                           genres=genres)
示例#8
0
def signup():
    genres = database.getgenres()
    if 'username' in request.form:
        if request.form['password'] == request.form['password2']:

            if request.method == 'POST':
                user = request.form['username']
                resp = make_response(redirect(url_for('index')))
                resp.set_cookie('userID', request.form['mail'])

                # password_cif = md5(request.form['password'].encode()).hexdigest()
                password_cif = request.form['password']
                nombre = request.form['nombre'],
                mail = request.form['mail'],
                tarjeta = request.form['tarjeta'],
                cvc = request.form['cvc'],
                saldo = random.randrange(100)
                id_cust_n = str(database.getMaxIdCustomer()[0])
                id_cust_n = id_cust_n[1:-2]
                id_cust = int(id_cust_n) + 1

                num_user_username = str(
                    database.getNumberUsersWithUsername(user)[0])
                num_user_username = num_user_username[1:-2]
                num_user_username = int(num_user_username)
                if num_user_username != 0:
                    return render_template('registro.html',
                                           genres=genres,
                                           title="Sign",
                                           existe=True)

                database.adduser(id_cust, user, password_cif, nombre, mail,
                                 tarjeta, cvc, saldo)

                session['usuario'] = request.form['mail']
                session.modified = True

                # historial.close()
                return resp
            else:
                return render_template('registro.html',
                                       genres=genres,
                                       title="Sign",
                                       existe=True)
        else:
            return render_template('registro.html',
                                   genres=genres,
                                   title="Sign",
                                   existe=False)
    return render_template('registro.html',
                           title="Sign",
                           genres=genres,
                           existe=False)
示例#9
0
def busqueda():
    print(url_for('static', filename='styles.css'))
    genres = database.getgenres()
    if 'busqueda' in request.form:
        buscado = request.form['busqueda']
        buscado = str(buscado).lower()
        pelis = database.buscarPeli(buscado)
        return render_template('index.html',
                               title=buscado,
                               genres=genres,
                               movies=pelis)
    else:
        return redirect(url_for('index'))
示例#10
0
def login():
    genres = database.getgenres()
    # doc sobre request object en http://flask.pocoo.org/docs/1.0/api/#incoming-request-data
    if 'username' in request.form:
        if request.method == 'POST':
            user = request.form['username']
            resp = make_response(redirect(url_for('index')))
            resp.set_cookie('userID', request.form['username'])

        if not database.isuser(user):
            return render_template('login_registro.html',
                                   genres=genres,
                                   title="Log In",
                                   existe=True)
        else:
            usuarios = database.getuser(user)
            mail_usuario = usuarios[0]['email']
            passw_cif = usuarios[0]['password']
            # passw = md5(request.form['password'].encode()).hexdigest()
            passw = request.form['password']
            # aqui se deberia validar con fichero .dat del usuario
            cond = request.form[
                'username'] == mail_usuario and passw_cif == passw
            if cond:
                session['usuario'] = request.form['username']
                session.modified = True
                if not 'carrito' in session:
                    session['carrito'] = []
                # se puede usar request.referrer para volver a la pagina desde la que se hizo login

                return resp
            else:
                # aqui se le puede pasar como argumento un mensaje de login invalido

                return render_template('login_registro.html',
                                       genres=genres,
                                       title="Log In",
                                       existe=False)
    else:
        # se puede guardar la pagina desde la que se invoca
        session['url_origen'] = request.referrer
        session.modified = True
        # print a error.log de Apache si se ejecuta bajo mod_wsgi
        return render_template('login_registro.html',
                               genres=genres,
                               title="Log In",
                               existe=False)
示例#11
0
def historial():
    user = database.getuser(session['usuario'])
    userid = str(user[0]['customerid'])
    print("queremos los pedidos hechos por", userid)
    historial = database.getHistorial(str(userid))
    genres = database.getgenres()
    # path = os.path.dirname(__file__)
    # path += "/usuarios/"+session['usuario']
    # historial = json.load(open(path+"/historial.json"))['pedidos']
    # datos = json.load(open(path+"/datos.json"))
    # historial.reverse()
    datos = user[0]
    return render_template('historial.html',
                           genres=genres,
                           title="Historial",
                           pedidos=historial,
                           datos=datos)
    return redirect(url_for('index'))
示例#12
0
def cambiar_contrasena(usuario):
    genres = database.getgenres()
    user = session['usuario']
    usuarios = database.getuser(user)
    usuario = usuarios[0]
    passw = usuario['password']  #ps
    id_usuario = usuario['customerid']

    if request.method == 'POST':
        old_contr = request.form['old']
        new_contr1 = request.form['new1']
        new_contr2 = request.form['new2']

        if md5(old_contr.encode()).hexdigest() != passw:
            return render_template('cambiar_contrasena.html',
                                   title="Cambiar contrasena",
                                   mal=True,
                                   distintas=False,
                                   genres=genres)

        if new_contr1 == new_contr2:
            # # Código para guardar las contraseñas cifradas
            # # Lo comentamos porque en la base de datos proporcionada no están cifradas
            # new_psw_encode = md5(new_contr1.encode()).hexdigest()
            # database.setpsw(id_usuario, new_psw_encode)
            database.setpsw(id_usuario, new_contr1)

            return redirect(url_for('index'))
        else:
            return render_template('cambiar_contrasena.html',
                                   title="Cambiar contrasena",
                                   mal=False,
                                   distintas=True,
                                   genres=genres)
    return render_template('cambiar_contrasena.html',
                           title="Cambiar contrasena",
                           mal=False,
                           distintas=False,
                           genres=genres)
示例#13
0
def carrito():
    genres = database.getgenres()
    no_saldo = False
    no_registrado = False
    compra = False

    if not 'carrito' in session:
        session['carrito'] = []

    if request.method == 'POST':

        if 'usuario' in session:

            user = session['usuario']
            usuarios = database.getuser(user)

            # path = os.path.dirname(__file__)
            # path += "/usuarios/"+session['usuario']+"/"
            # datos = json.load(open(path+"datos.json"))
            # saldo=datos['saldo']
            saldo = database.getUserSaldo(session['usuario'])
            saldo = str(saldo)[2:-3]
            coste = database.getOrderPrice(usuarios[0]['customerid'])
            coste = str(coste)[11:-5]

            if float(coste) <= float(saldo):
                saldo = float(saldo) - float(coste)
                # setOrderStatus(Paid)
                # Decrementar la cantidad del usuario
                database.setOrderStatusPaid(str(usuarios[0]['customerid']))
                database.setUserSaldo(str(usuarios[0]['customerid']), saldo)
                compra = True

            else:
                no_saldo = True

                # iculas_nombre = database.getPeliculasInCarrito()
                # no_registrado = True
                # print("AQUIIIII", peliculas_nombre)
                # return render_template('carrito.html', title = "Carrito", peliculas=peliculas_nombre,compra=compra, no_saldo=no_saldo, no_registrado=no_registrado)
            all_carrito = database.getPeliculasInCarrito(
                str(usuarios[0]['customerid']))
            return render_template('carrito.html',
                                   genres=genres,
                                   title="Carrito",
                                   peliculas=all_carrito,
                                   compra=compra,
                                   no_saldo=no_saldo,
                                   no_registrado=no_registrado)

        else:
            # No registrado
            peliculas_nombre = []
            for prod in session['carrito']:
                peliculas_nombre.append(
                    database.getPeliculasProdById(prod['movieid'])[0])
            no_registrado = True
            return render_template('carrito.html',
                                   genres=genres,
                                   title="Carrito",
                                   peliculas=peliculas_nombre,
                                   compra=compra,
                                   no_saldo=no_saldo,
                                   no_registrado=no_registrado)

    else:

        if 'usuario' in session:

            user = session['usuario']
            usuarios = database.getuser(user)

            if session['carrito'] != []:
                for prod in session['carrito']:
                    pelicula = database.getPeliculasProdById(
                        prod['movieid'])[0]
                    database.insertIntoOrders(str(pelicula['price']),
                                              str(usuarios[0]['customerid']),
                                              str(pelicula['prod_id']))
            session['carrito'] = []
            all_carrito = database.getPeliculasInCarrito(
                str(usuarios[0]['customerid']))
            return render_template('carrito.html',
                                   genres=genres,
                                   title="Carrito",
                                   peliculas=all_carrito,
                                   compra=compra,
                                   no_saldo=no_saldo,
                                   no_registrado=no_registrado)

        else:
            peliculas_nombre = []
            for prod in session['carrito']:
                peliculas_nombre.append(
                    database.getPeliculasProdById(prod['movieid'])[0])
            return render_template('carrito.html',
                                   genres=genres,
                                   title="Carrito",
                                   peliculas=peliculas_nombre,
                                   compra=compra,
                                   no_saldo=no_saldo,
                                   no_registrado=no_registrado)

    return render_template('carrito.html',
                           genres=genres,
                           title="Carrito",
                           peliculas=session['carrito'],
                           compra=compra,
                           no_saldo=no_saldo,
                           no_registrado=no_registrado)
示例#14
0
def ayuda():
    genres = database.getgenres()
    return render_template('ayuda.html', genres=genres)