Ejemplo n.º 1
0
def get_events():
    eventbrite = Eventbrite(settings.EVENTBRITE_KEY)
    
    # Get my own User ID
    my_id = eventbrite.get_user()['id']
    
    # Get a raw list of events (includes pagination details)
    return eventbrite.event_search(**{'user.id': my_id})
Ejemplo n.º 2
0
class TestClientAccessMethods(unittest.TestCase):

    def setUp(self):
        self.eventbrite = Eventbrite(OAUTH_TOKEN)

    @unittest.skipIf(condition=skip_integration_tests, reason='Needs an OAUTH_TOKEN')
    def test_get_user_me(self):
        evbobject = self.eventbrite.get_user()

        # Did we get an EventbriteObject?
        self.assertTrue(isinstance(evbobject, EventbriteObject))

        # check attributes
        for attribute in ['id', 'pk', 'type', 'is_paginated', 'is_list', 'status_code']:
            self.assertTrue(attribute in evbobject.__dict__.keys())

        # check that an ID exists
        self.assertTrue(evbobject.get('id'))

    @unittest.skipIf(condition=skip_user_id_tests, reason='Needs a USER_ID')
    @unittest.skipIf(condition=skip_integration_tests, reason='Needs an OAUTH_TOKEN')
    def test_get_user(self):
        evbobject = self.eventbrite.get_user(USER_ID)

        # Did we get an EventbriteObject?
        self.assertTrue(isinstance(evbobject, EventbriteObject))

        # check attributes
        for attribute in ['id', 'pk', 'type', 'is_paginated', 'is_list', 'status_code']:
            self.assertTrue(attribute in evbobject.__dict__.keys())

        # check that the ID's match
        self.assertEqual(evbobject.get('id'), USER_ID)

    @unittest.skipIf(condition=skip_integration_tests, reason='Needs an OAUTH_TOKEN')
    def test_webhook_no_internet(self):
        webhook = {
            "api_url": EVENTBRITE_API_URL + 'users/me/',
            "config": {
                "endpoint_url": "https://myawesomeapp.com/webhook",
                "insecure_ssl": "0"
            }
        }
        evbobject = self.eventbrite.webhook_to_object(webhook)
        self.assertTrue('id' in evbobject)
Ejemplo n.º 3
0
def setup_connection():
	eb = Eventbrite(mykey)
	#if recordKeys == True: keysToUse.write(str('eb = ',str(eb) ))
	user = eb.get_user()
	#if recordKeys == True: keysToUse.write(str('user = '******'Here is the user id ', user['id'])
		return eb
	except KeyError:
		print('This will not go well')
		exit()
Ejemplo n.º 4
0
class EventBriteTests(TestCase):
    def setUp(self):
        env = environ.Env()
        env_file = os.path.join(os.getcwd(), ".env")
        environ.Env.read_env(env_file)

        self.eventbrite = Eventbrite(env('EVENTBRITE_KEY'))

    def test_connection_to_eventbrite(self):
        """
        Test whether connection to EventBrite is successful.
        """
        self.assertEqual(
            self.eventbrite.headers['content-type'], 'application/json'
        )

    def test_eventbrite_user(self):
        """
        Test the correct user is returned when using the EventBrite api.
        """
        user = self.eventbrite.get_user()

        self.assertEqual(user.headers['Content-Type'], 'application/json')
        self.assertEqual(user['name'], 'Ollie Gardner')

    def test_eventbrite_organiser(self):
        """
        Test getting SoCS EventBrite page from organiser ID.
        """
        organiser = self.eventbrite.get_organizers(6830828415)

        self.assertEqual(organiser.headers['Content-Type'], 'application/json')
        self.assertEqual(
            organiser['name'],
            'School of Computing Science, University of Glasgow'
        )

    def test_eventbrite_organiser_events(self):
        """
        Test getting SoCS EventBrite events from organiser ID.
        """
        organiser_events = self.eventbrite.get_organizer_events(6830828415)

        self.assertEqual(
            organiser_events.headers['Content-Type'], 'application/json'
        )
        self.assertGreater(len(organiser_events), 1)
