v0.51 Fix mysql bug
This commit is contained in:
parent
78749e28fc
commit
f00fa9d67d
@ -47,6 +47,34 @@ class GossamerForumsCleaner
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def cleanup_topics_former_user
|
||||||
|
puts "Cleaning up imported topics..."
|
||||||
|
|
||||||
|
# Find all topics that were imported
|
||||||
|
TopicCustomField.where(name: 'original_gossamer_id').each do |field|
|
||||||
|
topic = Topic.find_by(id: field.topic_id)
|
||||||
|
|
||||||
|
next unless topic
|
||||||
|
|
||||||
|
# Fetch the first post in the topic
|
||||||
|
first_post = topic.posts.order(:created_at).first
|
||||||
|
|
||||||
|
# Check if the first post has user_id 2
|
||||||
|
if first_post && first_post.user_id == 2
|
||||||
|
puts "Deleting topic #{topic.title} (ID: #{topic.id})"
|
||||||
|
|
||||||
|
# Destroy all posts in the topic
|
||||||
|
topic.posts.each do |post|
|
||||||
|
puts "Deleting post #{post.id} in topic #{topic.id}"
|
||||||
|
post.destroy
|
||||||
|
end
|
||||||
|
|
||||||
|
# Destroy the topic itself
|
||||||
|
topic.destroy
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def cleanup_posts
|
def cleanup_posts
|
||||||
puts "Cleaning up imported posts..."
|
puts "Cleaning up imported posts..."
|
||||||
# Find all posts that were imported and delete them
|
# Find all posts that were imported and delete them
|
||||||
@ -102,8 +130,9 @@ class GossamerForumsCleaner
|
|||||||
def perform_cleanup
|
def perform_cleanup
|
||||||
puts "Cleanup beginning!"
|
puts "Cleanup beginning!"
|
||||||
# cleanup_messages
|
# cleanup_messages
|
||||||
cleanup_topics
|
# cleanup_topics
|
||||||
cleanup_posts_parallel
|
cleanup_topics_former_user
|
||||||
|
# cleanup_posts_parallel
|
||||||
# cleanup_categories
|
# cleanup_categories
|
||||||
# cleanup_users
|
# cleanup_users
|
||||||
puts "Cleanup complete!"
|
puts "Cleanup complete!"
|
||||||
|
@ -1281,13 +1281,13 @@ class GossamerForumsImporter < ImportScripts::Base
|
|||||||
# Fetch the mapped Discourse user and category ID based on Gossamer data
|
# Fetch the mapped Discourse user and category ID based on Gossamer data
|
||||||
discourse_user_id = fetch_user_id_mapping(row['user_id_fk'])
|
discourse_user_id = fetch_user_id_mapping(row['user_id_fk'])
|
||||||
|
|
||||||
# Check to be certain user has not been deleted, etc.
|
# # Check to be certain user has not been deleted, etc.
|
||||||
if discourse_user_id.nil? || discourse_user_id == 0
|
# if discourse_user_id.nil? || discourse_user_id == 0
|
||||||
puts "discourse_user_id is NIL/ZERO for post_id #{row['post_id']}"
|
# puts "discourse_user_id is NIL/ZERO for post_id #{row['post_id']}"
|
||||||
discourse_former_user = User.find_by(username: 'Former_User')
|
# discourse_former_user = User.find_by(username: 'Former_User')
|
||||||
discourse_user_id = discourse_former_user.id
|
# discourse_user_id = discourse_former_user.id
|
||||||
puts "discourse_user_id is NOW Former_User id #{discourse_user_id} for post_id #{row['post_id']}"
|
# puts "discourse_user_id is NOW Former_User id #{discourse_user_id} for post_id #{row['post_id']}"
|
||||||
end
|
# end
|
||||||
|
|
||||||
# Fetch the mapped Discourse user and category ID based on Gossamer data
|
# Fetch the mapped Discourse user and category ID based on Gossamer data
|
||||||
discourse_category_id = fetch_category_id_mapping(row['forum_id_fk'])
|
discourse_category_id = fetch_category_id_mapping(row['forum_id_fk'])
|
||||||
|
Loading…
Reference in New Issue
Block a user