stop scanning favs if user removed
This commit is contained in:
@@ -16,7 +16,7 @@ class Domain::Fa::Job::FavsJob < Domain::Fa::Job::Base
|
||||
url_name: args[:url_name],
|
||||
caused_by_entry: best_caused_by_entry,
|
||||
})
|
||||
raise("user does not exist: #{args}")
|
||||
fatal_error("user does not exist: #{args}")
|
||||
end
|
||||
|
||||
logger.prefix = "[#{(@user.url_name || @user.name).bold} / #{@user.state.bold}]"
|
||||
@@ -29,7 +29,9 @@ class Domain::Fa::Job::FavsJob < Domain::Fa::Job::Base
|
||||
existing_faved_ids = Set.new(@user.fav_post_joins.pluck(:post_id))
|
||||
|
||||
while true
|
||||
break if scan_page == :break
|
||||
ret = scan_page
|
||||
break if ret == :break
|
||||
return if ret == :stop
|
||||
|
||||
if !@full_scan
|
||||
new_favs = @last_page_post_ids - existing_faved_ids
|
||||
@@ -102,7 +104,17 @@ class Domain::Fa::Job::FavsJob < Domain::Fa::Job::Base
|
||||
end
|
||||
|
||||
page = Domain::Fa::Parser::Page.new(response.body)
|
||||
raise("not a listings page") unless page.probably_listings_page?
|
||||
if response.body =~ /User ".+" was not found in our database./
|
||||
@user.state = :scan_error
|
||||
@user.state_detail ||= {}
|
||||
@user.state_detail["scan_error"] = "(favs scan) user has disabled account, see last_favs_page_id"
|
||||
@user.state_detail["last_favs_page_id"] = response.log_entry.id
|
||||
@user.save!
|
||||
logger.error("account disabled, abort")
|
||||
return :stop
|
||||
end
|
||||
|
||||
fatal_error("not a favs listing page") unless page.probably_listings_page?
|
||||
submissions = page.submissions_parsed
|
||||
@page_id = page.favorites_next_button_id
|
||||
ret = :break if @page_id.nil?
|
||||
|
||||
@@ -77,10 +77,9 @@ class Domain::Fa::Job::UserGalleryJob < Domain::Fa::Job::Base
|
||||
if !page.probably_listings_page?
|
||||
if response.body =~ /has voluntarily disabled access/
|
||||
@user.state = :scan_error
|
||||
@user.state_detail = {
|
||||
scan_error: "(gallery scan) user has disabled account, see last_gallery_page_id",
|
||||
last_gallery_page_id: response.log_entry.id,
|
||||
}
|
||||
@user.state_detail ||= {}
|
||||
@user.state_detail["scan_error"] = "(gallery scan) user has disabled account, see last_gallery_page_id"
|
||||
@user.state_detail["last_gallery_page_id"] = response.log_entry.id
|
||||
@user.save!
|
||||
logger.error("account disabled, abort")
|
||||
return :break
|
||||
|
||||
Reference in New Issue
Block a user