Merge branch 'develop' into 'develop'

新功能及bug修复



See merge request !121
This commit is contained in:
陈晓婷 2017-01-13 11:20:48 +08:00
commit d93f55e28a
7 changed files with 41 additions and 24 deletions

View File

@ -180,6 +180,12 @@ class HomeworkCommonController < ApplicationController
@homework_detail_group.base_on_project = params[:base_on_project] ? 1 : 0
end
if anonymous != @homework.anonymous_comment
@homework.student_works.where("work_status != 0").each do |student_work|
student_work.save
end
end
@homework.anonymous_comment = params[:homework_common][:anonymous_comment] ? params[:homework_common][:anonymous_comment].to_i : 1
if @homework.save
homework_detail_manual.save if homework_detail_manual
@ -196,7 +202,7 @@ class HomeworkCommonController < ApplicationController
elsif params[:is_manage] == "2"
redirect_to my_homeworks_user_path(User.current.id)
elsif @hw_status == 1
redirect_to user_path(User.current.id)
redirect_to user_course_community_path(User.current.id)
elsif @hw_status == 2
redirect_to course_path(@course.id)
elsif @hw_status == 5

View File

@ -43,10 +43,10 @@ class ZipdownController < ApplicationController
zip_homework_common homework
}
elsif params[:obj_class] == "Work"
homework = Work.find params[:obj_id]
render_403 if User.current.admin_of_contest?(homework.contest)
zipfile = checkfileSize(homework.contestant_works) {
zip_homework_common homework
contest_work = Work.find params[:obj_id]
render_403 if User.current.admin_of_contest?(contest_work.contest)
zipfile = checkfileSize(contest_work.contestant_works) {
zip_contest_work contest_work
}
else
logger.error "[ZipDown#assort] ===> #{params[:obj_class]} unKown !!"

View File

@ -72,7 +72,7 @@ module ZipService
digests = []
homework_common.contestant_works.each do |work|
unless work.attachments.empty?
out_file = zip_student_work_by_user(work)
out_file = zip_contestant_work_by_user(work)
bid_homework_path << out_file.file_path
digests << out_file.file_digest
@ -151,7 +151,7 @@ module ZipService
end
def zip_student_work_by_user(work)
def zip_contestant_work_by_user(work)
homeworks_attach_path = []
not_exist_file = []
# 需要将所有homework.attachments遍历加入zip
@ -169,13 +169,13 @@ module ZipService
#单个文件的话,不需要压缩,只改名
out_file = nil
if homeworks_attach_path.size == 1
out_file = find_or_pack(work.homework_common_id, work.user_id, digests.sort){
out_file = find_or_pack(work.work_id, work.user_id, digests.sort){
des_path = "#{OUTPUT_FOLDER}/#{make_zip_name(work)}_#{File.basename(homeworks_attach_path.first)}"
FileUtils.cp homeworks_attach_path.first, des_path
des_path
}
else
out_file = find_or_pack(work.homework_common_id, work.user_id, digests.sort){
out_file = find_or_pack(work.work_id, work.user_id, digests.sort){
zipping("#{make_zip_name(work)}.zip",
homeworks_attach_path, OUTPUT_FOLDER, true, not_exist_file)
}

View File

@ -80,14 +80,15 @@
<li>
<%= link_to "导出提交成绩", contestant_works_path(:work => @contestwork.id,:order => @order, :sort => @b_sort, :name => @name, :group => @group, :format => 'xls'),:class=>'hworkExport postTypeGrey', :id => "export_student_work"%>
</li>
<!--<li>-->
<!--<%# if @homework.student_works.empty?%>-->
<!--<%#= link_to "导出作业附件", "javascript:void(0)", class: "hworkExport resourcesGrey", :onclick => "alert('没有学生提交作业,无法下载附件')" %>-->
<!--<%# else%>-->
<!--<%#= link_to "导出作业附件", zipdown_assort_path(obj_class: @homework.class, obj_id: @homework, format: :json),-->
<!--remote: true, class: "hworkExport resourcesGrey", :id => "download_homework_attachments" %>-->
<!--<%# end%>-->
<!--</li> -->
<li>
<% if @contestwork.contestant_works.has_committed.empty?%>
<a href="javascript:void(0)" class="hworkExport resourcesGrey" onclick="notice_box('没有学生提交作业,无法下载附件')">导出作业附件</a>
<%#= link_to "导出作业附件", "javascript:void(0)", class: "hworkExport resourcesGrey", :onclick => "alert('没有学生提交作业,无法下载附件')" %>
<% else%>
<%= link_to "导出作业附件", zipdown_assort_path(obj_class: @contestwork.class, obj_id: @contestwork, format: :json),
remote: true, class: "hworkExport resourcesGrey", :id => "download_homework_attachments" %>
<% end%>
</li>
</ul>
</li>
</ul>

View File

@ -126,7 +126,7 @@
<%= link_to "导出作业成绩", student_work_index_path(:homework => @homework.id,:order => @order, :sort => @b_sort, :name => @name, :group => @group, :format => 'xls'),:class=>'hworkExport postTypeGrey', :id => "export_student_work"%>
</li>
<li>
<% if @homework.student_works.empty?%>
<% if @homework.student_works.has_committed.empty?%>
<%= link_to "导出作业附件", "javascript:void(0)", class: "hworkExport resourcesGrey", :onclick => "alert('没有学生提交作业,无法下载附件')" %>
<% else%>
<%= link_to "导出作业附件", zipdown_assort_path(obj_class: @homework.class, obj_id: @homework, format: :json),

View File

@ -57,10 +57,14 @@
<% end %>
});
function checked_val() {
if ($("#anonymous_comment").length > 0){
if ($("#anonymous_comment").is(":checked")) {
$("#anonymous_comment").val(0);
$("#real_anonymous_comment").val(0);
} else {
$("#anonymous_comment").val(1);
$("#real_anonymous_comment").val(1);
}
}
}
function nh_reset_homework_form(params){
@ -232,11 +236,13 @@
</div>
<% if !edit_mode || edit_mode && homework.homework_detail_manual.comment_status < 2 %>
<div class="fr f14 ml10" style="margin-top: 4px;">
<input type="checkbox" name="homework_common[anonymous_comment]" value="<%=edit_mode ? homework.anonymous_comment : 1 %>" id="anonymous_comment"/>
<input type="checkbox" value="<%=edit_mode ? homework.anonymous_comment : 1 %>" id="anonymous_comment"/>
<span class="f14 c_grey">启用匿评</span>
<!--<span id="anonymous_hint" style="display: none; font-size: 12px;" class="c_red">更改后评分比例将恢复默认值</span>-->
</div>
<% end %>
<input type="hidden" name="homework_common[anonymous_comment]" value="<%=edit_mode ? homework.anonymous_comment : 1 %>" id="real_anonymous_comment"/>
</div>
<div class="cl"></div>
<p id="homework_end_time_span" class="c_red mt5"></p>

View File

@ -73,7 +73,7 @@ function hidden_homework_score_form()
}
///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////新建课程相关
//验证课程名称
//验证班级名称
function regex_course_name(str)
{
var name = $.trim($("#"+str+"_course_name").val());
@ -90,16 +90,20 @@ function regex_course_name(str)
if(name.length < 2)
{
$("#"+str+"_course_name_notice").show();
$("#"+str+"_course_name").css('border', "2px solid red");
return false;
}
else if(name.indexOf(syl_title) != 0){
$("#"+str+"_course_name_notice").html("请参照正确示例规范,应该以课程名称开头命名");
$("#"+str+"_course_name_notice").show();
$("#"+str+"_course_name").focus();
$("#"+str+"_course_name").css('border', "2px solid red");
return false;
}
else
{
$("#"+str+"_course_name_notice").hide();
$("#"+str+"_course_name").css('border', "1px solid #ddd");
return true;
}
}