Compare commits
5 Commits
8edfb17fe8
...
b43909cbcc
| Author | SHA1 | Date | |
|---|---|---|---|
| b43909cbcc | |||
| 332541cdfa | |||
| 762075e274 | |||
| 2c95caf2b0 | |||
| 9f42425556 |
@ -1,3 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: Plamo
|
||||||
|
logosub: Plamoa
|
||||||
|
language: "en"
|
||||||
|
---
|
||||||
|
|
||||||
<p>The word "Plamo" is a portmonteau of the words "plastic" and "modelling". It involves building and painting models and figures from historic, science-fiction and fantasy themes.</p>
|
<p>The word "Plamo" is a portmonteau of the words "plastic" and "modelling". It involves building and painting models and figures from historic, science-fiction and fantasy themes.</p>
|
||||||
<p>Here you can find my collection and notes on this hobby.</p>
|
<p>Here you can find my collection and notes on this hobby.</p>
|
||||||
|
|
||||||
1
portfolio/images/.gitignore
vendored
Normal file
1
portfolio/images/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
plamo/*
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 7.4 KiB |
9
portfolio/jp/plamo.html
Normal file
9
portfolio/jp/plamo.html
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
title: プラモ
|
||||||
|
logosub: プラモ
|
||||||
|
language: "jp"
|
||||||
|
---
|
||||||
|
|
||||||
|
<p>JAPANESE</p>
|
||||||
|
|
||||||
|
$partial("templates/model-kits.html")$
|
||||||
10
portfolio/nl/plamo.html
Normal file
10
portfolio/nl/plamo.html
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
title: Plamo
|
||||||
|
logosub: Plamo
|
||||||
|
language: "nl"
|
||||||
|
---
|
||||||
|
|
||||||
|
<p>"Plamo" is een porte-manteauwoord van de woorden "plastic" en "modelleren". Het is een hobby waarbij plastic modellen gebouwd en geschilderd worden. Het kunnen historische modellen zijn, maar ook science-fiction of fantasie modellen.</p>
|
||||||
|
<p>Hier kun je mijn collectie en notities vinden van deze hobby.</p>
|
||||||
|
|
||||||
|
$partial("templates/model-kits.html")$
|
||||||
@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
logosub: "Plamo"
|
||||||
|
language: "en"
|
||||||
|
title: "Avia Ba-33"
|
||||||
|
page: "model-kits/airplanes/military/avia-ba-33"
|
||||||
|
model_name: "Avia Ba-33"
|
||||||
|
date: "1990-01-01"
|
||||||
|
status: "Still in box"
|
||||||
|
price: "€11,95"
|
||||||
|
series: ""
|
||||||
|
scale: "1/72"
|
||||||
|
number: "AZCZ05"
|
||||||
|
release: "2009"
|
||||||
|
manufacturer: "AZmodel"
|
||||||
|
purchase_date: "2025-12-21"
|
||||||
|
purchase_store: "Aviation Megastore"
|
||||||
|
purchase_venue: "Internet"
|
||||||
|
purchase_location: ""
|
||||||
|
---
|
||||||
|
|
||||||
|
The Avia Ba-33.
|
||||||
@ -30,34 +30,60 @@ main = hakyll $ do
|
|||||||
|
|
||||||
match "posts/*" $ do
|
match "posts/*" $ do
|
||||||
route $ setExtension "html"
|
route $ setExtension "html"
|
||||||
compile $ pandocCompiler
|
compile $ do
|
||||||
>>= loadAndApplyTemplate "templates/post.html" postCtx
|
identifier <- getUnderlying
|
||||||
>>= loadAndApplyTemplate "templates/default.html" postCtx
|
metadata <- getMetadata identifier
|
||||||
|
let language = lookupString "language" metadata
|
||||||
|
|
||||||
|
pandocCompiler
|
||||||
|
>>= loadAndApplyTemplate "templates/post.html" (postCtx language)
|
||||||
|
>>= loadAndApplyTemplate "templates/default.html" (postCtx language)
|
||||||
>>= relativizeUrls
|
>>= relativizeUrls
|
||||||
|
|
||||||
match "events/*" $ do
|
match "events/*" $ do
|
||||||
route $ setExtension "html"
|
route $ setExtension "html"
|
||||||
compile $ pandocCompiler
|
compile $ do
|
||||||
>>= loadAndApplyTemplate "templates/event.html" postCtx
|
identifier <- getUnderlying
|
||||||
>>= loadAndApplyTemplate "templates/default.html" postCtx
|
metadata <- getMetadata identifier
|
||||||
|
let language = lookupString "language" metadata
|
||||||
|
|
||||||
|
pandocCompiler
|
||||||
|
>>= loadAndApplyTemplate "templates/event.html" (postCtx language)
|
||||||
|
>>= loadAndApplyTemplate "templates/default.html" (postCtx language)
|
||||||
>>= relativizeUrls
|
>>= relativizeUrls
|
||||||
|
|
||||||
match "pages/en/plamo/**" $ do
|
match "pages/en/plamo/**" $ do
|
||||||
route $ setExtension "html"
|
route $ setExtension "html"
|
||||||
compile $ pandocCompiler
|
compile $ do
|
||||||
>>= loadAndApplyTemplate "templates/post.html" postCtx
|
identifier <- getUnderlying
|
||||||
>>= loadAndApplyTemplate "templates/default.html" postCtx
|
metadata <- getMetadata identifier
|
||||||
|
let language = lookupString "language" metadata
|
||||||
|
|
||||||
|
let dateValue = lookupString "date" metadata
|
||||||
|
modelKitTemplate =
|
||||||
|
if dateValue == Just "1990-01-01"
|
||||||
|
then "templates/model-kit-not-ready.html"
|
||||||
|
else "templates/model-kit.html"
|
||||||
|
|
||||||
|
pandocCompiler
|
||||||
|
>>= loadAndApplyTemplate modelKitTemplate (postCtx language)
|
||||||
|
>>= loadAndApplyTemplate "templates/default.html" (postCtx language)
|
||||||
>>= relativizeUrls
|
>>= relativizeUrls
|
||||||
|
|
||||||
create ["archive.html"] $ do
|
create ["archive.html"] $ do
|
||||||
route idRoute
|
route idRoute
|
||||||
compile $ do
|
compile $ do
|
||||||
|
identifier <- getUnderlying
|
||||||
|
metadata <- getMetadata identifier
|
||||||
|
let language = lookupString "language" metadata
|
||||||
|
let lang = fromMaybe "en" language
|
||||||
|
|
||||||
posts <- recentFirst =<< loadAll "posts/*"
|
posts <- recentFirst =<< loadAll "posts/*"
|
||||||
let archiveCtx =
|
let archiveCtx =
|
||||||
listField "posts" postCtx (return posts) `mappend`
|
listField "posts" (postCtx language) (return posts) <>
|
||||||
constField "title" "Archives" `mappend`
|
constField "title" "Archives" <>
|
||||||
constField "language" "en" `mappend`
|
constField "language" lang <>
|
||||||
langDict "en" <>
|
langDict lang <>
|
||||||
defaultContext
|
defaultContext
|
||||||
|
|
||||||
makeItem ""
|
makeItem ""
|
||||||
@ -65,36 +91,51 @@ main = hakyll $ do
|
|||||||
>>= loadAndApplyTemplate "templates/default.html" archiveCtx
|
>>= loadAndApplyTemplate "templates/default.html" archiveCtx
|
||||||
>>= relativizeUrls
|
>>= relativizeUrls
|
||||||
|
|
||||||
create ["plamo.html"] $ do
|
match (fromList
|
||||||
|
[ "nl/plamo.html"
|
||||||
|
, "jp/plamo.html"
|
||||||
|
, "en/plamo.html"
|
||||||
|
]) $ do
|
||||||
route idRoute
|
route idRoute
|
||||||
compile $ do
|
compile $ do
|
||||||
|
ident <- getUnderlying
|
||||||
kits <- recentFirst =<< loadAll "pages/en/plamo/**"
|
kits <- recentFirst =<< loadAll "pages/en/plamo/**"
|
||||||
|
|
||||||
|
-- language <- getMetadataField' ident "language"
|
||||||
|
identifier <- getUnderlying
|
||||||
|
metadata <- getMetadata identifier
|
||||||
|
let language = lookupString "language" metadata
|
||||||
|
let lang = fromMaybe "en" language
|
||||||
|
|
||||||
let plamoCtx =
|
let plamoCtx =
|
||||||
listField "kits" postCtx (return kits) `mappend`
|
listField "kits" (postCtx language) (return kits) <>
|
||||||
constField "title" "Plamo" `mappend`
|
langDict lang <>
|
||||||
constField "logosub" "Plamo enthousiast" `mappend`
|
|
||||||
constField "language" "en" `mappend`
|
|
||||||
langDict "en" <>
|
|
||||||
defaultContext
|
defaultContext
|
||||||
|
|
||||||
makeItem ""
|
getResourceBody
|
||||||
>>= loadAndApplyTemplate "templates/plamo.html" plamoCtx
|
>>= applyAsTemplate plamoCtx
|
||||||
>>= loadAndApplyTemplate "templates/default.html" plamoCtx
|
>>= loadAndApplyTemplate "templates/default.html" plamoCtx
|
||||||
>>= relativizeUrls
|
>>= relativizeUrls
|
||||||
|
|
||||||
match (fromList
|
match (fromList
|
||||||
[ "index.html"
|
[ "index.html"
|
||||||
, "en/index.html"
|
|
||||||
, "nl/index.html"
|
, "nl/index.html"
|
||||||
, "jp/index.html"
|
, "jp/index.html"
|
||||||
|
, "en/index.html"
|
||||||
]) $ do
|
]) $ do
|
||||||
route idRoute
|
route idRoute
|
||||||
compile $ do
|
compile $ do
|
||||||
posts <- recentFirst =<< loadAll "posts/*"
|
posts <- recentFirst =<< loadAll "posts/*"
|
||||||
now <- unsafeCompiler getCurrentTime
|
now <- unsafeCompiler getCurrentTime
|
||||||
ident <- getUnderlying
|
ident <- getUnderlying
|
||||||
language <- getMetadataField' ident "language"
|
--language <- getMetadataField' ident "language"
|
||||||
|
|
||||||
|
identifier <- getUnderlying
|
||||||
|
metadata <- getMetadata identifier
|
||||||
|
let language = lookupString "language" metadata
|
||||||
|
let lang = fromMaybe "en" language
|
||||||
|
|
||||||
|
-- Seven days from today.
|
||||||
let cutoff = addUTCTime (7 * 24 * 60 * 60) now
|
let cutoff = addUTCTime (7 * 24 * 60 * 60) now
|
||||||
|
|
||||||
events <-
|
events <-
|
||||||
@ -104,9 +145,9 @@ main = hakyll $ do
|
|||||||
|
|
||||||
let indexCtx =
|
let indexCtx =
|
||||||
-- (<> is the modern version of `mappend`.)
|
-- (<> is the modern version of `mappend`.)
|
||||||
listField "posts" postCtx (return posts) <>
|
listField "posts" (postCtx language) (return posts) <>
|
||||||
listField "events" postCtx (return events) <>
|
listField "events" (postCtx language) (return events) <>
|
||||||
langDict language <>
|
langDict lang <>
|
||||||
defaultContext
|
defaultContext
|
||||||
|
|
||||||
getResourceBody
|
getResourceBody
|
||||||
@ -123,11 +164,13 @@ staticPageContext =
|
|||||||
langDict "en" <>
|
langDict "en" <>
|
||||||
defaultContext
|
defaultContext
|
||||||
|
|
||||||
postCtx :: Context String
|
postCtx :: Maybe String -> Context String
|
||||||
postCtx =
|
postCtx language =
|
||||||
dateField "date" "%e %B %Y" `mappend`
|
let lang = fromMaybe "en" language
|
||||||
constField "language" "en" `mappend`
|
in
|
||||||
langDict "en" <>
|
dateField "date" "%e %B %Y" <>
|
||||||
|
constField "language" lang <>
|
||||||
|
langDict lang <>
|
||||||
defaultContext
|
defaultContext
|
||||||
|
|
||||||
isUpcoming :: UTCTime -> Item a -> Compiler Bool
|
isUpcoming :: UTCTime -> Item a -> Compiler Bool
|
||||||
@ -142,30 +185,36 @@ isUpcoming cutoff item = do
|
|||||||
|
|
||||||
langDict :: String -> Context a
|
langDict :: String -> Context a
|
||||||
langDict "nl" =
|
langDict "nl" =
|
||||||
constField "welcome" "Welkom" <>
|
constField "welcome" "Welkom op mijn website, hier plaats ik artikelen over mijn hobbies." <>
|
||||||
constField "switcher" "Taal" <>
|
constField "switcher" "Taal" <>
|
||||||
constField "title-japan" "Japan" <>
|
constField "title-japan" "Japan" <>
|
||||||
constField "title-plamo" "Plamo" <>
|
constField "title-plamo" "Plamo" <>
|
||||||
constField "title-radio" "Radio" <>
|
constField "title-radio" "Radio" <>
|
||||||
constField "title-software" "Software" <>
|
constField "title-software" "Software" <>
|
||||||
|
constField "text-plamo-not-ready" "Deze model-kit heeft nog geen gepubliceerd werk." <>
|
||||||
|
constField "text-plamo-back" "Terug naar plamo kits" <>
|
||||||
mempty
|
mempty
|
||||||
|
|
||||||
langDict "jp" =
|
langDict "jp" =
|
||||||
constField "welcome" "ようこそ" <>
|
constField "welcome" "私のウェブサイトへようこそ。ここでは趣味についての記事を投稿しています。" <>
|
||||||
constField "switcher" "言語" <>
|
constField "switcher" "言語" <>
|
||||||
constField "title-japan" "日本" <>
|
constField "title-japan" "日本" <>
|
||||||
constField "title-plamo" "プラモ" <>
|
constField "title-plamo" "プラモ" <>
|
||||||
constField "title-radio" "ラジオ" <>
|
constField "title-radio" "ラジオ" <>
|
||||||
constField "title-software" "ソフトウェア" <>
|
constField "title-software" "ソフトウェア" <>
|
||||||
|
constField "text-plamo-not-ready" "この模型キットには、まだ制作例が公開されていません。" <>
|
||||||
|
constField "text-plamo-back" "プラモデルキットに戻る" <>
|
||||||
mempty
|
mempty
|
||||||
|
|
||||||
langDict "en" =
|
langDict "en" =
|
||||||
constField "welcome" "Welcome" <>
|
constField "welcome" "Welcome to my website, here I post articles about my hobbies." <>
|
||||||
constField "switcher" "Language" <>
|
constField "switcher" "Language" <>
|
||||||
constField "title-japan" "Japan" <>
|
constField "title-japan" "Japan" <>
|
||||||
constField "title-plamo" "Plamo" <>
|
constField "title-plamo" "Plamo" <>
|
||||||
constField "title-radio" "Radio" <>
|
constField "title-radio" "Radio" <>
|
||||||
constField "title-software" "Software" <>
|
constField "title-software" "Software" <>
|
||||||
|
constField "text-plamo-not-ready" "This model kit has no work published for it yet." <>
|
||||||
|
constField "text-plamo-back" "Back to plamo kits" <>
|
||||||
mempty
|
mempty
|
||||||
|
|
||||||
langDict _ = mempty
|
langDict _ = mempty
|
||||||
|
|||||||
@ -1,7 +1,5 @@
|
|||||||
<p>$welcome$</p>
|
<p>$welcome$</p>
|
||||||
|
|
||||||
<p>This part of my website is still under construction, please excuse my mess.</p>
|
|
||||||
|
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
<p class="text-center">$switcher$: <a href="/nl/index.html">Nederlands</a> | <a href="/jp/index.html">日本語</a> | <a href="/en/index.html">English</a></p>
|
<p class="text-center">$switcher$: <a href="/nl/index.html">Nederlands</a> | <a href="/jp/index.html">日本語</a> | <a href="/en/index.html">English</a></p>
|
||||||
@ -12,7 +10,7 @@
|
|||||||
<!-- Japan -->
|
<!-- Japan -->
|
||||||
<div class="col d-flex justify-content-center">
|
<div class="col d-flex justify-content-center">
|
||||||
<div class="card mt-2" style="width: 256px;">
|
<div class="card mt-2" style="width: 256px;">
|
||||||
<a href="/japan.html">
|
<a href="/$language$/japan.html">
|
||||||
<img src="/images/home-japan.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
|
<img src="/images/home-japan.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
|
||||||
</a>
|
</a>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
@ -24,7 +22,7 @@
|
|||||||
<!-- Plamo -->
|
<!-- Plamo -->
|
||||||
<div class="col d-flex justify-content-center">
|
<div class="col d-flex justify-content-center">
|
||||||
<div class="card mt-2" style="width: 256px;">
|
<div class="card mt-2" style="width: 256px;">
|
||||||
<a href="/plamo.html">
|
<a href="/$language$/plamo.html">
|
||||||
<img src="/images/home-plamo.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
|
<img src="/images/home-plamo.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
|
||||||
</a>
|
</a>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
@ -36,7 +34,7 @@
|
|||||||
<!-- Radio -->
|
<!-- Radio -->
|
||||||
<div class="col d-flex justify-content-center">
|
<div class="col d-flex justify-content-center">
|
||||||
<div class="card mt-2" style="width: 256px;">
|
<div class="card mt-2" style="width: 256px;">
|
||||||
<a href="/radio.html">
|
<a href="/$language$/radio.html">
|
||||||
<img src="/images/home-radio.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
|
<img src="/images/home-radio.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
|
||||||
</a>
|
</a>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
@ -48,7 +46,7 @@
|
|||||||
<!-- Software -->
|
<!-- Software -->
|
||||||
<div class="col d-flex justify-content-center">
|
<div class="col d-flex justify-content-center">
|
||||||
<div class="card mt-2" style="width: 256px;">
|
<div class="card mt-2" style="width: 256px;">
|
||||||
<a href="/software.html">
|
<a href="/$language$/software.html">
|
||||||
<img src="/images/home-software.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
|
<img src="/images/home-software.webp" alt="thumbnail" class="card-img-top img-fluid rounded-top" >
|
||||||
</a>
|
</a>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
|||||||
@ -9,16 +9,27 @@
|
|||||||
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
||||||
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link disabled" aria-disabled="true">$title-japan$</a>
|
<a class="nav-link disabled" aria-disabled="true" href="/$language$/japan.html">$title-japan$</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="/plamo.html">$title-plamo$</a>
|
<a class="nav-link" href="/$language$/plamo.html">$title-plamo$</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link disabled" aria-disabled="true">$title-radio$</a>
|
<a class="nav-link disabled" aria-disabled="true" href="/$language$/radio.html">$title-radio$</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link disabled" aria-disabled="true">$title-software$</a>
|
<a class="nav-link disabled" aria-disabled="true" href="/$language$/software.html">$title-software$</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="nav-item dropdown">
|
||||||
|
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||||
|
$switcher$
|
||||||
|
</a>
|
||||||
|
<ul class="dropdown-menu">
|
||||||
|
<li><a class="dropdown-item" href="/nl/index.html">Nederlands</a></li>
|
||||||
|
<li><a class="dropdown-item" href="/jp/index.html">日本語</a></li>
|
||||||
|
<li><a class="dropdown-item" href="/en/index.html">English</a></li>
|
||||||
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user