def create_pool(event_id): """The method that creates a pool of contestants.""" # Use a double ended queue structured list for the pool pool_deque = deque([]) # Get the list of all attendees for an event; only -> "checked_in": true eventbrite = Eventbrite(EVENTBRITE_OAUTH_TOKEN) this_event = eventbrite.get('/events/' + event_id + '/attendees') # Add all attendee IDs to a deque as many times as the ID # has chances to win for each_attendee in this_event["attendees"]: pool_deque.append(each_attendee["id"]) # Match each attendee to their number entries in the database current_page = int(this_event["pagination"]["page_number"]) last_page = int(this_event["pagination"]["page_count"]) if (current_page != last_page): while (current_page <= last_page): this_event = eventbrite.get('/events/' + event_id + '/attendees?page=' + str(current_page + 1)) current_page = this_event["pagination"]["page_number"] last_page = this_event["pagination"]["page_count"] return pool_deque
def query_eb_subcat(eb_cat_id, filter_value, eb_sub_id, location): """Constructs the eventbrite query based on user selected filter""" if filter_value == 0: events = eventbrite.get("/events/search/?categories=" + str(eb_cat_id) + "&subcategories=" + eb_sub_id + "&location.address=" + str(location)) if filter_value == 4: events = eventbrite.get("/events/search/?categories=" + str(eb_cat_id) + "&subcategories=" + eb_sub_id + "&location.address=" + str(location) + "price=free") else: events = eventbrite.get("/events/search/?categories=" + str(eb_cat_id) + "&subcategories=" + eb_sub_id + "&location.address=" + str(location) + "start_date.keyword=" + filter_value) return events
def index(): """ This is the display view. """ # Get the event details event = eventbrite.get_event(EVENTBRITE_EVENT_ID, expand='ticket_classes') # Get the attendee list attendees = eventbrite.get_event_attendees(EVENTBRITE_EVENT_ID) # Reverse so latest to sign up is at the top attendees['attendees'].reverse() ticketClasses = eventbrite.get('/events/' + EVENTBRITE_EVENT_ID + '/ticket_classes/') # Render our HTML. return render_template( 'index.html', settings={'PUSHER_KEY': PUSHER_KEY}, event=event, attendees=attendees )
def seed_events(source): """ Requests list of all eventbrite and meetup events for database entry """ event_details = [] i = 1 if source == "eventbrite": while i <= 50: source = 1 events = eventbrite.get( "/events/search/?location.address=94102&page=" + str(i)) event_list = events.get("events") for event in event_list: event_name = event.get("name").get("text") event_url = event.get("url") event_img = event.get("logo") if event_img is None: event_img = EVBRTE_IMG_URL else: event_img = event_img.get("original", {}).get("url", EVBRTE_IMG_URL) source_event_id = event.get("id") description = event.get("description").get("text") uc_time = event.get("start").get("utc") time = datetime.datetime.strptime(uc_time, '%Y-%m-%dT%H:%M:%SZ') start_time = time.strftime('%Y-%m-%d %H:%M:%S') eb_category_id = event.get("category_id") # eb_category_id = 0 mu_category_id = 0 event_deets = [ event_name, event_url, event_img, source_event_id, description, start_time, eb_category_id, mu_category_id ] event_details.append(event_deets) i += 1 print event_details return event_details if source == "meetup": source = 2 events = meetup.GetOpenEvents(lat=37, lon=-122, fields="group_photo") for event in events.results: event_name = event.get("name") event_url = event.get("event_url") event_img = event.get("group").get("group_photo", { "photo_link": MEETUP_IMG_URL }).get("photo_link", MEETUP_IMG_URL) source_event_id = event.get("id") description = event.get("description") ms_time = event.get("time") time = datetime.datetime.fromtimestamp(ms_time / 1000) start_time = time.strftime('%Y-%m-%d %H:%M:%S') mu_category_id = event.get("group").get("category", None) eb_category_id = 0 event_deets = [ event_name, event_url, event_img, source_event_id, description, start_time, eb_category_id, mu_category_id ] event_details.append(event_deets) return event_details