Ejemplo n.º 5
0
def show_events_view(request):
    eventbrite = Eventbrite(eventtoken)
    my_id = eventbrite.get_user()['id']
    events = eventbrite.event_search(**{'user.id': my_id})
    existing_events = Event.objects.all().values("event_id")
    events_list = []
    for i in existing_events:
        events_list.append(i['event_id'])

    for x in events['events']:
        event_id = (x['id'])

        if event_id in events_list:
            pass
        else:
            start_time = parse_datetime(x['start']['local'])
            api_url = (x['url'])
            event_id = (x['id'])
            event_url = (x['url'])
            title = (x['name']['html'])
            name_code = title[4:7].lower()
            if name_code == "cor":
                code = "core"
            elif name_code == "int":
                code = "inter"
            elif name_code == "hig":
                code = "higher"

            else:
                code = "other"
            print(event_id)

            print(start_time)
            new_event = Event(api_url=api_url,
                              event_start=start_time,
                              title=title,
                              event_url=api_url,
                              event_code=code,
                              event_id=event_id)
            print(new_event)
            new_event.save()

    context = {}

    return render(request, 'showevents.html', context)
Ejemplo n.º 6
0
class TestClientAccessMethods(unittest.TestCase):

    def setUp(self):
        self.eventbrite = Eventbrite(OAUTH_TOKEN)

    @unittest.skipIf(
        condition=skip_integration_tests,
        reason='Needs an OAUTH_TOKEN')
    def test_get_user_me(self):
        evbobject = self.eventbrite.get_user()

        # Did we get an EventbriteObject?
        self.assertTrue(isinstance(evbobject, EventbriteObject))

        # check attributes
        attrs = ['id', 'pk', 'type', 'is_paginated', 'is_list', 'status_code']
        for attribute in attrs:
            self.assertTrue(attribute in evbobject.__dict__.keys())

        # check that an ID exists
        self.assertTrue(evbobject.get('id'))

    @unittest.skipIf(
        condition=skip_user_id_tests, reason='Needs a USER_ID')
    @unittest.skipIf(
        condition=skip_integration_tests, reason='Needs an OAUTH_TOKEN')
    def test_get_user(self):
        evbobject = self.eventbrite.get_user(USER_ID)

        # Did we get an EventbriteObject?
        self.assertTrue(isinstance(evbobject, EventbriteObject))

        # check attributes
        attrs = ['id', 'pk', 'type', 'is_paginated', 'is_list', 'status_code']
        for attribute in attrs:
            self.assertTrue(attribute in evbobject.__dict__.keys())

        # check that the ID's match
        self.assertEqual(evbobject.get('id'), USER_ID)

    @unittest.skipIf(
        condition=skip_integration_tests, reason='Needs an OAUTH_TOKEN')
    def test_webhook_no_internet(self):
        webhook = {
            "api_url": EVENTBRITE_API_URL + 'users/me/',
            "config": {
                "endpoint_url": "https://myawesomeapp.com/webhook",
                "insecure_ssl": "0"
            }
        }
        evbobject = self.eventbrite.webhook_to_object(webhook)
        self.assertTrue('id' in evbobject)

    @unittest.skipIf(
        condition=skip_user_id_tests, reason='Needs a USER_ID')
    @unittest.skipIf(
        condition=skip_integration_tests, reason='Needs an OAUTH_TOKEN')
    def test_get_event_expansions(self):
        # Get event with no expansions
        evbobject = self.eventbrite.get_event('11260994939')
        self.assertFalse('ticket_classes' in evbobject)

        # Now get event with ticket_classes expansion
        evbobject = self.eventbrite.get_event(
            '11260994939', expand='ticket_classes')
        self.assertTrue('ticket_classes' in evbobject)
Ejemplo n.º 7
0
ATTENDEE_HEADERS = [
    'profile.name',
    'profile.email',
    'status',
    'costs.gross.major_value',
    'event_id',
]

EVENT_HEADERS = [
    'name.text',
    'id',
    'start.local',
]

USER = eb.get_user()
USER_ID = USER['id']

