event: Zoom CSV import — force registrant email as external_id; ignore placeholder Unique identifier
This commit is contained in:
@@ -574,17 +574,23 @@ async def event_id_badge_import_zoom_csv(
|
||||
if loop_count <= begin_at: continue
|
||||
if loop_count > end_at: break
|
||||
|
||||
unique_id = str(record.get('Unique identifier', '')).strip()
|
||||
# Force use of Registrant email as the external_id for Zoom CSV imports.
|
||||
# Many Zoom exports (for this group) have a useless "Unique identifier"
|
||||
# column that contains "N/A" for every row — rely on email instead.
|
||||
email = str(record.get('Registrant email', '')).strip()
|
||||
|
||||
if unique_id:
|
||||
external_id = unique_id
|
||||
elif email:
|
||||
log.info('Using email as external_id fallback for Zoom CSV row')
|
||||
external_id = email
|
||||
else:
|
||||
log.warning('Row missing Unique identifier and email — skipping.')
|
||||
if not email:
|
||||
log.warning('Row missing registrant email — skipping.')
|
||||
continue
|
||||
external_id = email
|
||||
|
||||
# Sanitize the Unique identifier value and only use it as the
|
||||
# external_registration_id if it appears meaningful. Treat common
|
||||
# placeholders like 'N/A'/'NA'/'UNKNOWN' as missing.
|
||||
unique_id_raw = str(record.get('Unique identifier', '')).strip()
|
||||
if unique_id_raw and unique_id_raw.upper() not in ('N/A', 'NA', 'UNKNOWN'):
|
||||
external_registration_id = unique_id_raw
|
||||
else:
|
||||
external_registration_id = None
|
||||
|
||||
ticket_name = str(record.get('Ticket name', '')).strip()
|
||||
given_name = str(record.get('First name', '')).strip()
|
||||
@@ -625,7 +631,7 @@ async def event_id_badge_import_zoom_csv(
|
||||
'event_id': event_id,
|
||||
'enable': True,
|
||||
'external_id': external_id,
|
||||
'external_registration_id': unique_id,
|
||||
'external_registration_id': external_registration_id,
|
||||
'event_person_profile': {
|
||||
'enable': True,
|
||||
'given_name': given_name,
|
||||
@@ -649,7 +655,7 @@ async def event_id_badge_import_zoom_csv(
|
||||
'event_badge': {
|
||||
'enable': True,
|
||||
'external_id': external_id,
|
||||
'external_registration_id': unique_id,
|
||||
'external_registration_id': external_registration_id,
|
||||
'given_name': given_name,
|
||||
'family_name': family_name,
|
||||
'full_name': display_name or f'{given_name} {family_name}'.strip(),
|
||||
|
||||
Reference in New Issue
Block a user