2023-02-23 12:25:00 -03:00
|
|
|
# frozen_string_literal: true
|
2023-03-14 16:03:50 -03:00
|
|
|
|
|
|
|
module DiscourseAi
|
2023-02-23 12:25:00 -03:00
|
|
|
module Sentiment
|
|
|
|
class EntryPoint
|
2023-02-23 15:50:10 -03:00
|
|
|
def load_files
|
2023-02-24 13:25:02 -03:00
|
|
|
require_relative "sentiment_classification"
|
2023-02-24 07:53:43 -03:00
|
|
|
require_relative "jobs/regular/post_sentiment_analysis"
|
2023-02-23 15:50:10 -03:00
|
|
|
end
|
2023-02-23 12:25:00 -03:00
|
|
|
|
2023-02-23 15:50:10 -03:00
|
|
|
def inject_into(plugin)
|
|
|
|
sentiment_analysis_cb =
|
|
|
|
Proc.new do |post|
|
|
|
|
if SiteSetting.ai_sentiment_enabled
|
|
|
|
Jobs.enqueue(:post_sentiment_analysis, post_id: post.id)
|
|
|
|
end
|
|
|
|
end
|
2023-02-23 12:25:00 -03:00
|
|
|
|
2023-02-23 15:50:10 -03:00
|
|
|
plugin.on(:post_created, &sentiment_analysis_cb)
|
|
|
|
plugin.on(:post_edited, &sentiment_analysis_cb)
|
2023-02-23 12:25:00 -03:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|