@ -18,6 +18,13 @@ class HomeworkAttachController < ApplicationController
@project = @homework . bid . courses [ 0 ]
end
#获取作业的成员
def get_homework_member homework
@hoemwork_users = users_for_homework ( @homework )
@members = members_for_homework ( @homework , @hoemwork_users , params [ :q ] )
@members = paginateHelper @members , 10
end
def index
@homeworks = HomeworkAttach . all
respond_to do | format |
@ -28,7 +35,7 @@ class HomeworkAttachController < ApplicationController
#作业添加成员(参与人员)
def add_homework_users
if User . current . admin? || User . current == @homework . user
if User . current . admin? || User . current . member_of? ( @homework . bid . courses . first )
#@homework = HomeworkAttach.find(params[:id])
if params [ :membership ]
if params [ :membership ] [ :user_ids ]
@ -40,9 +47,7 @@ class HomeworkAttachController < ApplicationController
end
end
@homework . save
@hoemwork_users = users_for_homework ( @homework )
@members = members_for_homework ( @homework , @hoemwork_users , params [ :q ] )
@members = paginateHelper @members , 10
get_homework_member @homework
respond_to do | format |
format . js
end
@ -54,12 +59,10 @@ class HomeworkAttachController < ApplicationController
#作业删除成员(参与人员)
def destory_homework_users
#@homework = HomeworkAttach.find(params[:id])
if User . current . admin? || User . current == @homework . user
if User . current . admin? || User . current . member_of? ( @homework . bid . courses . first )
homework_user = @homework . homework_users . where ( " user_id = #{ params [ :user_id ] } " ) . first
homework_user . destroy
@hoemwork_users = users_for_homework ( @homework )
@members = members_for_homework ( @homework , @hoemwork_users , params [ :q ] )
@members = paginateHelper @members , 10
get_homework_member @homework
respond_to do | format |
format . js
end
@ -136,11 +139,7 @@ class HomeworkAttachController < ApplicationController
@homework = HomeworkAttach . find ( params [ :bid_id ] )
course = @homework . bid . courses . first
if User . current . admin? || User . current . member_of? ( course )
@hoemwork_users = users_for_homework ( @homework )
@members = members_for_homework ( @homework , @hoemwork_users , params [ :q ] )
#该课程的学生的集合
#@members = course.members.joins(:member_roles).where("member_roles.role_id IN (:role_id)", {:role_id => [5, 10]})
@members = paginateHelper @members , 10
get_homework_member @homework
else
raise " error "
end
@ -157,6 +156,7 @@ class HomeworkAttachController < ApplicationController
#获取可选成员列表
#homework: 作业
#users: 该作业所有成员
#q:模糊匹配的用户的昵称
def members_for_homework homework , users , q
homework . bid . courses . first . members . joins ( :member_roles ) . where ( " member_roles.role_id IN (:role_id) and user_id not in (:users) " , { :role_id = > [ 5 , 10 ] , :users = > users } ) . joins ( :user ) . where ( " users.login like '% #{ q } %' " )
end
@ -165,9 +165,7 @@ class HomeworkAttachController < ApplicationController
#@homework = HomeworkAttach.find(params[:id])
if User . current . admin? || User . current . member_of? ( @homework . bid . courses . first )
#@members = @homework.bid.courses.first.members.joins(:member_roles).where("member_roles.role_id IN (:role_id)", {:role_id => [5, 10]})
@hoemwork_users = users_for_homework ( @homework )
@members = members_for_homework ( @homework , @hoemwork_users , params [ :q ] )
@members = paginateHelper @members , 10
get_homework_member @homework
else
render_403 :message = > :notice_not_authorized
end
@ -198,7 +196,7 @@ class HomeworkAttachController < ApplicationController
def destroy
#@homework = HomeworkAttach.find(params[:id])
if User . current . admin? || User . current . member_of? ( @homework . bid . courses . first )
if User . current . admin? || User . current == @homework
if @homework . destroy
respond_to do | format |
format . html { redirect_to project_for_bid_path @homework . bid }