aboutsummaryrefslogtreecommitdiff
path: root/website
diff options
context:
space:
mode:
Diffstat (limited to 'website')
-rw-r--r--website/extra/htaccess4
-rw-r--r--website/resources/js/main.js16
-rw-r--r--website/templates/presentations/7lessons.html25
3 files changed, 45 insertions, 0 deletions
diff --git a/website/extra/htaccess b/website/extra/htaccess
index e7b54de4..d2c7a292 100644
--- a/website/extra/htaccess
+++ b/website/extra/htaccess
@@ -67,3 +67,7 @@ RewriteRule ^features/experimental/index(\.html)?/?$ /features/experimental/all
RewriteRule ^features/experimental/${pg?no_esc}$ /features/experimental/${pg?no_esc}.html [L,END]
RewriteRule ^features/experimental/${pg?no_esc}(\.html)?/?$ /features/experimental/${pg?no_esc} [NC,R=301]
</#list>
+
+RewriteRule ^presentations/7lessons$ /presentations/7lessons.html [L,END]
+RewriteRule ^presentations/7lessons(\.html)?/?$ /presentations/7lessons [NC,R=301]
+RewriteRule ^presentations/7mistakes(\.html)?/?$ /presentations/7lessons [NC,R=301]
diff --git a/website/resources/js/main.js b/website/resources/js/main.js
index 5608a3c3..eaaf2df5 100644
--- a/website/resources/js/main.js
+++ b/website/resources/js/main.js
@@ -94,7 +94,23 @@
});
}
+ function seekVideo() {
+ var t = window.location.hash;
+ if (!t) return;
+ var s = /^#?(?:(\d\d?):)?(\d\d?):(\d\d?)$/.exec(t);
+ if (!s) return;
+ var videoj = $("#presentationVideo");
+ if (!videoj || videoj.length == 0) return;
+ var video = videoj[0];
+ var h = parseInt(s[1]);
+ if (!h) h = 0;
+ var m = parseInt(s[2]);
+ var s = parseInt(s[3]);
+ video.currentTime = (((h * 60) + m) * 60) + s;
+ }
+
$(ajaxFeaturePages);
$(clickToTap);
$(clickForVideo);
+ $(seekVideo);
})($);
diff --git a/website/templates/presentations/7lessons.html b/website/templates/presentations/7lessons.html
new file mode 100644
index 00000000..3027fbad
--- /dev/null
+++ b/website/templates/presentations/7lessons.html
@@ -0,0 +1,25 @@
+<#import "../_scaffold.html" as main>
+<@main.scaffold>
+ <div class="page-header top5">
+ <div class="row text-center">
+ <@main.h1 title="The 7 biggest mistakes we made in Project Lombok" />
+ <p>
+ A presentation by Lombok's 2 core authors: Roel Spilker and Reinier Zwitserloot.<br />
+ We talk about the 7 biggest mistakes we made managing an open source project for the past 10 years.<br />
+ First given at <a href="https://programm.javaland.eu/2019/#/scheduledEvent/579921">Javaland (in Brühl, Germany) on March 19th, 2019</a>. Total length: 40 minutes.
+ </p>
+ </div>
+ <div class="video text-center">
+ <video id="presentationVideo" width="640" height="360" poster="/presentations/7lessons-poster.jpg" controls="controls" preload="none">
+ <source src="https://projectlombok.org/presentations/7lessons-vp9.webm" type="video/webm" />
+ <source src="https://projectlombok.org/presentations/7lessons.webm" type="video/webm" />
+ <source src="https://projectlombok.org/presentations/7lessons.mp4" type="video/mp4" />
+ <@main.h1 title="Can't watch the video?" />
+ <p>
+ You can download it and watch it with, for example, <a href="https://www.videolan.org/vlc/index.html">The open source VLC media player</a>:<br />
+ <a href="/videos/7lessons.mp4">Download: 7 biggest mistakes we made in Project Lombok</a>
+ </p>
+ </video>
+ </div>
+ </div>
+</@main.scaffold>