def flatten(d):
    # test: build_dotted_keys({'a': {'b': 2, 'c': {'d': 4}, 'e':[{'f':1231, 'g':{'h':0}}, {'z':34223}]}})
    # test: build_dotted_keys({'a': {'b': 2, 'c': {'d': 4}, 'e':[{'f':1231}]}})
    ret = {}
    for k, v in d.items():
        if isinstance(v, dict):
            for k1, v1 in flatten(v).items():
                key = '%s.%s' % (k, k1)
                ret[key] = v1

        elif isinstance(v, list):
            for i, nested in enumerate(v):
                prefix = '%s.%d' % (k, i)
Ejemplo n.º 8
0
from eventbrite import Eventbrite
from tok import secret
import pprint

token = secret()
eventbrite = Eventbrite(token)
pp = pprint.PrettyPrinter(indent=4)
user = eventbrite.get_user()
print(user['id'])
print(user['name'])


def eb_api_query(*args):
    # dictionary keys of argument are the fields we care about
    # argument = {}
    #
    argument['start_date.range_start'] = args[0]
    argument['location.address'] = args[1]
    argument['price'] = args[2]
    argument['location.within'] = args[3]
    argument['categories'] = args[4]
    # # do something like this...
    # # argument["location.address"] =
    # argument['location.address'] = 'Berkeley'
    # argument['location.within'] = '5mi'
    # argument['start_date.range_start'] = "2019-09-29T00:00:00"
    # argument['categories'] = "104"
    # #this line is to expand the venue field (necessary to retrieve address)
    # argument["expand"] = "venue"
    # argument['price'] = "free"
# Playing with Eventbrite 
# From https://www.eventbrite.com/developer/v3/quickstart/ and 
# https://pypi.python.org/pypi/eventbrite/3.2.0
# https://github.com/eventbrite/eventbrite-sdk-python
# https://www.eventbrite.com/developer/v3/endpoints/users/ == formate of eb.get('users/me/...')
# Developer: Ginny C Ghezzo 
# Not sure the difference of ventbrite.get user2 = eb.get('/users/me')
# What I learned: 

import requests 
from eventbrite import Eventbrite
import sys 

if len(sys.argv) > 1:
	mykey = sys.argv[1]
else: 
	mykey = input('Shhh... what is your private key: ')
#response = requests.get()
eb = Eventbrite(mykey)
user = eb.get_user()				# why not use eventbrite.get user2 = eb.get('/users/me')
print('**User Information**')
for q in user:
	print(q, ' = ', user[q])
# I have no idea how to get the ids from the user 
print(eb.__dir__())
Ejemplo n.º 10
0
from eventbrite import Eventbrite
from tok import secret
from datetime import datetime
import pprint

token = secret()
eventbrite = Eventbrite(token)
pp = pprint.PrettyPrinter(indent=4)

user = eventbrite.get_user()  # Not passing an argument returns yourself
print(user["id"])
print(user["name"])

def eb_api_query():
	# dictionary keys of argument are the fields we care about
	argument = {}

	# do something like this...
	argument["location.address"] = "Berkeley"
	argument["start_date.range_start"] = "2019-09-29T00:00:00"

	#this line is to expand the venue field (necessary to retrieve address)
	argument["expand"] = "venue"

	events = eventbrite.event_search(**argument)['events']

	#populate this dictionary with info from the search
	ret_events = []
	for event in events: 
		curr = {}
		curr['name'] = event['name']['text']
Ejemplo n.º 11
0
def get_user(token):
    eventbrite = Eventbrite(token)
    user = eventbrite.get_user()
    return user
Ejemplo n.º 12
0
from django.shortcuts import render
from django.views.generic import CreateView, TemplateView, ListView
from .models import *
from eventbrite import Eventbrite


eventbrite = Eventbrite('SRBFZK5OYQYP3CZDHN22')
print(eventbrite)
user = eventbrite.get_user()

print(user)


# Create your views here.
class Eventos(TemplateView):
    model =  EventosModel
    template_name = 'eventos/list.html'
Ejemplo n.º 13
0
def user():
    eventbrite = Eventbrite(token)
    user = eventbrite.get_user()
    return user['id']