|
|
|
@ -20,7 +20,7 @@ class CoursesController < ApplicationController
|
|
|
|
|
before_filter :can_show_course, :except => []
|
|
|
|
|
before_filter :logged_user_by_apptoken,:only => [:show,:new_homework,:feedback]
|
|
|
|
|
before_filter :find_course, :except => [ :index, :search,:list, :new,:join,:unjoin, :create, :copy, :statistics, :new_join, :course, :enterprise_course, :course_enterprise,:view_homework_attaches,:join_private_courses]
|
|
|
|
|
before_filter :authorize_course, :only => [:show, :settings, :edit, :update, :modules, :close, :reopen, :view_homework_attaches, :course]
|
|
|
|
|
before_filter :authorize_course, :only => [:show, :settings, :edit, :update, :modules, :close, :reopen, :view_homework_attaches, :course,:search_member]
|
|
|
|
|
before_filter :authorize_course_global, :only => [:view_homework_attaches, :new,:create]
|
|
|
|
|
before_filter :require_admin, :only => [:copy, :archive, :unarchive, :destroy, :calendar]
|
|
|
|
|
before_filter :toggleCourse, :only => [:finishcourse, :restartcourse]
|
|
|
|
@ -418,6 +418,21 @@ class CoursesController < ApplicationController
|
|
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def search_member
|
|
|
|
|
if User.current.allowed_to?(:as_teacher,@course)
|
|
|
|
|
q = "#{params[:q].strip}"
|
|
|
|
|
@roles = Role.givable.all[3..5]
|
|
|
|
|
if q.nil? || q == ""
|
|
|
|
|
@members = @course.member_principals.includes(:roles, :principal).all.sort
|
|
|
|
|
else
|
|
|
|
|
@members = searchmember_by_name(@course.member_principals.includes(:roles, :principal).all.sort,q)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
render_403
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def create
|
|
|
|
|
cs = CoursesService.new
|
|
|
|
|
@course = cs.create_course(params,User.current)[:course]
|
|
|
|
|