1
0

Add collection table to plamo page.

This commit is contained in:
Kevin Matsubara 2025-08-06 00:11:30 +02:00
parent 274538556b
commit 9e95ec8341
4 changed files with 631 additions and 3 deletions

View File

@ -38,9 +38,18 @@ const languageStrings = {
fielddays: 'Field days', fielddays: 'Field days',
nvisAntenna: 'NVIS Antenna', nvisAntenna: 'NVIS Antenna',
totalUniqueQSO: 'total unique QSO', totalUniqueQSO: 'total unique QSO',
// Scale Model // Plamo
category: 'Category',
plamo: 'Plamo', plamo: 'Plamo',
manufacturer: 'Manufacturer',
purchase_date: 'Purchase date',
purchase_store: 'Store',
purchase_price: 'Price',
released: 'Released',
scale: 'Scale',
scalemodel: 'Scale model', scalemodel: 'Scale model',
collection: 'Collection',
collection_text: 'My collection of kits that I bought over the years. Some still in box, some completed and some in limbo.',
// Software // Software
code_pages: 'Code sections', code_pages: 'Code sections',
code_pages_intro: 'Some notes and examples of code.', code_pages_intro: 'Some notes and examples of code.',
@ -101,9 +110,18 @@ const languageStrings = {
fielddays: 'Velddagen', fielddays: 'Velddagen',
nvisAntenna: 'NVIS antenne', nvisAntenna: 'NVIS antenne',
totalUniqueQSO: 'totaal unieke QSO', totalUniqueQSO: 'totaal unieke QSO',
// Scale Model // Plamo
category: 'Categorie',
plamo: 'Plamo', plamo: 'Plamo',
manufacturer: 'Fabrikant',
purchase_date: 'Datum van aankoop',
purchase_store: 'Winkel',
purchase_price: 'Prijs',
released: 'Jaar van uitgave',
scale: 'Schaal',
scalemodel: 'Schaalmodel', scalemodel: 'Schaalmodel',
collection: 'Verzameling',
collection_text: 'Mijn verzameling van model kits die ik de afgelopen jaren heb verzamelt. Sommige nog in de doos, sommige half afgemaakt en sommige compleet met diorama.',
// Software // Software
code_pages: 'Code secties', code_pages: 'Code secties',
code_pages_intro: 'Notities en voorbeelden van code.', code_pages_intro: 'Notities en voorbeelden van code.',

View File

@ -1,6 +1,8 @@
import React from 'react'; import React from 'react';
import MarkdownPage from '../markdownPage'; import MarkdownPage from '../markdownPage';
import { getLanguage } from '../../Language/Language'; import { getLanguage } from '../../Language/Language';
import { getString } from '../../Language/LanguageStrings'
import CollectionTable from './collectionTable';
const PlamoMain = () => { const PlamoMain = () => {
const language = getLanguage(); const language = getLanguage();
@ -8,6 +10,10 @@ const PlamoMain = () => {
return ( return (
<article className="main-page"> <article className="main-page">
<MarkdownPage md={'Plamo/' + language + '/main.md'} /> <MarkdownPage md={'Plamo/' + language + '/main.md'} />
<hr/>
<h2>{getString('collection')}</h2>
<p>{getString('collection_text')}</p>
<CollectionTable />
</article> </article>
) )
} }

View File

@ -0,0 +1,544 @@
{
"history": [
{
"name": "Ilshana",
"details": "",
"category": "30 Minute Sisters",
"series": "",
"scale": "1/12",
"number": "5065431",
"release": 2023,
"manufacturer": "Bandai",
"purchase_date": "",
"purchase_store": "",
"purchase_venue": "Aquawalk",
"purchase_location": "Ogaki, Japan",
"purchase_price": "¥0000 円",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "RX-178 Mk-II",
"details": "HG UC (Titans)",
"category": "Gundam",
"series": "Mobile Suit Zeta Gundam",
"scale": "1/144",
"number": "0201312",
"release": 2015,
"manufacturer": "Bandai",
"purchase_date": "2024-10-19",
"purchase_store": "Side 7",
"purchase_venue": "SMC (Scale Model Challenge)",
"purchase_location": "Veldhoven, Netherlands",
"purchase_price": "€10,00",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "Kawasaki Zaku II",
"details": "HG UC - MS-06 Zaku II",
"category": "Gundam",
"series": "Mobile Suit Gundam",
"scale": "1/144",
"number": "5061545",
"release": 2021,
"manufacturer": "Bandai",
"purchase_date": "2024-09-11",
"purchase_store": "Gameforce",
"purchase_venue": "",
"purchase_location": "Eindhoven, Netherlands",
"purchase_price": "€21,99",
"completion_date": "2025-05-01",
"comment": "",
"published": true
},
{
"name": "Tachikawa Ki-55 Trainer",
"details": "Type 99 advanced trainer",
"category": "Military airplanes",
"series": "",
"scale": "1/72",
"number": "7A-A1-350",
"release": 1983,
"manufacturer": "Fujimi",
"purchase_date": "2025-01-24",
"purchase_store": "Flashie",
"purchase_venue": "",
"purchase_location": "Eindhoven, Netherlands",
"purchase_price": "€18,00",
"completion_date": "2025-08-03",
"comment": "",
"published": true
},
{
"name": "Sd.Kfz 222",
"details": "Leichter Panzerspähwagen 4x4",
"category": "Military vehicles",
"series": "",
"scale": "1/35",
"number": "35270",
"release": 2003,
"manufacturer": "Tamiya",
"purchase_date": "2024-10-19",
"purchase_store": "Domino",
"purchase_venue": "SMC (Scale Model Challenge)",
"purchase_location": "Veldhoven, Netherlands",
"purchase_price": "€26,00",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "Lanz Bulldog",
"details": "D8500 mod.1938",
"category": "Civilian vehicles",
"series": "",
"scale": "1/35",
"number": "38024",
"release": 2020,
"manufacturer": "MiniArt",
"purchase_date": "2024-10-19",
"purchase_store": "Second hand store",
"purchase_venue": "SMC (Scale Model Challenge)",
"purchase_location": "Veldhoven, Netherlands",
"purchase_price": "€26,50",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "Quietly came, quietly went...",
"details": "Ukrainian commando's",
"category": "Military infantry",
"series": "",
"scale": "1/35",
"number": "35752",
"release": 2023,
"manufacturer": "ICM",
"purchase_date": "2024-10-19",
"purchase_store": "Mako modellbau",
"purchase_venue": "SMC (Scale Model Challenge)",
"purchase_location": "Veldhoven, Netherlands",
"purchase_price": "€18,00",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "AMS-119 Geara Doga",
"details": "MG",
"category": "Gundam",
"series": "Mobile Suit Gundam: Char's Counterattack",
"scale": "1/100",
"number": "5055456",
"release": 0,
"manufacturer": "Bandai",
"purchase_date": "2024-09-28",
"purchase_store": "Player2 Gamestore",
"purchase_venue": "",
"purchase_location": "Uden, Netherlands",
"purchase_price": "€54,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "A6M2 Zero Type 21",
"details": "",
"category": "Military airplanes",
"series": "",
"scale": "1/48",
"number": "82212",
"release": 2022,
"manufacturer": "Eduard",
"purchase_date": "2024-10-19",
"purchase_store": "Eduard",
"purchase_venue": "SMC (Scale Model Challenge)",
"purchase_location": "Veldhoven, Netherlands",
"purchase_price": "€26,20",
"completion_date": "",
"comment": "Profipack edition, 20% discount",
"published": false
},
{
"name": "AGX-04 Gerbera Tetra",
"details": "HG UC",
"category": "Gundam",
"series": "Mobile Suit Gundam 0083: Stardust Memory",
"scale": "1/144",
"number": "5055886",
"release": 2019,
"manufacturer": "Bandai",
"purchase_date": "2024-11-27",
"purchase_store": "La Cité des Nuages",
"purchase_venue": "",
"purchase_location": "Waterloo, Belgie",
"purchase_price": "€29,92",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "OZ-00MS Tallgeese",
"details": "MG",
"category": "Gundam",
"series": "Mobile Suit Gundam Wing",
"scale": "1/100",
"number": "5062845",
"release": 2021,
"manufacturer": "Bandai",
"purchase_date": "2025-01-09",
"purchase_store": "Player2 Gamestore",
"purchase_venue": "",
"purchase_location": "Uden, Netherlands",
"purchase_price": "€44,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "MS-06S Zaku II",
"details": "(Char Aznable Custom) Ver. 2.0 MG",
"category": "Gundam",
"series": "Mobile Suit Gundam",
"scale": "1/100",
"number": "5061581",
"release": 2021,
"manufacturer": "Bandai",
"purchase_date": "2025-02-07",
"purchase_store": "Modelbouw krikke",
"purchase_venue": "",
"purchase_location": "",
"purchase_price": "€44,95",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "AMX-104 R-Jarja",
"details": "HG UC",
"category": "Gundam",
"series": "Mobile Suit Gundam ZZ",
"scale": "1/144",
"number": "5055716",
"release": 2019,
"manufacturer": "Bandai",
"purchase_date": "2025-03-10",
"purchase_store": "Geeks Heaven",
"purchase_venue": "",
"purchase_location": "",
"purchase_price": "€22,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "RX-110 Gabthley",
"details": "HG UC",
"category": "Gundam",
"series": "Mobile Suit Zeta Gundam",
"scale": "1/144",
"number": "5060395",
"release": 2020,
"manufacturer": "Bandai",
"purchase_date": "2025-03-10",
"purchase_store": "Geeks Heaven",
"purchase_venue": "",
"purchase_location": "",
"purchase_price": "€17,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "ORX-005 Gaplant",
"details": "HG UC",
"category": "Gundam",
"series": "Mobile Suit Zeta Gundam",
"scale": "1/144",
"number": "5063569",
"release": 2022,
"manufacturer": "Bandai",
"purchase_date": "2025-03-10",
"purchase_store": "Geeks Heaven",
"purchase_venue": "",
"purchase_location": "",
"purchase_price": "€30,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "RMS-106 Hi-Zack",
"details": "HG UC",
"category": "Gundam",
"series": "Mobile Suit Zeta Gundam",
"scale": "1/144",
"number": "5057950",
"release": 2019,
"manufacturer": "Bandai",
"purchase_date": "2025-03-21",
"purchase_store": "Player2 Gamestore",
"purchase_venue": "",
"purchase_location": "Uden, Netherlands",
"purchase_price": "€12,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "Spitfire",
"details": "Mk. IX",
"category": "Military airplanes",
"series": "",
"scale": "1/48",
"number": "2804",
"release": 2022,
"manufacturer": "Italeri",
"purchase_date": "2025-03-28",
"purchase_store": "Bevrijdende Vleugels museumwinkeltje",
"purchase_venue": "",
"purchase_location": "Son, Netherlands",
"purchase_price": "€30,00",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "Kawasaki Ki-100",
"details": "(Tony)",
"category": "Military airplanes",
"series": "",
"scale": "1/48",
"number": "OT2-15-500",
"release": 1980,
"manufacturer": "Ōtaki",
"purchase_date": "2025-04-06",
"purchase_store": "Mischas Model Outlet",
"purchase_venue": "Bevrijdende Vleugels modelbouwdag",
"purchase_location": "Son, Netherlands",
"purchase_price": "€8,00",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "Gundam Lfrith",
"details": "HG",
"category": "Gundam",
"series": "Mobile Suit Gundam the Witch from Mercury",
"scale": "1/144",
"number": "5062944",
"release": 2022,
"manufacturer": "Bandai",
"purchase_date": "2025-04-28",
"purchase_store": "Player2 Gamestore",
"purchase_venue": "",
"purchase_location": "Uden, Netherlands",
"purchase_price": "€19,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "XVX-016 Gundam Aerial",
"details": "Full Mechanics",
"category": "Gundam",
"series": "Mobile Suit Gundam the Witch from Mercury",
"scale": "1/100",
"number": "5065090",
"release": 2023,
"manufacturer": "Bandai",
"purchase_date": "2025-04-28",
"purchase_store": "Player2 Gamestore",
"purchase_venue": "",
"purchase_location": "Uden, Netherlands",
"purchase_price": "€45,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "XVX-016 Gundam Aerial",
"details": "SD EX Standard",
"category": "Gundam",
"series": "Mobile Suit Gundam the Witch from Mercury",
"scale": "No scale",
"number": "5063031",
"release": 2022,
"manufacturer": "Bandai",
"purchase_date": "2025-01-09",
"purchase_store": "Player2 Gamestore",
"purchase_venue": "",
"purchase_location": "Uden, Netherlands",
"purchase_price": "€9,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "GAT-X370 Raider Gundam",
"details": "Full Mechanics",
"category": "Gundam",
"series": "Mobile Suit Gundam SEED",
"scale": "1/100",
"number": "5063349",
"release": 2022,
"manufacturer": "Bandai",
"purchase_date": "2024-08-14",
"purchase_store": "",
"purchase_venue": "",
"purchase_location": "",
"purchase_price": "€0,00",
"completion_date": "",
"comment": "cadeau",
"published": false
},
{
"name": "RX-78-2",
"details": "MG - Version Katoki",
"category": "Gundam",
"series": "Mobile Suit Gundam",
"scale": "1/100",
"number": "0114215",
"release": 2002,
"manufacturer": "Bandai",
"purchase_date": "2018-10-28",
"purchase_store": "",
"purchase_venue": "",
"purchase_location": "Sakae, Nagoya, Japan",
"purchase_price": "¥2767",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "RX-78-2",
"details": "MG - The Gundam Base Limited",
"category": "Gundam",
"series": "Mobile Suit Gundam",
"scale": "1/100",
"number": "5058910",
"release": 2020,
"manufacturer": "Bandai",
"purchase_date": "2025-05-12",
"purchase_store": "The Gundam Base",
"purchase_venue": "",
"purchase_location": "Tokyo, Japan",
"purchase_price": "¥0",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "MSZ-006-3A Zeta Gundam 3A Type",
"details": "HG UC - The Gundam Base Limited",
"category": "Gundam",
"series": "Mobile Suit Gundam Evolve",
"scale": "1/144",
"number": "5060628",
"release": 2020,
"manufacturer": "Bandai",
"purchase_date": "2025-05-12",
"purchase_store": "The Gundam Base",
"purchase_venue": "",
"purchase_location": "Tokyo, Japan",
"purchase_price": "¥0",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "MSM-04 Acguy",
"details": "MG",
"category": "Gundam",
"series": "Mobile Suit Gundam",
"scale": "1/100",
"number": "5063147",
"release": 2021,
"manufacturer": "Bandai",
"purchase_date": "2024-12-31",
"purchase_store": "Super-Hobby.com",
"purchase_venue": "",
"purchase_location": "Poland",
"purchase_price": "€63,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "Aaronrhino Grady Exclusive",
"details": "HG - UltraSteel Ogre-Gear",
"category": "Other Mecha",
"series": "Kyōkai Senki, Amaim Warrior at the Borderline",
"scale": "1/72",
"number": "5066290",
"release": 2024,
"manufacturer": "Bandai",
"purchase_date": "2024-12-31",
"purchase_store": "Super-Hobby.com",
"purchase_venue": "",
"purchase_location": "Poland",
"purchase_price": "€36,90",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "Spähwagen Fennek",
"details": "",
"category": "Military vehicles",
"series": "",
"scale": "1/72",
"number": "03356",
"release": 2024,
"manufacturer": "Revell",
"purchase_date": "2024-12-31",
"purchase_store": "Super-Hobby.com",
"purchase_venue": "",
"purchase_location": "Poland",
"purchase_price": "€17,28",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "F/D-19 Zowort",
"details": "HG",
"category": "Gundam",
"series": "Mobile Suit Gundam the Witch from Mercury",
"scale": "1/144",
"number": "5065020",
"release": 2023,
"manufacturer": "Bandai",
"purchase_date": "2024-09-11",
"purchase_store": "Gameforce",
"purchase_venue": "",
"purchase_location": "Eindhoven, Netherlands",
"purchase_price": "€23,99",
"completion_date": "",
"comment": "",
"published": false
},
{
"name": "Blue Impulse T-2",
"details": "J.A.S.D.F. Acrobatic Team",
"category": "Military airplanes",
"series": "",
"scale": "1/72",
"number": "00335",
"release": 2008,
"manufacturer": "Hasegawa",
"purchase_date": "2025-05-20",
"purchase_store": "Museum shop Tsubasa",
"purchase_venue": "Airpark JASDF Hamamatsu Air Base Museum",
"purchase_location": "Hamamatsu, Japan",
"purchase_price": "¥1100",
"completion_date": "",
"comment": "",
"published": false
}
]
}

View File

@ -0,0 +1,60 @@
import React from 'react';
import { Link } from 'react-router-dom';
import collectionData from './collection.json';
import { useTheme } from '../../ThemeContext';
import { getLanguage } from '../../Language/Language';
import { getString } from '../../Language/LanguageStrings';
const CollectionTable = () => {
const { theme } = useTheme();
function generatePath(language, category, name) {
var categoryName = category.toLowerCase().replace(/\s+/g, '-');
var pageName = name.toLowerCase().replace(/\s+/g, '-');
// Construct the path
const path = `/${language}/plamo/showcase/${categoryName}/${pageName}`;
// Return JSX with the path inside an <a> tag
return (
<Link reloadDocument to={path}>
{name}
</Link>
);
}
return (
<table className={'table table-striped table-hover table-' + theme}>
<thead>
<tr>
<th>{getString('name')}</th>
<th>{getString('category')}</th>
<th>{getString('scale')}</th>
<th>{getString('manufacturer')}</th>
<th>{getString('released')}</th>
<th>{getString('purchase_date')}</th>
<th>{getString('purchase_store')}</th>
<th>{getString('purchase_price')}</th>
</tr>
</thead>
<tbody>
{collectionData.history
.map((item, index) => (
<tr key={index}>
<td>{item.published ? generatePath(getLanguage(), item.category, item.name) : item.name}</td>
<td>{item.category}</td>
<td>{item.scale}</td>
<td>{item.manufacturer}</td>
<td>{item.release}</td>
<td>{item.purchase_date}</td>
<td>{item.purchase_store}</td>
<td>{item.purchase_price}</td>
</tr>
))
}
</tbody>
</table>
)
}
export default CollectionTable;