Aggiunge il rilevamento di invio e apertura delle email di campagna.
CI / scan_ruby (push) Failing after 12m56s
CI / scan_js (push) Successful in 12m23s
CI / lint (push) Failing after 12m15s

Ogni destinatario mostra se la mail è partita e se è stata aperta, con conteggi in dashboard.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-20 12:26:14 +02:00
co-authored by Cursor
parent ab57309f5c
commit 2db7504629
18 changed files with 332 additions and 5 deletions
@@ -0,0 +1,24 @@
class AddOpenTrackingToMailingRecipients < ActiveRecord::Migration[8.1]
def change
change_table :mailing_recipients do |t|
t.string :tracking_token
t.datetime :opened_at
t.datetime :last_opened_at
t.integer :open_count, null: false, default: 0
end
reversible do |dir|
dir.up do
execute <<~SQL.squish
UPDATE mailing_recipients
SET tracking_token = replace(gen_random_uuid()::text, '-', '')
WHERE tracking_token IS NULL
SQL
change_column_null :mailing_recipients, :tracking_token, false
end
end
add_index :mailing_recipients, :tracking_token, unique: true
add_index :mailing_recipients, :opened_at
end
end