From deede6d6d0bdd7c767b43c1df7dc9554b4f7ba0b Mon Sep 17 00:00:00 2001
From: Thomas Voss <mail@thomasvoss.com>
Date: Tue, 31 Dec 2024 20:38:04 +0100
Subject: Add a page on coin storage

---
 src/http.go                                |   1 +
 src/templates/collecting-storage.html.tmpl | 163 +++++++++++++++++++++++++++++
 static/storage/capsules-in-case.avif       | Bin 0 -> 178207 bytes
 static/storage/coins-in-album-labeled.avif | Bin 0 -> 56222 bytes
 static/storage/coins-in-roll.avif          | Bin 0 -> 65943 bytes
 static/storage/flips-in-album.avif         | Bin 0 -> 46752 bytes
 static/storage/flips-in-case.jpg           | Bin 0 -> 128113 bytes
 static/storage/random-in-box.avif          | Bin 0 -> 699386 bytes
 8 files changed, 164 insertions(+)
 create mode 100644 src/templates/collecting-storage.html.tmpl
 create mode 100644 static/storage/capsules-in-case.avif
 create mode 100644 static/storage/coins-in-album-labeled.avif
 create mode 100644 static/storage/coins-in-roll.avif
 create mode 100644 static/storage/flips-in-album.avif
 create mode 100644 static/storage/flips-in-case.jpg
 create mode 100644 static/storage/random-in-box.avif

