class InviteCodesController < ApplicationController before_action :ensure_self_hosted before_action :ensure_super_admin def index @invite_codes = InviteCode.all end def create InviteCode.generate! redirect_back_or_to invite_codes_path, notice: "Code generated" end def destroy code = InviteCode.find(params[:id]) code.destroy redirect_back_or_to invite_codes_path, notice: "Code deleted" end private def ensure_self_hosted redirect_to root_path unless self_hosted? end def ensure_super_admin redirect_to root_path, alert: t("settings.hostings.not_authorized") unless Current.user.super_admin? end end