@ -41,7 +41,7 @@ class UsersController < ApplicationController
:activity_score_index , :influence_score_index , :score_index , :show_new_score , :topic_new_score_index , :project_new_score_index ,
:activity_score_index , :influence_score_index , :score_index , :show_new_score , :topic_new_score_index , :project_new_score_index ,
:activity_new_score_index , :influence_new_score_index , :score_new_index , :user_projects_index , :user_resource ,
:activity_new_score_index , :influence_new_score_index , :score_new_index , :user_projects_index , :user_resource ,
:user_courses4show , :user_projects4show , :user_course_activities , :user_project_activities , :user_feedback4show , :user_visitorlist , :user_messages , :edit_brief_introduction ,
:user_courses4show , :user_projects4show , :user_course_activities , :user_project_activities , :user_feedback4show , :user_visitorlist , :user_messages , :edit_brief_introduction ,
:user_import_homeworks , :user_search_homeworks , :user_import_resource , :user_system_messages , :choose_user_course , :user_courselist , :user_projectlist ]
:user_import_homeworks , :user_search_homeworks , :user_import_resource , :user_system_messages , :choose_user_course , :user_courselist , :user_projectlist , :sort_syllabus_list ]
before_filter :auth_user_extension , only : :show
before_filter :auth_user_extension , only : :show
#before_filter :rest_user_score, only: :show
#before_filter :rest_user_score, only: :show
#before_filter :select_entry, only: :user_projects
#before_filter :select_entry, only: :user_projects
@ -133,6 +133,7 @@ class UsersController < ApplicationController
@user_activity_id = params [ :user_activity_id ]
@user_activity_id = params [ :user_activity_id ]
@activity_id = params [ :activity_id ]
@activity_id = params [ :activity_id ]
@homepage = params [ :homepage ]
@homepage = params [ :homepage ]
@user_id = params [ :user_id ]
@type = 'BlogComment'
@type = 'BlogComment'
when 'OrgDocumentComment'
when 'OrgDocumentComment'
@reply = OrgDocumentComment . find params [ :reply_id ]
@reply = OrgDocumentComment . find params [ :reply_id ]
@ -149,6 +150,9 @@ class UsersController < ApplicationController
@user_activity_id = params [ :user_activity_id ]
@user_activity_id = params [ :user_activity_id ]
@activity_id = params [ :activity_id ]
@activity_id = params [ :activity_id ]
@type = 'Issue'
@type = 'Issue'
when 'Syllabus'
@reply = JournalsForMessage . find params [ :reply_id ]
@type = 'Syllabus'
end
end
respond_to do | format |
respond_to do | format |
format . js
format . js
@ -351,15 +355,21 @@ class UsersController < ApplicationController
case params [ :agree ]
case params [ :agree ]
when 'Y'
when 'Y'
apply_user = User . find ( @msg . course_message_id )
apply_user = User . find ( @msg . course_message_id )
ids = @msg . content . split ( " , " ) # [@msg.content] msg content保存的是申请的职位角色
integer_ids = [ ]
ids . each do | role_id |
integer_ids << role_id . to_i
end
if apply_user . member_of_course? ( Course . find ( @msg . course_id ) )
if apply_user . member_of_course? ( Course . find ( @msg . course_id ) )
#将角色改为老师或者教辅
#将角色改为老师或者教辅
member = Course . find ( @msg . course_id ) . members . where ( :user_id = > apply_user . id ) . all [ 0 ]
member = Course . find ( @msg . course_id ) . members . where ( :user_id = > apply_user . id ) . all [ 0 ]
member . role_ids = [ @msg . content ] # msg content保存的是申请的职位角色
member . role_ids = integer_ids
#删除为学生的记录
#删除为学生的记录
joined = StudentsForCourse . where ( 'student_id = ? and course_id = ?' , member . user_id , @msg . course_id )
unless member . role_ids . include? ( 10 )
joined . each do | join |
joined = StudentsForCourse . where ( 'student_id = ? and course_id = ?' , member . user_id , @msg . course_id )
join . delete
joined . each do | join |
join . delete
end
end
end
member . course_group_id = 0
member . course_group_id = 0
@ -368,7 +378,7 @@ class UsersController < ApplicationController
@msg . update_attributes ( :status = > 1 , :viewed = > 1 )
@msg . update_attributes ( :status = > 1 , :viewed = > 1 )
else
else
members = [ ]
members = [ ]
members << Member . new ( :role_ids = > [ @msg . content . to_i ] , :user_id = > @msg . course_message_id )
members << Member . new ( :role_ids = > integer_ids , :user_id = > @msg . course_message_id )
Course . find ( @msg . course_id ) . members << members
Course . find ( @msg . course_id ) . members << members
CourseMessage . create ( :user_id = > @msg . course_message_id , :course_id = > @msg . course_id , :viewed = > false , :content = > @msg . content , :course_message_id = > User . current . id , :content = > @msg . content , :course_message_type = > 'CourseRequestDealResult' , :status = > 1 )
CourseMessage . create ( :user_id = > @msg . course_message_id , :course_id = > @msg . course_id , :viewed = > false , :content = > @msg . content , :course_message_id = > User . current . id , :content = > @msg . content , :course_message_type = > 'CourseRequestDealResult' , :status = > 1 )
@msg . update_attributes ( :status = > 1 , :viewed = > 1 )
@msg . update_attributes ( :status = > 1 , :viewed = > 1 )
@ -3225,7 +3235,35 @@ class UsersController < ApplicationController
end
end
def user_courselist
def user_courselist
@order , @c_sort , @type = params [ :order ] || 1 , params [ :sort ] || 1 , params [ :type ] || 1
@order , @c_sort , @type , @list_type = 1 , 2 , 1 , 1
@my_syllabuses = @user . syllabuses
sy_courses = @user . courses . visible . where ( " is_delete =? and tea_id != ? " , 0 , @user . id )
syllabus_ids = sy_courses . empty? ? '(-1)' : " ( " + sy_courses . map { | course | ! course . syllabus_id . nil? && course . syllabus_id } . join ( " , " ) + " ) "
@join_syllabuses = Syllabus . where ( " id in #{ syllabus_ids } and user_id != #{ @user . id } " )
@my_syllabuses = syllabus_course_list_sort @my_syllabuses
@join_syllabuses = syllabus_course_list_sort @join_syllabuses
@my_syllabuses = @my_syllabuses . sort { | x , y | y [ :last_update ] < = > x [ :last_update ] }
@join_syllabuses = @join_syllabuses . sort { | x , y | y [ :last_update ] < = > x [ :last_update ] }
#分页
# @limit = 10
# @is_remote = true
# @atta_count = @syllabus.count
# @atta_pages = Paginator.new @atta_count, @limit, params['page'] || 1
# @offset ||= @atta_pages.offset
# @syllabus = paginateHelper @syllabus,@limit
respond_to do | format |
format . html { render :layout = > 'new_base_user' }
end
end
#课程列表的排序
def sort_syllabus_list
@order , @c_sort , @type , @list_type = params [ :order ] || 1 , params [ :sort ] || 1 , params [ :type ] || 1 , params [ :list_type ] || 1
#确定 sort_type
#确定 sort_type
if @order . to_i == @type . to_i
if @order . to_i == @type . to_i
@ -3235,40 +3273,48 @@ class UsersController < ApplicationController
end
end
sort_name = " updated_at "
sort_name = " updated_at "
sort_type = @c_sort == 1 ? " asc " : " desc "
@courses = @user . courses . visible . where ( " is_delete =? " , 0 )
if @list_type . to_i == 1
syllabus_ids = @courses . empty? ? '(-1)' : " ( " + @courses . map { | course | ! course . syllabus_id . nil? && course . syllabus_id } . join ( " , " ) + " ) "
@syllabuses = @user . syllabuses . order ( " updated_at desc " )
@syllabus = Syllabus . where ( " id in #{ syllabus_ids } or user_id = #{ User . current . id } " ) . order ( " #{ sort_name } #{ sort_type } " )
else
sy_courses = @user . courses . visible . where ( " is_delete =? and tea_id != ? " , 0 , @user . id )
syllabus_ids = sy_courses . empty? ? '(-1)' : " ( " + sy_courses . map { | course | ! course . syllabus_id . nil? && course . syllabus_id } . join ( " , " ) + " ) "
@syllabuses = Syllabus . where ( " id in #{ syllabus_ids } and user_id != #{ @user . id } " ) . order ( " updated_at desc " )
end
#根据 作业+资源数排序
if @order . to_i == 1 #根据 班级更新时间排序
if @order . to_i == 2
@syllabuses = syllabus_course_list_sort @syllabuses
@c_sort == 1 ? ( @syllabuses = @syllabuses . sort { | x , y | x [ :last_update ] < = > y [ :last_update ] } ) : ( @syllabuses = @syllabuses . sort { | x , y | y [ :last_update ] < = > x [ :last_update ] } )
@type = 1
elsif @order . to_i == 2 #根据 作业+资源数排序
@type = 2
@type = 2
@syllabus . each do | syllabus |
@syllabus es . each do | syllabus |
count = 0
count = 0
courses = @courses . where ( " syllabus_id = #{ syllabus . id } " )
courses = syllabus . courses . not_deleted
courses . each do | c |
courses . each do | c |
count += ( User . current . admin? || User . current . allowed_to? ( :as_teacher , c ) ) ? ( c . homework_commons . count + visable_attachemnts_incourse ( c ) . count ) : ( c . homework_commons . where ( " publish_time <= ' #{ Date . today } ' " ) . count + visable_attachemnts_incourse ( c ) . count )
count += ( User . current . admin? || User . current . allowed_to? ( :as_teacher , c ) ) ? ( c . homework_commons . count + visable_attachemnts_incourse ( c ) . count ) : ( c . homework_commons . where ( " publish_time <= ' #{ Date . today } ' " ) . count + visable_attachemnts_incourse ( c ) . count )
end
end
syllabus [ :infocount ] = count
syllabus [ :infocount ] = count
end
end
@c_sort == 1 ? ( @syllabus = @syllabu s. sort { | x , y | x [ :infocount ] < = > y [ :infocount ] } ) : ( @syllabus = @syllabu s. sort { | x , y | y [ :infocount ] < = > x [ :infocount ] } )
@c_sort == 1 ? ( @syllabus es = @syllabu se s. sort { | x , y | x [ :infocount ] < = > y [ :infocount ] } ) : ( @syllabus es = @syllabu se s. sort { | x , y | y [ :infocount ] < = > x [ :infocount ] } )
@syllabus = sortby_time_countcommon_nosticky @syllabu s, sort_name
@syllabus es = sortby_time_countcommon_nosticky @syllabu se s, sort_name
else
else
@type = 1
@type = 1
end
end
#分页
@limit = 10
@is_remote = true
@atta_count = @syllabus . count
@atta_pages = Paginator . new @atta_count , @limit , params [ 'page' ] || 1
@offset || = @atta_pages . offset
@syllabus = paginateHelper @syllabus , @limit
respond_to do | format |
respond_to do | format |
format . js
format . js
format . html { render :layout = > 'new_base_user' }
end
end
#展开课程下的班级
def expand_courses
@syllabus = Syllabus . where ( " id = #{ params [ :syllabus_id ] } " ) . first
unless @syllabus . nil?
@courses = @syllabus . courses . not_deleted . select ( " courses.*,(SELECT MAX(updated_at) FROM `course_activities` WHERE course_activities.course_id = courses.id) AS updatetime " ) . order ( " updatetime desc " )
respond_to do | format |
format . js
end
end
end
end
end
@ -3342,6 +3388,8 @@ class UsersController < ApplicationController
when 'Syllabus'
when 'Syllabus'
obj = Syllabus . where ( 'id = ?' , params [ :id ] . to_i ) . first
obj = Syllabus . where ( 'id = ?' , params [ :id ] . to_i ) . first
@journals = obj . journals_for_messages . reorder ( " created_on desc " )
@journals = obj . journals_for_messages . reorder ( " created_on desc " )
@type = 'Syllabus'
@user_activity_id = params [ :div_id ] . to_i if params [ :div_id ]
when 'JournalsForMessage'
when 'JournalsForMessage'
obj = JournalsForMessage . where ( 'id = ?' , params [ :id ] . to_i ) . first
obj = JournalsForMessage . where ( 'id = ?' , params [ :id ] . to_i ) . first
journals = [ ]
journals = [ ]
@ -3358,6 +3406,7 @@ class UsersController < ApplicationController
@user_activity_id = params [ :div_id ] . to_i if params [ :div_id ]
@user_activity_id = params [ :div_id ] . to_i if params [ :div_id ]
@homepage = params [ :homepage ] . to_i
@homepage = params [ :homepage ] . to_i
@type = 'BlogComment'
@type = 'BlogComment'
@user_id = obj . author_id
comments = [ ]
comments = [ ]
@journals = get_all_children ( comments , obj )
@journals = get_all_children ( comments , obj )
when 'HomeworkCommon'
when 'HomeworkCommon'