Commit 79827d1a authored by Kento HASEGAWA's avatar Kento HASEGAWA

Support for the problem viewer and dragging blocks in viewers

parent fb0ef6af
......@@ -16,9 +16,9 @@ def webui_index():
# return adc2019system.role.role
return render_template('index.html')
@webui.route('/view/solution')
def webui_view_solution():
return render_template('view-solution.html')
@webui.route('/viewer')
def webui_viewer():
return render_template('viewer.html')
@webui.route('/part/problems')
def webui_part_problems():
......
......@@ -106,16 +106,17 @@ class Host(object):
else:
return {'status': 'unknown request'}
def get_solution_for_viewer(self, problem_key, solution_id):
def get_viewer_data(self, problem_key, solution_id):
problem = self.get_problem(problem_key)
if problem is None:
return None
problem_data = problem.get_d3json()
solution = problem.get_solution(solution_id)
if solution is None:
return None
solution_data = solution.get_d3json()
if solution_id is None:
solution_data = None
else:
solution = problem.get_solution(solution_id)
solution_data = solution.get_d3json()
return {
'problem': problem_data,
......@@ -146,10 +147,10 @@ class Host(object):
elif cmd == 'stop':
self.worker_manager.request_stop()
return {}
elif cmd == 'view/solution':
elif cmd == 'view':
problem_key = params['problem']
solution_id = params['solution']
return self.get_solution_for_viewer(problem_key, solution_id)
return self.get_viewer_data(problem_key, solution_id)
elif cmd == 'adccli/login':
with open('path-to-adccli-login', 'r') as fp:
d = json.load(fp)
......
This diff is collapsed.
......@@ -38,7 +38,7 @@ class StatusView {
_this.container.find('.solution-detail-row.valid-solution td').click((e) => {
var solution_id = $(e.target).parent("tr").data("solution-id");
var problem_name = $(e.target).parent("tr").data("problem");
var viewer_url = "/view/solution#" + problem_name + "/" + solution_id;
var viewer_url = "/viewer#" + problem_name + "/" + solution_id;
window.open(viewer_url, "_blank");
});
......
<div>
<h4 class='inline-heading' id='problem-status-title'>{{problem.name}}</h4>
<a href="/viewer#{{problem.name}}" target="_blank">Viewer</a>
{#% # if localmode %#}
<button class="btn btn-primary btn-lg start-button" type="button" data-qname="{{problem.name}}">Start</button>
<!-- <button class="btn btn-danger btn-lg stop-button" type="button" data-qname="all">Stop</button> -->
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment