from flask import ( Blueprint, redirect, render_template, request, session, url_for ) from requests import get from config import CONFIG from create_db import Card, User, get_session bp = Blueprint('matches', __name__, url_prefix='/matches') def get_matches(user_id): dbsession = get_session() list_of_matches = [] #in all shared cards for the ones you votes yes all_cards = dbsession.query(Card) all_shared_of_user_of_ir_1 = all_cards.filter(Card.share_id != "0", Card.owner_id == user_id, Card.interest_rate == 1).all() if all_shared_of_user_of_ir_1 == []: return list_of_matches # see who else voted yes for c in all_shared_of_user_of_ir_1: others_yes = all_cards.filter(Card.share_id == c.share_id, Card.interest_rate == 1).all() if others_yes == []: pass else: list_of_matches.append(others_yes) return list_of_matches @bp.route("/", methods=("GET", "POST")) def index(): if not 'user_id' in session: redirect(url_for('index')) user_id = session["user_id"] username = session["username"] list_of_matches = get_matches(user_id) #@TODO tu bi morali dodati še nek users object, da own_id pretvorimo v username #relevant userids, but might be uselessly duplicated user_ids = [] for match in list_of_matches: for card in match: user_ids.append(card.owner_id) users = dbsession.query(User) names_by_ids = {} for id in user_ids: names_by_ids[id] = users.get(id).username return render_template("matches.html", username=username, list_of_matches=list_of_matches, names_by_ids=names_by_ids)