a bit more work on speakers and schedule and sponsors and stuff
This commit is contained in:
parent
edc37243e3
commit
c48c66635c
|
@ -43,6 +43,7 @@ INSTALLED_APPS = [
|
||||||
'villages',
|
'villages',
|
||||||
'program',
|
'program',
|
||||||
'info',
|
'info',
|
||||||
|
'sponsors',
|
||||||
|
|
||||||
'allauth',
|
'allauth',
|
||||||
'allauth.account',
|
'allauth.account',
|
||||||
|
|
|
@ -44,11 +44,6 @@ urlpatterns = [
|
||||||
TemplateView.as_view(template_name='coc.html'),
|
TemplateView.as_view(template_name='coc.html'),
|
||||||
name='conduct'
|
name='conduct'
|
||||||
),
|
),
|
||||||
url(
|
|
||||||
r'^sponsors/',
|
|
||||||
TemplateView.as_view(template_name='sponsors.html'),
|
|
||||||
name='call-for-sponsors'
|
|
||||||
),
|
|
||||||
url(
|
url(
|
||||||
r'^login/$',
|
r'^login/$',
|
||||||
LoginView.as_view(),
|
LoginView.as_view(),
|
||||||
|
@ -116,7 +111,7 @@ urlpatterns = [
|
||||||
name='event_index'
|
name='event_index'
|
||||||
),
|
),
|
||||||
url(
|
url(
|
||||||
r'^call/$',
|
r'^call-for-speakers/$',
|
||||||
CallForSpeakersView.as_view(),
|
CallForSpeakersView.as_view(),
|
||||||
name='call_for_speakers'
|
name='call_for_speakers'
|
||||||
),
|
),
|
||||||
|
@ -130,7 +125,7 @@ urlpatterns = [
|
||||||
|
|
||||||
url(
|
url(
|
||||||
r'^sponsors/$',
|
r'^sponsors/$',
|
||||||
SponsorIndexView.as_view(),
|
SponsorView.as_view(),
|
||||||
name='sponsors'
|
name='sponsors'
|
||||||
),
|
),
|
||||||
|
|
||||||
|
|
61
camps/templates/camp_detail_bornhack-2017.html
Normal file
61
camps/templates/camp_detail_bornhack-2017.html
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
{% extends 'base.html' %}
|
||||||
|
{% load commonmark %}
|
||||||
|
{% load static from staticfiles %}
|
||||||
|
{% load imageutils %}
|
||||||
|
{% block content %}
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-12">
|
||||||
|
<img src="{% static camp.logo_large %}" class="img-responsive" id="front-logo" />
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
|
<div class="col-md-8 text-container">
|
||||||
|
<div class="lead">
|
||||||
|
<strong>Bornhack 2017</strong> will be the second BornHack. It will take place from <strong>August 22nd to August 29th 2017</strong> on the Danish island of Bornholm. The tagline of this event will be <strong>Make Tradition</strong>.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4">
|
||||||
|
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x988-B12A2612.jpg' 'A quiet moment in the chillout area by the bar' %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-4">
|
||||||
|
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x988-B12A2631.jpg' 'The BornHack 2016 organiser team' %}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-8 text-container">
|
||||||
|
<div class="lead">
|
||||||
|
The BornHack team looks forward to organising another great event for the hacker community. We <strong>still need volunteers</strong>, so please let us know if you want to help!
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-8 text-container">
|
||||||
|
<div class="lead">We want to encourage <strong>hackers, makers, politicians, activists, developers, artists, sysadmins, engineers</strong> and anyone else with an interest in <strong>technology and society</strong> to read our <a href="{% url 'call_for_speakers' camp_slug=camp.slug %}">call for speakers</a>.</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4">
|
||||||
|
{% thumbnail 'img/bornhack-2016/fonsmark' 'FB1_5149.JPG' 'Danish politicians debating at BornHack 2016' %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-4">
|
||||||
|
{% thumbnail 'img/bornhack-2016/fonsmark' 'FB1_5265.JPG' 'Organisers thanking the BornHack 2016 sponsors' %}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-8 text-container">
|
||||||
|
<div class="lead">
|
||||||
|
BornHack aims to <strong>keep ticket prices affordable</strong> for everyone and to that end <strong>we need sponsors</strong>. Please see our <a href="{% url 'sponsors' camp_slug=camp.slug %}">call for sponsors</a> if you want to sponsor us, or if you work for a company you think might be able to help.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% endblock content %}
|
||||||
|
|
|
@ -38,6 +38,12 @@ class Event(CreatedUpdatedModel):
|
||||||
self.slug = slugify(self.title)
|
self.slug = slugify(self.title)
|
||||||
super(Event, self).save(**kwargs)
|
super(Event, self).save(**kwargs)
|
||||||
|
|
||||||
|
@property
|
||||||
|
def speakers_list(self):
|
||||||
|
if self.speakers.exists():
|
||||||
|
return ", ".join(self.speakers.all().values_list('name', flat=True))
|
||||||
|
return False
|
||||||
|
|
||||||
|
|
||||||
class EventInstance(CreatedUpdatedModel):
|
class EventInstance(CreatedUpdatedModel):
|
||||||
""" An instance of an event """
|
""" An instance of an event """
|
||||||
|
|
|
@ -2,35 +2,32 @@
|
||||||
{% load commonmark %}
|
{% load commonmark %}
|
||||||
|
|
||||||
{% block schedule_content %}
|
{% block schedule_content %}
|
||||||
|
<div class="panel panel-default">
|
||||||
|
<div class="panel-heading" ><span style="font-size: x-large"><span style="background-color: {{ event.event_type.color }}; border: 0; color: {% if event.event_type.light_text %}white{% else %}black{% endif %}; display: inline-block; padding: 5px;">{{ event.event_type.name }}</span> {{ event.title }}</span></div>
|
||||||
|
<div class="panel-body">
|
||||||
|
<p>
|
||||||
|
{{ event.abstract|commonmark }}
|
||||||
|
{% if event.speakers.exists %}
|
||||||
|
<hr>
|
||||||
|
{% for speaker in event.speakers.all %}
|
||||||
|
<h4><a href="{% url 'speaker_detail' camp_slug=camp.slug slug=speaker.slug %}">{{ speaker }}</a></h4>
|
||||||
|
{{ speaker.biography|commonmark }}
|
||||||
|
{% endfor %}
|
||||||
|
{% endif %}
|
||||||
|
</p>
|
||||||
|
|
||||||
<h3>
|
<hr>
|
||||||
<small style="background-color: {{ event.event_type.color }}; border: 0; color: {% if event.event_type.light_text %}white{% else %}black{% endif %}; display: inline-block; padding: 5px;">
|
|
||||||
{{ event.event_type.name }}
|
|
||||||
</small>
|
|
||||||
{{ event.title }}
|
|
||||||
</h3>
|
|
||||||
|
|
||||||
<h4>
|
|
||||||
{% if event.start and event.end and event.days.all.exists %}
|
|
||||||
{{ event.start|date:"H:i" }} - {{ event.end|date:"H:i" }} on
|
|
||||||
{% for day in event.days.all %}{{ day.date|date:"l" }}{% if not forloop.last %}, {% endif %}{% endfor %}<br />
|
|
||||||
{% else %}
|
|
||||||
Not scheduled yet
|
|
||||||
{% endif %}
|
|
||||||
</h4>
|
|
||||||
|
|
||||||
{{ event.abstract|commonmark }}
|
|
||||||
|
|
||||||
<hr />
|
|
||||||
|
|
||||||
{% if event.speakers.exists %}
|
|
||||||
{% for speaker in event.speakers.all %}
|
|
||||||
|
|
||||||
<h3><a href="{% url 'speaker_detail' camp_slug=camp.slug slug=speaker.slug %}">{{ speaker }}</a></h3>
|
|
||||||
{{ speaker.biography|commonmark }}
|
|
||||||
|
|
||||||
{% endfor %}
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
|
<h4>Instances</h4>
|
||||||
|
<ul class="list-group">
|
||||||
|
{% for ei in event.instances.all %}
|
||||||
|
<li class="list-group-item">{{ ei.when.lower|date:"l M. d H:i" }} - {{ ei.when.upper|date:"H:i" }}</li>
|
||||||
|
{% empty %}
|
||||||
|
No instances scheduled yet
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</h4>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
{% endblock schedule_content %}
|
{% endblock schedule_content %}
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
<br />
|
<br />
|
||||||
{{ event }}
|
{{ event }}
|
||||||
<br />
|
<br />
|
||||||
{% if event.speakers.exists %}<i>by {{ event.speakers.all|join:", " }}{% endif %}</i>
|
{% if event.speakers.exists %}<i>by {{ event.speakers_list }}{% endif %}</i>
|
||||||
</a>
|
</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
|
@ -9,23 +9,27 @@
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
{% if speaker.events.exists %}
|
{% if speaker.events.exists %}
|
||||||
{% for event in speaker.events.all %}
|
{% for event in speaker.events.all %}
|
||||||
|
<h3>
|
||||||
|
<small style="background-color: {{ event.event_type.color }}; border: 0; color: {% if event.event_type.light_text %}white{% else %}black{% endif %}; display: inline-block; padding: 5px;">
|
||||||
|
{{ event.event_type.name }}
|
||||||
|
</small>
|
||||||
|
<a href="{% url 'event_detail' camp_slug=camp.slug slug=event.slug %}">{{ event.title }}</a>
|
||||||
|
</h3>
|
||||||
|
{{ event.abstract|commonmark }}
|
||||||
|
|
||||||
<h3>
|
<h4>Instances</h4>
|
||||||
<small style="background-color: {{ event.event_type.color }}; border: 0; color: {% if event.event_type.light_text %}white{% else %}black{% endif %}; display: inline-block; padding: 5px;">
|
<ul class="list-group">
|
||||||
{{ event.event_type.name }}
|
{% for ei in event.instances.all %}
|
||||||
</small><br>
|
<li class="list-group-item">{{ ei.when.lower|date:"l M. d H:i" }} - {{ ei.when.upper|date:"H:i" }}</li>
|
||||||
<a href="{% url 'event_detail' camp_slug=camp.slug slug=event.slug %}">{{ event.title }}</a></h3>
|
{% empty %}
|
||||||
{{ event.abstract|commonmark }}
|
No instances scheduled yet
|
||||||
{% if event.start and event.end and event.days.all.exists %}
|
{% endfor %}
|
||||||
At {{ event.start|date:"H:i" }} - {{ event.end|date:"H:i" }} on
|
</ul>
|
||||||
{% for day in event.days.all %}{{ day.date|date:"l" }}{% if not forloop.last %}, {% endif %}{% endfor %}<br />
|
</h4>
|
||||||
{% else %}
|
<hr>
|
||||||
Not scheduled yet
|
{% empty %}
|
||||||
|
No events registered for this speaker yet
|
||||||
|
{% endfor %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% endfor %}
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% endblock schedule_content %}
|
{% endblock schedule_content %}
|
||||||
|
|
|
@ -6,11 +6,10 @@ Call for Sponsors | {{ block.super }}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h2>Our Sponsors</h2>
|
<h2>BornHack 2016 Sponsors</h2>
|
||||||
<p class="lead">
|
<p class="lead">
|
||||||
This is an alphabetical list of our current sponsors. We are immensely
|
This is an alphabetical list of the BornHack 2016 sponsors. An event like BornHack can not be built on hard work and
|
||||||
grateful for all the help we are getting, and we are looking forward to
|
good intentions alone - it would simply not have been possible without the financial help from these organisations. Thank you, we are immensely grateful!
|
||||||
adding more names to this list.
|
|
||||||
</p>
|
</p>
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<hr>
|
<hr>
|
||||||
|
@ -116,7 +115,7 @@ Call for Sponsors | {{ block.super }}
|
||||||
<a href="mailto:thomas@tyktech.dk">
|
<a href="mailto:thomas@tyktech.dk">
|
||||||
<img src="{% static 'img/sponsors/tyktech_logo.png' %}" class="img-responsive center-block" alt="tyktech logo">
|
<img src="{% static 'img/sponsors/tyktech_logo.png' %}" class="img-responsive center-block" alt="tyktech logo">
|
||||||
</a>
|
</a>
|
||||||
Badges, lanyards, wristbands
|
Badges, wristbands
|
||||||
</p>
|
</p>
|
||||||
<hr>
|
<hr>
|
||||||
<p class="lead">
|
<p class="lead">
|
||||||
|
|
|
@ -2,8 +2,8 @@ from django.views.generic import TemplateView
|
||||||
from camps.mixins import CampViewMixin
|
from camps.mixins import CampViewMixin
|
||||||
|
|
||||||
|
|
||||||
class SponsorIndexView(CampViewMixin, TemplateView):
|
class SponsorView(CampViewMixin, TemplateView):
|
||||||
def get_template_name(self):
|
def get_template_names(self):
|
||||||
return '%s-sponsors.html' % self.camp.slug
|
return '%s-sponsors.html' % self.camp.slug
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue