docbrown/app/workers/algolia_search/search_index_worker.rb
Mac Siri d587ba962d
Add AlgoliaSearchable for User (#20869)
* Add AlgoliaSearchable::SearchableUser

* Update spec

* Refactor

* Refactor

* Add more test

* Refactor

* Update seeder to clear Algolia index if it exist

* All Algolia directly in update_score

* Fix broken spec

* Remove new queue

* Account for more user statuses

* Remove unncessary test for now
2024-04-19 14:03:04 +00:00

19 lines
466 B
Ruby

module AlgoliaSearch
class SearchIndexWorker
include Sidekiq::Worker
sidekiq_options queue: :medium_priority, retry: 5, tags: ["algolia"]
def perform(klass, id, remove)
return unless Settings::General.algolia_search_enabled?
record = klass.constantize
if remove
index = AlgoliaSearch.client.init_index(record.index_name)
index.delete_object(id)
else
record.find(id).index!
end
end
end
end