diff --git a/app/controllers/bids_controller.rb b/app/controllers/bids_controller.rb
index 000af2e8f..8e57f9f2b 100644
--- a/app/controllers/bids_controller.rb
+++ b/app/controllers/bids_controller.rb
@@ -491,24 +491,31 @@ class BidsController < ApplicationController
if @bid.homework_type
@homework = HomeworkAttach.new
@is_teacher = is_course_teacher(User.current,@bid.courses.first)
- #if @is_teacher
- teachers = "("
- teacher_members = searchTeacherAndAssistant(@bid.courses.first)
- teacher_members.each do |member|
- if member == teacher_members.last
- teachers += member.user_id.to_s + ")"
- else
- teachers += member.user_id.to_s + ","
- end
+ teachers = "("
+ teacher_members = searchTeacherAndAssistant(@bid.courses.first)
+ teacher_members.each do |member|
+ if member == teacher_members.last
+ teachers += member.user_id.to_s + ")"
+ else
+ teachers += member.user_id.to_s + ","
end
+ end
+ if @is_teacher
all_homework_list = HomeworkAttach.eager_load(:attachments,:user,:rate_averages).find_by_sql("SELECT * FROM (SELECT homework_attaches.*,
(SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id IN #{teachers}) AS t_score,
(SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id NOT IN #{teachers}) AS s_score
FROM homework_attaches WHERE bid_id = #{@bid.id} ORDER BY s_score DESC,created_at ASC) AS table1
WHERE table1.t_score IS NULL")
- #else
- # all_homework_list = HomeworkAttach.all
- #end
+ else
+ all_homework_list = HomeworkAttach.eager_load(:attachments,:user,:rate_averages).find_by_sql("SELECT * FROM(SELECT homework_attaches.*,
+ (SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id IN #{teachers}) AS t_score,
+ (SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id NOT IN #{teachers}) AS s_score,
+ (SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id = 3123) AS m_score
+ FROM homework_attaches
+ INNER JOIN homework_evaluations ON homework_evaluations.homework_attach_id = homework_attaches.id
+ WHERE homework_attaches.bid_id = #{@bid.id} AND homework_evaluations.user_id = #{User.current.id}) AS table1
+ WHERE table1.m_score IS NULL")
+ end
@homework_list = paginateHelper all_homework_list,10
@jours_count = @bid.journals_for_messages.where('m_parent_id IS NULL').count
diff --git a/app/controllers/homework_attach_controller.rb b/app/controllers/homework_attach_controller.rb
index db45f96e7..bb17a90b2 100644
--- a/app/controllers/homework_attach_controller.rb
+++ b/app/controllers/homework_attach_controller.rb
@@ -7,7 +7,7 @@ class HomeworkAttachController < ApplicationController
before_filter :can_show_course,except: []
#判断当前角色权限时需先找到当前操作的project
before_filter :find_course_by_bid_id, :only => [:new]
- before_filter :find_bid_and_course,:only => [:get_not_batch_homework,:get_batch_homeworks,:get_homeworks,:get_homework_jours]
+ before_filter :find_bid_and_course,:only => [:get_not_batch_homework,:get_batch_homeworks,:get_homeworks,:get_homework_jours, :get_student_batch_homework, :get_my_homework]
before_filter :find_course_by_hoemwork_id, :only => [:edit,:update,:destroy,:show,:add_homework_users,:destory_homework_users]
#判断当前角色是否有操作权限
#勿删 before_filter :authorize, :only => [:new,:edit,:update,:destroy]
@@ -68,6 +68,48 @@ class HomeworkAttachController < ApplicationController
end
end
+ #获取学生匿评列表
+ def get_student_batch_homework
+ @is_student_batch_homework = true
+ teachers = find_course_teachers @course
+ all_homework_list = HomeworkAttach.eager_load(:attachments,:user,:rate_averages).find_by_sql("SELECT * FROM(SELECT homework_attaches.*,
+ (SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id IN #{teachers}) AS t_score,
+ (SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id NOT IN #{teachers}) AS s_score,
+ (SELECT stars FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id = 3123) AS m_score
+ FROM homework_attaches
+ INNER JOIN homework_evaluations ON homework_evaluations.homework_attach_id = homework_attaches.id
+ WHERE homework_attaches.bid_id = #{@bid.id} AND homework_evaluations.user_id = #{User.current.id}) AS table1
+ WHERE table1.m_score IS NULL")
+ @homework_list = paginateHelper all_homework_list,10
+ respond_to do |format|
+ format.js
+ end
+ end
+
+ #获取我的作业
+ def get_my_homework
+ @is_my_homework = true
+ teachers = find_course_teachers @course
+ all_homework_list = HomeworkAttach.find_by_sql("SELECT homework_attaches.*,
+ (SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id IN #{teachers}) AS t_score,
+ (SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id NOT IN #{teachers}) AS s_score
+ FROM homework_attaches
+ WHERE homework_attaches.bid_id = #{@bid.id} AND homework_attaches.user_id = #{User.current.id}")
+ #如果我没有创建过作业,就检索我是否参与了某个作业
+ if all_homework_list.empty?
+ all_homework_list = HomeworkAttach.find_by_sql("SELECT homework_attaches.*,
+ (SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id IN #{teachers}) AS t_score,
+ (SELECT AVG(stars) FROM seems_rateable_rates WHERE rateable_type = 'HomeworkAttach' AND rateable_id = homework_attaches.id AND rater_id NOT IN #{teachers}) AS s_score
+ FROM homework_attaches
+ INNER JOIN homework_users ON homework_users.homework_attach_id = homework_attaches.id
+ WHERE homework_attaches.bid_id = #{@bid.id} AND homework_users.user_id = #{User.current.id}")
+ end
+ @homework_list = paginateHelper all_homework_list,10
+ respond_to do |format|
+ format.js
+ end
+ end
+
#获取作业的留言列表
def get_homework_jours
#@user = @bid.author
@@ -270,9 +312,14 @@ class HomeworkAttachController < ApplicationController
def destroy
if User.current.admin? || User.current == @homework.user
if @homework.destroy
+ #respond_to do |format|
+ # format.html { redirect_to course_for_bid_url @homework.bid }
+ # format.json { head :no_content }
+ #end
+ @homework_list = []
+ @is_my_homework = true
respond_to do |format|
- format.html { redirect_to course_for_bid_url @homework.bid }
- format.json { head :no_content }
+ format.js
end
else
end
@@ -406,7 +453,10 @@ class HomeworkAttachController < ApplicationController
def find_course_by_hoemwork_id
@homework = HomeworkAttach.find(params[:id])
- @course = @homework.bid.courses[0]
+ @bid = @homework.bid
+ @course = @bid.courses.first
+ rescue ActiveRecord::RecordNotFound
+ render_404
end
#获取课程的老师列表
diff --git a/app/models/bid.rb b/app/models/bid.rb
index bc00a8460..88014477b 100644
--- a/app/models/bid.rb
+++ b/app/models/bid.rb
@@ -28,6 +28,7 @@ class Bid < ActiveRecord::Base
has_many :homework_for_courses, :dependent => :destroy
has_many :courses, :through => :homework_for_courses, :source => :course
has_many :homeworks, :class_name => 'HomeworkAttach', :dependent => :destroy
+ has_many :homework_evaluations, :through => :homeworks
has_many :join_in_contests, :dependent => :destroy
has_many :praise_tread, as: :praise_tread_object, dependent: :destroy
# has_many :fork_homework, :class_name => 'Bid', :conditions => "#{Bid.table_name}.parent_id = #{id}"
diff --git a/app/models/homework_attach.rb b/app/models/homework_attach.rb
index 99d540bd1..e18e254cb 100644
--- a/app/models/homework_attach.rb
+++ b/app/models/homework_attach.rb
@@ -10,6 +10,7 @@ class HomeworkAttach < ActiveRecord::Base
has_many :users, :through => :homework_users
seems_rateable :allow_update => true, :dimensions => :quality
belongs_to :project
+ has_many :homework_evaluations, :dependent => :destroy
safe_attributes "bid_id",
"user_id"
diff --git a/app/models/homework_evaluation.rb b/app/models/homework_evaluation.rb
new file mode 100644
index 000000000..ccbd26f8c
--- /dev/null
+++ b/app/models/homework_evaluation.rb
@@ -0,0 +1,6 @@
+class HomeworkEvaluation < ActiveRecord::Base
+ attr_accessible :homework_attach_id, :user_id
+
+ belongs_to :homework_attach
+ belongs_to :user
+end
diff --git a/app/models/user.rb b/app/models/user.rb
index 0bb359812..bbee7f763 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -75,6 +75,7 @@ class User < Principal
has_many :homework_users
has_many :homework_attaches, :through => :homework_users
+ has_many :homework_evaluations
has_and_belongs_to_many :groups, :after_add => Proc.new {|user, group| group.user_added(user)},
:after_remove => Proc.new {|user, group| group.user_removed(user)}
diff --git a/app/views/bids/_bid_homework_show.html.erb b/app/views/bids/_bid_homework_show.html.erb
index 5b7a638eb..7c6a9d494 100644
--- a/app/views/bids/_bid_homework_show.html.erb
+++ b/app/views/bids/_bid_homework_show.html.erb
@@ -5,94 +5,147 @@
<% else %>
<% bids.each do |bid|%>
- <%= link_to(image_tag(url_to_avatar(bid.author), :class => 'avatar'), user_path(bid.author), :class => "avatar") %> |
-
-
-
- <%= link_to(bid.author.lastname+bid.author.firstname, user_path(bid.author)) %>
- <%= l(:label_user_create_project_homework) %>
- <%= link_to(bid.name, course_for_bid_path(bid), :class => 'bid_path') %>
-
- <% if(User.current.logged? && (!Member.where('user_id = ? and course_id = ?', User.current.id, bid.courses.first.id).first.nil? && (Member.where('user_id = ? and course_id = ?', User.current.id, bid.courses.first.id).first.roles&Role.where('id = ? or id = ? or id =?',5, 10, 7)).size >0)) %>
- <%# 提交作业按钮 %>
-
- <% cur_user_homework = cur_user_homework_for_bid(bid) %>
- <% if cur_user_homework!= nil && cur_user_homework.count == 0 %>
- <%= link_to l(:label_commit_homework),new_homework_attach_path(bid) %>
- <% else %>
- <%= l(:lable_has_commit_homework)%>
- <% end %>
- <% end %>
- <% if (User.current.admin?||User.current.id==bid.author_id) %>
- <%= link_to(
- l(:button_edit),
- {:action => 'edit', :controller=>'bids', :course_id =>@course.id, :bid_id => bid.id},
- :class => 'icon icon-edit'
- ) %>
- <%= link_to(
- l(:button_delete),
- {:action => 'homework_destroy', :controller=>'bids', :course_id => bid.id},
- :method => :post,
- :data => {:confirm => l(:text_are_you_sure)},
- :class => 'icon icon-del'
- ) %>
- <% end %>
- |
-
-
-
- <% bidding_project = bid.biding_projects.all
- temp = []
- bidding_project.each do |pro|
- if pro.project && pro.project.project_status
- temp << pro
- end
- temp
- end
- %>
- <% if bid.homework_type == 1%>
- <%= l(:label_x_homework_project, :count => bid.homeworks.count) %>(<%= link_to bid.homeworks.count, course_for_bid_path(bid.id) %>)
- <% else %>
- <%= l(:label_x_homework_project, :count => temp.count) %>(<%= link_to temp.count, course_for_bid_path(bid.id) %>)
- <% end %>
- <%= l(:label_x_responses, :count => bid.commit) %>(<%= bid.commit %>)
-
- <% if betweentime(bid.deadline) < 0 %>
- <%= l(:label_commit_limit)%>
- <% else %>
- <% if betweentime(bid.deadline) < 3 %>
- <%= l(:label_commit_ar) %>
- <% else %>
- <% end %>
-
-
- <% end %>
- |
-
-
- <% if bid.reward_type.nil? or bid.reward_type == 1 %> <%= l(:label_bids_reward_method) %><%= l(:label_call_bonus) %> <%= l(:label_RMB_sign) %>
- <%= bid.budget%> <% elsif bid.reward_type == 2 %> <%= l(:label_bids_reward_method) %><%= bid.budget%>
- <% else %>
-
- <% end %> |
-
-
-
- <%#= bid.description %>
- <%= textilizable bid, :description %>
- |
-
-
+
+
+ <%= link_to(image_tag(url_to_avatar(bid.author), :class => 'avatar'), user_path(bid.author), :class => "avatar") %>
+ |
+
+
+
+
+
+ <%= link_to(bid.author.lastname+bid.author.firstname, user_path(bid.author)) %>
+
+
+ <%= l(:label_user_create_project_homework) %>
+
+
+ <%= link_to(bid.name, course_for_bid_path(bid), :class => 'bid_path') %>
+
+
+ <% if(User.current.logged? && (!Member.where('user_id = ? and course_id = ?', User.current.id, bid.courses.first.id).first.nil? && (Member.where('user_id = ? and course_id = ?', User.current.id, bid.courses.first.id).first.roles&Role.where('id = ? or id = ? or id =?',5, 10, 7)).size >0)) %>
+ <% cur_user_homework = cur_user_homework_for_bid(bid) %>
+ <% if cur_user_homework!= nil && cur_user_homework.count == 0 %>
+ <%= link_to l(:label_commit_homework),new_homework_attach_path(bid) %>
+ <% else %>
+
+ <%= l(:lable_has_commit_homework)%>
+
+ <% end %>
+ <% end %>
+ <% if (User.current.admin?||User.current.id==bid.author_id) %>
+ <%= link_to(
+ l(:button_edit),
+ {:action => 'edit', :controller=>'bids', :course_id =>@course.id, :bid_id => bid.id},
+ :class => 'icon icon-edit'
+ ) %>
+ <%#= link_to(
+ l(:button_delete),
+ {:action => 'homework_destroy', :controller=>'bids', :course_id => bid.id},
+ :method => :post,
+ :data => {:confirm => l(:text_are_you_sure)},
+ :class => 'icon icon-del'
+ ) %>
+ <% end %>
+
+ |
+
+
+
+
+ <% bidding_project = bid.biding_projects.all
+ temp = []
+ bidding_project.each do |pro|
+ if pro.project && pro.project.project_status
+ temp << pro
+ end
+ temp
+ end
+ %>
+ <% if bid.homework_type == 1%>
+ <%= l(:label_x_homework_project, :count => bid.homeworks.count) %>
+ (
+
+ <%= link_to bid.homeworks.count, course_for_bid_path(bid.id) %>
+ )
+ <% else %>
+ <%= l(:label_x_homework_project, :count => temp.count) %>
+ (
+
+ <%= link_to temp.count, course_for_bid_path(bid.id) %>
+ )
+ <% end %>
+
+
+ <%= l(:label_x_responses, :count => bid.commit) %>
+ (
+
+ <%= bid.commit %>
+
+ )
+
+
+ <% if betweentime(bid.deadline) < 0 %>
+
+ <%= l(:label_commit_limit)%>
+
+ <% else %>
+ <% if betweentime(bid.deadline) < 3 %>
+
+ <%= l(:label_commit_ar) %>
+
+ <% end %>
+ <% end %>
+
+ |
+
+
+
+ <% if bid.reward_type.nil? or bid.reward_type == 1 %>
+
+ <%= l(:label_bids_reward_method) %>
+
+ <%= l(:label_call_bonus) %>
+
+ <%= l(:label_RMB_sign) %>
+ <%= bid.budget%>
+
+
+ <% elsif bid.reward_type == 2 %>
+
+ <%= l(:label_bids_reward_method) %>
+
+ <%= bid.budget%>
+
+
+ <% end %>
+ |
+
+
+
+
+ <%= textilizable bid, :description %>
+
+ |
+
+
- <%= l(:label_create_time) %> : <%=format_time bid.created_on %> <%= l(:field_deadline) %> : <%=bid.deadline %>
- |
+ <%= l(:label_create_time) %>
+ :
+ <%=format_time bid.created_on %>
+
+
+ <%= l(:field_deadline) %>
+ :
+ <%=bid.deadline %>
+
+
|
- |
+ |
-
<% end %>
<% end %>
-<% if User.current.logged? && User.current.member_of_course?(@bid.courses.first) && cur_user_homework_for_bid(@bid).count == 0 && is_cur_course_student(@bid.courses.first) %>
-
- <%= link_to l(:label_course_new_homework),new_homework_attach_path %>
- (每一个作业都可以是一个精美的作品)
-
-<% end %>
-
<%= render :partial => 'homework_list' %>
diff --git a/app/views/bids/_homework_list.html.erb b/app/views/bids/_homework_list.html.erb
index 7fdc47d1f..db61bf93d 100644
--- a/app/views/bids/_homework_list.html.erb
+++ b/app/views/bids/_homework_list.html.erb
@@ -28,16 +28,16 @@
<% else %>
- - 待评作品
-
+
-
+ <%= link_to "待评作品", get_student_batch_homework_homework_attach_index_path(:bid_id => @bid.id), {:remote => true}%>
- - 我的作品
-
+
-
+ <%= link_to "我的作品", get_my_homework_homework_attach_index_path(:bid_id => @bid.id), {:remote => true}%>
- -
+
-
<%= link_to "所有作品", get_homeworks_homework_attach_index_path(:bid_id => @bid.id), {:remote => true}%>
- -
+
-
<%= link_to "留言", get_homework_jours_homework_attach_index_path(:bid_id => @bid.id), {:remote => true}%>
(<%= @jours_count %>)
diff --git a/app/views/courses/_homework_form.html.erb b/app/views/courses/_homework_form.html.erb
index 1bd248c59..9b2010b69 100644
--- a/app/views/courses/_homework_form.html.erb
+++ b/app/views/courses/_homework_form.html.erb
@@ -42,7 +42,7 @@
-
+
<%= f.select :is_evaluation, is_evaluation_option %>
diff --git a/app/views/homework_attach/_homeworks_list.html.erb b/app/views/homework_attach/_homeworks_list.html.erb
index f7e2bee59..53b384e2c 100644
--- a/app/views/homework_attach/_homeworks_list.html.erb
+++ b/app/views/homework_attach/_homeworks_list.html.erb
@@ -1,21 +1,44 @@
<% is_teacher = is_course_teacher(User.current,@bid.courses.first) %>
-
-
- <%= l(:label_homework_list)%>
- (
+<% is_my_homework ||= false %>
+<% is_student_batch_homework ||= false %>
+
+<% unless is_my_homework || is_student_batch_homework %>
+
+
+ <%= l(:label_homework_list)%>
+ (
<%= homework_count%>
- )
-
- 按
- <%= link_to l(:label_work_rating), sort_homework_path(@bid, 'socre', @direction), {:remote => true}%>
- /
- <%= link_to l(:label_time), sort_homework_path(@bid, 'time', @direction), {:remote => true}%>
- <%= l(:label_sort) %>
-
-
+ )
+
+ 按
+ <%= link_to l(:label_work_rating), sort_homework_path(@bid, 'socre', @direction), {:remote => true}%>
+ /
+ <%= link_to l(:label_time), sort_homework_path(@bid, 'time', @direction), {:remote => true}%>
+ <%= l(:label_sort) %>
+
+
+<% end %>
+
<% unless homeworks.nil? %>
+ <% if !is_teacher && is_my_homework && homeworks.empty? %>
+
+
+ -
+ <%= link_to image_tag(url_to_avatar(User.current), :width => "40", :height => "40"), user_path(User.current) %>
+
+ <%= link_to User.current.login, user_path(User.current), :title => User.current.login%>
+
+
+ - 您还没交作业,请创建作业!
+ -
+ <%= link_to "创建作业", new_exercise_book_path(@bid), :style => "width:80px; margin:20px 0 0 350px;" %>
+
+
+
+ <% end %>
+
<% homeworks.each do |homework| %>
-
@@ -50,15 +73,48 @@
<%= homework.s_score.nil? ? l(:label_without_score) : format("%.2f",homework.s_score) %>
- -
- <%= link_to l(:label_work_rating),homework_attach_path(homework),:remote => true %>
- <% if Time.parse(bid.deadline.to_s).strftime("%Y-%m-%d") < Time.parse(homework.created_at.to_s).strftime("%Y-%m-%d") %>
- 迟交!
- <% end %>
-
+ <% if is_teacher %>
+
+ -
+ <%= link_to l(:label_work_rating),homework_attach_path(homework),:remote => true %>
+ <% if Time.parse(bid.deadline.to_s).strftime("%Y-%m-%d") < Time.parse(homework.created_at.to_s).strftime("%Y-%m-%d") %>
+ 迟交!
+ <% end %>
+
+ <% else %>
+
+ <% if is_my_homework %>
+
+ -
+ <%= link_to l(:button_edit), edit_homework_attach_path(homework) %>
+ <% if homework.user == User.current || User.current.admin? %>
+ <%= link_to(l(:label_bid_respond_delete), homework,
+ method: :delete, :confirm => l(:text_are_you_sure), :remote => true ) %>
+ <% end %>
+
+ <% elsif is_student_batch_homework%>
+
+ -
+ <%= link_to l(:label_work_rating),homework_attach_path(homework),:remote => true %>
+ <% if Time.parse(bid.deadline.to_s).strftime("%Y-%m-%d") < Time.parse(homework.created_at.to_s).strftime("%Y-%m-%d") %>
+ 迟交!
+ <% end %>
+
+ <% else %>
+
+ -
+ 点赞
+
+ <% end %>
+ <% end %>
<% end %>
<% else %>
<% end %>
-<%= pagination_links_full @obj_pages, @obj_count, :per_page_links => false, :remote => remote, :flag => true%>
\ No newline at end of file
+
+<% unless is_my_homework || is_student_batch_homework %>
+
+ <%= pagination_links_full @obj_pages, @obj_count, :per_page_links => false, :remote => remote, :flag => true%>
+
+<% end %>
\ No newline at end of file
diff --git a/app/views/homework_attach/destroy.js.erb b/app/views/homework_attach/destroy.js.erb
new file mode 100644
index 000000000..33d132ed4
--- /dev/null
+++ b/app/views/homework_attach/destroy.js.erb
@@ -0,0 +1,2 @@
+$('#tbc_01').html('<%= escape_javascript(render(:partial => 'homeworks_list',
+ :locals => {:homeworks => @homework_list, :bid => @bid, :remote => true, :is_my_homework => @is_my_homework} )) %>');
\ No newline at end of file
diff --git a/app/views/homework_attach/get_homework_jours.js.erb b/app/views/homework_attach/get_homework_jours.js.erb
index f9873a4b3..f6d019a0c 100644
--- a/app/views/homework_attach/get_homework_jours.js.erb
+++ b/app/views/homework_attach/get_homework_jours.js.erb
@@ -1,3 +1,6 @@
$('#tbc_01').html('<%= escape_javascript(render(:partial => 'homework_jours',:locals => { :bid => @bid, :journals => @jour, :state => false} )) %>');
for(var i=1;i<=4;i++){$("#tb_"+i).removeClass().addClass("normaltab");}
$("#tb_4").removeClass().addClass("hovertab");
+
+for(var i=5;i<=8;i++){$("#tb_"+i).removeClass().addClass("normaltab");}
+$("#tb_8").removeClass().addClass("hovertab");
diff --git a/app/views/homework_attach/get_homeworks.js.erb b/app/views/homework_attach/get_homeworks.js.erb
index 73e03a289..9293af807 100644
--- a/app/views/homework_attach/get_homeworks.js.erb
+++ b/app/views/homework_attach/get_homeworks.js.erb
@@ -3,3 +3,6 @@ $('#tbc_01').html('<%= escape_javascript(render(:partial => 'homeworks_list',
for(var i=1;i<=4;i++){$("#tb_"+i).removeClass().addClass("normaltab");}
$("#tb_3").removeClass().addClass("hovertab");
+for(var i=5;i<=8;i++){$("#tb_"+i).removeClass().addClass("normaltab");}
+$("#tb_7").removeClass().addClass("hovertab");
+
diff --git a/app/views/homework_attach/get_my_homework.js.erb b/app/views/homework_attach/get_my_homework.js.erb
new file mode 100644
index 000000000..cb6288391
--- /dev/null
+++ b/app/views/homework_attach/get_my_homework.js.erb
@@ -0,0 +1,4 @@
+$('#tbc_01').html('<%= escape_javascript(render(:partial => 'homeworks_list',
+ :locals => {:homeworks => @homework_list, :homework_count => @obj_count, :bid => @bid, :remote => true, :is_my_homework => @is_my_homework} )) %>');
+for(var i=5;i<=8;i++){$("#tb_"+i).removeClass().addClass("normaltab");}
+$("#tb_6").removeClass().addClass("hovertab");
\ No newline at end of file
diff --git a/app/views/homework_attach/get_not_batch_homework.js.erb b/app/views/homework_attach/get_not_batch_homework.js.erb
index 91a7af542..1f8214821 100644
--- a/app/views/homework_attach/get_not_batch_homework.js.erb
+++ b/app/views/homework_attach/get_not_batch_homework.js.erb
@@ -1,4 +1,4 @@
$('#tbc_01').html('<%= escape_javascript(render(:partial => 'homeworks_list',
:locals => {:homeworks => @homework_list, :homework_count => @obj_count, :bid => @bid, :remote => true} )) %>');
-for(var i=1;i<=5;i++){$("#tb_"+i).removeClass().addClass("normaltab");}
+for(var i=1;i<=4;i++){$("#tb_"+i).removeClass().addClass("normaltab");}
$("#tb_1").removeClass().addClass("hovertab");
\ No newline at end of file
diff --git a/app/views/homework_attach/get_student_batch_homework.js.erb b/app/views/homework_attach/get_student_batch_homework.js.erb
new file mode 100644
index 000000000..158d32817
--- /dev/null
+++ b/app/views/homework_attach/get_student_batch_homework.js.erb
@@ -0,0 +1,4 @@
+$('#tbc_01').html('<%= escape_javascript(render(:partial => 'homeworks_list',
+ :locals => {:homeworks => @homework_list, :homework_count => @obj_count, :bid => @bid, :remote => true, :is_student_batch_homework => @is_student_batch_homework} )) %>');
+for(var i=5;i<=8;i++){$("#tb_"+i).removeClass().addClass("normaltab");}
+$("#tb_5").removeClass().addClass("hovertab");
\ No newline at end of file
diff --git a/config/routes.rb b/config/routes.rb
index fcdca323c..5eae3c445 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -48,6 +48,8 @@ RedmineApp::Application.routes.draw do
get 'get_batch_homeworks'
get 'get_homeworks'
get 'get_homework_jours'
+ get 'get_student_batch_homework'
+ get 'get_my_homework'
end
member do
match 'add_homework_users', :via => [:get,:post]
@@ -699,7 +701,7 @@ RedmineApp::Application.routes.draw do
match 'contest/new_contest', :to => 'bids#new_contest' #huang
match 'calls/:id/show_project', :to => 'bids#show_project', :as => 'project_for_bid'
match 'calls/:id/show_course', :to => 'bids#show_courseEx', :as => 'course_for_bid' # nwb added
- match 'calls/:id/new_exercise_book', :to => 'homework_attach#new', :as => 'new_homework_attach'
+ match 'calls/:id/new_exercise_book', :to => 'homework_attach#new', :as => 'new_exercise_book'
match 'calls/:id/add', :to => 'bids#add'
match 'calls/:id/delete', :to => 'bids#delete'
match 'calls/:id/add_homework', :to => 'bids#add_homework', :via => :post
diff --git a/db/migrate/20141031111632_create_homework_evaluations.rb b/db/migrate/20141031111632_create_homework_evaluations.rb
new file mode 100644
index 000000000..39b65a033
--- /dev/null
+++ b/db/migrate/20141031111632_create_homework_evaluations.rb
@@ -0,0 +1,10 @@
+class CreateHomeworkEvaluations < ActiveRecord::Migration
+ def change
+ create_table :homework_evaluations do |t|
+ t.string :user_id
+ t.string :homework_attach_id
+
+ t.timestamps
+ end
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 4d194b54e..3961db258 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 20141029065917) do
+ActiveRecord::Schema.define(:version => 20141031111632) do
create_table "activities", :force => true do |t|
t.integer "act_id", :null => false
@@ -478,6 +478,13 @@ ActiveRecord::Schema.define(:version => 20141029065917) do
t.integer "project_id", :default => 0
end
+ create_table "homework_evaluations", :force => true do |t|
+ t.string "user_id"
+ t.string "homework_attach_id"
+ t.datetime "created_at", :null => false
+ t.datetime "updated_at", :null => false
+ end
+
create_table "homework_for_courses", :force => true do |t|
t.integer "course_id"
t.integer "bid_id"