Merge branch 'source' into add-dublin-talks

This commit is contained in:
Oliver Davies 2017-09-06 08:48:21 +01:00
commit bb9c2cf1bd
24 changed files with 86 additions and 99 deletions

View file

@ -6,5 +6,5 @@ sculpin_content_types:
permalink: projects/:slug_title/ permalink: projects/:slug_title/
taxonomies: [skills, tags] taxonomies: [skills, tags]
talks: talks:
permalink: talks/:slug_title/ permalink: talks/:basename/
taxonomies: [tags] taxonomies: [tags]

View file

@ -88,123 +88,121 @@ events:
dates: dates:
- event: unifieddiff - event: unifieddiff
date: '2012-09-05' date: '2012-09-05'
talk: what-is-this-drupal-thing talk_id: 1
- event: swdug - event: swdug
date: '2013-07-10' date: '2013-07-10'
talk: talk_title: Drupal and the LDAP Module
title: Drupal and the LDAP Module
type: Talk
- event: drupalcamp-london-14 - event: drupalcamp-london-14
date: '2014-03-01' date: '2014-03-01'
talk: git-flow talk: git-flow
talk_id: 2
- event: drupal-bristol - event: drupal-bristol
date: '2014-08-19' date: '2014-08-19'
talk: drush-make-drupalbristol talk: drush-make-drupalbristol
talk_id: 3
- event: swdug - event: swdug
date: '2014-08-19' date: '2014-08-19'
talk: talk_title: About the Drupal Association
title: About the Drupal Association # type: Talk
type: Talk
- event: drupalcamp-brighton-15 - event: drupalcamp-brighton-15
date: '2015-01-18' date: '2015-01-18'
talk: drupalorg-2015 talk_id: 4
- event: drupalcamp-london-15 - event: drupalcamp-london-15
date: '2015-02-28' date: '2015-02-28'
talk: drupalorg-2015 talk_id: 4
- event: phpsw - event: phpsw
date: '2015-04-08' date: '2015-04-08'
talk: drupal-8 talk_id: 5
- event: drupalcamp-north-15 - event: drupalcamp-north-15
date: '2015-07-25' date: '2015-07-25'
talk: test-drive-twig-with-sculpin talk_id: 6
- event: umbristol - event: umbristol
date: '2015-08-25' date: '2015-08-25'
talk: dancing-for-drupal talk_id: 7
- event: phpsw - event: phpsw
date: '2015-10-14' date: '2015-10-14'
talk: sculpin talk_id: 8
feedback: https://joind.in/talk/view/15486 feedback: https://joind.in/talk/view/15486
- event: drupalcamp-london-16 - event: drupalcamp-london-16
date: '2016-03-05' date: '2016-03-05'
talk: drupal-8-module-development talk_id: 9
- event: nwdug - event: nwdug
date: '2016-03-08' date: '2016-03-08'
talk: drupal-vm-generator talk_id: 10
- event: drupal-bristol - event: drupal-bristol
date: '2016-04-02' date: '2016-04-02'
talk: drupal-vm-generator talk_id: 10
- event: phpsc16 - event: phpsc16
date: '2016-06-11' date: '2016-06-11'
talk: drupal-8-rejoining-the-herd talk_id: 11
feedback: https://joind.in/talk/41d0f feedback: https://joind.in/talk/41d0f
- event: drupalcamp-bristol-16 - event: drupalcamp-bristol-16
date: '2016-07-23' date: '2016-07-23'
talk: drupal-vm-meet-symfony-console talk_id: 12
- event: phpsw - event: phpsw
date: '2016-11-09' date: '2016-11-09'
talk: drupal-development-with-composer talk_id: 13
- event: drupal-bristol - event: drupal-bristol
date: '2016-11-17' date: '2016-11-17'
talk: goodbye-drush-make-hello-composer talk_id: 14
- event: drupal-bristol - event: drupal-bristol
date: '2017-01-18' date: '2017-01-18'
talk: getting-your-data-into-drupal-8 talk_id: 15
- event: phpsw - event: phpsw
date: '2017-02-08' date: '2017-02-08'
talk: it-all-started-with-a-patch talk_id: 16
feedback: https://joind.in/event/phpsw-new-skills-february-17/it-started-with-a-patch feedback: https://joind.in/event/phpsw-new-skills-february-17/it-started-with-a-patch
- event: drupalcamp-london-17 - event: drupalcamp-london-17
date: '2017-03-04' date: '2017-03-04'
time: '16:15 - 17:00' time: '16:15 - 17:00'
talk: test-driven-drupal-simpletest-phpunit talk_id: 17
- event: drupalcamp-london-17 - event: drupalcamp-london-17
date: '2017-03-04' date: '2017-03-04'
time: '12:05 - 12:50' time: '12:05 - 12:50'
talk: getting-your-data-into-drupal-8 talk_id: 15
- event: nomad-php - event: nomad-php
date: '2017-04-20' date: '2017-04-20'
time: '19:00 (CET)' time: '19:00 (CET)'
talk:
id: deploying-php-with-fabric
type: Lightning talk type: Lightning talk
talk_id: 18
- event: phpsw - event: phpsw
date: '2017-09-13' date: '2017-09-13'
time: ~ time: ~
talk: deploying-php-with-fabric
feedback: https://joind.in/talk/a5ff3 feedback: https://joind.in/talk/a5ff3
talk_id: 18
- event: phpnw17 - event: phpnw17
date: '2017-10-01' date: '2017-10-01'
time: '09:00 - 09:45' time: '09:00 - 09:45'
talk: deploying-php-with-fabric talk_id: 18
- event: drupalcamp-dublin-17 - event: drupalcamp-dublin-17
date: '2017-10-20' date: '2017-10-20'
talk: deploying-drupal-fabric talk_id: 19
- event: drupalcamp-dublin-17 - event: drupalcamp-dublin-17
date: '2017-10-20' date: '2017-10-20'
talk: test-driven-drupal-simpletest-phpunit talk_id: 17

