summaryrefslogtreecommitdiff
path: root/app/controllers/master_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/master_controller.rb')
-rw-r--r--app/controllers/master_controller.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/app/controllers/master_controller.rb b/app/controllers/master_controller.rb
new file mode 100644
index 0000000..b2075d5
--- /dev/null
+++ b/app/controllers/master_controller.rb
@@ -0,0 +1,14 @@
+# frozen_string_literal: true
+
+# The father class of all controllers that require the master role to fulfill requests.
+class MasterController < AuthenticatedController
+ before_action :assert_master_role
+
+ private
+
+ def assert_master_role
+ return if current_user_account.role == 'master'
+
+ render json: { error_message: 'No cuenta con los permisos necesarios' }, status: :forbidden
+ end
+end