Class: Admin::InvitationsController
- Inherits:
-
ApplicationController
- Object
- ApplicationController
- Admin::InvitationsController
- Includes:
- AuditLoggable
- Defined in:
- lib/generators/ruby_cms/templates/controllers/admin/invitations_controller.rb
Instance Method Summary collapse
Instance Method Details
#create ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/generators/ruby_cms/templates/controllers/admin/invitations_controller.rb', line 9 def create invitation = Invitation.new(invitation_params) invitation.invited_by = current_user if respond_to?(:current_user) && current_user if invitation.save deliver(invitation) invitation.touch_sent! audit!(:user_invited, target: invitation, summary: "Invited #{invitation.email}", meta: { email: invitation.email, admin: invitation.admin }) redirect_to admin_users_path, notice: "Uitnodiging verstuurd naar #{invitation.email}" else redirect_to admin_users_path, alert: invitation.errors..to_sentence end end |
#destroy ⇒ Object
45 46 47 48 49 50 |
# File 'lib/generators/ruby_cms/templates/controllers/admin/invitations_controller.rb', line 45 def destroy invitation = Invitation.find(params[:id]) invitation.revoke! audit!(:user_invitation_revoked, target: invitation, summary: "Revoked invite #{invitation.email}") redirect_to admin_users_path, notice: "Uitnodiging ingetrokken" end |
#resend ⇒ Object
24 25 26 27 28 29 30 31 |
# File 'lib/generators/ruby_cms/templates/controllers/admin/invitations_controller.rb', line 24 def resend invitation = Invitation.find(params[:id]) invitation.extend_expiry! deliver(invitation) invitation.touch_sent! audit!(:user_invitation_resent, target: invitation, summary: "Resent invite #{invitation.email}") redirect_to admin_users_path, notice: "Uitnodiging opnieuw verstuurd" end |
#resend_all ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/generators/ruby_cms/templates/controllers/admin/invitations_controller.rb', line 33 def resend_all sent = 0 Invitation.pending.find_each do |inv| inv.extend_expiry! deliver(inv) inv.touch_sent! sent += 1 end audit!(:user_invitation_resent, target: "Invitation (bulk)", summary: "Resent #{sent} invites", meta: { count: sent }) redirect_to admin_users_path, notice: "#{sent} uitnodiging#{'en' unless sent == 1} opnieuw verstuurd" end |