|
|
@ -1,3 +1,4 @@
|
|
|
|
|
|
|
|
#encoding: utf-8
|
|
|
|
# Redmine - project management software
|
|
|
|
# Redmine - project management software
|
|
|
|
# Copyright (C) 2006-2013 Jean-Philippe Lang
|
|
|
|
# Copyright (C) 2006-2013 Jean-Philippe Lang
|
|
|
|
#
|
|
|
|
#
|
|
|
@ -16,6 +17,8 @@
|
|
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
|
|
|
|
|
|
|
|
class Message < ActiveRecord::Base
|
|
|
|
class Message < ActiveRecord::Base
|
|
|
|
|
|
|
|
require 'net/http'
|
|
|
|
|
|
|
|
require 'json'
|
|
|
|
include Redmine::SafeAttributes
|
|
|
|
include Redmine::SafeAttributes
|
|
|
|
include UserScoreHelper
|
|
|
|
include UserScoreHelper
|
|
|
|
include ApplicationHelper
|
|
|
|
include ApplicationHelper
|
|
|
@ -262,12 +265,14 @@ class Message < ActiveRecord::Base
|
|
|
|
self.course.members.each do |m|
|
|
|
|
self.course.members.each do |m|
|
|
|
|
if self.author.allowed_to?(:as_teacher, self.course) && m.user_id != self.author_id # 老师 自己的帖子不给自己发送消息
|
|
|
|
if self.author.allowed_to?(:as_teacher, self.course) && m.user_id != self.author_id # 老师 自己的帖子不给自己发送消息
|
|
|
|
self.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => self.board.course_id, :viewed => false)
|
|
|
|
self.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => self.board.course_id, :viewed => false)
|
|
|
|
|
|
|
|
Wechat.api.topic_publish_template m.user_id, "#{l(:label_course_topic_template)}", self.subject, self.author.try(:realname), format_time(self.created_on)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
else # 回帖
|
|
|
|
else # 回帖
|
|
|
|
self.course.members.each do |m|
|
|
|
|
self.course.members.each do |m|
|
|
|
|
if m.user_id == Message.find(self.parent_id).author_id && m.user_id != self.author_id # 只针对主贴回复,回复自己的帖子不发消息
|
|
|
|
if m.user_id == Message.find(self.parent_id).author_id && m.user_id != self.author_id # 只针对主贴回复,回复自己的帖子不发消息
|
|
|
|
self.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => self.board.course_id, :viewed => false)
|
|
|
|
self.course_messages << CourseMessage.new(:user_id => m.user_id, :course_id => self.board.course_id, :viewed => false)
|
|
|
|
|
|
|
|
Wechat.api.comment_template m.user_id, "#{l(:label_topic_comment_template)}", self.author.try(:realname), format_time(self.created_on), self.content.html_safe
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
@ -276,12 +281,14 @@ class Message < ActiveRecord::Base
|
|
|
|
self.project.members.each do |m|
|
|
|
|
self.project.members.each do |m|
|
|
|
|
if m.user_id != self.author_id
|
|
|
|
if m.user_id != self.author_id
|
|
|
|
self.forge_messages << ForgeMessage.new(:user_id => m.user_id, :project_id => self.board.project_id, :viewed => false)
|
|
|
|
self.forge_messages << ForgeMessage.new(:user_id => m.user_id, :project_id => self.board.project_id, :viewed => false)
|
|
|
|
|
|
|
|
Wechat.api.topic_publish_template m.user_id, "#{l(:label_project_topic_template)}", self.subject, self.author.try(:realname), format_time(self.created_on)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
else # 回帖
|
|
|
|
else # 回帖
|
|
|
|
self.project.members.each do |m|
|
|
|
|
self.project.members.each do |m|
|
|
|
|
if m.user_id == Message.find(self.parent_id).author_id && m.user_id != self.author_id # 只针对主贴回复,回复自己的帖子不发消息
|
|
|
|
if m.user_id == Message.find(self.parent_id).author_id && m.user_id != self.author_id # 只针对主贴回复,回复自己的帖子不发消息
|
|
|
|
self.forge_messages << ForgeMessage.new(:user_id => m.user_id, :project_id => self.board.project_id, :viewed => false)
|
|
|
|
self.forge_messages << ForgeMessage.new(:user_id => m.user_id, :project_id => self.board.project_id, :viewed => false)
|
|
|
|
|
|
|
|
Wechat.api.comment_template m.user_id, "#{l(:label_topic_comment_template)}", self.author.try(:realname), format_time(self.created_on), self.content.html_safe
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|