From 30ffdb519e439a3c74bfee29512fef8556ffb71a Mon Sep 17 00:00:00 2001 From: DJP Date: Thu, 30 Oct 2025 18:54:27 -0400 Subject: [PATCH] Fix email template variable syntax - use Jinja2 double braces MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Issue: Email body showed {campaign_name} instead of actual values Cause: HTML templates used {variable} (Python format) but rendered with Jinja2 Fix: Changed all HTML template variables to {{ variable }} (Jinja2 syntax) Templates Fixed: - a1_to_a2_complete: {{ campaign_name }}, {{ campaign_id }}, {{ campaign_number }}, {{ asset_count }} - a2_to_a3_complete: {{ campaign_name }}, {{ campaign_id }}, {{ asset_count }} - upload_failed: {{ filename }}, {{ tracking_id }}, {{ error }} - a1_to_a2_partial: {{ campaign_name }}, {{ campaign_id }}, {{ total_assets }}, {{ successful }}, {{ failed }} Note: Subject lines use {variable} (Python .format()) which is correct HTML bodies use {{ variable }} (Jinja2) which is now correct Email notifications will now display all values properly! 🤖 Generated with Claude Code --- .../__pycache__/box_client.cpython-314.pyc | Bin 9329 -> 9329 bytes Python-Version/scripts/shared/notifier.py | 26 +++++++++--------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/Python-Version/scripts/shared/__pycache__/box_client.cpython-314.pyc b/Python-Version/scripts/shared/__pycache__/box_client.cpython-314.pyc index 9fff20ffc6b99df7db954d6570e5a1fd1535c412..d8cad26fa098c920a9937043718ab475da1c60e1 100644 GIT binary patch delta 26 gcmez9@zH}zn~#@^0SG*vY~;Es#HhRZfzU)j0Bf@d5C8xG delta 26 gcmez9@zH}zn~#@^0SF@RZ{)fv#2CN%fzU)j0BwK>P5=M^ diff --git a/Python-Version/scripts/shared/notifier.py b/Python-Version/scripts/shared/notifier.py index 763266a..753028d 100644 --- a/Python-Version/scripts/shared/notifier.py +++ b/Python-Version/scripts/shared/notifier.py @@ -53,9 +53,9 @@ class Notifier: 'subject': "✅ Master Assets Downloaded - Campaign {campaign_name}", 'html': """

Master Assets Downloaded Successfully

-

Campaign: {campaign_name} ({campaign_id})

-

Campaign Number: {campaign_number}

-

Assets Downloaded: {asset_count}

+

Campaign: {{ campaign_name }} ({{ campaign_id }})

+

Campaign Number: {{ campaign_number }}

+

Assets Downloaded: {{ asset_count }}

Status Updated: A1 → A2


All assets have been downloaded and uploaded to Box with tracking IDs.

@@ -65,9 +65,9 @@ class Notifier: 'subject': "✅ Localized Assets Uploaded - Campaign {campaign_name}", 'html': """

Localized Assets Uploaded Successfully

-

Campaign: {campaign_name}

-

Campaign ID: {campaign_id}

-

Assets Uploaded: {asset_count}

+

Campaign: {{ campaign_name }}

+

Campaign ID: {{ campaign_id }}

+

Assets Uploaded: {{ asset_count }}

Status Updated: A2 → A3


All localized assets have been uploaded to DAM.

@@ -77,9 +77,9 @@ class Notifier: 'subject': "❌ Upload Failed - {filename}", 'html': """

Upload Failed

-

Filename: {filename}

-

Tracking ID: {tracking_id}

-

Error: {error}

+

Filename: {{ filename }}

+

Tracking ID: {{ tracking_id }}

+

Error: {{ error }}


Please investigate the error.

""" @@ -88,10 +88,10 @@ class Notifier: 'subject': "⚠️ Partial Download - Campaign {campaign_name}", 'html': """

Campaign Partially Processed

-

Campaign: {campaign_name} ({campaign_id})

-

Total Assets: {total_assets}

-

Successful: {successful}

-

Failed: {failed}

+

Campaign: {{ campaign_name }} ({{ campaign_id }})

+

Total Assets: {{ total_assets }}

+

Successful: {{ successful }}

+

Failed: {{ failed }}


Status NOT updated. Campaign remains at A1.

Please review failed assets and retry.