Commit b1d5273a by Victor Shnayder

add messages, headers for sections

parent 546096e8
...@@ -61,12 +61,18 @@ class StaffGrading ...@@ -61,12 +61,18 @@ class StaffGrading
@backend = backend @backend = backend
@error_container = $('.error-container') @error_container = $('.error-container')
@message_container = $('.message-container')
@submission_container = $('.submission-container') @submission_container = $('.submission-container')
@rubric_container = $('.rubric-container') @rubric_container = $('.rubric-container')
@submission_wrapper = $('.submission-wrapper')
@rubric_wrapper = $('.rubric-wrapper')
@button = $('.submit-button') @button = $('.submit-button')
@button.click @clicked @button.click @clicked
@state = state_no_data @state = state_no_data
@submission_wrapper.hide()
@rubric_wrapper.hide()
@get_next_submission() @get_next_submission()
...@@ -102,26 +108,35 @@ class StaffGrading ...@@ -102,26 +108,35 @@ class StaffGrading
@update() @update()
no_more: () -> no_more: () ->
@submission_container.html('')
@rubric_container.html('')
@state = state_no_data @state = state_no_data
@update() @update()
update: () -> update: () ->
# make button state and actions right # make button and div state match the state. Idempotent.
if @state == state_error if @state == state_error
@set_button_text('Try loading again') @set_button_text('Try loading again')
else if @state == state_grading else if @state == state_grading
@submission_wrapper.show()
@rubric_wrapper.show()
@set_button_text('Submit') @set_button_text('Submit')
else if @state == state_no_data else if @state == state_no_data
@submission_wrapper.hide()
@rubric_wrapper.hide()
@message_container.html('Nothing to grade')
@set_button_text('Re-check for submissions') @set_button_text('Re-check for submissions')
else else
@error('System got into invalid state ' + @state) @error('System got into invalid state ' + @state)
clicked: (event) => clicked: (event) =>
event.preventDefault() event.preventDefault()
# always clear out errors and messages on transition...
@message_container.html('')
@error_container.html('')
if @state == state_error if @state == state_error
@error_container.html('')
@get_next_submission() @get_next_submission()
else if @state == state_grading else if @state == state_grading
@submit_and_get_next() @submit_and_get_next()
...@@ -131,8 +146,6 @@ class StaffGrading ...@@ -131,8 +146,6 @@ class StaffGrading
@error('System got into invalid state ' + @state) @error('System got into invalid state ' + @state)
# for now, just create an instance and load it... # for now, just create an instance and load it...
mock_backend = true mock_backend = true
ajax_url = $('.staff-grading').data('ajax_url') ajax_url = $('.staff-grading').data('ajax_url')
......
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html> <head> <html> <head>
<title></title> <title></title>
<script src="http://code.jquery.com/jquery-latest.js"></script> <script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" src="staff_grading.js"></script> <script type="text/javascript" src="staff_grading.js"></script>
</head> </head>
...@@ -9,11 +9,23 @@ ...@@ -9,11 +9,23 @@
<div class="staff-grading" data-ajax_url="/some_url/"> <div class="staff-grading" data-ajax_url="/some_url/">
<h1>Staff grading</h1> <h1>Staff grading</h1>
<div class="error-container"></div> <div class="error-container">
</div>
<div class="submission-container"></div>
<div class="message-container">
</div>
<div class="rubric-container"></div> <section class="submission-wrapper">
<h3>Submission</h3>
<div class="submission-container">
</div>
</section>
<section class="rubric-wrapper">
<h3>Rubric</h3>
<div class="rubric-container">
</div>
</section>
<div class="submission"> <div class="submission">
<input type="button" value="Submit" class="submit-button" name="show"/> <input type="button" value="Submit" class="submit-button" name="show"/>
......
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