Sprankelprachtig aan/afmeldsysteem

api_controller.rb 783B

123456789101112131415161718192021222324252627282930313233
  1. class ApiController < ActionController::Base
  2. include AuthenticationHelper
  3. before_action :api_require_authentication!, except: [:status]
  4. def status
  5. @message = "Ok"
  6. render 'api/ok'
  7. end
  8. protected
  9. def api_require_authentication!
  10. if !is_logged_in?
  11. head :unauthorized
  12. end
  13. end
  14. def api_require_admin!
  15. if !current_person.is_admin?
  16. @message = I18n.t('authentication.admin_required')
  17. render 'api/error', status: :forbidden
  18. end
  19. end
  20. # Require user to be a member of group OR admin, requires @group set
  21. def require_membership!
  22. if !current_person.groups.include?(@group) && !current_person.is_admin?
  23. @message = I18n.t('authentication.membership_required')
  24. render 'api/error', status: :forbidden
  25. end
  26. end
  27. end