Re-order talks
This commit is contained in:
parent
33a8eff77a
commit
d38d6be307
|
@ -1,218 +1,97 @@
|
|||
events:
|
||||
events:
|
||||
drupal-bristol:
|
||||
name: Drupal Bristol
|
||||
location: Bristol, UK
|
||||
website: https://www.drupalbristol.org.uk
|
||||
drupal-bristol:
|
||||
name: 'Drupal Bristol'
|
||||
location: 'Bristol, UK'
|
||||
website: 'https://www.drupalbristol.org.uk'
|
||||
|
||||
drupal-somerset:
|
||||
name: Drupal Somerset
|
||||
location: 'Glastonbury, UK'
|
||||
drupal-somerset:
|
||||
name: 'Drupal Somerset'
|
||||
location: 'Glastonbury, UK'
|
||||
|
||||
drupalcamp-brighton-15:
|
||||
name: DrupalCamp Brighton 2015
|
||||
location: Brighton, UK
|
||||
website: ~
|
||||
drupalcamp-brighton-15:
|
||||
name: 'DrupalCamp Brighton 2015'
|
||||
location: 'Brighton, UK'
|
||||
website: ~
|
||||
|
||||
drupalcamp-bristol-16:
|
||||
name: DrupalCamp Bristol 2016
|
||||
location: Bristol, UK
|
||||
website: https://2016.drupalcampbristol.org.uk
|
||||
drupalcamp-bristol-16:
|
||||
name: 'DrupalCamp Bristol 2016'
|
||||
location: 'Bristol, UK'
|
||||
website: 'https://2016.drupalcampbristol.org.uk'
|
||||
|
||||
drupalcamp-dublin-17:
|
||||
name: DrupalCamp Dublin 2017
|
||||
location: Dublin, Ireland
|
||||
website: http://2017.drupal.ie
|
||||
drupalcamp-dublin-17:
|
||||
name: DrupalCamp Dublin 2017
|
||||
location: Dublin, Ireland
|
||||
website: http://2017.drupal.ie
|
||||
|
||||
drupalcamp-london-14:
|
||||
name: DrupalCamp London 2014
|
||||
location: London, UK
|
||||
website: ~
|
||||
drupalcamp-london-14:
|
||||
name: DrupalCamp London 2014
|
||||
location: London, UK
|
||||
website: ~
|
||||
|
||||
drupalcamp-london-15:
|
||||
name: DrupalCamp London 2015
|
||||
location: London, UK
|
||||
website: ~
|
||||
drupalcamp-london-15:
|
||||
name: DrupalCamp London 2015
|
||||
location: London, UK
|
||||
website: ~
|
||||
|
||||
drupalcamp-london-16:
|
||||
name: DrupalCamp London 2016
|
||||
location: London, UK
|
||||
website: ~
|
||||
drupalcamp-london-16:
|
||||
name: DrupalCamp London 2016
|
||||
location: London, UK
|
||||
website: ~
|
||||
|
||||
drupalcamp-london-17:
|
||||
name: DrupalCamp London 2017
|
||||
location: London, UK
|
||||
website: http://drupalcamp.london
|
||||
drupalcamp-london-17:
|
||||
name: DrupalCamp London 2017
|
||||
location: London, UK
|
||||
website: http://drupalcamp.london
|
||||
|
||||
drupalcamp-north-15:
|
||||
name: DrupalCamp North 2015
|
||||
location: Sunderland, UK
|
||||
website: http://drupalcampnorth.org
|
||||
drupalcamp-north-15:
|
||||
name: DrupalCamp North 2015
|
||||
location: Sunderland, UK
|
||||
website: http://drupalcampnorth.org
|
||||
|
||||
nomad-php:
|
||||
name: Nomad PHP
|
||||
location: Online
|
||||
website: https://nomadphp.com
|
||||
nomad-php:
|
||||
name: Nomad PHP
|
||||
location: Online
|
||||
website: https://nomadphp.com
|
||||
|
||||
nwdug:
|
||||
name: NWDUG
|
||||
location: Manchester, UK
|
||||
website: http://nwdrupal.org.uk
|
||||
nwdug:
|
||||
name: NWDUG
|
||||
location: Manchester, UK
|
||||
website: http://nwdrupal.org.uk
|
||||
|
||||
phpnw17:
|
||||
name: PHP North West 2017
|
||||
location: Manchester, UK
|
||||
website: http://conference.phpnw.org.uk/phpnw17
|
||||
phpnw17:
|
||||
name: PHP North West 2017
|
||||
location: Manchester, UK
|
||||
website: http://conference.phpnw.org.uk/phpnw17
|
||||
|
||||
phpsc16:
|
||||
name: PHP South Coast 2016
|
||||
location: Portsmouth, UK
|
||||
website: http://2016.phpsouthcoast.co.uk
|
||||
phpsc16:
|
||||
name: PHP South Coast 2016
|
||||
location: Portsmouth, UK
|
||||
website: http://2016.phpsouthcoast.co.uk
|
||||
|
||||
phpsw:
|
||||
name: PHPSW
|
||||
location: Bristol, UK
|
||||
website: https://phpsw.uk
|
||||
phpsw:
|
||||
name: PHPSW
|
||||
location: Bristol, UK
|
||||
website: https://phpsw.uk
|
||||
|
||||
swdug:
|
||||
name: SWDUG
|
||||
location: Cardiff, UK
|
||||
website: ~
|
||||
swdug:
|
||||
name: SWDUG
|
||||
location: Cardiff, UK
|
||||
website: ~
|
||||
|
||||
umbristol:
|
||||
name: umBristol
|
||||
location: Bristol, UK
|
||||
website: http://umbristol.co.uk
|
||||
umbristol:
|
||||
name: umBristol
|
||||
location: Bristol, UK
|
||||
website: http://umbristol.co.uk
|
||||
|
||||
unifieddiff:
|
||||
name: 'unified.diff'
|
||||
location: Cardiff, UK
|
||||
website: http://unifieddiff.co.uk
|
||||
unifieddiff:
|
||||
name: 'unified.diff'
|
||||
location: Cardiff, UK
|
||||
website: http://unifieddiff.co.uk
|
||||
|
||||
dates:
|
||||
- event: unifieddiff
|
||||
date: '2012-09-05'
|
||||
talk_id: 1
|
||||
# - event: swdug
|
||||
# date: '2013-07-10'
|
||||
# talk_title: Drupal and the LDAP Module
|
||||
|
||||
- event: swdug
|
||||
date: '2013-07-10'
|
||||
talk_title: Drupal and the LDAP Module
|
||||
|
||||
- event: drupalcamp-london-14
|
||||
date: '2014-03-01'
|
||||
talk: git-flow
|
||||
talk_id: 2
|
||||
|
||||
- event: drupal-bristol
|
||||
date: '2014-08-19'
|
||||
talk: drush-make-drupalbristol
|
||||
talk_id: 3
|
||||
|
||||
- event: swdug
|
||||
date: '2014-08-19'
|
||||
talk_title: About the Drupal Association
|
||||
|
||||
- event: drupalcamp-brighton-15
|
||||
date: '2015-01-18'
|
||||
talk_id: 4
|
||||
|
||||
- event: drupalcamp-london-15
|
||||
date: '2015-02-28'
|
||||
talk_id: 4
|
||||
|
||||
- event: phpsw
|
||||
date: '2015-04-08'
|
||||
talk_id: 5
|
||||
|
||||
- event: drupalcamp-north-15
|
||||
date: '2015-07-25'
|
||||
talk_id: 6
|
||||
|
||||
- event: umbristol
|
||||
date: '2015-08-25'
|
||||
talk_id: 7
|
||||
|
||||
- event: phpsw
|
||||
date: '2015-10-14'
|
||||
talk_id: 8
|
||||
feedback: https://joind.in/talk/view/15486
|
||||
|
||||
- event: drupalcamp-london-16
|
||||
date: '2016-03-05'
|
||||
talk_id: 9
|
||||
|
||||
- event: nwdug
|
||||
date: '2016-03-08'
|
||||
talk_id: 10
|
||||
|
||||
- event: drupal-bristol
|
||||
date: '2016-04-02'
|
||||
talk_id: 10
|
||||
|
||||
- event: phpsc16
|
||||
date: '2016-06-11'
|
||||
talk_id: 11
|
||||
feedback: https://joind.in/talk/41d0f
|
||||
|
||||
- event: drupalcamp-bristol-16
|
||||
date: '2016-07-23'
|
||||
talk_id: 12
|
||||
|
||||
- event: phpsw
|
||||
date: '2016-11-09'
|
||||
talk_id: 13
|
||||
|
||||
- event: drupal-bristol
|
||||
date: '2016-11-17'
|
||||
talk_id: 14
|
||||
|
||||
- event: drupal-bristol
|
||||
date: '2017-01-18'
|
||||
talk_id: 15
|
||||
|
||||
- event: phpsw
|
||||
date: '2017-02-08'
|
||||
talk_id: 16
|
||||
feedback: https://joind.in/event/phpsw-new-skills-february-17/it-started-with-a-patch
|
||||
|
||||
- event: drupalcamp-london-17
|
||||
date: '2017-03-04'
|
||||
time: '16:15 - 17:00'
|
||||
talk_id: 17
|
||||
|
||||
- event: drupalcamp-london-17
|
||||
date: '2017-03-04'
|
||||
time: '12:05 - 12:50'
|
||||
talk_id: 15
|
||||
|
||||
- event: nomad-php
|
||||
date: '2017-04-20'
|
||||
time: '19:00 (CET)'
|
||||
type: Lightning talk
|
||||
talk_id: 18
|
||||
|
||||
- event: phpsw
|
||||
date: '2017-09-13'
|
||||
time: ~
|
||||
feedback: https://joind.in/talk/a5ff3
|
||||
talk_id: 18
|
||||
|
||||
- event: phpnw17
|
||||
date: '2017-10-01'
|
||||
time: '09:00 - 09:45'
|
||||
talk_id: 18
|
||||
feedback: 'https://joind.in/talk/4e35d'
|
||||
|
||||
- event: drupalcamp-dublin-17
|
||||
date: '2017-10-20'
|
||||
time: '15:00 - 15:40'
|
||||
talk_id: 19
|
||||
|
||||
- event: drupalcamp-dublin-17
|
||||
date: '2017-10-21'
|
||||
time: '12:00 - 12:40'
|
||||
talk_id: 17
|
||||
|
||||
- event: drupal-somerset
|
||||
date: '2017-10-26'
|
||||
talk_id: 19
|
||||
# - event: swdug
|
||||
# date: '2014-08-19'
|
||||
# talk_title: About the Drupal Association
|
||||
|
|
|
@ -1,16 +1,13 @@
|
|||
<div class="mt4">
|
||||
<h2>Events</h2>
|
||||
|
||||
{% set events = [] %}
|
||||
{% for date in site.events.dates if date.talk_id == page.talk_id %}
|
||||
{% set events = events|merge([{
|
||||
date: date,
|
||||
event: site.events.events[date.event],
|
||||
{% set talks = [] %}
|
||||
{% for event in page.events %}
|
||||
{% set talks = talks|merge([{
|
||||
event: event|merge(site.events[event.event]),
|
||||
talk: page,
|
||||
}]) %}
|
||||
{% endfor %}
|
||||
|
||||
{% include 'talks-table' with {
|
||||
events: events,
|
||||
talk_page: true
|
||||
} %}
|
||||
{% include "talks-table" with { talk_page: true } %}
|
||||
</div>
|
||||
|
|
52
source/_includes/talks-table-row.html.twig
Normal file
52
source/_includes/talks-table-row.html.twig
Normal file
|
@ -0,0 +1,52 @@
|
|||
<tr class="striped--near-white">
|
||||
<td class="pa2">
|
||||
{{ row.event.date|date(row.event.fuzzy_date ? 'F Y' : 'j F Y') }}
|
||||
|
||||
{% if row.event.time is defined %}
|
||||
<small class="db black-70">
|
||||
{{ row.event.time }}
|
||||
</small>
|
||||
{% endif %}
|
||||
</td>
|
||||
|
||||
{% if not talk_page %}
|
||||
<td class="pa2">
|
||||
<a href="{{ row.talk.url }}">
|
||||
{{ row.talk.title }}
|
||||
</a>
|
||||
|
||||
<small class="db black-70">
|
||||
{{ row.event.type|default('Talk') }}
|
||||
</small>
|
||||
</td>
|
||||
{% endif %}
|
||||
|
||||
<td class="pa2">
|
||||
{% if row.event.website is not empty %}
|
||||
<a href="{{ row.event.website }}">
|
||||
{{ row.event.name }}
|
||||
</a>
|
||||
{% else %}
|
||||
{{ row.event.name }}
|
||||
{% endif %}
|
||||
|
||||
{% if row.event.location is defined %}
|
||||
<small class="db black-70">
|
||||
{{ row.event.location }}
|
||||
</small>
|
||||
{% endif %}
|
||||
</td>
|
||||
|
||||
{% if not upcoming %}
|
||||
<td class="ph2">
|
||||
{% if row.event.feedback and row.event.date <= today %}
|
||||
<a
|
||||
href="{{ row.event.feedback }}"
|
||||
class="button"
|
||||
title="Read or leave feedback for this talk">
|
||||
<i class="fa fa-comment-o"></i> joind.in
|
||||
</a>
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endif %}
|
||||
</tr>
|
|
@ -17,65 +17,8 @@
|
|||
</thead>
|
||||
<tbody>
|
||||
{% set today = 'today'|date('Y-m-d') %}
|
||||
{% for row in events %}
|
||||
<tr class="striped--near-white">
|
||||
<td class="pa2">
|
||||
{{ row.date.date|date(row.date.fuzzy_date ? 'F Y' : 'j F Y') }}
|
||||
|
||||
{% if row.date.time is defined %}
|
||||
<small class="db black-70">
|
||||
{{ row.date.time }}
|
||||
</small>
|
||||
{% endif %}
|
||||
</td>
|
||||
|
||||
{% if not talk_page %}
|
||||
<td class="pa2">
|
||||
{% if row.date.talk_title is not defined %}
|
||||
{% for talk in data.talks if talk.talk_id == row.date.talk_id %}
|
||||
<a href="{{ talk.url }}">
|
||||
{{ talk.title }}
|
||||
</a>
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
{{ row.date.talk_title }}
|
||||
{% endif %}
|
||||
|
||||
<small class="db black-70">
|
||||
{{ row.date.type|default('Talk') }}
|
||||
</small>
|
||||
</td>
|
||||
{% endif %}
|
||||
|
||||
<td class="pa2">
|
||||
{% if row.event.website is not empty %}
|
||||
<a href="{{ row.event.website }}">
|
||||
{{ row.event.name }}
|
||||
</a>
|
||||
{% else %}
|
||||
{{ row.event.name }}
|
||||
{% endif %}
|
||||
|
||||
{% if row.event.location is defined %}
|
||||
<small class="db black-70">
|
||||
{{ row.event.location }}
|
||||
</small>
|
||||
{% endif %}
|
||||
</td>
|
||||
|
||||
{% if not upcoming %}
|
||||
<td class="ph2">
|
||||
{% if row.date.feedback and row.date.date <= today %}
|
||||
<a
|
||||
href="{{ row.date.feedback }}"
|
||||
class="button"
|
||||
title="Read or leave feedback for this talk">
|
||||
<i class="fa fa-comment-o"></i> joind.in
|
||||
</a>
|
||||
{% endif %}
|
||||
</td>
|
||||
{% endif %}
|
||||
</tr>
|
||||
{% for row in talks %}
|
||||
{% include "talks-table-row" %}
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 8
|
||||
title: Building Static Websites with Sculpin
|
||||
type: Lightning talk
|
||||
slides:
|
||||
|
@ -11,6 +10,10 @@ tweets: yes
|
|||
video:
|
||||
embed: <iframe width="560" height="315" src="https://www.youtube.com/embed/aN53arCKZAU" frameborder="0" allowfullscreen></iframe>
|
||||
url: https://www.youtube.com/watch?v=aN53arCKZAU
|
||||
events:
|
||||
- event: phpsw
|
||||
date: '2015-10-14'
|
||||
feedback: 'https://joind.in/talk/view/15486'
|
||||
---
|
||||
[Sculpin][0] is a static site generator written in PHP. It converts Markdown files, Twig templates and standard HTML into a static HTML site that can be easily deployed.
|
||||
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
---
|
||||
talk_id: 7
|
||||
title: Dancing for Drupal
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/umbristol-dancing-for-drupal
|
||||
embed: <script async class="speakerdeck-embed" data-id="ffa9b6dea6dc4a8eb207b9982ed6e1bd" data-ratio="1.33333333333333" src="//speakerdeck.com/assets/embed.js"></script>
|
||||
tags: [meetup, umbristol, drupal]
|
||||
tweets: yes
|
||||
events:
|
||||
- event: umbristol
|
||||
date: '2015-08-25'
|
||||
---
|
||||
As part of their [CMS Dance-Off][1], I was selected to speak about Drupal alongside other speakers representing Umbraco, Sitecore and Episerver.
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 19
|
||||
title: 'Deploying Drupal with Fabric'
|
||||
type: Talk
|
||||
slides:
|
||||
|
@ -14,6 +13,12 @@ meta:
|
|||
title: Deploying Drupal with Fabric
|
||||
description: "You've built your Drupal site, now learn how to deploy it with Fabric."
|
||||
type: website
|
||||
events:
|
||||
- event: drupalcamp-dublin-17
|
||||
date: '2017-10-20'
|
||||
time: '15:00 - 15:40'
|
||||
- event: drupal-somerset
|
||||
date: '2017-10-26'
|
||||
---
|
||||
You’ve built your website, and now you just need to deploy it. There are various ways that this could be done - from (S)FTP, to SCP and rsync, to running commands like “git pull” and “composer install” directly on the server (not recommended).
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 18
|
||||
title: Deploying PHP Applications with Fabric
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/deploying-php-applications-with-fabric
|
||||
|
@ -18,6 +17,18 @@ meta:
|
|||
width: 2560
|
||||
height: 1440
|
||||
type: image/png
|
||||
events:
|
||||
- event: nomad-php
|
||||
date: '2017-04-20'
|
||||
time: '19:00 (CET)'
|
||||
type: 'Lightning talk'
|
||||
- event: phpsw
|
||||
date: '2017-09-13'
|
||||
feedback: https://joind.in/talk/a5ff3
|
||||
- event: phpnw17
|
||||
date: '2017-10-01'
|
||||
time: '09:00 - 09:45'
|
||||
feedback: 'https://joind.in/talk/4e35d'
|
||||
---
|
||||
You’ve built your application, and now you just need to deploy it. There are various ways that this could be done – from (S)FTP, to SCP and rsync, to running commands like “git pull” and “composer install” directly on the server (not recommended).
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 9
|
||||
title: Getting Started with Drupal 8 Module Development
|
||||
tags: [conference, php, drupal, drupalcamp, drupal-8]
|
||||
tweets: yes
|
||||
|
@ -18,6 +17,9 @@ meta:
|
|||
type: 'image/png'
|
||||
height: 540
|
||||
width: 960
|
||||
events:
|
||||
- event: drupalcamp-london-16
|
||||
date: '2016-03-05'
|
||||
---
|
||||
New to object-orientated PHP, Symfony or YAML, and want to get started building modules in Drupal 8? This is the session for you!
|
||||
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
---
|
||||
talk_id: 11
|
||||
title: Drupal 8: Rejoining the Herd
|
||||
tags: [conference, php, drupal, drupal-8]
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/drupal-rejoining-the-herd
|
||||
embed: <script async class="speakerdeck-embed" data-id="440fd6592f474741bc606c96bc32c104" data-ratio="1.37081659973226" src="//speakerdeck.com/assets/embed.js"></script>
|
||||
events:
|
||||
- event: phpsc16
|
||||
date: '2016-06-11'
|
||||
feedback: 'https://joind.in/talk/41d0f'
|
||||
---
|
||||
[Drupal 8][0] was (finally) released on November 19th 2015, after almost 4 years of work and code commits by over 3,200 different contributors. Whilst it’s pretty much the same as the Drupal that we know and, hopefully, love, a lot has changed behind the scenes and under the hood!
|
||||
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
---
|
||||
talk_id: 5
|
||||
title: Drupal 8
|
||||
type: Lightning talk
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/drupal-8
|
||||
embed: <script async class="speakerdeck-embed" data-id="46ba4ba577d94a32b7abdade610ceb69" data-ratio="1.29456384323641" src="//speakerdeck.com/assets/embed.js"></script>
|
||||
|
@ -10,6 +8,9 @@ video:
|
|||
embed: <iframe width="560" height="315" src="https://www.youtube.com/embed/36zCxPrOOzM" frameborder="0" allowfullscreen></iframe>
|
||||
tags: [meetup, phpsw, drupal, drupal-8]
|
||||
tweets: yes
|
||||
events:
|
||||
- event: phpsw
|
||||
date: '2015-04-08'
|
||||
---
|
||||
This was a ten minute lightning talk, designed to highlight the major changes coming in Drupal 8.
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 10
|
||||
title: Drupal VM Generator
|
||||
type: Lightning talk
|
||||
code: https://github.com/opdavies/drupal-vm-generator
|
||||
|
@ -10,6 +9,11 @@ slides:
|
|||
video:
|
||||
url: https://youtu.be/U1pbKAAO2Wo?t=3696
|
||||
embed: <iframe width="560" height="315" src="https://www.youtube.com/embed/U1pbKAAO2Wo?start=3696" frameborder="0" allowfullscreen></iframe>
|
||||
events:
|
||||
- event: nwdug
|
||||
date: '2016-03-08'
|
||||
- event: drupal-bristol
|
||||
date: '2016-04-02'
|
||||
---
|
||||
An short talk about the [Drupal VM Generator][1] project.
|
||||
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
---
|
||||
talk_id: 12
|
||||
title: Drupal VM, Meet Symfony Console
|
||||
tags: [conference, php, drupal-vm, symfony]
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/drupal-vm-meet-symfony-console
|
||||
embed: <script async class="speakerdeck-embed" data-id="56c79770f73f4e47a542a30243437c49" data-ratio="1.37081659973226" src="//speakerdeck.com/assets/embed.js"></script>
|
||||
image: drupal-vm-meet-symfony-console.png
|
||||
events:
|
||||
- event: drupalcamp-bristol-16
|
||||
date: '2016-07-23'
|
||||
---
|
||||
_TL;DR - Come and learn about Symfony Console, with examples from a real-world project._
|
||||
|
||||
|
|
|
@ -1,8 +1,12 @@
|
|||
---
|
||||
talk_id: 4
|
||||
title: Drupal.org in 2015: What's Coming Next
|
||||
tags: [conference, drupalcamp, drupalcamp-london, drupal-association]
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/drupal-dot-org-in-15
|
||||
embed: <script async class="speakerdeck-embed" data-id="0cf8d7b647c94ae289e9db2b46a9e8f2" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>
|
||||
events:
|
||||
- event: drupalcamp-brighton-15
|
||||
date: '2015-01-18'
|
||||
- event: drupalcamp-london-15
|
||||
date: '2015-02-28'
|
||||
---
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
---
|
||||
talk_id: 3
|
||||
title: drush make drupalbristol
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/drush-make-drupalbristol
|
||||
embed: <script async class="speakerdeck-embed" data-id="42605700f102013198de5a5f6f23ab67" data-ratio="1.29456384323641" src="//speakerdeck.com/assets/embed.js"></script>
|
||||
tags: [meetup, drupal, drupal-bristol, drush, drush-make]
|
||||
events:
|
||||
- event: drupal-bristol
|
||||
date: '2014-08-19'
|
||||
---
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 15
|
||||
title: Getting (Your Data) Into Drupal 8
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/getting-your-data-into-drupal-8-drupal-bristol
|
||||
|
@ -19,6 +18,12 @@ meta:
|
|||
height: 1440
|
||||
type: image/png
|
||||
use: [talks]
|
||||
events:
|
||||
- event: drupal-bristol
|
||||
date: '2017-01-18'
|
||||
- event: drupalcamp-london-17
|
||||
date: '2017-03-04'
|
||||
time: '12:05 - 12:50'
|
||||
---
|
||||
If you’ve moved a site from Drupal 6 to 7, the chances are that you’ve either used the upgrade path to update your old site in-place, or you built a new site from scratch and used the Migrate module from contrib to migrate your data from the old database.
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 2
|
||||
title: Never Commit to Master - An Introduction to Git Flow
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/never-commit-to-master-an-introduction-to-git-flow
|
||||
|
@ -9,4 +8,7 @@ video:
|
|||
embed: <iframe width="560" height="315" src="https://www.youtube.com/embed/T-miCpHxfds" frameborder="0" allowfullscreen></iframe>
|
||||
tags: [conference, drupalcamp, drupalcamp-london, git, git-flow]
|
||||
tweets: yes
|
||||
events:
|
||||
- event: drupalcamp-london-14
|
||||
date: '2014-03-01'
|
||||
---
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
---
|
||||
talk_id: 14
|
||||
title: Goodbye Drush Make. Hello Composer!
|
||||
tags: ['meetup', 'drupal', 'composer']
|
||||
slides:
|
||||
url: http://bit.ly/slides-goodbye-drush-make-hello-composer2
|
||||
embed: '<script async class="speakerdeck-embed" data-id="1c1e0e129ab34816bd4c4edb5f6642c2" data-ratio="1.37081659973226" src="//speakerdeck.com/assets/embed.js"></script>'
|
||||
events:
|
||||
- event: drupal-bristol
|
||||
date: '2016-11-17'
|
||||
---
|
||||
One of the main outcomes of Drupal 8 was “getting off the island” with third-party code included in core and adopting modern best practices from the wider PHP ecosystem - including [Composer][1], PHP’s dependency manager.
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 16
|
||||
title: It All Started With A Patch
|
||||
type: Lightning talk
|
||||
tags: [meetup, phpsw, open-source]
|
||||
|
@ -9,5 +8,9 @@ slides:
|
|||
video:
|
||||
url: https://www.youtube.com/watch?v=5FYMRR61sdo
|
||||
embed: '<iframe width="560" height="315" src="https://www.youtube.com/embed/5FYMRR61sdo" frameborder="0" allowfullscreen></iframe>'
|
||||
events:
|
||||
- event: phpsw
|
||||
date: '2017-02-08'
|
||||
feedback: 'https://joind.in/event/phpsw-new-skills-february-17/it-started-with-a-patch'
|
||||
---
|
||||
A crash course of why and how to get involved with open source.
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 13
|
||||
title: Modern Drupal Development with Composer
|
||||
type: Lightning talk
|
||||
tags: ['meetups', 'phpsw', 'drupal', 'composer']
|
||||
|
@ -9,6 +8,9 @@ slides:
|
|||
video:
|
||||
url: https://www.youtube.com/watch?v=Yi_FPI3xHwc
|
||||
embed: '<iframe width="560" height="315" src="https://www.youtube.com/embed/Yi_FPI3xHwc" frameborder="0" allowfullscreen></iframe>'
|
||||
events:
|
||||
- event: phpsw
|
||||
date: '2016-11-09'
|
||||
---
|
||||
Building a Drupal application? You no longer need to download archives to add new modules or update core, or deal with Drupal specific tools to manage your codebase.
|
||||
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
---
|
||||
talk_id: 1
|
||||
title: So, what is this Drupal thing?
|
||||
video:
|
||||
url: https://vimeo.com/49827006
|
||||
embed: <iframe src="https://player.vimeo.com/video/49827006" width="640" height="360" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
|
||||
tags: [meetup, drupal, unified-diff]
|
||||
events:
|
||||
- event: unifieddiff
|
||||
date: '2012-09-05'
|
||||
---
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 17
|
||||
title: TDD - Test Driven Drupal
|
||||
slides:
|
||||
url: 'https://speakerdeck.com/opdavies/tdd-test-driven-drupal'
|
||||
|
@ -19,6 +18,13 @@ meta:
|
|||
height: 1440
|
||||
type: image/png
|
||||
use: [talks]
|
||||
events:
|
||||
- event: drupalcamp-london-17
|
||||
date: '2017-03-04'
|
||||
time: '16:15 - 17:00'
|
||||
- event: drupalcamp-dublin-17
|
||||
date: '2017-10-21'
|
||||
time: '12:00 - 12:40'
|
||||
---
|
||||
Testing is important. Why? It allows developers to add new features and edit and refactor existing code without the worry of adding regressions, reduces the reliance on manual testing to discover bugs, and by taking a test driven approach, your implementation code is leaner as you only write what is needed for your tests to pass.
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
---
|
||||
talk_id: 6
|
||||
title: Test Drive Twig with Sculpin
|
||||
slides:
|
||||
url: https://speakerdeck.com/opdavies/test-drive-twig-with-sculpin
|
||||
|
@ -7,6 +6,9 @@ slides:
|
|||
code: https://github.com/opdavies/sculpin-demo
|
||||
tags: [conference, drupalcamp, drupalcamp-north, sculpin, twig]
|
||||
tweets: yes
|
||||
events:
|
||||
- event: drupalcamp-north-15
|
||||
date: '2015-07-25'
|
||||
---
|
||||
[Sculpin][1] is a static site generator written in PHP, and based on [Symfony components][2]. It uses [YAML][3] and [Twig][4], which makes it very appealing to Drupal people wanting to learn these in preparation for Drupal 8.
|
||||
|
||||
|
|
24
source/talks.html.twig
Normal file
24
source/talks.html.twig
Normal file
|
@ -0,0 +1,24 @@
|
|||
---
|
||||
layout: page
|
||||
title: Talks
|
||||
meta:
|
||||
description: 'Information about previous and upcoming talks that Oliver has presented at conferences and user groups'
|
||||
use: [talks]
|
||||
---
|
||||
{% block content %}
|
||||
<p>I regularly speak at conferences and user groups about a range of subjects including Drupal, Sculpin and Git. If you would like to me to speak at your group or conference, please <a href="{{ site.url }}/contact">get in touch</a>.</p>
|
||||
|
||||
{% set talks = [] %}
|
||||
{% for talk in data.talks %}
|
||||
{% for event in talk.events %}
|
||||
{% set talks = talks|merge([{
|
||||
event: event|merge(site.events[event.event]),
|
||||
talk: talk,
|
||||
}]) %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
|
||||
{% include "talks-table" %}
|
||||
|
||||
<p>Upcoming talks can be found in the <a href="{{ site.url }}/talks/archive">talks archive</a>.</p>
|
||||
{% endblock %}
|
|
@ -1,48 +0,0 @@
|
|||
---
|
||||
layout: default
|
||||
title: Talks
|
||||
meta:
|
||||
description: 'Information about previous and upcoming talks that Oliver has presented at conferences and user groups'
|
||||
use: [talks, posts]
|
||||
---
|
||||
{% block content %}
|
||||
# Talks
|
||||
|
||||
I regularly speak at conferences and user groups about a range of subjects including Drupal, Sculpin and Git. If you would like to me to speak at your group or conference, please [get in touch][0].
|
||||
|
||||
There is also information about events that I’ve attended and spoken at on my [Lanyrd][1] and [Joind.in][2] profiles.
|
||||
|
||||
{% set upcoming_events = [] %}
|
||||
{% set past_events = [] %}
|
||||
|
||||
{% for date in site.events.dates %}
|
||||
{% if date.date >= 'today'|date('Y-m-d') %}
|
||||
{% set upcoming_events = upcoming_events|merge([{
|
||||
date: date,
|
||||
event: site.events.events[date.event]
|
||||
}]) %}
|
||||
{% else %}
|
||||
{% set past_events = past_events|merge([{
|
||||
date: date,
|
||||
event: site.events.events[date.event]
|
||||
}]) %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
{% if upcoming_events is not empty %}
|
||||
## Upcoming Talks
|
||||
|
||||
{% include 'talks-table' with { events: upcoming_events, upcoming: true } %}
|
||||
{% endif %}
|
||||
|
||||
## Last 5 Talks
|
||||
|
||||
{% include 'talks-table' with { events: past_events|reverse|slice(0,5) } %}
|
||||
|
||||
You can view more talks in the [talks archive][3].
|
||||
{% endblock %}
|
||||
|
||||
[0]: {{site.url}}/contact
|
||||
[1]: {{site.lanyrd.url}}
|
||||
[2]: {{site.joindin.url}}
|
||||
[3]: {{site.url}}/talks/archive
|
20
source/talks/archive.html.twig
Normal file
20
source/talks/archive.html.twig
Normal file
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
layout: page
|
||||
title: Talk Archive
|
||||
use: [talks]
|
||||
---
|
||||
<p>Here are a list of my previous conference and user group talks:</p>
|
||||
|
||||
{% set talks = [] %}
|
||||
{% for talk in data.talks %}
|
||||
{% for event in talk.events %}
|
||||
{% set talks = talks|merge([{
|
||||
event: event|merge(site.events[event.event]),
|
||||
talk: talk,
|
||||
}]) %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
|
||||
{% include 'talks-table' %}
|
||||
|
||||
<p>Upcoming talks can be found on the <a href="{{ site.url }}/talks">talks page]</a>.</p>
|
|
@ -1,24 +0,0 @@
|
|||
---
|
||||
layout: page
|
||||
title: Talk Archive
|
||||
use: [talks]
|
||||
---
|
||||
Here are a list of my previous conference and user group talks:
|
||||
|
||||
{% set events = [] %}
|
||||
|
||||
{% for date in site.events.dates|reverse %}
|
||||
{% if date.date >= 'today'|date('Y-m-d') %}
|
||||
{% else %}
|
||||
{% set events = events|merge([{
|
||||
date: date,
|
||||
event: site.events.events[date.event],
|
||||
}]) %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
||||
{% include 'talks-table' %}
|
||||
|
||||
Upcoming talks can be found on the [talks page][0].
|
||||
|
||||
[0]: {{site.url}}/talks
|
Loading…
Reference in a new issue