|
|
@ -383,16 +383,26 @@ class ProjectsController < ApplicationController
|
|
|
|
@is_zhuce = false
|
|
|
|
@is_zhuce = false
|
|
|
|
flash[:notice] = l(:notice_email_sent, :value => email)
|
|
|
|
flash[:notice] = l(:notice_email_sent, :value => email)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# 邮箱地址已被注册
|
|
|
|
elsif !User.find_by_mail(params[:mail].to_s).nil?
|
|
|
|
elsif !User.find_by_mail(params[:mail].to_s).nil?
|
|
|
|
user = User.find_by_mail(params[:mail].to_s)
|
|
|
|
user = User.find_by_mail(params[:mail].to_s)
|
|
|
|
if !user.member_of?(@project)
|
|
|
|
if !user.member_of?(@project)
|
|
|
|
# 如果已经邀请过该用户,则不重复发送
|
|
|
|
# 如果已经邀请过该用户,则不重复发送
|
|
|
|
if InviteList.where("project_id =? and mail =?", @project.id, params[:mail].to_s).first.nil?
|
|
|
|
invite_list = InviteList.where("project_id =? and mail =?", @project.id, params[:mail].to_s).first
|
|
|
|
|
|
|
|
if invite_list.nil?
|
|
|
|
email = params[:mail]
|
|
|
|
email = params[:mail]
|
|
|
|
Mailer.request_member_to_project(email, @project, User.current).deliver
|
|
|
|
Mailer.request_member_to_project(email, @project, User.current).deliver
|
|
|
|
flash[:notice] = l(:notice_email_sent, :value => email)
|
|
|
|
flash[:notice] = l(:notice_email_sent, :value => email)
|
|
|
|
else
|
|
|
|
else
|
|
|
|
flash[:error] = l(:notice_email_invited)
|
|
|
|
# 已经发送过了,则隔24小时才能再次发送
|
|
|
|
|
|
|
|
if Time.now - invite_list.created_at > 10800
|
|
|
|
|
|
|
|
email = params[:mail]
|
|
|
|
|
|
|
|
Mailer.request_member_to_project(email, @project, User.current).deliver
|
|
|
|
|
|
|
|
flash[:notice] = l(:notice_email_sent, :value => email)
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
flash[:error] = l(:notice_email_invited)
|
|
|
|
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
else
|
|
|
|
else
|
|
|
|
flash[:error] = l(:label_member_of_project, :value => email)
|
|
|
|
flash[:error] = l(:label_member_of_project, :value => email)
|
|
|
@ -409,22 +419,22 @@ class ProjectsController < ApplicationController
|
|
|
|
# 发送邮件邀请新用户页面对应方法
|
|
|
|
# 发送邮件邀请新用户页面对应方法
|
|
|
|
def invite_members_by_mail
|
|
|
|
def invite_members_by_mail
|
|
|
|
if User.current.member_of?(@project) || User.current.admin?
|
|
|
|
if User.current.member_of?(@project) || User.current.admin?
|
|
|
|
@inviter_lists = InviteList.where(project_id:@project.id).all
|
|
|
|
@inviter_lists = InviteList.where(project_id:@project.id)
|
|
|
|
@inviters = []
|
|
|
|
# @inviters = []
|
|
|
|
@waiters = []
|
|
|
|
# @waiters = []
|
|
|
|
unless @inviter_lists.blank?
|
|
|
|
# unless @inviter_lists.blank?
|
|
|
|
@inviter_lists.each do|inviter_list|
|
|
|
|
# @inviter_lists.each do|inviter_list|
|
|
|
|
unless inviter_list.user.nil?
|
|
|
|
# unless inviter_list.user.nil?
|
|
|
|
if inviter_list.user.member_of?(@project)
|
|
|
|
# if inviter_list.user.member_of?(@project)
|
|
|
|
@inviters << inviter_list.user
|
|
|
|
# @inviters << inviter_list.user
|
|
|
|
@inviters_count = @inviters.size
|
|
|
|
# @inviters_count = @inviters.size
|
|
|
|
else
|
|
|
|
# else
|
|
|
|
@waiters << inviter_list.user
|
|
|
|
# @waiters << inviter_list.user
|
|
|
|
@waiters_count = @waiters.size
|
|
|
|
# @waiters_count = @waiters.size
|
|
|
|
end
|
|
|
|
# end
|
|
|
|
end
|
|
|
|
# end
|
|
|
|
end
|
|
|
|
# end
|
|
|
|
end
|
|
|
|
# end
|
|
|
|
@is_zhuce = false
|
|
|
|
@is_zhuce = false
|
|
|
|
respond_to do |format|
|
|
|
|
respond_to do |format|
|
|
|
|
format.html
|
|
|
|
format.html
|
|
|
|