Merge branch 'master' into glitch-soc/merge-upstream
Conflicts: - app/controllers/oauth/authorized_applications_controller.rb Two changes too close to each other - app/controllers/settings/sessions_controller.rb - app/lib/user_settings_decorator.rb Two changes too close to each other - app/models/media_attachment.rb New changes too close to glitch-soc only changes. - app/models/user.rb Two changes too close to each other. - app/services/remove_status_service.rb Kept direct timeline code which had been removed upstream. - app/views/settings/preferences/show.html.haml Two changes too close to each other. - config/locales/en.yml Introduction of a new string too close to glitch-soc-only's “flavour” - config/locales/ja.yml Introduction of a new string too close to glitch-soc-only's “flavour” - config/locales/pl.yml Introduction of a new string too close to glitch-soc-only's “flavour” - config/locales/simple_form.en.yml Introduction of a new string too close to glitch-soc-only's “skin” - config/locales/simple_form.pl.yml Introduction of a new string too close to glitch-soc-only's “skin” - config/settings.yml Reverted upstream's decision of enabling posting application by default.
This commit is contained in:
		
							
								
								
									
										51
									
								
								app/controllers/settings/featured_tags_controller.rb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								app/controllers/settings/featured_tags_controller.rb
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,51 @@
 | 
			
		||||
# frozen_string_literal: true
 | 
			
		||||
 | 
			
		||||
class Settings::FeaturedTagsController < Settings::BaseController
 | 
			
		||||
  layout 'admin'
 | 
			
		||||
 | 
			
		||||
  before_action :authenticate_user!
 | 
			
		||||
  before_action :set_featured_tags, only: :index
 | 
			
		||||
  before_action :set_featured_tag, except: [:index, :create]
 | 
			
		||||
  before_action :set_most_used_tags, only: :index
 | 
			
		||||
 | 
			
		||||
  def index
 | 
			
		||||
    @featured_tag = FeaturedTag.new
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def create
 | 
			
		||||
    @featured_tag = current_account.featured_tags.new(featured_tag_params)
 | 
			
		||||
    @featured_tag.reset_data
 | 
			
		||||
 | 
			
		||||
    if @featured_tag.save
 | 
			
		||||
      redirect_to settings_featured_tags_path
 | 
			
		||||
    else
 | 
			
		||||
      set_featured_tags
 | 
			
		||||
      set_most_used_tags
 | 
			
		||||
 | 
			
		||||
      render :index
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def destroy
 | 
			
		||||
    @featured_tag.destroy!
 | 
			
		||||
    redirect_to settings_featured_tags_path
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  private
 | 
			
		||||
 | 
			
		||||
  def set_featured_tag
 | 
			
		||||
    @featured_tag = current_account.featured_tags.find(params[:id])
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def set_featured_tags
 | 
			
		||||
    @featured_tags = current_account.featured_tags.order(statuses_count: :desc).reject(&:new_record?)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def set_most_used_tags
 | 
			
		||||
    @most_used_tags = Tag.most_used(current_account).where.not(id: @featured_tags.map(&:id)).limit(10)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def featured_tag_params
 | 
			
		||||
    params.require(:featured_tag).permit(:name)
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
@@ -29,6 +29,6 @@ class Settings::ProfilesController < Settings::BaseController
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def set_account
 | 
			
		||||
    @account = current_user.account
 | 
			
		||||
    @account = current_account
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 
 | 
			
		||||
@@ -2,6 +2,7 @@
 | 
			
		||||
 | 
			
		||||
#  Intentionally does not inherit from BaseController
 | 
			
		||||
class Settings::SessionsController < ApplicationController
 | 
			
		||||
  before_action :authenticate_user!
 | 
			
		||||
  before_action :set_session, only: :destroy
 | 
			
		||||
 | 
			
		||||
  def destroy
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user