base_controller.rb 671 B

1234567891011121314151617181920212223242526272829303132
  1. # Copyright (C) 2012-2022 Zammad Foundation, https://zammad-foundation.org/
  2. class KnowledgeBase::BaseController < ApplicationController
  3. prepend_before_action :authentication_check
  4. before_action :authorize!
  5. def show
  6. model_show_render(klass, params_for_permission)
  7. end
  8. def create
  9. model_create_render(klass, params_for_permission)
  10. end
  11. def update
  12. model_update_render(klass, params_for_permission)
  13. end
  14. def destroy
  15. model_destroy_render(klass, params_for_permission)
  16. end
  17. def klass
  18. @klass ||= controller_path.classify.constantize
  19. end
  20. private
  21. def params_for_permission
  22. params.permit klass.agent_allowed_params
  23. end
  24. end