class Settings::DeletesController < ApplicationController
layout 'admin'
+ before_action :check_enabled_deletion
before_action :authenticate_user!
def show
private
+ def check_enabled_deletion
+ redirect_to root_path unless Setting.open_deletion
+ end
+
def delete_params
params.require(:form_delete_confirmation).permit(:password)
end
Setting.open_registrations
end
+ def open_deletion?
+ Setting.open_deletion
+ end
+
def add_rtl_body_class(other_classes)
other_classes = "#{other_classes} rtl" if [:ar, :fa, :he].include?(I18n.locale)
other_classes
.actions
= f.button :button, t('generic.save_changes'), type: :submit
-%hr/
+- if open_deletion?
+ %hr/
-%h6= t('auth.delete_account')
-%p.muted-hint= t('auth.delete_account_html', path: settings_delete_path)
+ %h6= t('auth.delete_account')
+ %p.muted-hint= t('auth.delete_account_html', path: settings_delete_path)
site_contact_email: ''
open_registrations: true
closed_registrations_message: ''
+ open_deletion: true
boost_modal: false
auto_play_gif: true
delete_modal: true
expect(response).to redirect_to '/auth/sign_in'
end
end
+
+ context do
+ around do |example|
+ open_deletion = Setting.open_deletion
+ example.run
+ Setting.open_deletion = open_deletion
+ end
+
+ it 'redirects' do
+ Setting.open_deletion = false
+ delete :destroy
+ expect(response).to redirect_to root_path
+ end
+ end
end
end