summaryrefslogtreecommitdiff
path: root/kpov_judge/web/kpov_judge/kpov_judge.py
diff options
context:
space:
mode:
authorgasperfele@fri1.uni-lj.si <gasperfele@fri1.uni-lj.si@5cf9fbd1-b2bc-434c-b4b7-e852f4f63414>2015-03-17 19:03:57 +0000
committergasperfele@fri1.uni-lj.si <gasperfele@fri1.uni-lj.si@5cf9fbd1-b2bc-434c-b4b7-e852f4f63414>2015-03-17 19:03:57 +0000
commitb836303b7f62b94b6fd6525ca7a753ef23102ce7 (patch)
treeaf6d30fb1c7882dc3d765b1f0973d8bbba1ac912 /kpov_judge/web/kpov_judge/kpov_judge.py
parenta03bb7d1e2e2c58290f6e51401a6b8a0ff37737d (diff)
Added parameter substitution in task instructions
git-svn-id: https://svn.lusy.fri.uni-lj.si/kpov-public-svn/kpov-public@291 5cf9fbd1-b2bc-434c-b4b7-e852f4f63414
Diffstat (limited to 'kpov_judge/web/kpov_judge/kpov_judge.py')
-rwxr-xr-xkpov_judge/web/kpov_judge/kpov_judge.py21
1 files changed, 13 insertions, 8 deletions
diff --git a/kpov_judge/web/kpov_judge/kpov_judge.py b/kpov_judge/web/kpov_judge/kpov_judge.py
index 0499b11..7171c7f 100755
--- a/kpov_judge/web/kpov_judge/kpov_judge.py
+++ b/kpov_judge/web/kpov_judge/kpov_judge.py
@@ -42,6 +42,7 @@ def before_request():
@app.route('/')
def root():
student_id = flask.app.request.environ.get('REMOTE_USER', 'Nobody')
+ # env = flask.app.request.environ
tasks = g.db.tasks.find(dict(), {'task_id':1})
if tasks is not None:
task_list = [i['task_id'] for i in tasks]
@@ -198,9 +199,13 @@ def task_greeting(task_id, lang):
# generate the parameters as soon as the student visits
params, meta = get_params(task_id, student_id, db)
try:
+ public_params = dict()
+ for k, v in meta:
+ if meta.get('public', False):
+ public_params[k] = params.get(k, "???")
instructions = db.task_instructions.find({'task_id': task_id})[0]
instructions = instructions.get(lang,
- app.config['DEFAULT_LANG'])
+ app.config['DEFAULT_LANG']).format(**public_params)
except:
try:
instructions = instructions.values()[0]
@@ -209,14 +214,14 @@ def task_greeting(task_id, lang):
computer_list = db.student_computers.find({'task_id':task_id, 'student_id': student_id})
if request.args.get('narediStack', 'false') == 'true':
#db.student_tasks.update({'task_id':task_id, 'student_id': student_id}, {'$set': {'create_openstack': True}}, upsert = True)
- openstackCreated = False # Spremeni na True, ko odkomentiras zgornjo vrstico.
+ openstackCreated = False # Spremeni na True, ko odkomentiras zgornjo vrstico.
else:
- if db.student_tasks.find({'task_id':task_id, 'student_id': student_id, 'openstack_created': True}).count() > 0:
- openstackCreated = True
- elif db.student_tasks.find({'task_id':task_id, 'student_id': student_id, 'create_openstack': True}).count() > 0:
- openstackCreated = True
- else:
- openstackCreated = False
+ if db.student_tasks.find({'task_id':task_id, 'student_id': student_id, 'openstack_created': True}).count() > 0:
+ openstackCreated = True
+ elif db.student_tasks.find({'task_id':task_id, 'student_id': student_id, 'create_openstack': True}).count() > 0:
+ openstackCreated = True
+ else:
+ openstackCreated = False
return render_template('task_greeting.html', computers = computer_list, lang=lang, openstack = openstackCreated, instructions=instructions)
@app.route('/tasks/<task_id>/params.json', methods=['GET', 'POST'])