diff --git a/app/assets/stylesheets/desktop/topic-post.scss b/app/assets/stylesheets/desktop/topic-post.scss
index f04cdec86..35fb63168 100644
--- a/app/assets/stylesheets/desktop/topic-post.scss
+++ b/app/assets/stylesheets/desktop/topic-post.scss
@@ -1041,16 +1041,3 @@ and (max-width : 767px) {
}
}
-
-@media all
-and (max-height: 700px) {
-
- .post-menu-area {
- margin-bottom: 0px;
- margin-top: -18px;
- }
-
- .topic-body {
- padding: 5px 11px 2px;
- }
-}
diff --git a/app/jobs/regular/pull_hotlinked_images.rb b/app/jobs/regular/pull_hotlinked_images.rb
index 9da1f3539..379ad102e 100644
--- a/app/jobs/regular/pull_hotlinked_images.rb
+++ b/app/jobs/regular/pull_hotlinked_images.rb
@@ -63,7 +63,7 @@ module Jobs
# Markdown reference - [x]: http://
raw.gsub!(/\[([^\]]+)\]:\s?#{escaped_src}/) { "[#{$1}]: #{url}" }
# Direct link
- raw.gsub!(/^#{escaped_src}\s?$/, "
")
+ raw.gsub!(/^#{escaped_src}(\s?)$/) { "
#{$1}" }
end
rescue => e
Rails.logger.info("Failed to pull hotlinked image: #{src} post:#{post_id}\n" + e.message + "\n" + e.backtrace.join("\n"))
diff --git a/app/jobs/regular/user_email.rb b/app/jobs/regular/user_email.rb
index 14f34b42c..404dd07f8 100644
--- a/app/jobs/regular/user_email.rb
+++ b/app/jobs/regular/user_email.rb
@@ -6,19 +6,20 @@ module Jobs
class UserEmail < Jobs::Base
def execute(args)
- notification, post = nil
-
raise Discourse::InvalidParameters.new(:user_id) unless args[:user_id].present?
raise Discourse::InvalidParameters.new(:type) unless args[:type].present?
+ post = nil
+ notification = nil
type = args[:type]
-
user = User.find_by(id: args[:user_id])
+ to_address = args[:to_address].presence || user.try(:email).presence || "no_email_found"
+
+ set_skip_context(type, args[:user_id], to_address)
- set_skip_context(type, args[:user_id], args[:to_address].presence || user.try(:email).presence || "no_email_found")
return skip(I18n.t("email_log.no_user", user_id: args[:user_id])) unless user
- if args[:post_id]
+ if args[:post_id].present?
post = Post.find_by(id: args[:post_id])
return skip(I18n.t('email_log.post_not_found', post_id: args[:post_id])) unless post.present?
end
@@ -27,18 +28,17 @@ module Jobs
notification = Notification.find_by(id: args[:notification_id])
end
- message, skip_reason = message_for_email( user,
- post,
- type,
- notification,
- args[:notification_type],
- args[:notification_data_hash],
- args[:email_token],
- args[:to_address] )
-
+ message, skip_reason = message_for_email(user,
+ post,
+ type,
+ notification,
+ args[:notification_type],
+ args[:notification_data_hash],
+ args[:email_token],
+ args[:to_address])
if message
- Email::Sender.new(message, args[:type], user).send
+ Email::Sender.new(message, type, user).send
else
skip_reason
end
@@ -51,8 +51,8 @@ module Jobs
NOTIFICATIONS_SENT_BY_MAILING_LIST ||= Set.new %w{posted replied mentioned group_mentioned quoted}
def message_for_email(user, post, type, notification,
- notification_type=nil, notification_data_hash=nil,
- email_token=nil, to_address=nil)
+ notification_type=nil, notification_data_hash=nil,
+ email_token=nil, to_address=nil)
set_skip_context(type, user.id, to_address || user.email)
@@ -75,7 +75,7 @@ module Jobs
end
if notification || notification_type
- email_args[:notification_type] ||= notification_type || notification.try(:notification_type)
+ email_args[:notification_type] ||= notification_type || notification.try(:notification_type)
email_args[:notification_data_hash] ||= notification_data_hash || notification.try(:data_hash)
unless String === email_args[:notification_type]
@@ -113,7 +113,7 @@ module Jobs
# Update the to address if we have a custom one
if message && to_address.present?
- message.to = [to_address]
+ message.to = to_address
end
[message, nil]
@@ -143,7 +143,7 @@ module Jobs
to_address: @skip_context[:to_address],
user_id: @skip_context[:user_id],
skipped: true,
- skipped_reason: reason,
+ skipped_reason: "[UserEmail] #{reason}",
)
end
diff --git a/app/models/discourse_single_sign_on.rb b/app/models/discourse_single_sign_on.rb
index 894d545ad..492e4a704 100644
--- a/app/models/discourse_single_sign_on.rb
+++ b/app/models/discourse_single_sign_on.rb
@@ -81,7 +81,7 @@ class DiscourseSingleSignOn < SingleSignOn
private
def match_email_or_create_user(ip_address)
- user = User.find_by_email(email)
+ user = User.find_by(email: email)
try_name = name.blank? ? nil : name
try_username = username.blank? ? nil : username
diff --git a/lib/email/sender.rb b/lib/email/sender.rb
index e1f81c84f..f0cef9ff2 100644
--- a/lib/email/sender.rb
+++ b/lib/email/sender.rb
@@ -23,7 +23,7 @@ module Email
def send
return if SiteSetting.disable_emails
- return skip(I18n.t('email_log.message_blank')) if @message.blank?
+ return skip(I18n.t('email_log.message_blank')) if @message.blank?
return skip(I18n.t('email_log.message_to_blank')) if @message.to.blank?
if @message.text_part
@@ -135,7 +135,7 @@ module Email
def to_address
@to_address ||= begin
- to = @message ? @message.to : nil
+ to = @message.try(:to)
to = to.first if Array === to
to.presence || "no_email_found"
end
@@ -167,7 +167,7 @@ module Email
to_address: to_address,
user_id: @user.try(:id),
skipped: true,
- skipped_reason: reason
+ skipped_reason: "[Sender] #{reason}"
)
end