def modificar_perfil(self, id_perfil): errores = [] arreglo = [] perfil = Perfiles.encontrar_por_id(id_perfil) user = Usuario.encontrar_por_id(session['id']) ok = False perfiles = Perfiles.all() for p in perfiles: if p['id_usuario'] == user['id']: arreglo.append(p) if request.method == 'GET': return render_template("/usuarios/modificarPerfil.html", perfil=perfil, usuario=user, errores=errores) else: if request.method == 'POST': for a in arreglo: if a['nombre'] == request.form['nombre']: ok = True if ok == True: errores.append("ya existe el nombre especificado.") nombre = request.form['nombre'] return render_template("/usuarios/modificarPerfil.html", perfil=perfil, usuario=user, errores=errores, nombre=nombre) else: nombre = request.form['nombre'] foto = request.form['foto'] Perfiles.edit(nombre, foto, id_perfil) return redirect(url_for('ver_perfiles', id=session['id']))
def modificar_plan(self): if request.method == 'GET': planes = Plan.all() usuario = Usuario.encontrar_por_id(session['id']) plan_del_usuario = Plan.encontrar_por_id(usuario['plan_id']) return render_template('usuarios/modificar_plan.html', planes=planes, id_plan_del_usuario=plan_del_usuario['id']) elif request.method == 'POST': errores = [] cantidad_perfiles_del_usuario = Plan.numero_de_perfiles_del_usuario_con_id( session['id'])['COUNT(*)'] plan_nuevo = Plan.encontrar_por_id(request.form['plan_id']) if (plan_nuevo['perfiles_max'] >= cantidad_perfiles_del_usuario): # Solo entra aca cuando el usuario puede cambiar de plan Usuario.modificar_plan_id(session['id'], plan_nuevo['id']) usuario = Usuario.encontrar_por_id(session['id']) perfiles_creados = Usuario.cantidad_de_perfiles_creados_por_el_usuario_con_id( session['id']) plan = Plan.encontrar_por_id(usuario['plan_id']) mensaje_de_exito = "Enhorabuena, ¡Su plan fue actualizado con exito!" return render_template('usuarios/detalles.html', usuario=usuario, plan=plan, perfiles_creados=perfiles_creados, mensaje_de_exito=mensaje_de_exito) else: # Solo entra aca cuando el usuario tiene más perfiles creados de los que permite el plan nuevo. # Por lo tanto no se puede cambiar el plan planes = Plan.all() usuario = Usuario.encontrar_por_id(session['id']) plan_del_usuario = Plan.encontrar_por_id(usuario['plan_id']) perfiles_a_borrar = abs(plan_nuevo['perfiles_max'] - cantidad_perfiles_del_usuario) errores.append( "El usuario actual excede la cantidad maxima de perfiles permitidos, debera borrar " + str(perfiles_a_borrar) + " perfil/es para poder realizar el cambio.") return render_template( 'usuarios/modificar_plan.html', planes=planes, id_plan_del_usuario=plan_del_usuario['id'], errores=errores)
def usuario_detalles(self): usuario = Usuario.encontrar_por_id(session['id']) perfiles_creados = Usuario.cantidad_de_perfiles_creados_por_el_usuario_con_id( session['id']) plan = Plan.encontrar_por_id(usuario['plan_id']) return render_template('usuarios/detalles.html', usuario=usuario, plan=plan, perfiles_creados=perfiles_creados)
def ver_perfiles(self, id): user = Usuario.encontrar_por_id(id) perfiles = Perfiles.user_id(id) plan = Plan.encontrar_por_id(user["plan_id"]) return render_template("/usuarios/perfiles.html", perfiles=perfiles, usuario=user, plan=plan)
def modificar_tarjeta(self, errores=[]): user_id = session["id"] usuario = Usuario.encontrar_por_id(user_id) return render_template('usuarios/modificar_tarjeta.html', errores=errores, usuario=usuario)
def crear_perfil(self, id): errores = [] p = [] user = Usuario.encontrar_por_id(id) perfiles = Perfiles.all() planes = Plan.all() contador = 0 ok = False if user['plan_id'] == 2: for perfil in perfiles: # cuento cuantos perfiles tengo y los guardo en otro arreglo if perfil['id_usuario'] == user['id']: contador = contador + 1 p.append(perfil) print(p) if contador < 4: if request.method == 'POST': for per in p: if per['nombre'] == request.form["nombre"]: ok = True if ok == True: errores.append( "Ya existe un perfil con el nombre especificado.") else: foto = request.form['foto'] nombre = request.form['nombre'] Perfiles.crear( dict([('nombre', nombre), ('foto', foto), ('id_usuario', id)])) return redirect( url_for('ver_perfiles', id=session['id'])) else: flash('Ya no puede agregar mas contactos!!!!!') return render_template("/usuarios/crearPerfil.html", usuario=user, errores=errores) # return redirect(url_for('ver_perfiles', id=session['id'], errores=errores)) else: if user['plan_id'] == 1: for perfil in perfiles: if perfil['id_usuario'] == user['id']: contador = contador + 1 p.append(perfil) if contador < 2: if request.method == 'POST': for per in p: if per['nombre'] == request.form["nombre"]: ok = True if ok == True: errores.append( "Ya existe un perfil con el nombre especificado.") else: foto = request.form['foto'] nombre = request.form['nombre'] Perfiles.crear( dict([('nombre', nombre), ('foto', foto), ('id_usuario', id)])) return redirect( url_for('ver_perfiles', id=session['id'])) else: flash('Ya no puede agregar mas contactos!!!!!') return render_template("/usuarios/crearPerfil.html", p=p, usuario=user, errores=errores)
def ver_perfil(self, id): user = Usuario.encontrar_por_id(id) if user: return render_template("/usuarios/perfil.html", usuario=user) else: return "<h1> No existe ningun usuario con esa id</h1>"