编辑作品时可编辑分组成员

This commit is contained in:
cxt 2015-12-17 19:06:10 +08:00
parent c7f321475a
commit 3b25616f0c
4 changed files with 87 additions and 16 deletions

View File

@ -215,7 +215,6 @@ class StudentWorkController < ApplicationController
student_work ||= StudentWork.new student_work ||= StudentWork.new
student_work.name = params[:student_work][:name] student_work.name = params[:student_work][:name]
student_work.description = params[:student_work][:description] student_work.description = params[:student_work][:description]
student_work.project_id = params[:student_work][:project_id]
student_work.homework_common_id = @homework.id student_work.homework_common_id = @homework.id
student_work.user_id = User.current.id student_work.user_id = User.current.id
student_work.save_attachments(params[:attachments]) student_work.save_attachments(params[:attachments])
@ -305,15 +304,28 @@ class StudentWorkController < ApplicationController
@work.save_attachments(params[:attachments]) @work.save_attachments(params[:attachments])
render_attachment_warning_if_needed(@work) render_attachment_warning_if_needed(@work)
if @work.save if @work.save
if @homework.homework_type == 3
@student_work_project = @homework.student_work_projects.where("user_id=?",User.current.id).first
student_work_projects = @homework.student_work_projects.where("student_work_id=? and is_leader =?",@work.id,0)
student_work_projects.delete_all
members = params[:group_member_ids].split(',')
for i in 1 .. members.count-1
stu_project = StudentWorkProject.new
stu_project.homework_common_id = @homework.id
stu_project.student_work_id = @work.id
if @homework.homework_detail_group.base_on_project == 1
stu_project.project_id = @student_work_project.project_id
else @homework.homework_detail_group.base_on_project == 0
stu_project.project_id = -1
end
stu_project.user_id = members[i].to_i
stu_project.is_leader = 0
stu_project.save
end
end
course_message = CourseMessage.new(:user_id =>User.current.id,:content=>"edit",:course_message_id=>@work.id,:course_id => @course.id,:course_message_type=>"StudentWork", :status => 9) #作品提交记录 course_message = CourseMessage.new(:user_id =>User.current.id,:content=>"edit",:course_message_id=>@work.id,:course_id => @course.id,:course_message_type=>"StudentWork", :status => 9) #作品提交记录
course_message.save course_message.save
=begin
respond_to do |format|
format.html {
flash[:notice] = l(:notice_successful_edit)
redirect_to student_work_index_url(:homework => @homework.id)
}
=end
@student_work = @work @student_work = @work
respond_to do |format| respond_to do |format|
format.js format.js

View File

@ -92,5 +92,17 @@
url: '<%= url_for(:controller => 'student_work', :action => 'search_course_students') %>'+'?homework='+<%=@homework.id %>, url: '<%= url_for(:controller => 'student_work', :action => 'search_course_students') %>'+'?homework='+<%=@homework.id %>,
type:'get' type:'get'
}); });
<% if defined?(edit_mode) && edit_mode %>
<% pro = @homework.student_work_projects.where("user_id = ?",User.current.id).first.project_id.to_i %>
<% members = @homework.student_work_projects.where("project_id = ? and is_leader =?",pro,0) %>
<% members.each do |member| %>
var link = "<li id='choose_student_<%=member.user_id%>' onclick='delete_student(<%=member.user_id %>);'><%=member.user.show_name %>";
<% unless member.user.user_extensions.student_id == "" %>
link += "(<%=member.user.user_extensions.student_id %>)";
<% end %>
link += "</li>";
$("#choose_students_list").append(link);
<% end %>
<% end %>
}); });
</script> </script>

View File