diff --git a/src/http.go b/src/http.go
index e944af2..04c362a 100644
--- a/src/http.go
+++ b/src/http.go
@@ -27,6 +27,7 @@ func Run(port int) {
 	mux.Handle("GET /designs/", fs)
 	mux.Handle("GET /favicon.ico", fs)
 	mux.Handle("GET /fonts/", fs)
+	mux.Handle("GET /storage/", fs)
 	mux.Handle("GET /style.min.css", fs)
 	mux.Handle("GET /coins/mintages", chain(
 		firstHandler,
diff --git a/src/templates/collecting-storage.html.tmpl b/src/templates/collecting-storage.html.tmpl
new file mode 100644
index 0000000..8d29667
--- /dev/null
+++ b/src/templates/collecting-storage.html.tmpl
@@ -0,0 +1,163 @@
+{{ define "content" }}
+<header>
+	{{ template "navbar" . }}
+	<h1>{{ .T "Coin Storage" }}</h1>
+</header>
+<main>
+	<p>
+		{{ .T `
+			There are many different methods of storing your collecting,
+			each with their own benefits and drawbacks.  This page will
+			describe the most common methods collectors use to store
+			their coins, as well as the pros and cons of each method.
+		` }}
+	</p>
+
+	<h2>{{ .T "Coin Albums" }}</h2>
+	<p>
+		{{ .T `
+			Coin albums are one of the most popular ways of storing
+			coins.  In a coin album you will have multiple coin sheets.
+			These sheets are plastic pages with slots that you can put
+			your coin in to keep them protected.  When searching for
+			sheets for your album it is very important to ensure that
+			they do not contain any PVC, which will damage your coins.
+			Some albums will come with sheets already included.
+		` }}
+	</p>
+
+	<p>
+		{{ .T `
+			Albums can be an affordable way to store your coins, but
+			higher-end albums can be a bit expensive.  Also remember
+			to always ensure that your albums do not contain any PVC!
+		` }}
+	</p>
+
+	<h2>{{ .T "Coin Boxes" }}</h2>
+	<p>
+		{{ .T `
+			Coin boxes are to many people the most aesthetic way to store
+			your coins.  A coin box is comprised of various layers which
+			can be stacked ontop of each other.  Each layer has various
+			holes where you can insert your coins.  Typically you are
+			meant to store your coins in a layer encased in a coin
+			capsule.
+		` }}
+	</p>
+
+	<p>
+		{{ .T `
+			Boxes are quite space-inefficient and are one of the most
+			expensive ways to store your coins, but at the same time they
+			offer a great visual appeal.
+		` }}
+	</p>
+
+	<h2>{{ .T "Coin Capsules" }}</h2>
+	<p>
+		{{ .T `
+			Coin capsules are plastic capsules you can put your coin in.
+			They offer good protection to your coins, while still
+			allowing you to view all parts of your coin easily, including
+			the edge engravings and -inscriptions.  Capsules are also far
+			more durable than flips, and can be opened and closed
+			repeatedly allowing for them to be reused.  This isn’t really
+			possible with flips.
+		` }}
+	</p>
+
+	<p>
+		{{ .T `
+			Capsules can be a bit pricey, but are reusable and are very
+			durable.  They also come in different sizes, so make sure you
+			get the right size for your coins.
+		` }}
+	</p>
+
+	<h2>{{ .T "Coin Flips" }}</h2>
+	<p>
+		{{ .T `
+			Coin flips, also known as ‘2x2’ flips by some Americans are
+			small cardboard flips with a plastic covered hole in the
+			middle for viewing.  Most coin flips are stapled, meaning you
+			put your coin in the flip and staple it shut.  These kinds of
+			flips are very cheap, and you can buy stacks of a few hundred
+			for only a few euros.  If you don’t like the staples though,
+			you can also buy adhesive-flips that glue themselves shut.
+			These flips are more expensive, but also look better than
+			their stapled equivalents.
+		` }}
+	</p>
+
+	<p>
+		{{ .T `
+			Coin slips are also pretty space efficient, and can be easily
+			stacked in boxes for compact storage.  Many collectors also
+			like to write notes about their coins on the flips.  There
+			also exist special sheets for coin albums that allow you to
+			put in flipped coins, but this is more expensive and less
+			space-efficient than simply using flips or an album without
+			flips.
+		` }}
+	</p>
+
+	<h2>{{ .T "Coin Rolls" }}</h2>
+	<p>
+		{{ .T `
+			This is probably the most inexpensive way to store your
+			coins.  If you take good care of the paper when opening your
+			coin rolls, you can simply reuse them for storage.  Just roll
+			your coins back up and put some rubber bands on the ends.
+			You can also get reusable plastic rolls that can be opened
+			and closed.  You will need different rolls based on the
+			denomination you want to store, but they are very
+			space-efficient.
+		` }}
+	</p>
+
+	<h2>{{ .T "Examples" }}</h2>
+	<p>
+		{{ .T `
+			In case you’re looking for some inspiration on how to store
+			your collections, here are some examples.
+		` }}
+	</p>
+
+	<!-- TODO: Can we use an AVIF here? -->
+	{{ template "example-image"
+	   (tuple (.T "Flips in a case")
+	          "/storage/flips-in-case.jpg") }}
+	{{ template "example-image"
+	   (tuple (.T "Capsules in a case")
+	          "/storage/random-in-box.avif") }}
+	<!-- {{ template "example-image"
+	        (tuple (.T "Flips and capsules in a box")
+	               "/storage/coins-in-album.avif") }} -->
+	{{ template "example-image"
+	   (tuple (.T "Coins in an album")
+	          "/storage/coins-in-album-labeled.avif") }}
+	{{ template "example-image"
+	   (tuple (.T "Coins in an album with labels")
+	          "/storage/coins-in-album-labeled.avif") }}
+	{{ template "example-image"
+	   (tuple (.T "Coins in a reusable roll")
+	          "/storage/coins-in-roll.avif") }}
+	{{ template "example-image"
+	   (tuple (.T "Flips in an album")
+	          "/storage/flips-in-album.avif" )}}
+</main>
+{{ end }}
+
+{{ define "example-image" }}
+<details>
+    <summary>{{ index . 0 }}</summary>
+    <div class="design-container">
+        <img
+			class="big"
+			src={{ index . 1 }}
+			alt={{ index . 0 }}
+		>
+    </div>
+</details>
+{{ end }}
\ No newline at end of file
diff --git a/static/storage/capsules-in-case.avif b/static/storage/capsules-in-case.avif
new file mode 100644
index 0000000..58497fe
Binary files /dev/null and b/static/storage/capsules-in-case.avif differ
diff --git a/static/storage/coins-in-album-labeled.avif b/static/storage/coins-in-album-labeled.avif
new file mode 100644
index 0000000..c21a9d8
Binary files /dev/null and b/static/storage/coins-in-album-labeled.avif differ
diff --git a/static/storage/coins-in-roll.avif b/static/storage/coins-in-roll.avif
new file mode 100644
index 0000000..46c32bf
Binary files /dev/null and b/static/storage/coins-in-roll.avif differ
diff --git a/static/storage/flips-in-album.avif b/static/storage/flips-in-album.avif
new file mode 100644
index 0000000..7b94822
Binary files /dev/null and b/static/storage/flips-in-album.avif differ
diff --git a/static/storage/flips-in-case.jpg b/static/storage/flips-in-case.jpg
new file mode 100644
index 0000000..25de605
Binary files /dev/null and b/static/storage/flips-in-case.jpg differ
diff --git a/static/storage/random-in-box.avif b/static/storage/random-in-box.avif
new file mode 100644
index 0000000..6cb03b1
Binary files /dev/null and b/static/storage/random-in-box.avif differ
-- 
cgit v1.2.3