toga-ai 1.0.875 → 1.0.876
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -6,8 +6,8 @@ project: Worker
|
|
|
6
6
|
client: nychh
|
|
7
7
|
type: client-feature
|
|
8
8
|
status: active
|
|
9
|
-
updated: 2026-09-
|
|
10
|
-
owners: ["bala"]
|
|
9
|
+
updated: 2026-09-23
|
|
10
|
+
owners: ["bala", "rgirish"]
|
|
11
11
|
files:
|
|
12
12
|
- worker2/Worker/Client/Nychh/TransferOrderEmails.php
|
|
13
13
|
- _underscore/Model/Nychh/TransferOrder.php
|
|
@@ -211,9 +211,23 @@ Cost of the split, stated so nobody is surprised later:
|
|
|
211
211
|
templates and the tracking line are Plus Jakarta Sans. Outlook gets Arial inside an
|
|
212
212
|
`<!--[if mso]-->` block because it cannot load web fonts.
|
|
213
213
|
- **Detail box:** *Site Contact* falls back to the person who raised the order — 3 of the 6 supply
|
|
214
|
-
orders in prod have no contact
|
|
215
|
-
`CONCAT_WS` skips NULL but **not** an empty string, so
|
|
216
|
-
`451 Clarkson Ave , Brooklyn`; every part is `NULLIF`'d before
|
|
214
|
+
orders in prod have no contact. (The greeting used to share that fallback; since 2026-09-23 it
|
|
215
|
+
runs the other way round — see below.) And `CONCAT_WS` skips NULL but **not** an empty string, so
|
|
216
|
+
a blank address line 2 produced `451 Clarkson Ave , Brooklyn`; every part is `NULLIF`'d before
|
|
217
|
+
joining.
|
|
218
|
+
- **The greeting addresses the SUBMITTER, the detail box shows the CONTACT.** They are two different
|
|
219
|
+
people and the email shows both:
|
|
220
|
+
|
|
221
|
+
| Slot | Source column | Shape |
|
|
222
|
+
|---|---|---|
|
|
223
|
+
| `greetingName` ("Hi …,") | `CreatedByUsers.firstName` → `submittedByFirstName`, falling back to `Contacts.firstName` | **first name** |
|
|
224
|
+
| *Site Contact* row | `Contacts.firstName`+`lastName` → `siteContactName`, falling back to `submittedByName` | full name |
|
|
225
|
+
| *Submitted by* row | `CreatedByUsers.firstName`+`lastName` → `submittedByName` | full name |
|
|
226
|
+
|
|
227
|
+
Both greeting sources must be **`firstName` columns**. The original fallback was
|
|
228
|
+
`contactFirstName ?: submittedByName`, and `submittedByName` is the `CONCAT_WS` **full** name — so
|
|
229
|
+
an order with no contact greeted *"Hi Carol Ann Rosado,"*. Never fall back from a first-name slot
|
|
230
|
+
to a `…Name` full-name alias.
|
|
217
231
|
|
|
218
232
|
## Gotchas / known issues
|
|
219
233
|
|
|
@@ -247,6 +261,15 @@ unescaped values and both detail-box defects were all found there, not in produc
|
|
|
247
261
|
|
|
248
262
|
## Change history
|
|
249
263
|
|
|
264
|
+
- 2026-09-23 — **The greeting now addresses whoever raised the order, not the site contact.**
|
|
265
|
+
`readTransferOrderForEmail()` selects `CreatedByUsers.firstName AS submittedByFirstName`, and
|
|
266
|
+
`greetingName` flipped from `contactFirstName ?: submittedByName` to
|
|
267
|
+
`submittedByFirstName ?: contactFirstName`. Found live: an order raised by Carol Ann Rosado
|
|
268
|
+
opened *"Hi Shehu,"* — the site contact. Fixing the order of preference also fixed a second
|
|
269
|
+
latent bug: the old fallback reached for `submittedByName`, the **full** name, so it could render
|
|
270
|
+
*"Hi Carol Ann Rosado,"*; both sides of the fallback are now first-name columns. *Site Contact*
|
|
271
|
+
and *Submitted by* in the details box are unchanged. (worker2 `ed6d566` on `_production`)
|
|
272
|
+
(rgirish)
|
|
250
273
|
- 2026-09-18 — **Moved the whole feature out of `_underscore` into worker2.** Deleted
|
|
251
274
|
`_Trait_Nychh_TransferOrderEmail`; `worker2/Worker/Client/Nychh/TransferOrderEmails.php` now holds
|
|
252
275
|
the queued `SendSubmitted` / `SendFulfillment` entry points, the `SendPending` cron, every query
|
package/package.json
CHANGED