@ -31,7 +31,11 @@
提示:作品名称和描述中不要出现真实的姓名信息 提示:作品名称和描述中不要出现真实的姓名信息
</div> </div>
<div class="cl"></div> <div class="cl"></div>
<% if @homework.homework_type == 3 %>
<span id="min_num_member" style="display: none"><%=@homework.homework_detail_group.min_num %></span>
<span id="max_num_member" style="display: none"><%=@homework.homework_detail_group.max_num %></span>
<%=hidden_field_tag 'group_member_ids', params[:group_member_ids], :value=>User.current.id %>
<% end %>
<div> <div>
<input type="text" name="student_work[name]" id="student_work_name" placeholder="请简洁的概括作品的功能或特性" class="InputBox W700" maxlength="200" onkeyup="regexStudentWorkName();" value="<%= @work.name%>"> <input type="text" name="student_work[name]" id="student_work_name" placeholder="请简洁的概括作品的功能或特性" class="InputBox W700" maxlength="200" onkeyup="regexStudentWorkName();" value="<%= @work.name%>">
<div class="cl"></div> <div class="cl"></div>
@ -51,6 +55,12 @@
<%= render :partial => 'users/user_homework_attachment', :locals => {:container => @work, :has_program=>false,:has_group=>false} %> <%= render :partial => 'users/user_homework_attachment', :locals => {:container => @work, :has_program=>false,:has_group=>false} %>
</div> </div>
<% if @homework.homework_type == 3 %>
<div class="mt5 fl">
<a href="javascript:void(0);" class="memberBtn fl mt3 mr15" title="请添加小组的其他成员" onclick="show_group_member();">合作成员</a>
</div>
<% end %>
<div class="mt5"> <div class="mt5">
<a href="javascript:void(0);" class="BlueCirBtnMini fr" onclick="popupRegex();edit_student_work(<%= @work.id%>);">确定</a> <a href="javascript:void(0);" class="BlueCirBtnMini fr" onclick="popupRegex();edit_student_work(<%= @work.id%>);">确定</a>
<span class="fr mr10 mt3">或</span> <span class="fr mr10 mt3">或</span>
@ -61,14 +71,44 @@
</div><!----HomeWorkCon end--> </div><!----HomeWorkCon end-->
</div> </div>
<script type="text/javascript"> <script type="text/javascript">
<% if @homework.homework_detail_group %>
$(function(){
<%members = @work.student_work_projects.where("is_leader =?",0) %>
var str = $('#group_members_show').html();
<% members.each do |member| %>
str += '、<%= (User.find member.user_id).show_name %>';
<% end %>
$('#group_members_show').html(str);
$('span.group_detail_info').text('分组人数:<%=@homework.homework_detail_group.min_num %>-<%=@homework.homework_detail_group.max_num %> 人');
});
<% end %>
// 添加组成员
function show_group_member() {
$('#ajax-modal').html('<%= escape_javascript(render :partial => 'student_work/choose_group_member',:locals => {:homework=>@homework,:edit_mode => true}) %>');
showModal('ajax-modal', '528px');
$('#ajax-modal').siblings().remove();
$('#ajax-modal').parent().css("top","").css("left","");
$('#ajax-modal').parent().addClass("addMemberCP");
}
function popupRegex(){ function popupRegex(){
if(regexStudentWorkName()&&regexStudentWorkDescription()) if(regexStudentWorkName()&&regexStudentWorkDescription())
{ {
$('#ajax-modal').html("<div><p align='center' style='margin-top: 35px'>作品信息完整性校验中,请稍等...</p></div>"); if($("#group_member_ids").length > 0) {
showModal('ajax-modal', '500px'); if(regexStudentWorkMember(parseInt($.trim($("#min_num_member").html())),parseInt($.trim($("#max_num_member").html())))) {
$('#ajax-modal').siblings().remove(); $('#ajax-modal').html("<div><p align='center' style='margin-top: 35px'>作品信息完整性校验中,请稍等...</p></div>");
$('#ajax-modal').parent().css("top","").css("left",""); showModal('ajax-modal', '500px');
$('#ajax-modal').parent().addClass("anonymos"); $('#ajax-modal').siblings().remove();
$('#ajax-modal').parent().css("top","").css("left","");
$('#ajax-modal').parent().addClass("anonymos");
}
} else {
$('#ajax-modal').html("<div><p align='center' style='margin-top: 35px'>作品信息完整性校验中,请稍等...</p></div>");
showModal('ajax-modal', '500px');
$('#ajax-modal').siblings().remove();
$('#ajax-modal').parent().css("top","").css("left","");
$('#ajax-modal').parent().addClass("anonymos");
}
} }
} }
</script> </script>

View File

@ -267,8 +267,15 @@ function edit_student_work(id)
{ {
if(regexStudentWorkName()&&regexStudentWorkDescription()) if(regexStudentWorkName()&&regexStudentWorkDescription())
{ {
$("#edit_student_work_" + id).submit(); if($("#group_member_ids").length > 0) {
$("#ajax-indicator").hide(); if(regexStudentWorkMember(parseInt($.trim($("#min_num_member").html())),parseInt($.trim($("#max_num_member").html())))) {
$("#edit_student_work_" + id).submit();
$("#ajax-indicator").hide();
}
} else {
$("#edit_student_work_" + id).submit();
$("#ajax-indicator").hide();
}
} }
} }