Add extended about page stub
This commit is contained in:
		
							parent
							
								
									2939e9898b
								
							
						
					
					
						commit
						e25170f960
					
				
					 10 changed files with 44 additions and 15 deletions
				
			
		| 
						 | 
					@ -7,6 +7,12 @@ class AboutController < ApplicationController
 | 
				
			||||||
    @description = Setting.site_description
 | 
					    @description = Setting.site_description
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def more
 | 
				
			||||||
 | 
					    @extended_description = Setting.site_extended_description
 | 
				
			||||||
 | 
					    @contact_account      = Account.find_local(Setting.site_contact_username)
 | 
				
			||||||
 | 
					    @contact_email        = Setting.site_contact_email
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def terms; end
 | 
					  def terms; end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  private
 | 
					  private
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,9 +1,11 @@
 | 
				
			||||||
 | 
					# frozen_string_literal: true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module Settings
 | 
					module Settings
 | 
				
			||||||
  module Extend
 | 
					  module Extend
 | 
				
			||||||
  	extend ActiveSupport::Concern
 | 
					    extend ActiveSupport::Concern
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def settings
 | 
					    def settings
 | 
				
			||||||
      ScopedSettings.for_thing(self)
 | 
					      ScopedSettings.for_thing(self)
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,3 +1,5 @@
 | 
				
			||||||
 | 
					# frozen_string_literal: true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module Settings
 | 
					module Settings
 | 
				
			||||||
  class ScopedSettings < ::Setting
 | 
					  class ScopedSettings < ::Setting
 | 
				
			||||||
    def self.for_thing(object)
 | 
					    def self.for_thing(object)
 | 
				
			||||||
| 
						 | 
					@ -9,4 +11,4 @@ module Settings
 | 
				
			||||||
      unscoped.where(thing_type: @object.class.base_class.to_s, thing_id: @object.id)
 | 
					      unscoped.where(thing_type: @object.class.base_class.to_s, thing_id: @object.id)
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -159,6 +159,7 @@ class Account < ApplicationRecord
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def find_remote!(username, domain)
 | 
					    def find_remote!(username, domain)
 | 
				
			||||||
 | 
					      return if username.blank?
 | 
				
			||||||
      where(arel_table[:username].matches(username.gsub(/[%_]/, '\\\\\0'))).where(domain.nil? ? { domain: nil } : arel_table[:domain].matches(domain.gsub(/[%_]/, '\\\\\0'))).take!
 | 
					      where(arel_table[:username].matches(username.gsub(/[%_]/, '\\\\\0'))).where(domain.nil? ? { domain: nil } : arel_table[:domain].matches(domain.gsub(/[%_]/, '\\\\\0'))).take!
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9,10 +9,9 @@ class Setting < RailsSettings::Base
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  class << self
 | 
					  class << self
 | 
				
			||||||
 | 
					 | 
				
			||||||
    def [](key)
 | 
					    def [](key)
 | 
				
			||||||
      return super(key) unless rails_initialized?
 | 
					      return super(key) unless rails_initialized?
 | 
				
			||||||
      
 | 
					
 | 
				
			||||||
      val = Rails.cache.fetch(cache_key(key, @object)) do
 | 
					      val = Rails.cache.fetch(cache_key(key, @object)) do
 | 
				
			||||||
        db_val = object(key)
 | 
					        db_val = object(key)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -25,7 +24,7 @@ class Setting < RailsSettings::Base
 | 
				
			||||||
          default_settings[key]
 | 
					          default_settings[key]
 | 
				
			||||||
        end
 | 
					        end
 | 
				
			||||||
      end
 | 
					      end
 | 
				
			||||||
      
 | 
					
 | 
				
			||||||
      val
 | 
					      val
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,3 +1,5 @@
 | 
				
			||||||
 | 
					# frozen_string_literal: true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module Web
 | 
					module Web
 | 
				
			||||||
  def self.table_name_prefix
 | 
					  def self.table_name_prefix
 | 
				
			||||||
    'web_'
 | 
					    'web_'
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										8
									
								
								app/views/about/more.html.haml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								app/views/about/more.html.haml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,8 @@
 | 
				
			||||||
 | 
					- content_for :page_title do
 | 
				
			||||||
 | 
					  #{Rails.configuration.x.local_domain}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.wrapper
 | 
				
			||||||
 | 
					  = @extended_description.html_safe
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  - if @contact_account
 | 
				
			||||||
 | 
					    = render partial: 'authorize_follow/card', locals: { account: @contact_account }
 | 
				
			||||||
| 
						 | 
					@ -9,6 +9,12 @@
 | 
				
			||||||
      %th Setting
 | 
					      %th Setting
 | 
				
			||||||
      %th Click to edit
 | 
					      %th Click to edit
 | 
				
			||||||
  %tbody
 | 
					  %tbody
 | 
				
			||||||
 | 
					    %tr
 | 
				
			||||||
 | 
					      %td{ rowspan: 2 }
 | 
				
			||||||
 | 
					        %strong Contact information
 | 
				
			||||||
 | 
					      %td= best_in_place @settings['site_contact_username'], :value, url: admin_setting_path(@settings['site_contact_username']), place_holder: 'Enter a username'
 | 
				
			||||||
 | 
					    %tr
 | 
				
			||||||
 | 
					      %td= best_in_place @settings['site_contact_email'], :value, url: admin_setting_path(@settings['site_contact_email']), place_holder: 'Enter a public e-mail address'
 | 
				
			||||||
    %tr
 | 
					    %tr
 | 
				
			||||||
      %td
 | 
					      %td
 | 
				
			||||||
        %strong Site description
 | 
					        %strong Site description
 | 
				
			||||||
| 
						 | 
					@ -21,8 +27,10 @@
 | 
				
			||||||
        %code= '<em>'
 | 
					        %code= '<em>'
 | 
				
			||||||
      %td= best_in_place @settings['site_description'], :value, as: :textarea, url: admin_setting_path(@settings['site_description'])
 | 
					      %td= best_in_place @settings['site_description'], :value, as: :textarea, url: admin_setting_path(@settings['site_description'])
 | 
				
			||||||
    %tr
 | 
					    %tr
 | 
				
			||||||
      %td{ rowspan: 2 }
 | 
					      %td
 | 
				
			||||||
        %strong Contact information
 | 
					        %strong Extended site description
 | 
				
			||||||
      %td= best_in_place @settings['site_contact_username'], :value, url: admin_setting_path(@settings['site_contact_username']), place_holder: 'Enter a username'
 | 
					        %br/
 | 
				
			||||||
    %tr
 | 
					        Displayed on extended information page
 | 
				
			||||||
      %td= best_in_place @settings['site_contact_email'], :value, url: admin_setting_path(@settings['site_contact_email']), place_holder: 'Enter a public e-mail address'
 | 
					        %br/
 | 
				
			||||||
 | 
					        You can use HTML tags
 | 
				
			||||||
 | 
					      %td= best_in_place @settings['site_extended_description'], :value, as: :textarea, url: admin_setting_path(@settings['site_extended_description'])
 | 
				
			||||||
| 
						 | 
					@ -143,9 +143,10 @@ Rails.application.routes.draw do
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  get '/web/(*any)', to: 'home#index', as: :web
 | 
					  get '/web/(*any)', to: 'home#index', as: :web
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  get :about, to: 'about#index'
 | 
					  get '/about',      to: 'about#index'
 | 
				
			||||||
  get :terms, to: 'about#terms'
 | 
					  get '/about/more', to: 'about#more'
 | 
				
			||||||
 | 
					  get '/terms',      to: 'about#terms'
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
  root 'home#index'
 | 
					  root 'home#index'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  match '*unmatched_route', via: :all, to: 'application#raise_not_found'
 | 
					  match '*unmatched_route', via: :all, to: 'application#raise_not_found'
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,7 @@
 | 
				
			||||||
# config/app.yml for rails-settings-cached
 | 
					# config/app.yml for rails-settings-cached
 | 
				
			||||||
defaults: &defaults
 | 
					defaults: &defaults
 | 
				
			||||||
  site_description: ''
 | 
					  site_description: ''
 | 
				
			||||||
 | 
					  site_extended_description: ''
 | 
				
			||||||
  site_contact_username: ''
 | 
					  site_contact_username: ''
 | 
				
			||||||
  site_contact_email: ''
 | 
					  site_contact_email: ''
 | 
				
			||||||
  notification_emails:
 | 
					  notification_emails:
 | 
				
			||||||
| 
						 | 
					@ -12,7 +13,6 @@ defaults: &defaults
 | 
				
			||||||
  interactions:
 | 
					  interactions:
 | 
				
			||||||
    must_be_follower: false
 | 
					    must_be_follower: false
 | 
				
			||||||
    must_be_following: false
 | 
					    must_be_following: false
 | 
				
			||||||
 | 
					 | 
				
			||||||
development:
 | 
					development:
 | 
				
			||||||
  <<: *defaults
 | 
					  <<: *defaults
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue