mirror of
https://github.com/basecamp/once-campfire.git
synced 2026-10-08 07:40:08 +09:00
Enforce restriction to create new rooms
This commit is contained in:
@@ -3,6 +3,7 @@ class Rooms::ClosedsController < RoomsController
|
||||
before_action :ensure_can_administer, only: %i[ update ]
|
||||
before_action :remember_last_room_visited, only: :show
|
||||
before_action :force_room_type, only: %i[ edit update ]
|
||||
before_action :ensure_eligible_to_create_rooms, only: %i[ new create ]
|
||||
|
||||
DEFAULT_ROOM_NAME = "New room"
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ class Rooms::OpensController < RoomsController
|
||||
before_action :ensure_can_administer, only: %i[ update ]
|
||||
before_action :remember_last_room_visited, only: :show
|
||||
before_action :force_room_type, only: %i[ edit update ]
|
||||
before_action :ensure_eligible_to_create_rooms, only: %i[ new create ]
|
||||
|
||||
DEFAULT_ROOM_NAME = "New room"
|
||||
|
||||
|
||||
@@ -31,6 +31,12 @@ class RoomsController < ApplicationController
|
||||
head :forbidden unless Current.user.can_administer?(@room)
|
||||
end
|
||||
|
||||
def ensure_eligible_to_create_rooms
|
||||
if Current.account.restrict_room_creation_to_administrators? && !Current.user.administrator?
|
||||
head :forbidden
|
||||
end
|
||||
end
|
||||
|
||||
def find_messages
|
||||
messages = @room.messages.with_creator.with_attachment_details.with_boosts
|
||||
|
||||
|
||||
Reference in New Issue
Block a user