From b29a21780fa612cb4e0d36bec1a68adb33dfd580 Mon Sep 17 00:00:00 2001 From: Tobias Feigel Date: Sun, 29 Jun 2025 16:08:31 +0200 Subject: [PATCH] feat: add FEN block support and related assets Introduced a new FEN block feature, including a PHP snippet to render FEN diagrams, a new CSS file for chessboard styling, font integration, and blueprint updates. Adjusted asset paths and file references for consistency. --- assets/css/chess.css | 5 ++ assets/fonts/CASEFONT.TTF | Bin 0 -> 35476 bytes assets/fonts/pgn4web-font-LiberationSans.css | 5 ++ assets/js/png4web.js | 2 +- content/4_verein/5_memoriam/blockpage.txt | 32 ++++++++++ package.json | 2 +- site/blueprints/pages/blockpage.yml | 14 ++++- site/snippets/blocks/fen.php | 61 +++++++++++++++++++ site/snippets/layout.php | 6 +- site/templates/blockpage.php | 32 ++++++++++ 10 files changed, 154 insertions(+), 5 deletions(-) create mode 100644 assets/css/chess.css create mode 100644 assets/fonts/CASEFONT.TTF create mode 100644 site/snippets/blocks/fen.php create mode 100644 site/templates/blockpage.php diff --git a/assets/css/chess.css b/assets/css/chess.css new file mode 100644 index 0000000..1d9c006 --- /dev/null +++ b/assets/css/chess.css @@ -0,0 +1,5 @@ +@font-face { + font-family: 'Case'; + src: url('../fonts/CASEFONT.TTF'); + font-weight: normal; +} \ No newline at end of file diff --git a/assets/fonts/CASEFONT.TTF b/assets/fonts/CASEFONT.TTF new file mode 100644 index 0000000000000000000000000000000000000000..61c12d6e7256f956e1e00f8f84ab612fe59b3a2c GIT binary patch literal 35476 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 literal 0 HcmV?d00001 diff --git a/assets/fonts/pgn4web-font-LiberationSans.css b/assets/fonts/pgn4web-font-LiberationSans.css index dd18e42..5186b7f 100644 --- a/assets/fonts/pgn4web-font-LiberationSans.css +++ b/assets/fonts/pgn4web-font-LiberationSans.css @@ -24,3 +24,8 @@ font-weight: bold; } +@font-face { + font-family: 'Case'; + src: url('CASEFONT.TTF'); + font-weight: normal; +} \ No newline at end of file diff --git a/assets/js/png4web.js b/assets/js/png4web.js index 1b6a564..4c769e0 100644 --- a/assets/js/png4web.js +++ b/assets/js/png4web.js @@ -1474,7 +1474,7 @@ var InitialHalfMoveClock = 0; var PieceImg = new Array(new Array(6), new Array(6)); var ClearImg; -var ImagePath = 'images'; +var ImagePath = '/images'; var ImagePathOld = null; var imageType = 'png'; var defaultImagesSize = 40; diff --git a/content/4_verein/5_memoriam/blockpage.txt b/content/4_verein/5_memoriam/blockpage.txt index 5cd4912..152dc69 100644 --- a/content/4_verein/5_memoriam/blockpage.txt +++ b/content/4_verein/5_memoriam/blockpage.txt @@ -2,4 +2,36 @@ Title: In Memoriam ---- +Blocks: + +[ + { + "content": { + "level": "h2", + "text": "Dies ist ein Test!" + }, + "id": "eb2cb2e3-19f6-4c17-a786-723cdbc8f811", + "isHidden": false, + "type": "heading" + }, + { + "content": { + "fen": "rnbqkbnr/p1pp1ppp/1p2p3/8/3P1B2/5N2/PPP1PPPP/RN1QKB1R b KQkq - 1 3" + }, + "id": "067a448c-31e5-411c-b342-f69519284394", + "isHidden": false, + "type": "fen" + }, + { + "content": { + "fen": "8/8/8/2k5/4K3/8/8/8" + }, + "id": "970b3cad-3f89-4f19-8be0-c702c522caf4", + "isHidden": false, + "type": "fen" + } +] + +---- + Uuid: ko01ys2cbv2pafa8 \ No newline at end of file diff --git a/package.json b/package.json index e0df7e7..e35ceb2 100644 --- a/package.json +++ b/package.json @@ -10,4 +10,4 @@ "watch": "npx @tailwindcss/cli -i ./src/css/input.css -o ./assets/css/styles.css --content './site/**/*.php' --watch", "build": "npx @tailwindcss/cli -i ./src/css/input.css -o ./assets/css/styles.css --content './site/**/*.php'" } -} \ No newline at end of file +} diff --git a/site/blueprints/pages/blockpage.yml b/site/blueprints/pages/blockpage.yml index 8f2e2da..0740fee 100644 --- a/site/blueprints/pages/blockpage.yml +++ b/site/blueprints/pages/blockpage.yml @@ -3,4 +3,16 @@ title: Block Page fields: blocks: type: blocks - pretty: true \ No newline at end of file + pretty: true + fieldsets: + - heading + - text + - image + - type: fen + label: FEN-Diagramm + preview: fields + wysiwyg: true + fields: + fen: + type: text + label: FEN-Position \ No newline at end of file diff --git a/site/snippets/blocks/fen.php b/site/snippets/blocks/fen.php new file mode 100644 index 0000000..2f450e4 --- /dev/null +++ b/site/snippets/blocks/fen.php @@ -0,0 +1,61 @@ +fen(); + +// Unicode-Mapping +$pieceUnicode = [ + 'K' => 'k', 'Q' => 'q', 'R' => 'r', 'B' => 'b', 'N' => 'n', 'P' => 'p', + 'k' => 'l', 'q' => 'w', 'r' => 't', 'b' => 'v', 'n' => 'm', 'p' => 'o', +]; + +$board = fenToBoard($fen); +?> + + + +
+
+ +
+ +
+ +
+ +
+ +
+
diff --git a/site/snippets/layout.php b/site/snippets/layout.php index 0a8b2bb..085c009 100644 --- a/site/snippets/layout.php +++ b/site/snippets/layout.php @@ -8,7 +8,7 @@ - + diff --git a/site/templates/blockpage.php b/site/templates/blockpage.php new file mode 100644 index 0000000..c7ce7f7 --- /dev/null +++ b/site/templates/blockpage.php @@ -0,0 +1,32 @@ + + + + + +blocks()->toBlocks() ?> + +