diff options
author | gasperfele@fri1.uni-lj.si <gasperfele@fri1.uni-lj.si@5cf9fbd1-b2bc-434c-b4b7-e852f4f63414> | 2016-10-07 20:27:08 +0000 |
---|---|---|
committer | gasperfele@fri1.uni-lj.si <gasperfele@fri1.uni-lj.si@5cf9fbd1-b2bc-434c-b4b7-e852f4f63414> | 2016-10-07 20:27:08 +0000 |
commit | aec9d263e7ec6202c9ae74d4b1999ec458cc4d25 (patch) | |
tree | 631f7a675bd7c6abac35d9bb146d42de77514b26 /kpov_judge/web/kpov_judge/kpov_judge.py | |
parent | d1109cba5acd39402f759292162cb687bf9c85fc (diff) |
An image depicting the setup is now shown for each task
git-svn-id: https://svn.lusy.fri.uni-lj.si/kpov-public-svn/kpov-public@358 5cf9fbd1-b2bc-434c-b4b7-e852f4f63414
Diffstat (limited to 'kpov_judge/web/kpov_judge/kpov_judge.py')
-rwxr-xr-x | kpov_judge/web/kpov_judge/kpov_judge.py | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/kpov_judge/web/kpov_judge/kpov_judge.py b/kpov_judge/web/kpov_judge/kpov_judge.py index d02ba99..21233f4 100755 --- a/kpov_judge/web/kpov_judge/kpov_judge.py +++ b/kpov_judge/web/kpov_judge/kpov_judge.py @@ -1,7 +1,7 @@ #!/usr/bin/env python import flask -from flask import Flask, g, session, redirect, url_for, abort, render_template, flash, app, request +from flask import Flask, g, session, redirect, url_for, abort, render_template, flash, app, request, Response import pymongo import json import random @@ -104,11 +104,18 @@ def results_json(task_id): return json.dumps(results_post(task_id, json.loads(flask.app.request.form['results']))) return json.dumps(results_dict(task_id)) -@app.route('/tasks/<task_id>/setup.svg', methods=['GET']) -def setup_svg(task_id): - networks = db.networks.find({'task_id': task_id}) - computers = db.computers_meta.find({'task_id': task_id}) - return draw_setup(computers, networks) +@app.route('/tasks/<task_id>/<lang>/setup.<ending>', methods=['GET']) +def setup_svg(task_id, lang, ending): + db = g.db + fmt, mimetype = { + 'svg':('svg', 'image/svg+xml'), + 'png':('png', 'image/png'), + }[ending] + networks = list(db.networks.find({'task_id': task_id})) + computers = list(db.computers_meta.find({'task_id': task_id})) + return Response(draw_setup(computers, networks, format=fmt, + icon_path=app.config['STATIC_DIR']), + mimetype=mimetype) @app.route('/tasks/<task_id>/<lang>/results.html') def results_html(task_id, lang): |