def cant_play_on_saturdays(): email = request.json['email'] weeks = int(request.json['weeks']) future = bool(request.json['future']) if weeks <= 0 or weeks > 520: abort(400) user = User.query.get(email) if not user: abort(404) if user.group is not current_user.group: abort(404) if user.email is not email and not current_user.isGroupOwner: abort(401) if future: user.futureSaturdayAbsentWeeks = weeks else: user.isSaturdayAbsent = True user.saturdayAbsentWeeks = weeks db.session.commit() """"Insert a log""" description = 'Successfully registered Saturday absence for - ' + str(weeks) + ' weeks' + \ ' for user - ' + user.firstname + ' ' + user.lastname log = Log(current_user.email, description) db.session.add(log) db.session.commit() schema = UserSchema() json_result = schema.dumps(user) return json_result.data
def want_to_play_on_sundays(email): user = User.query.get(email) if not user: abort(404) if user.group is not current_user.group: abort(404) if user.email is not email and not current_user.isGroupOwner: abort(401) user.isSundayAbsent = False user.sundayAbsentWeeks = 0 user.futureSundayAbsentWeeks = 0 db.session.commit() """"Insert a log""" description = 'Successfully registered wantToPlayOnSundays for user - ' + user.firstname + ' ' + user.lastname log = Log(current_user.email, description) db.session.add(log) db.session.commit() schema = UserSchema() json_result = schema.dumps(user) return json_result.data
def login(): if not request.json or 'email' not in request.json or 'password' not in request.json: abort(400) email = request.json['email'] password = request.json['password'] user = User.query.get(email) if not user: abort(404) if user.verify_password(password): user.isAuthenticated = True db.session.add(user) db.session.commit() login_user(user, remember=True) schema = UserSchema() json_result = schema.dumps(user) return json_result.data else: abort(401)
def get_members(): members = User.query.filter(and_(User.email != current_user.email, User.group == current_user.group))\ .order_by(User.firstname.asc()) schema = UserSchema(many=True) json_result = schema.dumps(members) return json_result.data