|
|
@ -62,7 +62,7 @@ class News < ActiveRecord::Base
|
|
|
|
:author_key => :author_id
|
|
|
|
:author_key => :author_id
|
|
|
|
acts_as_watchable
|
|
|
|
acts_as_watchable
|
|
|
|
|
|
|
|
|
|
|
|
after_create :act_as_activity,:act_as_forge_activity, :act_as_course_activity, :add_author_as_watcher, :send_mail, :add_news_count, :act_as_student_score, :act_as_system_message
|
|
|
|
after_create :act_as_activity,:act_as_forge_activity, :act_as_course_activity, :add_author_as_watcher, :send_mail, :add_news_count, :act_as_student_score, :act_as_system_message, :delay_news_send
|
|
|
|
after_update :update_activity
|
|
|
|
after_update :update_activity
|
|
|
|
after_destroy :delete_kindeditor_assets, :decrease_news_count, :delete_org_activities, :down_course_score
|
|
|
|
after_destroy :delete_kindeditor_assets, :decrease_news_count, :delete_org_activities, :down_course_score
|
|
|
|
|
|
|
|
|
|
|
@ -169,7 +169,7 @@ class News < ActiveRecord::Base
|
|
|
|
if self.course
|
|
|
|
if self.course
|
|
|
|
self.course.members.each do |m|
|
|
|
|
self.course.members.each do |m|
|
|
|
|
if m.user_id != self.author_id
|
|
|
|
if m.user_id != self.author_id
|
|
|
|
# self.delay.send_message(m.user_id, self.course_id)
|
|
|
|
#self.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => self.course_id, :viewed => false)
|
|
|
|
count = ShieldWechatMessage.where("container_type='User' and container_id=#{m.user_id} and shield_type='Course' and shield_id=#{self.course_id}").count
|
|
|
|
count = ShieldWechatMessage.where("container_type='User' and container_id=#{m.user_id} and shield_type='Course' and shield_id=#{self.course_id}").count
|
|
|
|
if count == 0
|
|
|
|
if count == 0
|
|
|
|
ws = WechatService.new
|
|
|
|
ws = WechatService.new
|
|
|
@ -189,9 +189,19 @@ class News < ActiveRecord::Base
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
# def send_message user_id, course_id
|
|
|
|
def delay_news_send
|
|
|
|
# self.course_messages << CourseMessage.new(:user_id => user_id, :course_id => course_id, :viewed => false)
|
|
|
|
if self.course
|
|
|
|
# end
|
|
|
|
self.delay.contain_news_message
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def contain_news_message
|
|
|
|
|
|
|
|
self.course.members.each do |m|
|
|
|
|
|
|
|
|
if m.user_id != self.author_id
|
|
|
|
|
|
|
|
self.course_messages << CourseMessage.new(:user_id => user_id, :course_id => container_id, :viewed => false)
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
# Time 2015-03-31 13:50:54
|
|
|
|
# Time 2015-03-31 13:50:54
|
|
|
|
# Author lizanle
|
|
|
|
# Author lizanle
|
|
|
|