Compare commits
9 Commits
d428645504
...
21e37d197d
Author | SHA1 | Date |
---|---|---|
Kostanjevec | 21e37d197d | |
Kostanjevec | bb2b1c44d0 | |
Kostanjevec | da0bba6a98 | |
Kostanjevec | 3e461f9863 | |
Kostanjevec | a9f731564e | |
Kostanjevec | 1dd8d277a2 | |
Kostanjevec | 69cccb8eb9 | |
Kostanjevec | faeb857666 | |
Kostanjevec | e31c3e91e6 |
2
app.py
2
app.py
|
@ -7,6 +7,7 @@ from menu import bp as menu_bp
|
|||
from upload import bp as upload_bp
|
||||
from share import share
|
||||
from matches import bp as matches_bp
|
||||
from settings import bp as settings_bp
|
||||
|
||||
from create_db import Card, Deck, get_session
|
||||
from config import CONFIG
|
||||
|
@ -146,6 +147,7 @@ def create_app(test_config=None):
|
|||
app.register_blueprint(menu_bp)
|
||||
app.register_blueprint(upload_bp)
|
||||
app.register_blueprint(matches_bp)
|
||||
app.register_blueprint(settings_bp)
|
||||
app.add_url_rule('/', endpoint='index')
|
||||
|
||||
return app
|
||||
|
|
11
matches.py
11
matches.py
|
@ -12,7 +12,7 @@ def get_matches(user_id):
|
|||
|
||||
list_of_matches = []
|
||||
|
||||
#in all shared cards for the ones you votes yes
|
||||
#in all shared cards for the ones you voted 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 == []:
|
||||
|
@ -49,9 +49,10 @@ def index():
|
|||
|
||||
users = dbsession.query(User)
|
||||
names_by_ids = {}
|
||||
|
||||
emails_by_ids = {}
|
||||
|
||||
for id in user_ids:
|
||||
names_by_ids[id] = users.get(id).username
|
||||
emails_by_ids[id] = users.get(id).email
|
||||
|
||||
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, users=users)
|
||||
return render_template("matches.html", username=username, list_of_matches=list_of_matches, names_by_ids=names_by_ids, emails_by_ids=emails_by_ids, users=users)
|
||||
|
|
8
menu.py
8
menu.py
|
@ -6,6 +6,7 @@ from config import CONFIG
|
|||
from create_db import Deck, Card, get_session
|
||||
|
||||
from deck import get_deck, probabilistic_deck_generator
|
||||
from settings import get_settings
|
||||
from auth import login
|
||||
|
||||
bp = Blueprint('menu', __name__, url_prefix='/menu')
|
||||
|
@ -65,11 +66,12 @@ def index():
|
|||
elif action == "upload":
|
||||
return redirect(url_for("upload.index"))
|
||||
elif action == "settings":
|
||||
pass
|
||||
settings = get_settings(user_id)
|
||||
return render_template("settings.html", username=username, user_id=user_id, settings=settings)
|
||||
elif action == "instructions":
|
||||
pass
|
||||
return render_template("instructions.html", username=username, user_id=user_id)
|
||||
elif action == "about":
|
||||
pass
|
||||
return render_template("about.html", username=username, user_id=user_id)
|
||||
|
||||
|
||||
return render_template("menu/menu.html", username=username, deck_status=deck_status)
|
||||
|
|
|
@ -0,0 +1,59 @@
|
|||
from flask import flash, redirect, render_template, url_for, Blueprint, request, session
|
||||
from create_db import User, get_session
|
||||
import json
|
||||
|
||||
|
||||
bp = Blueprint('settings', __name__, url_prefix='/settings')
|
||||
dbsession = get_session()
|
||||
|
||||
def get_settings(user_id):
|
||||
"""get settings from db, turns it into a dict and returns it"""
|
||||
|
||||
user = dbsession.query(User).get(user_id)
|
||||
settings_db = user.settings
|
||||
if settings_db == "":
|
||||
#userji se zaenkrat generirajo brez settingsov aka empty string, zato dodamo te defaulte
|
||||
settings_dict = {
|
||||
"max_new" : 5,
|
||||
"max_due" : 5,
|
||||
"max_shared" : 5,
|
||||
}
|
||||
else:
|
||||
settings_dict = json.loads(settings_db)
|
||||
|
||||
print("this is it: ", settings_dict)
|
||||
return settings_dict
|
||||
|
||||
|
||||
@bp.route("/save_settings", methods=["GET", "POST"])
|
||||
def save_settings():
|
||||
"""takes a dict of settings turns it into json and updates the database with it"""
|
||||
|
||||
user_id = session['user_id']
|
||||
username = session['username']
|
||||
|
||||
if request.method == "GET":
|
||||
settings_old = get_settings(user_id)
|
||||
return render_template("settings.html", username=username, settings=settings_old)
|
||||
|
||||
if request.method == "POST":
|
||||
print('this is the form ', request.form)
|
||||
|
||||
#request form stuff
|
||||
settings_dict = {
|
||||
"max_new" : request.form.get('max_new', False),
|
||||
"max_due" : request.form.get('max_due', False),
|
||||
"max_shared" : request.form.get('max_shared', False),
|
||||
}
|
||||
|
||||
print('this is the dict: ', settings_dict)
|
||||
settings_json = json.dumps(settings_dict)
|
||||
print('this is the json: ', settings_json)
|
||||
user = dbsession.query(User).get(user_id)
|
||||
|
||||
user.settings = settings_json
|
||||
dbsession.commit()
|
||||
dbsession.close()
|
||||
flash("settings updated")
|
||||
|
||||
return render_template("settings.html", username=username, settings=settings_dict)
|
|
@ -0,0 +1,10 @@
|
|||
{% extends 'base.html' %}
|
||||
|
||||
{% block header %}
|
||||
<head>About</head>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<p>Contentmatcher is a <a href="https://gia.kompot.si/about.php">General Intelligence Agency of Ljubljana</a> prototype.</p>
|
||||
|
||||
{% endblock %}
|
|
@ -35,7 +35,13 @@
|
|||
{% endfor %}
|
||||
</TD>
|
||||
<TD>
|
||||
<a href="mailto:email@placeholder.com">send email</a>
|
||||
<a href="mailto:
|
||||
{% for card in match %}
|
||||
{{ emails_by_ids[card['owner_id']] }}
|
||||
{% endfor %}
|
||||
">
|
||||
|
||||
send email</a>
|
||||
</TD>
|
||||
</TR>
|
||||
{% endfor %}
|
||||
|
|
|
@ -6,16 +6,15 @@
|
|||
|
||||
{% block content %}
|
||||
<form method="post">
|
||||
{% if deck_status == "old" %}
|
||||
<button type="subimt" name="menu" value="new_session">Continiue Session</button> <br />
|
||||
{% if deck_status == "old" %}
|
||||
<button type="submit" name="menu" value="new_session">Continiue Session</button> <br />
|
||||
{% else %}
|
||||
<button type="subimt" name="menu" value="new_session">New Session</button> <br />
|
||||
<button type="submit" name="menu" value="new_session">New Session</button> <br />
|
||||
{% endif %}
|
||||
|
||||
<button type="subimt" name="menu" value="matches">Matches</button> <br />
|
||||
<button type="subimt" name="menu" value="upload">Upload</button> <br />
|
||||
<button type="subimt" name="menu" value="settings">Settings</button> <br />
|
||||
<button type="subimt" name="menu" value="instructions">Instructions</button> <br />
|
||||
<button type="subimt" name="menu" value="about">About</button>
|
||||
<button type="submit" name="menu" value="matches">Matches</button> <br />
|
||||
<button type="submit" name="menu" value="upload">Upload</button> <br />
|
||||
<button type="submit" name="menu" value="settings">Settings</button> <br />
|
||||
<button type="submit" name="menu" value="instructions">Instructions</button> <br />
|
||||
<button type="submit" name="menu" value="about">About</button>
|
||||
</form>
|
||||
{% endblock %}
|
|
@ -0,0 +1,17 @@
|
|||
{% extends 'base.html' %}
|
||||
quantity
|
||||
{% block header %}
|
||||
<head>Settings</head>
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<form method="post" action={{ url_for('settings.save_settings') }}>
|
||||
<label for="quantity">Maximum new cards per session</label>
|
||||
<input type="number" id="quantity" name="max_new" value= '{{ settings['max_new'] }}' min="0" required="required">
|
||||
<label for="quantity">Maximum seen cards per session</label>
|
||||
<input type="number" id="quantity" name="max_due" value='{{ settings['max_due'] }}' min="0" required="required">
|
||||
<label for="quantity">Maximum shared cards per session</label>
|
||||
<input type="number" id="quantity" name="max_shared" value='{{ settings['max_shared'] }}' min="0" required="required">
|
||||
<input type="submit" value="Save">
|
||||
</form>
|
||||
{% endblock %}
|
Loading…
Reference in New Issue