diff --git a/app/models/draft_sequence.rb b/app/models/draft_sequence.rb index b3548a1c1..3040b955b 100644 --- a/app/models/draft_sequence.rb +++ b/app/models/draft_sequence.rb @@ -2,6 +2,9 @@ class DraftSequence < ActiveRecord::Base def self.next!(user,key) user_id = user user_id = user.id unless user.class == Fixnum + + return 0 if user_id == Discourse::SYSTEM_USER_ID + h = { user_id: user_id, draft_key: key } c = DraftSequence.find_by(h) c ||= DraftSequence.new(h) diff --git a/lib/discourse.rb b/lib/discourse.rb index 506bff413..22a79ee2c 100644 --- a/lib/discourse.rb +++ b/lib/discourse.rb @@ -201,7 +201,7 @@ module Discourse user ||= User.admins.real.order(:id).first end - SYSTEM_USER_ID = -1 + SYSTEM_USER_ID = -1 unless defined? SYSTEM_USER_ID def self.system_user User.find_by(id: SYSTEM_USER_ID) diff --git a/lib/post_revisor.rb b/lib/post_revisor.rb index 6f8c23448..dd3db0af1 100644 --- a/lib/post_revisor.rb +++ b/lib/post_revisor.rb @@ -25,7 +25,7 @@ class PostRevisor update_topic_excerpt post_process_post update_topic_word_counts - @post.advance_draft_sequence unless editor.id == Discourse::SYSTEM_USER_ID + @post.advance_draft_sequence PostAlerter.new.after_save_post(@post) publish_revision