* Update mobile version of /new registration view * Optimize styles for desktop view * Fix typo * Fix typo * Add twemojis in footer area * Update messaging to fulfill all intents * cache * cache * hr-label fix on mobile * hr-label fix on mobile * crayons for checkbox * crayons for checkbox * remove old styles * move signin to appropriate folder * Remove schema changes * Fix registraction specs and hide password hint for no SSO enabled * Disable email hint for password reset page * Fix specs * Revert "Disable email hint for password reset page" This reverts commit b33a6dda4c13534541294281f83f7ad5a4864c0d. * Transfer User.registered.estimated_count to the controller * Fix import path Co-authored-by: ludwiczakpawel <ludwiczakpawel@gmail.com> Co-authored-by: rhymes <rhymes@hey.com>
39 lines
1 KiB
Ruby
39 lines
1 KiB
Ruby
class RegistrationsController < Devise::RegistrationsController
|
|
prepend_before_action :require_no_authentication, only: []
|
|
|
|
def new
|
|
@registered_users_count = User.registered.estimated_count
|
|
|
|
if user_signed_in?
|
|
redirect_to dashboard_path
|
|
else
|
|
super
|
|
end
|
|
end
|
|
|
|
def create
|
|
not_authorized unless SiteConfig.allow_email_password_registration || SiteConfig.waiting_on_first_user
|
|
|
|
build_resource(sign_up_params)
|
|
resource.saw_onboarding = false
|
|
resource.editor_version = "v2"
|
|
resource.save if resource.email.present?
|
|
yield resource if block_given?
|
|
if resource.persisted?
|
|
update_first_user_permissions(resource)
|
|
redirect_to "/confirm-email?email=#{resource.email}"
|
|
else
|
|
render action: "by_email"
|
|
end
|
|
end
|
|
|
|
private
|
|
|
|
def update_first_user_permissions(resource)
|
|
return unless SiteConfig.waiting_on_first_user
|
|
|
|
resource.add_role(:super_admin)
|
|
resource.add_role(:single_resource_admin, Config)
|
|
SiteConfig.waiting_on_first_user = false
|
|
end
|
|
end
|