View file

@ -2,19 +2,15 @@
<h2>Events</h2> <h2>Events</h2>
{% set events = [] %} {% set events = [] %}
{% for date in site.events.dates %} {% for date in site.events.dates if date.talk_id == page.talk_id %}
{% set key = (date.talk.id is defined) ? date.talk.id : date.talk %}
{% set talk = (page.id is defined) ? page.id : page.url|split('/')|last %}
{% if key == talk %}
{% set events = events|merge([{ {% set events = events|merge([{
date: date, date: date,
event: site.events.events[date.event], event: site.events.events[date.event],
}]) %} }]) %}
{% endif %}
{% endfor %} {% endfor %}
{% include 'talks-table' with { {% include 'talks-table' with {
events: events, events: events,
talk_page: true, talk_page: true
} %} } %}
</div> </div>

View file

@ -1,7 +1,7 @@
<div class="w-100 overflow-x-auto overflow-y-hidden"> <div class="w-100 overflow-x-auto overflow-y-hidden">
<table class="w-100 ba b--moon-gray"> <table class="w-100 ba b--moon-gray">
<thead> <thead>
<tr class="striped--light-gray"> <tr class="striped--near-white">
<th class="w-20-l pa2 tl">Date</th> <th class="w-20-l pa2 tl">Date</th>
{% if not talk_page %} {% if not talk_page %}
@ -17,47 +17,49 @@
</thead> </thead>
<tbody> <tbody>
{% for row in events %} {% for row in events %}
{% set talk = false %}
{% set key = row.date.talk.id ?: row.date.talk %}
{% for item in row.talks if key == item.filename|split('.')|first %}
{% set talk = item %}
{% endfor %}
<tr class="striped--near-white"> <tr class="striped--near-white">
<td class="pa2"> <td class="pa2">
{{ row.date.date|date(row.date.fuzzy_date ? 'F Y' : 'j F Y') }} {{ row.date.date|date(row.date.fuzzy_date ? 'F Y' : 'j F Y') }}
{% if row.date.time %} {% if row.date.time is defined %}
<small class="db">{{ row.date.time }}</small> <small class="db black-50">
{{ row.date.time }}
</small>
{% endif %} {% endif %}
</td> </td>
{% if not talk_page %} {% if not talk_page %}
<td class="pa2"> <td class="pa2">
{% if row.date.talk.title is defined %} {% if row.date.talk_title is not defined %}
{{ row.date.talk.title }} {% for talk in data.talks if talk.talk_id == row.date.talk_id %}
<a href="{{ talk.url }}">
{{ talk.title }}
</a>
{% endfor %}
{% else %} {% else %}
<a href="{{ talk.url }}" class="blue">{{ talk.title }}</a> {{ row.date.talk_title }}
{% endif %} {% endif %}
<small class="db"> <small class="db black-50">
{{ row.date.talk.type ?: talk.type }} {{ row.date.type|default('Talk') }}
</small> </small>
</td> </td>
{% endif %} {% endif %}
<td class="pa2"> <td class="pa2">
{% if row.event.website %} {% if row.event.website is defined %}
<a href="{{ row.event.website }}" class="blue"> <a href="{{ row.event.website }}">
{{ row.event.name }} {{ row.event.name }}
</a> </a>
{% else %} {% else %}
{{ row.event.name }} {{ row.event.name }}
{% endif %} {% endif %}
<small class="db"> {% if row.event.location is defined %}
<small class="db black-50">
{{ row.event.location }} {{ row.event.location }}
</small> </small>
{% endif %}
</td> </td>
{% if not upcoming %} {% if not upcoming %}

