X-Git-Url: https://projects.mako.cc/source/selectricity-live/blobdiff_plain/a12d4f62752f546f57421244e370e79965706ffb..f7aee769411a893c1059c529a220c0d25c72974f:/vendor/plugins/login_engine/app/models/user_notify.rb diff --git a/vendor/plugins/login_engine/app/models/user_notify.rb b/vendor/plugins/login_engine/app/models/user_notify.rb new file mode 100644 index 0000000..0767842 --- /dev/null +++ b/vendor/plugins/login_engine/app/models/user_notify.rb @@ -0,0 +1,75 @@ +class UserNotify < ActionMailer::Base + def signup(user, password, url=nil) + setup_email(user) + + # Email header info + @subject += "Welcome to #{LoginEngine.config(:app_name)}!" + + # Email body substitutions + @body["name"] = "#{user.firstname} #{user.lastname}" + @body["login"] = user.login + @body["password"] = password + @body["url"] = url || LoginEngine.config(:app_url).to_s + @body["app_name"] = LoginEngine.config(:app_name).to_s + end + + def forgot_password(user, url=nil) + setup_email(user) + + # Email header info + @subject += "Forgotten password notification" + + # Email body substitutions + @body["name"] = "#{user.firstname} #{user.lastname}" + @body["login"] = user.login + @body["url"] = url || LoginEngine.config(:app_url).to_s + @body["app_name"] = LoginEngine.config(:app_name).to_s + end + + def change_password(user, password, url=nil) + setup_email(user) + + # Email header info + @subject += "Changed password notification" + + # Email body substitutions + @body["name"] = "#{user.firstname} #{user.lastname}" + @body["login"] = user.login + @body["password"] = password + @body["url"] = url || LoginEngine.config(:app_url).to_s + @body["app_name"] = LoginEngine.config(:app_name).to_s + end + + def pending_delete(user, url=nil) + setup_email(user) + + # Email header info + @subject += "Delete user notification" + + # Email body substitutions + @body["name"] = "#{user.firstname} #{user.lastname}" + @body["url"] = url || LoginEngine.config(:app_url).to_s + @body["app_name"] = LoginEngine.config(:app_name).to_s + @body["days"] = LoginEngine.config(:delayed_delete_days).to_s + end + + def delete(user, url=nil) + setup_email(user) + + # Email header info + @subject += "Delete user notification" + + # Email body substitutions + @body["name"] = "#{user.firstname} #{user.lastname}" + @body["url"] = url || LoginEngine.config(:app_url).to_s + @body["app_name"] = LoginEngine.config(:app_name).to_s + end + + def setup_email(user) + @recipients = "#{user.email}" + @from = LoginEngine.config(:email_from).to_s + @subject = "[#{LoginEngine.config(:app_name)}] " + @sent_on = Time.now + @headers['Content-Type'] = "text/plain; charset=#{LoginEngine.config(:mail_charset)}; format=flowed" + end +end