def get(initials): team = TeamsModel.find_by_initials(initials) if team: #Verifica se possui conteúdo team = team[0] return Controller.format_response(team.to_dict(), status_code=200) else: return Controller.format_response(errors=15, status_code=404)
def sign_in(): data = request.get_json() user = UsersModel.find_by_login(data['login']) if user and Controller.bycrpt.check_password_hash( user[0].password, data['password']): access_token = create_access_token(identity=user[0].login) return Controller.format_response({'token': access_token}, status_code=200) return Controller.format_response(errors=11, status_code=401)
def put(login): data = request.get_json() logged_user = Controller.authenticated_user() if logged_user.login == login: for field in ('name', 'email', 'birthday', 'password', 'country', 'state', 'city', 'neighborhood', 'street', 'number', 'complement'): if field in data: setattr(logged_user, field, data[field]) logged_user.update() return Controller.format_response(status_code=200) return Controller.format_response(errors=10, status_code=400)
def delete_by_code(code): tournament = TournamentsModel.find_by_cod_tournament(int(code)) if tournament: tournament = tournament[0] current_user = Controller.authenticated_user() if not current_user.login == tournament.owner_login: return Controller.format_response(errors=13, status_code=403) tournament.delete_by_code() return Controller.format_response(status_code=200) else: return Controller.format_response(status_code=404)
def delete(initials ): #TESTAR averiguar se o usuário autenticado é o dono do time team = TeamsModel.find_by_initials(initials) current_user = Controller.authenticated_user() if not current_user.login == team.owner_login: return Controller.format_response(errors=13, status_code=403) if team: team = team[0] team.delete() return Controller.format_response(status_code=200) else: return Controller.format_response(status_code=404)
def view_members(cod_tournament, initials): tournament = TournamentsModel.find_by_cod_tournament(int(code)) team = TeamsModel.find_by_initials(initials) if tournament and team: pass #falta else: return Controller.format_response(status_code=404)
def sign_up(): data = request.get_json() password = Controller.bycrpt.generate_password_hash( data['password']).decode('utf-8') if UsersModel.find_by_login(data['login']): return Controller.format_response(errors=9, status_code=400) if UsersModel.find_by_email(data['email']): return Controller.format_response(errors=10, status_code=400) user = UsersModel(data['login'], data['name'], data['email'], data['birthday'], password) user.insert() return Controller.format_response(status_code=201)
def index(): all_teams = TeamsModel.get_all() search_keyword = request.args.get('search') if search_keyword: k = search_keyword.lower() all_teams = [ t for t in all_teams if k in t.to_dict()['initials'].lower() or k in t.to_dict()['name'].lower() ] result = [] for team in all_teams: result.append(team.to_dict()) # Somente retornar erro se for uma pesquisa por palavra chave e não for encontrado nada if search_keyword and not result: return Controller.format_response(errors=16, status_code=404) return Controller.format_response(result, status_code=200)
def create(): current_user = Controller.authenticated_user() data = request.get_json() tournament = TournamentsModel(data['name'], data['description'], data['start_date'], data['end_date'], current_user.login) tournament.insert() return Controller.format_response(status_code=201)
def update_by_code(code): data = request.get_json() tournament = TournamentsModel.find_by_cod_tournament(int(code)) if tournament: tournament = tournament[0] current_user = Controller.authenticated_user() if not current_user.login == tournament.owner_login: return Controller.format_response(errors=13, status_code=403) for field in ('name', 'description', 'start_date', 'end_date'): if field in data: setattr(tournament, field, data[field]) tournament.update_by_code() return Controller.format_response(status_code=200) else: return Controller.format_response(status_code=404)
def update(initials ): #TESTAR averiguar se o usuário autenticado é o dono do time team = TeamsModel.find_by_initials(initials) if team: #Verifica se possui conteúdo team = team[0] data = request.get_json() current_user = Controller.authenticated_user() if not current_user.login == team.owner_login: return Controller.format_response(errors=13, status_code=403) for field in ('initials', 'name', 'owner_login'): if field in data: setattr(team, field, data[field]) team.update() return Controller.format_response(status_code=200) else: return Controller.format_response(status_code=404)
def get(): code = request.args.get('code') name = request.args.get('name') limit = request.args.get('limit', '20') offset = request.args.get('offset', '0') limit, offset = int(limit), int(offset) if name is not None: tournaments = TournamentsModel.search_by_name(name, limit, offset) elif code is not None: tournaments = TournamentsModel.find_by_cod_tournament(int(code)) else: tournaments = TournamentsModel.get_all(limit, offset) result = [] for tournament in tournaments: result.append(tournament.to_dict()) return Controller.format_response(result, status_code=200)
def get(login): user = UsersModel.find_by_login(login) if user: return Controller.format_response(user[0].to_dict(), status_code=200) return Controller.format_response(errors=14, status_code=404)
def create(): #TESTAR Adicionar owner_login data = request.get_json() current_user = Controller.authenticated_user() team = TeamsModel(data['initials'], data['name'], current_user.login) team.insert() return Controller.format_response(team.to_dict(), status_code=201)