Merge branch 'master' into vdom

This commit is contained in:
Sam 2016-02-13 17:49:50 +11:00
commit b878598418
7 changed files with 35 additions and 20 deletions

View file

@ -126,6 +126,7 @@ h2#site-text-logo
padding: 8px 10px;
height: 100%;
width: 100%;
box-sizing: border-box;
display: block;
}
.fa-caret-down {
@ -142,16 +143,16 @@ h2#site-text-logo
position: absolute;
z-index: 10000000;
background-color: $secondary;
width: 98%;
width: 100%;
list-style: none;
margin: 0;
padding: 5px;
border: 1px solid #eaeaea;
box-sizing: border-box;
li {
margin: 5px 0;
padding: 0;
a {
width: 100%;
height: 100%;
display: block;
padding: 5px 8px;

View file

@ -9,7 +9,7 @@ module Jobs
def execute(args)
if SiteSetting.notify_about_flags_after > 0 &&
PostAction.flagged_posts_count > 0 &&
FlagQuery.flagged_post_actions('active').where('post_actions.created_at < ?', 48.hours.ago).pluck(:id).count > 0
FlagQuery.flagged_post_actions('active').where('post_actions.created_at < ?', SiteSetting.notify_about_flags_after.to_i.hours.ago).pluck(:id).count > 0
message = PendingFlagsMailer.notify
Email::Sender.new(message, :pending_flags_reminder).send

View file

@ -186,11 +186,14 @@ class UserNotifications < ActionMailer::Base
end
def self.get_context_posts(post, topic_user)
allowed_post_types = [Post.types[:regular]]
allowed_post_types << Post.types[:whisper] if topic_user.try(:user).try(:staff?)
context_posts = Post.where(topic_id: post.topic_id)
.where("post_number < ?", post.post_number)
.where(user_deleted: false)
.where(hidden: false)
.where(post_type: Topic.visible_post_types)
.where(post_type: allowed_post_types)
.order('created_at desc')
.limit(SiteSetting.email_posts_context)

View file

@ -100,7 +100,7 @@ module BackupRestore
DatabaseConfiguration = Struct.new(:host, :port, :username, :password, :database)
def self.database_configuration
config = Rails.env.production? ? ActiveRecord::Base.connection_pool.spec.config : Rails.configuration.database_configuration[Rails.env]
config = ActiveRecord::Base.connection_pool.spec.config
config = config.with_indifferent_access
DatabaseConfiguration.new(

View file

@ -121,7 +121,7 @@ module SiteSettingExtension
# exists it will be used instead of the setting and the setting will be hidden.
# Useful for things like API keys on multisite.
if opts[:shadowed_by_global] && GlobalSetting.respond_to?(name)
if (val = GlobalSetting.send(name)).present?
unless (val = GlobalSetting.send(name)) == ''.freeze
hidden_settings << name
shadowed_settings << name
current_value = val

View file

@ -470,6 +470,18 @@ describe SiteSettingExtension do
end
end
context "with a false override" do
before do
GlobalSetting.stubs(:bool).returns(false)
settings.setting(:bool, true, shadowed_by_global: true)
settings.refresh!
end
it "should return default cause nothing is set" do
expect(settings.bool).to eq(false)
end
end
context "with global setting" do
before do
GlobalSetting.stubs(:trout_api_key).returns('purringcat')

View file

@ -6,21 +6,20 @@ describe UserNotifications do
describe "#get_context_posts" do
it "does not include hidden/deleted/user_deleted posts in context" do
post = create_post
reply1 = create_post(topic: post.topic)
reply2 = create_post(topic: post.topic)
reply3 = create_post(topic: post.topic)
reply4 = create_post(topic: post.topic)
post1 = create_post
post2 = Fabricate(:post, topic: post1.topic, deleted_at: 1.day.ago)
post3 = Fabricate(:post, topic: post1.topic, user_deleted: true)
post4 = Fabricate(:post, topic: post1.topic, hidden: true)
post5 = Fabricate(:post, topic: post1.topic, post_type: Post.types[:moderator_action])
post6 = Fabricate(:post, topic: post1.topic, post_type: Post.types[:small_action])
post7 = Fabricate(:post, topic: post1.topic, post_type: Post.types[:whisper])
last = Fabricate(:post, topic: post1.topic)
reply1.trash!
reply2.user_deleted = true
reply2.save
reply3.hidden = true
reply3.save
expect(UserNotifications.get_context_posts(reply4, nil).count).to eq(1)
# default is only post #1
expect(UserNotifications.get_context_posts(last, nil).count).to eq(1)
# staff members can also see the whisper
tu = TopicUser.new(topic: post1.topic, user: build(:moderator))
expect(UserNotifications.get_context_posts(last, tu).count).to eq(2)
end
end