Skip to content

Commit 503bb00

Browse files
committed
Add location information to events
1 parent 254ca30 commit 503bb00

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

aws_lambda/eventBriteHelper.py

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
organisationId = "464103861019"
1515

1616
monthNames = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
17-
eventTemplate = "<div class=\"row card\"><div class=\"col-12`eventClass`\"><div class=\"row\"><div class=\"col-sm-4 col-lg-2 event-date\"><span class=\"event-date-month\">`month`</span> <span class=\"event-date-day\">`day`</span><p><span class=\"event-date-start-time\">`eventStart``eventStartAmPm` - </span><span class=\"event-date-end-time\">`eventEnd``eventEndAmPm`</span></p></div><div class=\"col-sm-8 col-lg-10 event-title\"><span class=\"event-title\">`eventName`</span></div></div><div class=\"row\"><div class=\"col-md-12 col-lg-9 event-description\"><span class=\"event-description\">`eventDescription`</span></div><div class=\"col-md-12 col-lg-3 event-book-button\"><!-- Noscript content for added SEO --><noscript><a href=\"https://www.eventbrite.co.uk/e/programming-101-tickets-`eventId`\"rel=\"noopener noreferrer\" target=\"_blank\"></noscript><!-- You can customize this button any way you like --><button id=\"`eventbriteWidgetModalTriggerEventId`\" class=\"btn `registerButtonClass` float-right\"type=\"button\">`registerButtonText`</button><noscript></a>Register for tickets on Eventbrite</noscript></div></div></div></div>"
17+
eventTemplate = "<div class=\"row card\"><div class=\"col-12`eventClass`\"><div class=\"row\"><div class=\"col-sm-4 col-lg-2 event-date\"><span class=\"event-date-month\">`month`</span> <span class=\"event-date-day\">`day`</span><p><span class=\"event-date-start-time\">`eventStart``eventStartAmPm` - </span><span class=\"event-date-end-time\">`eventEnd``eventEndAmPm`</span></p></div><div class=\"col-sm-8 col-lg-10 event-title\"><span class=\"event-title\">`eventName`</span>`venueDetails`</div></div><div class=\"row\"><div class=\"col-md-12 col-lg-9 event-description\"><span class=\"event-description\">`eventDescription`</span></div><div class=\"col-md-12 col-lg-3 event-book-button\"><!-- Noscript content for added SEO --><noscript><a href=\"https://www.eventbrite.co.uk/e/programming-101-tickets-`eventId`\"rel=\"noopener noreferrer\" target=\"_blank\"></noscript><!-- You can customize this button any way you like --><button id=\"`eventbriteWidgetModalTriggerEventId`\" class=\"btn `registerButtonClass` float-right\"type=\"button\">`registerButtonText`</button><noscript></a>Register for tickets on Eventbrite</noscript></div></div></div></div>"
18+
venueTemplate = "<p><b>`venueName`</b>, `venueAddress`</p>"
1819
widgetPrefix = "var orderComplete = function () {var resultString = \"Order complete!\";alert(resultString);console.log(resultString);};"
1920
widgetTemplate = "/* `eventName` */ window.EBWidgets.createWidget({widgetType: 'checkout',eventId: '`eventId`',modal: true,modalTriggerElementId: '`eventbriteWidgetModalTriggerEventId`',onOrderComplete: orderComplete});"
2021

@@ -28,6 +29,11 @@ def getOrganisationEvents(organisationId):
2829
eventsUrl = eventBriteApiUrl + "organizations/" + str(organisationId) + "/events/?time_filter=current_future&status=live"
2930
response = session.get(url = eventsUrl, headers = headers)
3031
return json.loads(response.text)['events']
32+
33+
def getVenueDetails(venueId):
34+
venuesUrl = eventBriteApiUrl + "venues/" + str(venueId)
35+
response = session.get(url = venuesUrl, headers = headers)
36+
return json.loads(response.text)
3137

3238
async def getEventTicketClasses(eventData):
3339
async with ClientSession() as session:
@@ -70,6 +76,7 @@ def getEventsAsHtml(event, lambda_context):
7076
continue
7177

7278
eventId = event['id']
79+
venue = None if event['venue_id'] is None else getVenueDetails(event['venue_id'])
7380

7481
ticketClasses = ticketClassData[eventId]['ticket_classes']
7582
onSaleStatus = '' if ticketClasses == [] else ticketClasses[0]['on_sale_status']
@@ -119,6 +126,14 @@ def getEventsAsHtml(event, lambda_context):
119126
.replace("`eventId`", eventId) \
120127
.replace("`eventbriteWidgetModalTriggerEventId`", "eventbrite-widget-modal-trigger-" + eventId)
121128

129+
if venue is None:
130+
eventHtml = eventHtml.replace("`venueDetails`", "")
131+
else:
132+
eventHtml = eventHtml \
133+
.replace("`venueDetails`", venueTemplate) \
134+
.replace("`venueName`", venue['name']) \
135+
.replace("`venueAddress`", venue['address']['localized_address_display'])
136+
122137
widgets += "\r\n" + widgetTemplate \
123138
.replace("`eventName`", eventName) \
124139
.replace("`eventId`", eventId) \

0 commit comments

Comments
 (0)