# get up to seven events to display on the homepage
event_base_queryset = Event.objects.select_related('country').filter(
approved=True,
- training=False,
enddate__gte=today,
)
# first, see if there are up to two non-badged events within 90 days
versions = Version.objects.filter(supported=True)
planet = ImportedRSSItem.objects.filter(feed__internalname="planet").order_by("-posttime")[:9]
- traininginfo = Event.objects.filter(approved=True, training=True).extra(where=("startdate <= (CURRENT_DATE + '6 Months'::interval) AND enddate >= CURRENT_DATE",)).aggregate(Count('id'), Count('country', distinct=True))
- # can't figure out how to make django do this
- curs = connection.cursor()
- curs.execute("SELECT * FROM (SELECT DISTINCT(core_organisation.name) FROM events_event INNER JOIN core_organisation ON org_id=core_organisation.id WHERE startdate <= (CURRENT_DATE + '6 Months'::interval) AND enddate >= CURRENT_DATE AND events_event.approved AND training AND org_id IS NOT NULL) x ORDER BY random() LIMIT 3")
- trainingcompanies = [r[0] for r in curs.fetchall()]
-
return render(request, 'index.html', {
'title': 'The world\'s most advanced open source database',
'news': news,
'newstags': NewsTag.objects.all(),
'events': events,
- 'traininginfo': traininginfo,
- 'trainingcompanies': trainingcompanies,
'versions': versions,
'planet': planet,
})
return cleaned_data
class EventAdmin(PgwebAdmin):
- list_display = ('title', 'org', 'startdate', 'enddate', 'training', 'approved',)
- list_filter = ('approved','training',)
+ list_display = ('title', 'org', 'startdate', 'enddate', 'approved',)
+ list_filter = ('approved',)
search_fields = ('summary', 'details', 'title', )
actions = [approve_event, ]
form = EventAdminForm
title_template = 'events/rss_title.html'
def items(self):
- return Event.objects.filter(approved=True).filter(training=False)[:10]
+ return Event.objects.filter(approved=True)[:10]
def item_link(self, obj):
return "https://www.postgresql.org/about/event/%s/" % obj.id
--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.10 on 2018-12-05 15:38
+from __future__ import unicode_literals
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('events', '0002_event_badged'),
+ ]
+
+ operations = [
+ migrations.RunSQL("DELETE FROM events_event WHERE training"),
+ migrations.RemoveField(
+ model_name='event',
+ name='training',
+ ),
+ ]
country = models.ForeignKey(Country, null=True, blank=True)
language = models.ForeignKey(Language, null=True, blank=True, default='eng', help_text="Primary language for event. When multiple languages, specify this in the event description")
- training = models.BooleanField(null=False, blank=False, default=False)
badged = models.BooleanField(null=False, blank=False, default=False, verbose_name='Community event', help_text='Choose "Community event" if this is a community recognized event following the <a href="/community/recognition/#conferences" target="_blank">community event guidelines</a>.')
description_for_badged = models.TextField(blank=True, null=True, verbose_name='Description for community event', help_text='DEPRECRATED: This was used in the beginning of community events to collect additional information.')
startdate = models.DateField(null=False, blank=False, verbose_name="Start date")
from forms import EventForm
def main(request):
- community_events = Event.objects.select_related('country').filter(approved=True, badged=True).filter(training=False, enddate__gt=date.today()).order_by('enddate', 'startdate',)
- other_events = Event.objects.select_related('country').filter(approved=True, badged=False).filter(training=False, enddate__gt=date.today()).order_by('enddate', 'startdate',)
- training = Event.objects.select_related('country').filter(approved=True).filter(training=True, enddate__gt=date.today()).order_by('enddate', 'startdate',)
+ community_events = Event.objects.select_related('country').filter(approved=True, badged=True).filter(enddate__gt=date.today()).order_by('enddate', 'startdate',)
+ other_events = Event.objects.select_related('country').filter(approved=True, badged=False).filter(enddate__gt=date.today()).order_by('enddate', 'startdate',)
return render_pgweb(request, 'about', 'events/archive.html', {
'title': 'Upcoming Events',
'eventblocks': (
{ 'name': 'Community Events', 'events': community_events, 'link': '',},
{ 'name': 'Other Events', 'events': other_events, 'link': '',},
- { 'name': 'Training', 'events': training, 'link': 'training/',},
),
})
-def _eventarchive(request, training, title):
+def _eventarchive(request, title):
# Hardcode to the latest 100 events. Do we need paging too?
- events = Event.objects.select_related('country').filter(approved=True).filter(training=training, enddate__lte=date.today()).order_by('-enddate', '-startdate',)[:100]
+ events = Event.objects.select_related('country').filter(approved=True).filter(enddate__lte=date.today()).order_by('-enddate', '-startdate',)[:100]
return render_pgweb(request, 'about', 'events/archive.html', {
'title': '%s Archive' % title,
'archive': True,
})
def archive(request):
- return _eventarchive(request, False, 'Event')
-
-def trainingarchive(request):
- return _eventarchive(request, True, 'Training')
+ return _eventarchive(request, 'Event')
def item(request, itemid, throwaway=None):
event = get_object_or_404(Event, pk=itemid)
url(r'^about/news/taglist.json/$', pgweb.news.views.taglist_json),
url(r'^about/events/$', pgweb.events.views.main),
url(r'^about/eventarchive/$', pgweb.events.views.archive),
- url(r'^about/eventarchive/training/$', pgweb.events.views.trainingarchive),
url(r'^about/event/(\d+)(-.*)?/$', pgweb.events.views.item),
url(r'^about/featurematrix/$', pgweb.featurematrix.views.root),
url(r'^about/featurematrix/detail/(\d+)/$', pgweb.featurematrix.views.detail),