diff --git a/environment.rb b/environment.rb index 729b69f1..10385a8f 100644 --- a/environment.rb +++ b/environment.rb @@ -51,7 +51,9 @@ Sidekiq.configure_client do |config| end if $config['pubsub_url'] - $pubsub = Redis.new url: $config['pubsub_url'] + $pubsub_pool = ConnectionPool.new(size: 10, timeout: 5) { + Redis.new url: $config['pubsub_url'] + } end if $config['pubsub_url'].nil? && ENV['RACK_ENV'] == 'production' diff --git a/models/site.rb b/models/site.rb index 5a1af946..11e3e0f2 100644 --- a/models/site.rb +++ b/models/site.rb @@ -243,6 +243,8 @@ class Site < Sequel::Model raise 'username is missing' end + return if is_banned == true + DB.transaction { self.is_banned = true self.updated_at = Time.now @@ -629,12 +631,15 @@ class Site < Sequel::Model end def latest_events(current_page=1, limit=10) - events_dataset.exclude(site_id: self.id).order(:created_at.desc).paginate(current_page, limit) + events_dataset.order(:created_at.desc).paginate(current_page, limit) end def news_feed(current_page=1, limit=10) following_ids = self.followings_dataset.select(:site_id).all.collect {|f| f.site_id} - Event.filter(site_id: following_ids+[self.id]).order(:created_at.desc).paginate(current_page, limit) + Event.filter(site_id: following_ids+[self.id]). + order(:created_at.desc). + exclude(actioning_site_id: self.id). + paginate(current_page, limit) end def host diff --git a/views/_news.erb b/views/_news.erb index 5a7a3334..9ffc8108 100644 --- a/views/_news.erb +++ b/views/_news.erb @@ -19,10 +19,14 @@