From 2c4b003fc939522be0dbfc01f5be05f582644380 Mon Sep 17 00:00:00 2001 From: kaiyou <pierre@jaury.eu> Date: Tue, 12 May 2020 18:07:50 +0200 Subject: [PATCH] Simplify the profile pick function --- hiboo/profile/__init__.py | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/hiboo/profile/__init__.py b/hiboo/profile/__init__.py index fa7865f6..c676c365 100644 --- a/hiboo/profile/__init__.py +++ b/hiboo/profile/__init__.py @@ -15,18 +15,14 @@ from hiboo.profile import login, admin, forms, cli def get_profile(service, **redirect_args): - query = models.Profile.query.filter_by( - service_uuid=service.uuid, - user_uuid=flask_login.current_user.uuid, - status=models.Profile.ACTIVE - ) + profiles = models.Profile.filter(service, flask_login.current_user) + active = profiles.filter_by(status=models.Profile.ACTIVE) form = forms.ProfilePickForm() if form.validate_on_submit(): - return query.filter_by(uuid=form.profile_uuid.data).first() - count = query.count() - if count > 1: + return active.filter_by(uuid=form.profile_uuid.data).first() + if active.count() == 1: + return active.one() + elif profile.count() > 1: utils.force_redirect(utils.url_for("profile.pick", **redirect_args)) - elif count == 1: - return query.one() else: utils.force_redirect(utils.url_for("profile.create_quick", **redirect_args)) -- GitLab