diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index 042311961..a49126a6c 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -37,6 +37,7 @@ class CoursesController < ApplicationController join = cs.join_course params,@user @state = join[:state] @course = join[:course] + Mailer.run.join_course_request(@course, User.current, params[:role]) # else # @course = Course.find_by_id params[:object_id] # CourseMessage.create(:user_id => @course.tea_id, :course_id => @course.id, :viewed => false,:content=> params[:role],:course_message_id=>User.current.id,:course_message_type=>'JoinCourseRequest') diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 2a646f5ce..6d049783e 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -919,9 +919,11 @@ class UsersController < ApplicationController def show #更新用户申请成为课程老师或教辅消息的状态 - join_course_messages = CourseMessage.where("course_id =? and course_message_type =? and u ser_id =? and course_message_id =? and viewed =?", - params[:course_id], 'JoinCourseRequest', User.current.id, @user.id, false) - join_course_messages.update_all(:viewed => true) + if params[:course_id] != nil + join_course_messages = CourseMessage.where("course_id =? and course_message_type =? and user_id =? and course_message_id =? and viewed =?", + params[:course_id], 'JoinCourseRequest', User.current.id, @user.id, false) + join_course_messages.update_all(:viewed => true) + end @page = params[:page] ? params[:page].to_i + 1 : 0 user_project_ids = @user.projects.visible.empty? ? "(-1)" : "(" + @user.projects.visible.map{|project| project.id}.join(",") + ")" user_course_ids = @user.courses.visible.empty? ? "(-1)" : "(" + @user.courses.visible.map{|course| course.id}.join(",") + ")" diff --git a/app/models/mailer.rb b/app/models/mailer.rb index d797f1ce1..8891e6552 100644 --- a/app/models/mailer.rb +++ b/app/models/mailer.rb @@ -1009,6 +1009,16 @@ class Mailer < ActionMailer::Base end end + def join_course_request(course, user, role) + @receive = User.find(course.tea_id) + @course = course + @user = user + @role = role + @subject = "#{@user.show_name} #{l(:label_apply_join_course)} #{@course.name} " + mail :to => @receive.mail, + :subject => @subject + end + private @@ -1066,4 +1076,5 @@ class Mailer < ActionMailer::Base 1.upto(len) { |i| newpass << chars[rand(chars.size-1)] } return newpass end + end diff --git a/app/views/mailer/join_course_request.html.erb b/app/views/mailer/join_course_request.html.erb new file mode 100644 index 000000000..680b9c9df --- /dev/null +++ b/app/views/mailer/join_course_request.html.erb @@ -0,0 +1,4 @@ +
+ <%= @user.show_name %>申请成为课程<%= @course.name %>的<%= @role.eql?('9') ? '老师': '教辅' %> + <%=link_to user_message_url(@receive),user_message_url(@receive)%> +
diff --git a/app/views/mailer/join_course_request.text.erb b/app/views/mailer/join_course_request.text.erb new file mode 100644 index 000000000..62e2315c5 --- /dev/null +++ b/app/views/mailer/join_course_request.text.erb @@ -0,0 +1,4 @@ +<%= @user.show_name %>申请成为课程<%= @course.name %>的<%= @role.eql?('9') ? '老师': '教辅' %> +<%=link_to user_message_url(@receive),user_message_url(@receive)%> + + diff --git a/config/locales/courses/zh.yml b/config/locales/courses/zh.yml index 498388cfc..585ef7bec 100644 --- a/config/locales/courses/zh.yml +++ b/config/locales/courses/zh.yml @@ -27,7 +27,7 @@ zh: # 资源库 (课程、项目按类型分) label_course_file: 资源库 label_upload_files: 上传资源 - + label_apply_join_course: 申请加入课程 # # 课程托管平台主页 #