Allow a configurable delay to keep diary entries from being published in feeds
This is to provide another tool to help spam fighting. The configuration value is set to zero hours for new deploys in order to be 'least surprising'. You can change the setting without interfering with your test suite.
This commit is contained in:
parent
21bf5d79d6
commit
6ed749e7eb
4 changed files with 29 additions and 1 deletions
|
@ -166,6 +166,10 @@ class DiaryEntriesController < ApplicationController
|
|||
else
|
||||
@entries = DiaryEntry.joins(:user).where(:users => { :status => %w[active confirmed] })
|
||||
|
||||
# Items can't be flagged as deleted in the RSS format.
|
||||
# For the general feeds, allow a delay before publishing, to help spam fighting
|
||||
@entries = @entries.where("created_at < :time", :time => Settings.diary_feed_delay.hours.ago)
|
||||
|
||||
if params[:language]
|
||||
@entries = @entries.where(:language_code => params[:language])
|
||||
@title = t("diary_entries.feed.language.title", :language_name => Language.find(params[:language]).english_name)
|
||||
|
@ -177,7 +181,6 @@ class DiaryEntriesController < ApplicationController
|
|||
@link = url_for :action => "index", :host => Settings.server_url, :protocol => Settings.server_protocol
|
||||
end
|
||||
end
|
||||
|
||||
@entries = @entries.visible.includes(:user).order("created_at DESC").limit(20)
|
||||
end
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue