Commit 1357c1cb authored by Eugen Rochko's avatar Eugen Rochko
Browse files

Add single user mode

parent 84d2371d
......@@ -16,6 +16,12 @@ LOCAL_HTTPS=true
PAPERCLIP_SECRET=
SECRET_KEY_BASE=
# Registrations
# Single user mode will disable registrations and redirect frontpage to the first profile
# SINGLE_USER_MODE=true
# Prevent registrations with following e-mail domains
# EMAIL_DOMAIN_BLACKLIST=example1.com|example2.de|etc
# E-mail configuration
SMTP_SERVER=smtp.mailgun.org
SMTP_PORT=587
......@@ -27,8 +33,11 @@ SMTP_FROM_ADDRESS=notifications@example.com
# CDN_HOST=assets.example.com
# S3 (optional)
S3_ENABLED=false
S3_BUCKET=
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
S3_REGION=
# S3_ENABLED=true
# S3_BUCKET=
# AWS_ACCESS_KEY_ID=
# AWS_SECRET_ACCESS_KEY=
# S3_REGION=
# Optional alias for S3 if you want to use Cloudfront or Cloudflare in front
# S3_CLOUDFRONT_HOST=
......@@ -3,6 +3,7 @@
class Auth::RegistrationsController < Devise::RegistrationsController
layout 'auth'
before_action :check_single_user_mode
before_action :configure_sign_up_params, only: [:create]
protected
......@@ -21,4 +22,8 @@ class Auth::RegistrationsController < Devise::RegistrationsController
def after_sign_up_path_for(_resource)
new_user_session_path
end
def check_single_user_mode
redirect_to root_path if Rails.configuration.x.single_user_mode
end
end
......@@ -5,15 +5,13 @@ class HomeController < ApplicationController
def index
@body_classes = 'app-body'
@home = Feed.new(:home, current_user.account).get(20)
@mentions = Feed.new(:mentions, current_user.account).get(20)
@token = find_or_create_access_token.token
end
private
def authenticate_user!
redirect_to about_path unless user_signed_in?
redirect_to(Rails.configuration.x.single_user_mode ? account_path(Account.first) : about_path) unless user_signed_in?
end
def find_or_create_access_token
......
# frozen_string_literal: true
Rails.application.configure do
config.x.single_user_mode = ENV['SINGLE_USER_MODE'] == 'true'
end
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment