def salvar(_resp, nome, email, google_id): usuario = Usuario(nome = nome, email = email, google_id = google_id) key = usuario.put() json_str = json.dumps({'id':key.id()}) _resp.write(json_str)
def test_sucesso(self): usuario_logado = Usuario() usuario_logado.put() handler = Mock() crud.salvar(handler, usuario_logado, 'INFORMATICA', 'BASICA') cursos = Curso.query().fetch() self.assertEqual(1, len(cursos)) curso = cursos[0] self.assertEqual('INFORMATICA', curso.nome) self.assertEqual('BASICA', curso.descricao) handler.redirect.assert_called_once_with('/curso')
def editar(_resp, idUsuario, nome, email): usuario = Usuario.get_by_id(int(idUsuario)) usuario.nome = nome usuario.email = email usuario.put()
def execute(next_process, handler, dependencies, **kwargs): usuario_google = users.get_current_user() if usuario_google: google_id = usuario_google.user_id() query = Usuario.query_by_google(google_id) usuario_logado = query.get() if not usuario_logado: usuario_logado = Usuario(nome=usuario_google.nickname(), email=usuario_google.email(), google_id=google_id) usuario_logado.put() logout_url = users.create_logout_url("/") dependencies["_usuario_logado"] = usuario_logado dependencies["_logout_url"] = logout_url else: dependencies["_usuario_logado"] = None dependencies["_login_url"] = users.create_login_url("/") next_process(dependencies, **kwargs)
def buscarListas(_resp, _usuario_logado): usuarios = Usuario.query().fetch() listas = [] for index, usuario in enumerate(usuarios): listas.append({}) listas[index]["usuario"] = usuario.firstname listas[index]["listas_usuario"] = [lista.get().to_dict() for lista in usuario.listas] listas[index]["data_ingresso"] = usuario.data_ingresso _resp.write(json.dumps(listas))
def execute(next_process, handler, dependencies, **kwargs): user = users.get_current_user() if user: google_id = user.user_id() query = Usuario.query_by_google(google_id) usuario_logado = query.get() if not usuario_logado: usuario_logado = Usuario(nome=user.nickname(), email=user.email(), google_id=google_id) usuario_logado.put() logout_url = users.create_logout_url('/') dependencies['usuario_logado'] = usuario_logado dependencies['logout_url'] = logout_url else: dependencies['usuario_logado'] = False dependencies['login_url'] = users.create_login_url('/') next_process(dependencies, **kwargs)
def execute(next_process, handler, dependencies, **kwargs): user = users.get_current_user() if user: google_id = user.user_id() query = Usuario.query_by_google(google_id) usuario_logado = query.get() if not usuario_logado: usuario_logado = Usuario(nome=user.nickname(), email=user.email(), google_id=google_id) usuario_logado.put() logout_url=users.create_logout_url('/') dependencies['usuario_logado']= usuario_logado dependencies['logout_url']= logout_url else: dependencies['usuario_logado']= False dependencies['login_url'] = users.create_login_url('/') next_process(dependencies, **kwargs)
def listar(_resp): json_struct = [] usuarios = Usuario.query() for usu in usuarios: json_struct += [{"nome": usu.nome, "email": usu.email, "google_id": usu.google_id, "id": usu.key.id()}] json_str = json.dumps(json_struct) _resp.write(json_str)
def registrar_colegio(): if request.method == "POST": data = request.json usuario = Usuario.query.filter_by( correo=data.get("colegio").get("correo")).first() if usuario: return "Correo ya registrado en el sistema." else: hashed_pass = generate_password_hash( data.get("colegio").get("password")) usuario = Usuario(correo=data.get("colegio").get("correo"), password=hashed_pass, id_tipo_usuario=2) db.session.add(usuario) db.session.flush() colegio = Colegio(nombre=data.get("colegio").get("nombre"), id_usuario=usuario.id) db.session.add(colegio) db.session.commit() return "ok"
def registro_aspirante(): error = None mensaje = None colegios = db.session.query(Colegio, Usuario).filter(Colegio.id_usuario == Usuario.id, Usuario.live == True, Usuario.id_tipo_usuario == 2).all() if request.method == "POST": form = request.form usuario = Usuario.query.filter_by(correo=form["correo"]).first() if usuario: error = "Usuario ya registrado." else: hashed_pass = generate_password_hash(form["password"]) usuario = Usuario( correo=form["correo"], password=hashed_pass, id_tipo_usuario=1 ) db.session.add(usuario) db.session.flush() aspirante = Aspirante( nombres=form["nombres"], apellidos=form["apellidos"], id_usuario=usuario.id ) db.session.add(aspirante) db.session.flush() if form["colegio"] != '0': colegio = Colegio.query.filter_by(id=form["colegio"]).first() aspirante_colegio = AspiranteColegio( id_colegio=colegio.id, id_aspirante=aspirante.id ) db.session.add(aspirante_colegio) db.session.flush() mensaje = "Datos guardados en el sistema." db.session.commit() return render_template('aspirante/registro_aspirante.html', mensaje=mensaje, error=error, colegios=colegios)
def index(_write_tmpl): usuarios = Usuario.query() dct = {'lista_cursos': usuarios.fetch()} _write_tmpl('templates/listar.html', dct)
def remover(_resp, idUsuario): usuario = Usuario.get_by_id(int(idUsuario)) usuario.key.delete()
def setUp(self): prepare_to_test() Usuario(nome="liu", email="*****@*****.**").put()
def set_up(self): query = Usuario.query_por_nome(self.nome) self.__future = query.fetch_async(50)
def test_add_user(self): users_service.add_user("iury", "*****@*****.**").put() user = Usuario.query(Usuario.nome=="iury", Usuario.email=="*****@*****.**").get() self.assertIsNotNone(user)
def test_add_user_with_google_id(self): users_service.add_user("iury", "*****@*****.**", google_id="122132").put() user = Usuario.query(Usuario.nome=="iury", Usuario.google_id=="122132").get() self.assertIsNotNone(user)
def index(_write_tmpl, pagina_origem=1, direcao_busca='FRENTE', cursor_urlsafe='None', pagina_destino=1): BUSCA_FRENTE = 'FRENTE' BUSCA_TRAS = 'TRAS' #tranformacao e calculo de parametros pagina_origem = int(pagina_origem) pagina_destino = int(pagina_destino) TAMANHO_DA_PAGINA = 2 nova_direcao_busca = BUSCA_TRAS if (pagina_destino - pagina_origem) < 0 else BUSCA_FRENTE if cursor_urlsafe == 'None': cursor_urlsafe = None cursor = Cursor(urlsafe=cursor_urlsafe) # Funcao para definir se o usuario esta decrementando ou incrimentando a pagina def direcao_pesquisa_mudou(): return direcao_busca != nova_direcao_busca #Calculo do offset de acordo com mudanca de direcao na busca offset = 0 if cursor_urlsafe is not None: offset = abs(pagina_destino - pagina_origem) offset = offset if direcao_pesquisa_mudou() else max(offset - 1, 0) offset *= TAMANHO_DA_PAGINA #Funcao de pesquisa de usuarios def pesquisar_usuarios(query, cursor, offset): if direcao_pesquisa_mudou() and cursor: cursor = cursor.reversed() return query.fetch_page_async(TAMANHO_DA_PAGINA, offset=offset, start_cursor=cursor) #Pesquisa assincrona de usuarios de acordo com direcao da busca if nova_direcao_busca == BUSCA_TRAS: query = Usuario.query().order(-Usuario.nome) usuarios_future = pesquisar_usuarios(query, cursor, offset) else: query = Usuario.query().order(Usuario.nome) usuarios_future = pesquisar_usuarios(query, cursor, offset) #Setup de numeração de páginas pagina_inicial = max(1, pagina_destino - 2) pagina_final = pagina_inicial + 4 pagina_anterior = max(pagina_inicial, pagina_destino - 1) #Construção de parâmetros a serem renderizados pelo template dct = {'adicionar_usuario_google_path': router.to_path(google), 'adicionar_usuario_face_path': router.to_path(face), 'pagina_atual': pagina_destino, 'pagina_inicial': pagina_inicial, 'pagina_final': pagina_final, 'pagina_anterior': pagina_anterior, 'pagina_posterior': pagina_destino + 1} usuarios, cursor, mais_resultados = usuarios_future.get_result() # revertando resultado para manter ordem crescente na visualizacao de busca if nova_direcao_busca == BUSCA_TRAS: usuarios.reverse() cursor_urlsafe = cursor.urlsafe() if cursor else 'None' dct['home_path'] = router.to_path(index, pagina_destino, nova_direcao_busca, cursor_urlsafe) dct['usuarios'] = usuarios _write_tmpl("/templates/usuario_home.html", dct)