From 238fabbcb24b39004af6bdb58df6a1d6eeb06380 Mon Sep 17 00:00:00 2001 From: despiegk Date: Mon, 19 May 2025 07:09:27 +0400 Subject: [PATCH] ... --- lib/web/site/config.v | 4 +++- lib/web/site/play.v | 22 +++++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/lib/web/site/config.v b/lib/web/site/config.v index 883277f6..c1324576 100644 --- a/lib/web/site/config.v +++ b/lib/web/site/config.v @@ -18,12 +18,14 @@ pub mut: pub struct Page { pub mut: - collection string name string content string title string description string draft bool + folder string + prio int + src string } // Footer config structures diff --git a/lib/web/site/play.v b/lib/web/site/play.v index 399c9e87..d604677f 100644 --- a/lib/web/site/play.v +++ b/lib/web/site/play.v @@ -2,7 +2,6 @@ module site import freeflowuniverse.herolib.core.playbook { PlayBook } import time -import os @[params] @@ -24,6 +23,7 @@ pub fn play(args_ PlayArgs) ! { play_collections(mut plbook, mut config)! play_menu(mut plbook, mut config)! play_footer(mut plbook, mut config)! + play_pages(mut plbook, mut config)! } @@ -119,3 +119,23 @@ fn play_footer(mut plbook PlayBook, mut config Config) ! { } } } + +fn play_pages(mut plbook PlayBook, mut config Config) ! { + page_actions := plbook.find(filter: 'site.page')! + for action in page_actions { + mut p := action.params + + mut page := Page{ + name: p.get('name')! + title: p.get_default('title', '')! + description: p.get_default('description', '')! + content: p.get_default('content', '')! + src: p.get_default('src', '')! + draft: p.get_default_false('draft') + folder: p.get_default('folder', '')! + prio: p.get_int_default('prio', 0)! + } + + config.pages << page + } +}