8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/rogiq/commands/seo_audit.rb', line 8
def kickoff(client_identifier)
RogIQ.load_rails!
client = RogIQ::Helpers.resolve_client(client_identifier)
unless client
fmt.error_msg("Client not found")
exit 1
end
settings = ::ClientSeoModuleSetting.find_or_create_by!(client_id: client.id)
seed = client.website.presence
if seed.blank?
fmt.error_msg("Client needs a website URL for audit seed")
exit 1
end
audit_run = client.client_seo_module_audit_runs.create!(
status: "pending",
max_pages: settings.crawl_max_pages,
seed_url: seed.to_s.strip,
started_at: Time.current
)
::SeoModule::AuditKickoffJob.perform_later(audit_run.id)
fmt.success("Audit run #{audit_run.id} enqueued.")
fmt.output(id: audit_run.id, status: audit_run.status, seed_url: audit_run.seed_url)
end
|