API KEYS working
This commit is contained in:
23
events/migrations/0028_event_live_alter_event_event_type.py
Normal file
23
events/migrations/0028_event_live_alter_event_event_type.py
Normal file
@@ -0,0 +1,23 @@
|
||||
# Generated by Django 5.1.1 on 2025-10-11 16:21
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('events', '0027_scraper_new_items'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='event',
|
||||
name='live',
|
||||
field=models.CharField(choices=[('live', 'Live & Direct'), ('virt', 'Virtually Served'), ('both', 'How you prefer.')], default='live', max_length=4),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='event',
|
||||
name='event_type',
|
||||
field=models.CharField(choices=[('Ot', 'Other'), ('Mu', 'Music'), ('Va', 'Visual Art'), ('Gv', 'Government'), ('Ce', 'Civic Engagement'), ('Ed', 'Educational'), ('Ma', 'Mutual Aid'), ('Th', 'Theater'), ('Co', 'Comedy')], default='Mu', max_length=15),
|
||||
),
|
||||
]
|
||||
@@ -110,10 +110,16 @@ class Event(models.Model):
|
||||
('Th', 'Theater'),
|
||||
('Co', 'Comedy'),
|
||||
)
|
||||
EVENT_STATE = (
|
||||
('live', 'Live & Direct'),
|
||||
('virt', 'Virtually Served'),
|
||||
('both', 'How you prefer.')
|
||||
)
|
||||
calendar = models.ForeignKey(Calendar, on_delete=models.CASCADE, blank=True, null=True)
|
||||
scraper = models.ForeignKey(Scraper, on_delete=models.CASCADE, null=True)
|
||||
venue = models.ForeignKey(Organization, on_delete=models.CASCADE)
|
||||
event_type = models.CharField(max_length=15, choices=EVENT_TYPE, default='0')
|
||||
live = models.CharField(max_length=4, choices=EVENT_STATE, default='live')
|
||||
event_type = models.CharField(max_length=15, choices=EVENT_TYPE, default='Mu')
|
||||
show_title = models.CharField(max_length=127, blank=True, null=True)
|
||||
show_link = models.URLField(blank=True, null=True)
|
||||
guests = models.CharField(max_length=255, blank=True, null=True)
|
||||
|
||||
@@ -59,7 +59,6 @@ def splitLocation(event):
|
||||
venue, created = Organization.objects.get_or_create(
|
||||
name=venue_name,
|
||||
city="Medellin",
|
||||
website="https://idioki.com/",
|
||||
)
|
||||
event['venue'] = venue
|
||||
return event
|
||||
@@ -96,13 +95,7 @@ for component in gcal.walk():
|
||||
days = ["SU", "MO", "TU", "WE", "TH", "FR", "SA"]
|
||||
for day in rules['BYDAY']:
|
||||
day = days.index(day)
|
||||
loc_split = event['strLocation'].split(",")
|
||||
venue, created = Organization.objects.get_or_create(
|
||||
name=loc_split[0],
|
||||
city="Medellin",
|
||||
website="https://idioki.com/",
|
||||
)
|
||||
createEvent(day, date, event, scraper, venue, "Ed")
|
||||
createEvent(day, date, event, scraper, event['venue'], "Ed")
|
||||
|
||||
digitools.updateScraper(scraper, item_count_start)
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ from django_filters.rest_framework import DjangoFilterBackend
|
||||
from rest_framework import filters
|
||||
|
||||
from rest_framework.response import Response
|
||||
from rest_framework_api_key.permissions import HasAPIKey
|
||||
|
||||
td = timedelta(hours=7)
|
||||
odt = datetime.now() - td
|
||||
@@ -31,10 +32,12 @@ class EventsAPIView(generics.ListAPIView):
|
||||
filter_backends = [DjangoFilterBackend, filters.SearchFilter]
|
||||
filterset_fields = ['show_title', 'event_type', 'venue__name', 'calendar__shortcode']
|
||||
search_fields = ['show_title', 'event_type', 'venue__name']
|
||||
permission_classes = [HasAPIKey]
|
||||
|
||||
|
||||
class PromoAPIView(generics.ListAPIView):
|
||||
serializer_class = PromoSerializer
|
||||
permission_classes = [HasAPIKey]
|
||||
|
||||
def get_queryset(self):
|
||||
promo_objects = list(Promo.objects.filter(published=True))
|
||||
|
||||
Reference in New Issue
Block a user