View file

@ -1,5 +1,5 @@
--- ---
id: sculpin talk_id: 8
title: Building Static Websites with Sculpin title: Building Static Websites with Sculpin
type: Lightning talk type: Lightning talk
slides: slides:
@ -13,6 +13,7 @@ video:
url: https://www.youtube.com/watch?v=aN53arCKZAU url: https://www.youtube.com/watch?v=aN53arCKZAU
redirect: redirect:
- talks/2015/10/14/sculpin-phpsw/ - talks/2015/10/14/sculpin-phpsw/
- talks/building-static-websites-with-sculpin/
--- ---
[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. [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.

View file

@ -1,7 +1,6 @@
--- ---
id: dancing-for-drupal talk_id: 7
title: Dancing for Drupal title: Dancing for Drupal
type: Talk
slides: slides:
url: https://speakerdeck.com/opdavies/umbristol-dancing-for-drupal 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> embed: <script async class="speakerdeck-embed" data-id="ffa9b6dea6dc4a8eb207b9982ed6e1bd" data-ratio="1.33333333333333" src="//speakerdeck.com/assets/embed.js"></script>

View file

@ -1,7 +1,6 @@
--- ---
id: deploying-php-with-fabric talk_id: 18
title: Deploying PHP Applications (and anything else) with Fabric title: Deploying PHP Applications (and anything else) with Fabric
type: Talk
slides: slides:
url: https://speakerdeck.com/opdavies/deploying-php-applications-with-fabric url: https://speakerdeck.com/opdavies/deploying-php-applications-with-fabric
embed: '<script async class="speakerdeck-embed" data-id="c147618ce07546ca92f92983c52d6a41" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>' embed: '<script async class="speakerdeck-embed" data-id="c147618ce07546ca92f92983c52d6a41" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>'
@ -19,7 +18,6 @@ meta:
width: 1280 width: 1280
height: 800 height: 800
type: image/png type: image/png
slug: deploying-php-fabric
redirect: redirect:
- talks/deploying-php-applications-with-fabric/ - talks/deploying-php-applications-with-fabric/
--- ---

View file

@ -1,7 +1,6 @@
--- ---
id: drupal-8-module-development talk_id: 9
title: Getting Started with Drupal 8 Module Development title: Getting Started with Drupal 8 Module Development
type: Talk
tags: [conference, php, drupal, drupalcamp, drupal-8] tags: [conference, php, drupal, drupalcamp, drupal-8]
tweets: yes tweets: yes
code: https://github.com/opdavies/dclondon16-d8-module code: https://github.com/opdavies/dclondon16-d8-module
@ -21,6 +20,7 @@ meta:
width: 960 width: 960
redirect: redirect:
- talks/2016/03/05/drupal-8-module-development-drupalcamp-london-2016/ - talks/2016/03/05/drupal-8-module-development-drupalcamp-london-2016/
- talks/getting-started-with-drupal-8-module-development/
--- ---
New to object-orientated PHP, Symfony or YAML, and want to get started building modules in Drupal 8? This is the session for you! New to object-orientated PHP, Symfony or YAML, and want to get started building modules in Drupal 8? This is the session for you!

View file

@ -1,7 +1,6 @@
--- ---
id: drupal-8-rejoining-the-herd talk_id: 11
title: Drupal 8: Rejoining the Herd title: Drupal 8: Rejoining the Herd
type: Talk
tags: [conference, php, drupal, drupal-8] tags: [conference, php, drupal, drupal-8]
slides: slides:
url: https://speakerdeck.com/opdavies/drupal-rejoining-the-herd url: https://speakerdeck.com/opdavies/drupal-rejoining-the-herd

View file

@ -1,5 +1,5 @@
--- ---
id: drupal-8 talk_id: 5
title: Drupal 8 title: Drupal 8
type: Lightning talk type: Lightning talk
slides: slides:

View file

@ -1,5 +1,5 @@
--- ---
id: drupal-vm-generator talk_id: 10
title: Drupal VM Generator title: Drupal VM Generator
type: Lightning talk type: Lightning talk
code: https://github.com/opdavies/drupal-vm-generator code: https://github.com/opdavies/drupal-vm-generator

View file

@ -1,7 +1,6 @@
--- ---
id: drupal-vm-meet-symfony-console talk_id: 12
title: Drupal VM, Meet Symfony Console title: Drupal VM, Meet Symfony Console
type: Talk
tags: [conference, php, drupal-vm, symfony] tags: [conference, php, drupal-vm, symfony]
slides: slides:
url: https://speakerdeck.com/opdavies/drupal-vm-meet-symfony-console url: https://speakerdeck.com/opdavies/drupal-vm-meet-symfony-console

View file

@ -1,7 +1,6 @@
--- ---
id: drupalorg-2015 talk_id: 4
title: Drupal.org in 2015: What's Coming Next title: Drupal.org in 2015: What's Coming Next
type: Talk
tags: [conference, drupalcamp, drupalcamp-london, drupal-association] tags: [conference, drupalcamp, drupalcamp-london, drupal-association]
slides: slides:
url: https://speakerdeck.com/opdavies/drupal-dot-org-in-15 url: https://speakerdeck.com/opdavies/drupal-dot-org-in-15
@ -11,4 +10,5 @@ redirect:
- talks/2015/02/28/drupalorg-2015-drupalcamp-london-2015/ - talks/2015/02/28/drupalorg-2015-drupalcamp-london-2015/
- talks/drupalorg-2015-2/ - talks/drupalorg-2015-2/
- talks/drupalorg-2015/ - talks/drupalorg-2015/
- talks/drupalorg-in-2015-whats-coming-next/
--- ---

View file

@ -1,7 +1,6 @@
--- ---
id: drush-make-drupalbristol talk_id: 3
title: drush make drupalbristol title: drush make drupalbristol
type: Talk
slides: slides:
url: https://speakerdeck.com/opdavies/drush-make-drupalbristol 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> embed: <script async class="speakerdeck-embed" data-id="42605700f102013198de5a5f6f23ab67" data-ratio="1.29456384323641" src="//speakerdeck.com/assets/embed.js"></script>

View file

@ -1,7 +1,6 @@
--- ---
id: getting-your-data-into-drupal-8 talk_id: 15
title: Getting (Your Data) Into Drupal 8 title: Getting (Your Data) Into Drupal 8
type: Talk
slides: slides:
url: https://speakerdeck.com/opdavies/getting-your-data-into-drupal-8-drupal-bristol url: https://speakerdeck.com/opdavies/getting-your-data-into-drupal-8-drupal-bristol
embed: '<script async class="speakerdeck-embed" data-id="63e5dfce996e46699e304d50e896477b" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>' embed: '<script async class="speakerdeck-embed" data-id="63e5dfce996e46699e304d50e896477b" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>'
@ -22,6 +21,7 @@ meta:
redirect: redirect:
- talks/2017/01/18/getting-your-data-into-drupal-8-drupal-bristol/ - talks/2017/01/18/getting-your-data-into-drupal-8-drupal-bristol/
- talks/2017/03/04/getting-your-data-into-drupal-8-drupalcamp-london-2017/ - talks/2017/03/04/getting-your-data-into-drupal-8-drupalcamp-london-2017/
use: [talks]
--- ---
If youve moved a site from Drupal 6 to 7, the chances are that youve 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. If youve moved a site from Drupal 6 to 7, the chances are that youve 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.

View file

@ -1,7 +1,6 @@
--- ---
id: git-flow talk_id: 2
title: Never Commit to Master - An Introduction to Git Flow title: Never Commit to Master - An Introduction to Git Flow
type: Talk
slides: slides:
url: https://speakerdeck.com/opdavies/never-commit-to-master-an-introduction-to-git-flow url: https://speakerdeck.com/opdavies/never-commit-to-master-an-introduction-to-git-flow
embed: <script async class="speakerdeck-embed" data-id="201559e0f103013198dd5a5f6f23ab67" data-ratio="1.29456384323641" src="//speakerdeck.com/assets/embed.js"></script> embed: <script async class="speakerdeck-embed" data-id="201559e0f103013198dd5a5f6f23ab67" data-ratio="1.29456384323641" src="//speakerdeck.com/assets/embed.js"></script>

View file

@ -1,7 +1,6 @@
--- ---
id: goodbye-drush-make-hello-composer talk_id: 14
title: Goodbye Drush Make. Hello Composer! title: Goodbye Drush Make. Hello Composer!
type: Talk
tags: ['meetup', 'drupal', 'composer'] tags: ['meetup', 'drupal', 'composer']
slides: slides:
url: http://bit.ly/slides-goodbye-drush-make-hello-composer2 url: http://bit.ly/slides-goodbye-drush-make-hello-composer2

View file

@ -1,5 +1,5 @@
--- ---
id: it-all-started-with-a-patch talk_id: 16
title: It All Started With A Patch title: It All Started With A Patch
type: Lightning talk type: Lightning talk
tags: [meetup, phpsw, open-source] tags: [meetup, phpsw, open-source]

View file

@ -1,5 +1,5 @@
--- ---
id: drupal-development-with-composer talk_id: 13
title: Modern Drupal Development with Composer title: Modern Drupal Development with Composer
type: Lightning talk type: Lightning talk
tags: ['meetups', 'phpsw', 'drupal', 'composer'] tags: ['meetups', 'phpsw', 'drupal', 'composer']

View file

@ -1,7 +1,6 @@
--- ---
id: what-is-this-drupal-thing talk_id: 1
title: So, what is this Drupal thing? title: So, what is this Drupal thing?
type: Talk
video: video:
url: https://vimeo.com/49827006 url: https://vimeo.com/49827006
embed: <iframe src="https://player.vimeo.com/video/49827006" width="640" height="360" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe> embed: <iframe src="https://player.vimeo.com/video/49827006" width="640" height="360" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

View file

@ -1,6 +1,6 @@
--- ---
talk_id: 17
title: TDD - Test Driven Drupal title: TDD - Test Driven Drupal
type: Talk
slides: slides:
url: https://speakerdeck.com/opdavies/test-driven-drupal-development-with-simpletest-and-phpunit-drupalcamp-london-17 url: https://speakerdeck.com/opdavies/test-driven-drupal-development-with-simpletest-and-phpunit-drupalcamp-london-17
embed: '<script async class="speakerdeck-embed" data-id="4f12722ed400468b93ebb32a23b3c757" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>' embed: '<script async class="speakerdeck-embed" data-id="4f12722ed400468b93ebb32a23b3c757" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>'
@ -10,7 +10,7 @@ video:
tags: [drupalcamp, simpletest, phpunit, testing] tags: [drupalcamp, simpletest, phpunit, testing]
meta: meta:
og: og:
title: Test Driven Drupal Development with SimpleTest and PHPUnit title: TDD - Test Driven Drupal
description: "How to write tests and follow TDD for Drupal applications." description: "How to write tests and follow TDD for Drupal applications."
type: website type: website
image: image:
@ -18,6 +18,9 @@ meta:
width: 2560 width: 2560
height: 1440 height: 1440
type: image/png type: image/png
redirect:
- /talks/test-driven-drupal-development-with-simpletest-and-phpunit/
use: [talks]
--- ---
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. 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.

View file

@ -1,7 +1,6 @@
--- ---
id: test-drive-twig-with-sculpin talk_id: 6
title: Test Drive Twig with Sculpin title: Test Drive Twig with Sculpin
type: Talk
slides: slides:
url: https://speakerdeck.com/opdavies/test-drive-twig-with-sculpin url: https://speakerdeck.com/opdavies/test-drive-twig-with-sculpin
embed: <script async class="speakerdeck-embed" data-id="54589d2e50a3476a9a75aed809e9edf1" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script> embed: <script async class="speakerdeck-embed" data-id="54589d2e50a3476a9a75aed809e9edf1" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>

View file

@ -21,14 +21,12 @@ There is also information about events that Ive attended and spoken at on my
{% if date.date >= 'today'|date('Y-m-d') %} {% if date.date >= 'today'|date('Y-m-d') %}
{% set upcoming_events = upcoming_events|merge([{ {% set upcoming_events = upcoming_events|merge([{
date: date, date: date,
event: site.events.events[date.event], event: site.events.events[date.event]
talks: data.talks,
}]) %} }]) %}
{% else %} {% else %}
{% set past_events = past_events|merge([{ {% set past_events = past_events|merge([{
date: date, date: date,
event: site.events.events[date.event], event: site.events.events[date.event]
talks: data.talks,
}]) %} }]) %}
{% endif %} {% endif %}
{% endfor %} {% endfor %}

View file

@ -13,12 +13,11 @@ Here are a list of my previous conference and user group talks:
{% set events = events|merge([{ {% set events = events|merge([{
date: date, date: date,
event: site.events.events[date.event], event: site.events.events[date.event],
talks: data.talks,
}]) %} }]) %}
{% endif %} {% endif %}
{% endfor %} {% endfor %}
{% include 'talks-table' with { events: events } %} {% include 'talks-table' %}
Upcoming talks can be found on the [talks page][0]. Upcoming talks can be found on the [talks page][0].