diff --git a/app/controllers/exercise_controller.rb b/app/controllers/exercise_controller.rb index dd4e543ff..f1b90dba8 100644 --- a/app/controllers/exercise_controller.rb +++ b/app/controllers/exercise_controller.rb @@ -22,6 +22,7 @@ class ExerciseController < ApplicationController def show @exercise = Exercise.find params[:id] + @is_teacher = User.current.allowed_to?(:as_teacher,@course) || User.current.admin? if @exercise.exercise_status != 2 && (!User.current.allowed_to?(:as_teacher,@course) || User.current.admin?) render_403 return diff --git a/app/views/exercise/_edit_head.html.erb b/app/views/exercise/_edit_head.html.erb index 9868a4465..3090cc2c5 100644 --- a/app/views/exercise/_edit_head.html.erb +++ b/app/views/exercise/_edit_head.html.erb @@ -17,7 +17,7 @@ " > <%= calendar_for('exercise_end_time')%> -
考试时长:分钟
+
测验时长:分钟
<% end %> - -<%# exercise.exercise_questions.each do |exercise_question|%> - -<%# end %> \ No newline at end of file + \ No newline at end of file diff --git a/app/views/exercise/_exercise_form.html.erb b/app/views/exercise/_exercise_form.html.erb index 934e51b71..6e0953e74 100644 --- a/app/views/exercise/_exercise_form.html.erb +++ b/app/views/exercise/_exercise_form.html.erb @@ -134,6 +134,12 @@ ""+ "
"); } + function add_candidate_answer(doc) + { + doc.parent().after("
  • " + + ""+ + "
  • "); + } function remove_single_answer(doc) { if(doc.parent().siblings("li").length == 0) @@ -145,32 +151,6 @@ doc.parent().remove(); } } - - function poll_submit() - { - var head_form = $("form.edit_exercise"); - var question_form = $("form.new_exercise_question"); - <% current_score = get_current_score @exercise %> - var score = <%=current_score %>; - if(head_form.length > 0){ - alert("请先保存测验标题及测验基本信息。"); - } else if(question_form.length > 0) { - alert("请先保存正在编辑的题目。"); - } else if( score < 100) { - alert(""); - } - else{ - $('#ajax-modal').html('<%#= escape_javascript(render :partial => 'poll_submit', locals: { :poll => @exercise,:is_remote => false}) %>'); - showModal('ajax-modal', '310px'); - $('#ajax-modal').css('height','120px'); - $('#ajax-modal').siblings().remove(); - $('#ajax-modal').before("" + - ""); - $('#ajax-modal').parent().removeClass("alert_praise"); - $('#ajax-modal').parent().css("top","").css("left",""); - $('#ajax-modal').parent().addClass("popbox_polls"); - } - }
    @@ -196,11 +176,8 @@
    -
    提交 -
    - - -
    +
    + <%= render :partial => 'exercise_submit', :locals => {:exercise => @exercise} %>
    diff --git a/app/views/exercise/_exercise_student.html.erb b/app/views/exercise/_exercise_student.html.erb new file mode 100644 index 000000000..5a139fd5d --- /dev/null +++ b/app/views/exercise/_exercise_student.html.erb @@ -0,0 +1,127 @@ + +
    +
    +
    +

    <%= exercise.exercise_name%>

    +
    开始时间:<%=format_time(exercise_student.start_at.to_s) %>测验时长:<%=exercise.time %>分钟 +
    剩余时长:1 小时 30 分钟 0 秒
    +
    +
    <%= exercise.exercise_description.nil? ? "" : exercise.exercise_description.html_safe%>
    +
    +
    +
    + <% mc_question_list = exercise_questions.where("question_type=1") %> + <% mcq_question_list = exercise_questions.where("question_type=2") %> + <% single_question_list = exercise_questions.where("question_type=3") %> +
    "> +

    单选题

    + <% mc_question_list.each do |exercise_question| %> +
    +
    +
    +
    第<%= exercise_question.question_number%>题.(<%= exercise_question.question_score %>分)
    + <%= exercise_question.question_title %> +
    +
    +
    + + + <% exercise_question.exercise_choices.reorder("choice_position").each_with_index do |exercise_choice,index| %> + + + + <% end %> + +
    + +
    +
    +
    +
    +
    + <% end %> +
    +
    "> +

    多选题

    + <% mcq_question_list.each do |exercise_question| %> +
    +
    +
    +
    第<%= exercise_question.question_number%>题.(<%= exercise_question.question_score %>分)
    + <%= exercise_question.question_title %> +
    +
    +
    + + + <% exercise_question.exercise_choices.reorder("choice_position").each_with_index do |exercise_choice,index| %> + + + + <% end %> + +
    + +
    +
    +
    +
    +
    + <% end %> +
    +
    "> +

    填空题

    + <% single_question_list.each do |exercise_question| %> +
    +
    +
    +
    第<%= exercise_question.question_number%>题.(<%= exercise_question.question_score %>分)
    + <%= exercise_question.question_title %> +
    +
    +
    + +
    +
    +
    +
    + <% end %> +
    + +
    + +
    + +
    \ No newline at end of file diff --git a/app/views/exercise/_exercise_submit.html.erb b/app/views/exercise/_exercise_submit.html.erb new file mode 100644 index 000000000..e242eacc7 --- /dev/null +++ b/app/views/exercise/_exercise_submit.html.erb @@ -0,0 +1,35 @@ +<%= form_for("", + :html => { :multipart => true }, + :url => {:controller => 'exercise', + :action => 'commit_exercise' + },:remote=>true ) do |f| %> +
    + 提交 +
    + + +
    +
    +<% end %> + + \ No newline at end of file diff --git a/app/views/exercise/_exercise_submit_info.html.erb b/app/views/exercise/_exercise_submit_info.html.erb new file mode 100644 index 000000000..66d8da985 --- /dev/null +++ b/app/views/exercise/_exercise_submit_info.html.erb @@ -0,0 +1,35 @@ + + + + + + + +
    +
    +
    +

    当前测验分数为<%=score %>分, +
    + 是否确定提交该测验? +

    + +
    +
    +
    +
    + + + diff --git a/app/views/exercise/_new_single.html.erb b/app/views/exercise/_new_single.html.erb index ad5af1937..6e088cd74 100644 --- a/app/views/exercise/_new_single.html.erb +++ b/app/views/exercise/_new_single.html.erb @@ -21,21 +21,21 @@
  • - +
  • - +
  • - +
  • diff --git a/app/views/exercise/_show_head.html.erb b/app/views/exercise/_show_head.html.erb index ec9f06035..ac7c1c162 100644 --- a/app/views/exercise/_show_head.html.erb +++ b/app/views/exercise/_show_head.html.erb @@ -5,7 +5,7 @@
    发布时间:<%=Time.parse(format_time(exercise.publish_time)).strftime("%Y-%m-%d %H:%M:%S") if exercise.publish_time%> 截止时间:<%=Time.parse(format_time(exercise.end_time)).strftime("%Y-%m-%d %H:%M:%S") if exercise.end_time %> - 考试时长:<%= exercise.time %>分钟
    + 测验时长:<%= exercise.time %>分钟
    <%= exercise.exercise_description.nil? ? "" : exercise.exercise_description.html_safe%>
    diff --git a/app/views/exercise/_show_single.html.erb b/app/views/exercise/_show_single.html.erb index 4e36530ed..30a0e354c 100644 --- a/app/views/exercise/_show_single.html.erb +++ b/app/views/exercise/_show_single.html.erb @@ -44,21 +44,21 @@ '
  • '+ ''+ ''+ - ''+ + ''+ ''+ '
  • '+ '
    '+ '
  • '+ ''+ ''+ - ''+ + ''+ ''+ '
  • '+ '
    '+ '
  • '+ ''+ ''+ - ''+ + ''+ ''+ '
  • '+ '
    '+ diff --git a/app/views/exercise/create_exercise_question.js.erb b/app/views/exercise/create_exercise_question.js.erb index 37199a70e..9047cfeda 100644 --- a/app/views/exercise/create_exercise_question.js.erb +++ b/app/views/exercise/create_exercise_question.js.erb @@ -1,8 +1,10 @@ <% if @is_insert %> $("#poll_content").html('<%= escape_javascript(render :partial => 'exercise_content', :locals => {:exercise => @exercise})%>'); + $("#exercise_submit").html("<%= escape_javascript(render :partial => 'exercise_submit', :locals => {:exercise => @exercise}) %>"); <% else %> $("#new_exercise_question").html('<%= escape_javascript(render :partial => 'new_question', :locals => {:exercise => @exercise}) %>'); $("#new_poll_question").html(""); + $("#exercise_submit").html("<%= escape_javascript(render :partial => 'exercise_submit', :locals => {:exercise => @exercise}) %>"); <%if @exercise_questions.question_type == 1%> $("#mc_question_list").show().append("
    " + "
    " + @@ -33,26 +35,6 @@ "
    " + "
    "); <% end %> -/*$("#poll_content").append("
    " + - "
    " + - "<%# if @exercise_questions.question_type == 1%>" + - "<%#= escape_javascript(render :partial => 'show_MC', :locals => {:exercise_question => @exercise_questions}) %>" + - "<%# elsif @exercise_questions.question_type == 2%>" + - "<%#= escape_javascript(render :partial => 'show_MCQ', :locals => {:exercise_question => @exercise_questions}) %>" + - "<%# elsif @exercise_questions.question_type == 3%>" + - "<%#= escape_javascript(render :partial => 'show_single', :locals => {:exercise_question => @exercise_questions}) %>" + - "<%# end%>" + - "
    " + - "" + - "
    ");*/ $("#current_score").html("<%=get_current_score @exercise %>分"); $("#current_score_div").show(); <% end %> diff --git a/app/views/exercise/delete_exercise_question.js.erb b/app/views/exercise/delete_exercise_question.js.erb index eb6300eb5..d07a80b47 100644 --- a/app/views/exercise/delete_exercise_question.js.erb +++ b/app/views/exercise/delete_exercise_question.js.erb @@ -1 +1,3 @@ -$("#poll_content").html("<%= escape_javascript(render :partial => 'exercise_content', :locals => {:exercise => @exercise}) %>"); \ No newline at end of file +$("#poll_content").html("<%= escape_javascript(render :partial => 'exercise_content', :locals => {:exercise => @exercise}) %>"); +$("#current_score").html("<%=get_current_score @exercise %>分"); +$("#exercise_submit").html("<%= escape_javascript(render :partial => 'exercise_submit', :locals => {:exercise => @exercise}) %>"); \ No newline at end of file diff --git a/app/views/exercise/show.html.erb b/app/views/exercise/show.html.erb index b23c1c517..6638020d1 100644 --- a/app/views/exercise/show.html.erb +++ b/app/views/exercise/show.html.erb @@ -1 +1,5 @@ -111111 \ No newline at end of file +<% if @is_teacher %> + +<% else %> + <%=render :partial => 'exercise_student', :locals => {:exercise =>@exercise, :exercise_questions => @exercise_questions,:exercise_student => @exercise_student} %> +<% end %> \ No newline at end of file diff --git a/app/views/exercise/update.js.erb b/app/views/exercise/update.js.erb index 65b8dd327..9724b2bd1 100644 --- a/app/views/exercise/update.js.erb +++ b/app/views/exercise/update.js.erb @@ -1,4 +1,5 @@ $("#polls_head_show").html("<%= escape_javascript(render :partial => 'show_head', :locals => {:exercise => @exercise}) %>"); $("#polls_head_edit").html("<%= escape_javascript(render :partial => 'edit_head', :locals => {:exercise => @exercise}) %>"); $("#polls_head_edit").hide(); -$("#polls_head_show").show(); \ No newline at end of file +$("#polls_head_show").show(); +$("#exercise_submit").html("<%= escape_javascript(render :partial => 'exercise_submit', :locals => {:exercise => @exercise}) %>"); \ No newline at end of file diff --git a/app/views/exercise/update_exercise_question.js.erb b/app/views/exercise/update_exercise_question.js.erb index 0f0a23cec..73aea3140 100644 --- a/app/views/exercise/update_exercise_question.js.erb +++ b/app/views/exercise/update_exercise_question.js.erb @@ -17,3 +17,4 @@ $("#poll_questions_<%= @exercise_question.id%>").html("
    {:exercise => @exercise}) %>");