Merge branch 'master' of github.com:bornhack/bornhack-website
This commit is contained in:
commit
53fa204455
|
@ -46,8 +46,6 @@ speakerDecoder =
|
|||
|> required "name" string
|
||||
|> required "slug" string
|
||||
|> required "biography" string
|
||||
|> optional "large_picture_url" (nullable string) Nothing
|
||||
|> optional "small_picture_url" (nullable string) Nothing
|
||||
|
||||
|
||||
eventDecoder : Decoder Event
|
||||
|
|
|
@ -70,8 +70,6 @@ type alias Speaker =
|
|||
{ name : String
|
||||
, slug : SpeakerSlug
|
||||
, biography : String
|
||||
, largePictureUrl : Maybe String
|
||||
, smallPictureUrl : Maybe String
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -22,33 +22,18 @@ speakerDetailView speakerSlug model =
|
|||
model.speakers
|
||||
|> List.filter (\speaker -> speaker.slug == speakerSlug)
|
||||
|> List.head
|
||||
|
||||
image =
|
||||
case speaker of
|
||||
Just speaker ->
|
||||
case speaker.smallPictureUrl of
|
||||
Just smallPictureUrl ->
|
||||
[ img [ src smallPictureUrl ] [] ]
|
||||
|
||||
Nothing ->
|
||||
[]
|
||||
|
||||
Nothing ->
|
||||
[]
|
||||
in
|
||||
case speaker of
|
||||
Just speaker ->
|
||||
div []
|
||||
([ a [ onClick BackInHistory, classList [ ( "btn", True ), ( "btn-default", True ) ] ]
|
||||
[ a [ onClick BackInHistory, classList [ ( "btn", True ), ( "btn-default", True ) ] ]
|
||||
[ i [ classList [ ( "fa", True ), ( "fa-chevron-left", True ) ] ] []
|
||||
, text " Back"
|
||||
]
|
||||
, h3 [] [ text speaker.name ]
|
||||
, div [] [ Markdown.toHtml [] speaker.biography ]
|
||||
, speakerEvents speaker model
|
||||
]
|
||||
++ image
|
||||
)
|
||||
, h3 [] [ text speaker.name ]
|
||||
, div [] [ Markdown.toHtml [] speaker.biography ]
|
||||
, speakerEvents speaker model
|
||||
]
|
||||
|
||||
Nothing ->
|
||||
div [] [ text "Unknown speaker..." ]
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
</div>
|
||||
<div class="col-md-9 col-sm-9 text-container">
|
||||
<div class="lead">
|
||||
<strong>Bornhack 2019</strong> will be the third BornHack. It will take place from <strong>August 16th to August 23rd 2019</strong> on the Danish island of Bornholm.
|
||||
<strong>Bornhack 2019</strong> will be the fourth BornHack. It will take place from <strong>August 13th to August 20th 2019</strong> on the Danish island of Bornholm.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
92
src/camps/templates/bornhack-2020_camp_detail.html
Normal file
92
src/camps/templates/bornhack-2020_camp_detail.html
Normal file
|
@ -0,0 +1,92 @@
|
|||
{% 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 %}" height="350px" width="400px" class="img-responsive" id="front-logo" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-9 col-sm-9 text-container">
|
||||
<div class="lead">
|
||||
<b>BornHack</b> is a 7 day outdoor tent camp where hackers, makers and people with an interest in technology or security come together to celebrate technology, socialise, learn and <b>have fun</b>.
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3 col-sm-3">
|
||||
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x988-B12A2610.jpg' 'The family area at BornHack 2016' %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-3 col-sm-3">
|
||||
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x1000-B12A2398.jpg' 'A random hackers laptop' %}
|
||||
</div>
|
||||
<div class="col-md-9 col-sm-9 text-container">
|
||||
<div class="lead">
|
||||
<strong>Bornhack 2020</strong> will be the fifth BornHack. It will take place from <strong>August 11th to August 18th 2020</strong> on the Danish island of Bornholm.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-9 col-sm-9 text-container">
|
||||
<div class="lead">
|
||||
The BornHack team looks forward to organising another great event for the hacker community. We <a href="{% url 'teams:list' camp_slug=camp.slug %}">still need volunteers</a>, so please let us know if you want to help!
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x988-B12A2631.jpg' 'The BornHack 2016 organiser team' %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-3 col-sm-3">
|
||||
{% thumbnail 'img/bornhack-2016/fonsmark' 'FB1_5149.JPG' 'Danish politicians debating at BornHack 2016' %}
|
||||
</div>
|
||||
<div class="col-md-9 col-sm-9 text-container">
|
||||
<div class="lead">We want to encourage <strong>hackers, makers, politicians, activists, developers, artists, sysadmins, engineers</strong> with something to say to read our <a href="{% url 'call_for_speakers' camp_slug=camp.slug %}">call for speakers</a>.</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-9 col-sm-9 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 class="col-md-3 col-sm-3">
|
||||
{% thumbnail 'img/bornhack-2016/fonsmark' 'FB1_5265.JPG' 'Organisers thanking the BornHack 2016 sponsors' %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br />
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12 col-sm-12">
|
||||
<p class="lead">You are very welcome to ask questions and show your interest on our different channels:</p>
|
||||
{% include 'includes/contact.html' %}
|
||||
</div>
|
||||
</div>
|
||||
<p align="center">
|
||||
{% thumbnail 'img/bornhack-2016/fonsmark' 'FA0_1983.JPG' 'Happy organisers welcoming people at the entrance to BornHack 2016' %}
|
||||
{% thumbnail 'img/bornhack-2016/fonsmark' 'FA0_1986.JPG' 'A bus full of hackers arrive at BornHack 2016' %}
|
||||
{% thumbnail 'img/bornhack-2016/fonsmark' 'FB1_5126.JPG' 'Late night hacking at Baconsvin village at BornHack 2016' %}
|
||||
{% thumbnail 'img/bornhack-2016/fonsmark' 'FB1_5168.JPG' '#irl_bar by night at BornHack 2016' %}
|
||||
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x900-B12A2452.jpg' 'Soldering the BornHack 2016 badge' %}
|
||||
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x900-B12A2608.jpg' 'Colored lights at night' %}
|
||||
{% thumbnail 'img/bornhack-2016/fonsmark' 'FA0_1961.JPG' 'BornHack' %}
|
||||
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x900-B12A2485.jpg' 'Colored light in the grass' %}
|
||||
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x988-B12A2624.jpg' 'Working on decorations' %}
|
||||
{% thumbnail 'img/bornhack-2016/esbjerg' '1600x900-B12A2604.jpg' 'Sitting around the campfire at BornHack 2016' %}
|
||||
</p>
|
||||
{% endblock content %}
|
|
@ -13925,9 +13925,9 @@ var _user$project$Models$Day = F3(
|
|||
function (a, b, c) {
|
||||
return {day_name: a, date: b, repr: c};
|
||||
});
|
||||
var _user$project$Models$Speaker = F5(
|
||||
function (a, b, c, d, e) {
|
||||
return {name: a, slug: b, biography: c, largePictureUrl: d, smallPictureUrl: e};
|
||||
var _user$project$Models$Speaker = F3(
|
||||
function (a, b, c) {
|
||||
return {name: a, slug: b, biography: c};
|
||||
});
|
||||
var _user$project$Models$EventInstance = function (a) {
|
||||
return function (b) {
|
||||
|
@ -14156,29 +14156,19 @@ var _user$project$Decoders$eventDecoder = A3(
|
|||
'title',
|
||||
_elm_lang$core$Json_Decode$string,
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$decode(_user$project$Models$Event))))))));
|
||||
var _user$project$Decoders$speakerDecoder = A4(
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$optional,
|
||||
'small_picture_url',
|
||||
_elm_lang$core$Json_Decode$nullable(_elm_lang$core$Json_Decode$string),
|
||||
_elm_lang$core$Maybe$Nothing,
|
||||
A4(
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$optional,
|
||||
'large_picture_url',
|
||||
_elm_lang$core$Json_Decode$nullable(_elm_lang$core$Json_Decode$string),
|
||||
_elm_lang$core$Maybe$Nothing,
|
||||
var _user$project$Decoders$speakerDecoder = A3(
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required,
|
||||
'biography',
|
||||
_elm_lang$core$Json_Decode$string,
|
||||
A3(
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required,
|
||||
'slug',
|
||||
_elm_lang$core$Json_Decode$string,
|
||||
A3(
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required,
|
||||
'biography',
|
||||
'name',
|
||||
_elm_lang$core$Json_Decode$string,
|
||||
A3(
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required,
|
||||
'slug',
|
||||
_elm_lang$core$Json_Decode$string,
|
||||
A3(
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required,
|
||||
'name',
|
||||
_elm_lang$core$Json_Decode$string,
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$decode(_user$project$Models$Speaker))))));
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$decode(_user$project$Models$Speaker))));
|
||||
var _user$project$Decoders$dayDecoder = A3(
|
||||
_NoRedInk$elm_decode_pipeline$Json_Decode_Pipeline$required,
|
||||
'repr',
|
||||
|
@ -16277,117 +16267,90 @@ var _user$project$Views_SpeakerDetail$speakerDetailView = F2(
|
|||
return _elm_lang$core$Native_Utils.eq(speaker.slug, speakerSlug);
|
||||
},
|
||||
model.speakers));
|
||||
var image = function () {
|
||||
var _p1 = speaker;
|
||||
if (_p1.ctor === 'Just') {
|
||||
var _p2 = _p1._0.smallPictureUrl;
|
||||
if (_p2.ctor === 'Just') {
|
||||
return {
|
||||
ctor: '::',
|
||||
_0: A2(
|
||||
_elm_lang$html$Html$img,
|
||||
{
|
||||
ctor: '::',
|
||||
_0: _elm_lang$html$Html_Attributes$src(_p2._0),
|
||||
_1: {ctor: '[]'}
|
||||
},
|
||||
{ctor: '[]'}),
|
||||
_1: {ctor: '[]'}
|
||||
};
|
||||
} else {
|
||||
return {ctor: '[]'};
|
||||
}
|
||||
} else {
|
||||
return {ctor: '[]'};
|
||||
}
|
||||
}();
|
||||
var _p3 = speaker;
|
||||
if (_p3.ctor === 'Just') {
|
||||
var _p4 = _p3._0;
|
||||
var _p1 = speaker;
|
||||
if (_p1.ctor === 'Just') {
|
||||
var _p2 = _p1._0;
|
||||
return A2(
|
||||
_elm_lang$html$Html$div,
|
||||
{ctor: '[]'},
|
||||
A2(
|
||||
_elm_lang$core$Basics_ops['++'],
|
||||
{
|
||||
ctor: '::',
|
||||
_0: A2(
|
||||
_elm_lang$html$Html$a,
|
||||
{
|
||||
{
|
||||
ctor: '::',
|
||||
_0: A2(
|
||||
_elm_lang$html$Html$a,
|
||||
{
|
||||
ctor: '::',
|
||||
_0: _elm_lang$html$Html_Events$onClick(_user$project$Messages$BackInHistory),
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: _elm_lang$html$Html_Events$onClick(_user$project$Messages$BackInHistory),
|
||||
_1: {
|
||||
_0: _elm_lang$html$Html_Attributes$classList(
|
||||
{
|
||||
ctor: '::',
|
||||
_0: {ctor: '_Tuple2', _0: 'btn', _1: true},
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: {ctor: '_Tuple2', _0: 'btn-default', _1: true},
|
||||
_1: {ctor: '[]'}
|
||||
}
|
||||
}),
|
||||
_1: {ctor: '[]'}
|
||||
}
|
||||
},
|
||||
{
|
||||
ctor: '::',
|
||||
_0: A2(
|
||||
_elm_lang$html$Html$i,
|
||||
{
|
||||
ctor: '::',
|
||||
_0: _elm_lang$html$Html_Attributes$classList(
|
||||
{
|
||||
ctor: '::',
|
||||
_0: {ctor: '_Tuple2', _0: 'btn', _1: true},
|
||||
_0: {ctor: '_Tuple2', _0: 'fa', _1: true},
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: {ctor: '_Tuple2', _0: 'btn-default', _1: true},
|
||||
_0: {ctor: '_Tuple2', _0: 'fa-chevron-left', _1: true},
|
||||
_1: {ctor: '[]'}
|
||||
}
|
||||
}),
|
||||
_1: {ctor: '[]'}
|
||||
}
|
||||
},
|
||||
},
|
||||
{ctor: '[]'}),
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: _elm_lang$html$Html$text(' Back'),
|
||||
_1: {ctor: '[]'}
|
||||
}
|
||||
}),
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: A2(
|
||||
_elm_lang$html$Html$h3,
|
||||
{ctor: '[]'},
|
||||
{
|
||||
ctor: '::',
|
||||
_0: A2(
|
||||
_elm_lang$html$Html$i,
|
||||
{
|
||||
ctor: '::',
|
||||
_0: _elm_lang$html$Html_Attributes$classList(
|
||||
{
|
||||
ctor: '::',
|
||||
_0: {ctor: '_Tuple2', _0: 'fa', _1: true},
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: {ctor: '_Tuple2', _0: 'fa-chevron-left', _1: true},
|
||||
_1: {ctor: '[]'}
|
||||
}
|
||||
}),
|
||||
_1: {ctor: '[]'}
|
||||
},
|
||||
{ctor: '[]'}),
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: _elm_lang$html$Html$text(' Back'),
|
||||
_1: {ctor: '[]'}
|
||||
}
|
||||
_0: _elm_lang$html$Html$text(_p2.name),
|
||||
_1: {ctor: '[]'}
|
||||
}),
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: A2(
|
||||
_elm_lang$html$Html$h3,
|
||||
_elm_lang$html$Html$div,
|
||||
{ctor: '[]'},
|
||||
{
|
||||
ctor: '::',
|
||||
_0: _elm_lang$html$Html$text(_p4.name),
|
||||
_0: A2(
|
||||
_evancz$elm_markdown$Markdown$toHtml,
|
||||
{ctor: '[]'},
|
||||
_p2.biography),
|
||||
_1: {ctor: '[]'}
|
||||
}),
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: A2(
|
||||
_elm_lang$html$Html$div,
|
||||
{ctor: '[]'},
|
||||
{
|
||||
ctor: '::',
|
||||
_0: A2(
|
||||
_evancz$elm_markdown$Markdown$toHtml,
|
||||
{ctor: '[]'},
|
||||
_p4.biography),
|
||||
_1: {ctor: '[]'}
|
||||
}),
|
||||
_1: {
|
||||
ctor: '::',
|
||||
_0: A2(_user$project$Views_SpeakerDetail$speakerEvents, _p4, model),
|
||||
_1: {ctor: '[]'}
|
||||
}
|
||||
_0: A2(_user$project$Views_SpeakerDetail$speakerEvents, _p2, model),
|
||||
_1: {ctor: '[]'}
|
||||
}
|
||||
}
|
||||
},
|
||||
image));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
return A2(
|
||||
_elm_lang$html$Html$div,
|
||||
|
|
11
src/program/templates/bornhack-2020_call_for_speakers.html
Normal file
11
src/program/templates/bornhack-2020_call_for_speakers.html
Normal file
|
@ -0,0 +1,11 @@
|
|||
{% extends 'program_base.html' %}
|
||||
|
||||
{% block title %}
|
||||
Call for Speakers | {{ block.super }}
|
||||
{% endblock %}
|
||||
|
||||
{% block program_content %}
|
||||
|
||||
<h2>Call for Speakers coming eventually!</h2>
|
||||
|
||||
{% endblock %}
|
|
@ -8,6 +8,8 @@ Sponsors | {{ block.super }}
|
|||
|
||||
{% block content %}
|
||||
|
||||
{% if sponsors %}
|
||||
|
||||
<h2>{{ view.camp.title }} Sponsors</h2>
|
||||
|
||||
<p class="lead">
|
||||
|
@ -17,6 +19,7 @@ Sponsors | {{ block.super }}
|
|||
you, we are immensely grateful!
|
||||
</p>
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% for sponsor in sponsors %}
|
||||
|
||||
|
@ -47,4 +50,67 @@ Sponsors | {{ block.super }}
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
{% if not camp.call_for_sponsors_open %}
|
||||
<div class="alert alert-danger">
|
||||
<strong>Note!</strong> This Call for Sponsors is no longer relevant. It is kept here for historic purposes.
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<h2>Becoming a {{ camp.title }} Sponsor</h2>
|
||||
<p>We are looking for sponsors to help us make {{ camp.title }} as
|
||||
unforgettable as the previous ones. If you would like to sponsor us do not hesitate
|
||||
to contact us at <a
|
||||
href="mailto:sponsors@bornhack.dk">sponsors@bornhack.dk</a>. If you work for an
|
||||
organisation or company that you believe might be able and willing to sponsor
|
||||
{{ camp.title }} please direct the right people to this page.</p>
|
||||
|
||||
<h3>The Concept</h3>
|
||||
<p>BornHack is an outdoor tent camping festival with a focus on technology
|
||||
and society, and how the two interact. The idea and basic concept of BornHack
|
||||
comes from participation in similar camps in Germany and the Netherlands. These
|
||||
events have huge traction (thousands of participants, sells out fast) and has
|
||||
inspired us to make BornHack.</p>
|
||||
|
||||
<h3>The Organisers</h3>
|
||||
<p>BornHack is put together by a group of people from Denmark employed
|
||||
primarily in the IT industry. The organiser group share a desire to set up a
|
||||
forum where people with different interests in IT and technology can come
|
||||
together to share ideas and socialise. Several of the organisers have
|
||||
previously been (or are still) involved in organising conferences such as <a
|
||||
href="https://opensourcedays.org/">Open Source Days</a>.</p>
|
||||
|
||||
<h3>Location and Format</h3>
|
||||
<p>For {{ camp.title }} we will be inviting up to 500 paying guests for a full
|
||||
week, the ambition is to grow the number of attendees over the coming
|
||||
years. It will take place at <a href="http://jarlsgaard.dk">Jarlsgaard</a>
|
||||
on Bornholm, Denmark, where we have a great venue with a fiber connection to the
|
||||
outside world.</p>
|
||||
|
||||
<h3>Sponsorship</h3>
|
||||
<p>A sponsorship can be in the range of 5000 DKK and up. You get
|
||||
to have a logo of your choice placed on our website in the sponsors
|
||||
section, and we can also display tasteful signs or banners in or
|
||||
around our speakers tent.</p>
|
||||
|
||||
<p>Sponsors often prefer to sponsor a certain area or event at the
|
||||
camp, where we will figure out an appropriate display in cooperation
|
||||
with you. Suggested sponsorships include:</p>
|
||||
|
||||
<ul>
|
||||
<li>Bar area (sound system, lighting, decorations, building materials, inventory)</li>
|
||||
<li>Lounge area (couches, hammocks, decoration)</li>
|
||||
<li>Food area (renting barbeques and buying charcoal)</li>
|
||||
<li>Speakers tent(s)</li>
|
||||
<li>Sound system in speakers tent(s)</li>
|
||||
<li>Shuttle buses</li>
|
||||
<li>Insurance</li>
|
||||
<li>Toilet facilities</li>
|
||||
<li>Coffee cart</li>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>If you have other ideas you would be interested in sponsoring, reach out to us on
|
||||
<a href="mailto:sponsors@bornhack.dk">sponsors@bornhack.dk</a>
|
||||
and we can talk about it. Cash sponsorships are also very welcome.</p>
|
||||
|
||||
{% endblock %}
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 60 KiB After Width: | Height: | Size: 63 KiB |
BIN
src/static_src/img/bornhack-2020/logo/bornhack-2020-logo-l.png
Normal file
BIN
src/static_src/img/bornhack-2020/logo/bornhack-2020-logo-l.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 59 KiB |
BIN
src/static_src/img/bornhack-2020/logo/bornhack-2020-logo-s.png
Normal file
BIN
src/static_src/img/bornhack-2020/logo/bornhack-2020-logo-s.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.7 KiB |
BIN
src/static_src/img/sponsors/zibra-wireless-logo.png
Normal file
BIN
src/static_src/img/sponsors/zibra-wireless-logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 12 KiB |
Loading…
Reference in a new issue