Merge pull request #965 from ThibG/glitch-soc/merge-upstream

Merge upstream changes
master
ThibG 6 years ago committed by GitHub
commit 9f56511860
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      Gemfile
  2. 8
      Gemfile.lock
  3. 6
      app/controllers/concerns/account_controller_concern.rb
  4. 5
      app/lib/proof_provider/keybase/config_serializer.rb
  5. 2
      app/serializers/manifest_serializer.rb
  6. 1
      app/services/activitypub/fetch_remote_poll_service.rb
  7. 6
      app/services/activitypub/process_poll_service.rb
  8. 2
      config/initializers/omniauth.rb

@ -108,7 +108,7 @@ group :production, :test do
end end
group :test do group :test do
gem 'capybara', '~> 3.14' gem 'capybara', '~> 3.15'
gem 'climate_control', '~> 0.2' gem 'climate_control', '~> 0.2'
gem 'faker', '~> 1.9' gem 'faker', '~> 1.9'
gem 'microformats', '~> 4.1' gem 'microformats', '~> 4.1'

@ -127,7 +127,7 @@ GEM
sshkit (~> 1.3) sshkit (~> 1.3)
capistrano-yarn (2.0.2) capistrano-yarn (2.0.2)
capistrano (~> 3.0) capistrano (~> 3.0)
capybara (3.14.0) capybara (3.15.0)
addressable addressable
mini_mime (>= 0.1.3) mini_mime (>= 0.1.3)
nokogiri (~> 1.8) nokogiri (~> 1.8)
@ -366,7 +366,7 @@ GEM
concurrent-ruby (~> 1.0, >= 1.0.2) concurrent-ruby (~> 1.0, >= 1.0.2)
sidekiq (>= 3.5) sidekiq (>= 3.5)
statsd-ruby (~> 1.4, >= 1.4.0) statsd-ruby (~> 1.4, >= 1.4.0)
oj (3.7.10) oj (3.7.11)
omniauth (1.9.0) omniauth (1.9.0)
hashie (>= 3.4.6, < 3.7.0) hashie (>= 3.4.6, < 3.7.0)
rack (>= 1.6.2, < 3) rack (>= 1.6.2, < 3)
@ -422,7 +422,7 @@ GEM
pry (>= 0.10.4) pry (>= 0.10.4)
psych (3.1.0) psych (3.1.0)
public_suffix (3.0.3) public_suffix (3.0.3)
puma (3.12.0) puma (3.12.1)
pundit (2.0.1) pundit (2.0.1)
activesupport (>= 3.0.0) activesupport (>= 3.0.0)
raabro (1.1.6) raabro (1.1.6)
@ -672,7 +672,7 @@ DEPENDENCIES
capistrano-rails (~> 1.4) capistrano-rails (~> 1.4)
capistrano-rbenv (~> 2.1) capistrano-rbenv (~> 2.1)
capistrano-yarn (~> 2.0) capistrano-yarn (~> 2.0)
capybara (~> 3.14) capybara (~> 3.15)
charlock_holmes (~> 0.7.6) charlock_holmes (~> 0.7.6)
chewy (~> 5.0) chewy (~> 5.0)
cld3 (~> 3.2.3) cld3 (~> 3.2.3)

@ -69,6 +69,10 @@ module AccountControllerConcern
end end
def check_account_suspension def check_account_suspension
gone if @account.suspended? if @account.suspended?
skip_session!
expires_in(3.minutes, public: true)
gone
end
end end
end end

@ -2,6 +2,7 @@
class ProofProvider::Keybase::ConfigSerializer < ActiveModel::Serializer class ProofProvider::Keybase::ConfigSerializer < ActiveModel::Serializer
include RoutingHelper include RoutingHelper
include ActionView::Helpers::TextHelper
attributes :version, :domain, :display_name, :username, attributes :version, :domain, :display_name, :username,
:brand_color, :logo, :description, :prefill_url, :brand_color, :logo, :description, :prefill_url,
@ -29,11 +30,11 @@ class ProofProvider::Keybase::ConfigSerializer < ActiveModel::Serializer
end end
def description def description
Setting.site_short_description.presence || Setting.site_description.presence || I18n.t('about.about_mastodon_html') strip_tags(Setting.site_short_description.presence || I18n.t('about.about_mastodon_html'))
end end
def username def username
{ min: 1, max: 30, re: Account::USERNAME_RE.inspect } { min: 1, max: 30, re: '[a-z0-9_]+([a-z0-9_\.-]+[a-z0-9_]+)?' }
end end
def prefill_url def prefill_url

@ -18,7 +18,7 @@ class ManifestSerializer < ActiveModel::Serializer
end end
def description def description
strip_tags(object.site_description.presence || I18n.t('about.about_mastodon_html')) strip_tags(object.site_short_description.presence || I18n.t('about.about_mastodon_html'))
end end
def icons def icons

@ -5,6 +5,7 @@ class ActivityPub::FetchRemotePollService < BaseService
def call(poll, on_behalf_of = nil) def call(poll, on_behalf_of = nil)
json = fetch_resource(poll.status.uri, true, on_behalf_of) json = fetch_resource(poll.status.uri, true, on_behalf_of)
return unless supported_context?(json)
ActivityPub::ProcessPollService.new.call(poll, json) ActivityPub::ProcessPollService.new.call(poll, json)
end end
end end

@ -5,7 +5,7 @@ class ActivityPub::ProcessPollService < BaseService
def call(poll, json) def call(poll, json)
@json = json @json = json
return unless supported_context? && expected_type? return unless expected_type?
previous_expires_at = poll.expires_at previous_expires_at = poll.expires_at
@ -54,10 +54,6 @@ class ActivityPub::ProcessPollService < BaseService
private private
def supported_context?
super(@json)
end
def expected_type? def expected_type?
equals_or_includes_any?(@json['type'], %w(Question)) equals_or_includes_any?(@json['type'], %w(Question))
end end

@ -14,7 +14,7 @@ Devise.setup do |config|
cas_options[:host] = ENV['CAS_HOST'] if ENV['CAS_HOST'] cas_options[:host] = ENV['CAS_HOST'] if ENV['CAS_HOST']
cas_options[:port] = ENV['CAS_PORT'] if ENV['CAS_PORT'] cas_options[:port] = ENV['CAS_PORT'] if ENV['CAS_PORT']
cas_options[:ssl] = ENV['CAS_SSL'] == 'true' if ENV['CAS_SSL'] cas_options[:ssl] = ENV['CAS_SSL'] == 'true' if ENV['CAS_SSL']
cas_options[:validate_url] = ENV['CAS_VALIDATE_URL'] if ENV['CAS_VALIDATE_URL'] cas_options[:service_validate_url] = ENV['CAS_VALIDATE_URL'] if ENV['CAS_VALIDATE_URL']
cas_options[:callback_url] = ENV['CAS_CALLBACK_URL'] if ENV['CAS_CALLBACK_URL'] cas_options[:callback_url] = ENV['CAS_CALLBACK_URL'] if ENV['CAS_CALLBACK_URL']
cas_options[:logout_url] = ENV['CAS_LOGOUT_URL'] if ENV['CAS_LOGOUT_URL'] cas_options[:logout_url] = ENV['CAS_LOGOUT_URL'] if ENV['CAS_LOGOUT_URL']
cas_options[:login_url] = ENV['CAS_LOGIN_URL'] if ENV['CAS_LOGIN_URL'] cas_options[:login_url] = ENV['CAS_LOGIN_URL'] if ENV['CAS_LOGIN_URL']

Loading…
Cancel
Save