diff --git a/www/fontawesome.php b/www/fontawesome.php new file mode 100644 index 0000000..61f4c87 --- /dev/null +++ b/www/fontawesome.php @@ -0,0 +1,10 @@ + '', + 'image' => '', + 'folder' => '', + 'rss' => '' +]; + +?> \ No newline at end of file diff --git a/www/post_adapter.php b/www/post_adapter.php index 860179c..486b830 100644 --- a/www/post_adapter.php +++ b/www/post_adapter.php @@ -26,7 +26,10 @@ class PostHandler extends MySQLAdapter { $post_meta = $post_data['post_metadata']; $post_meta["title"] ??= basename($post_data["post_path"]); - + if($post_meta["title"] == "") { + $post_meta["title"] = "root"; + } + if(!isset($post_meta['type'])) { $type = null; @@ -36,13 +39,29 @@ class PostHandler extends MySQLAdapter { '' => 'directory', 'md' => 'text/markdown', 'png' => 'image', + 'jpg' => 'image', + 'jpeg' => 'image' ]; if(isset($ext_mapping[$ext])) { $post_meta['type'] = $ext_mapping[$ext]; } + else { + $post_meta['type'] = '?'; + } } + if(!isset($post_meta['icon'])) { + $icon_mapping = [ + '' => 'question', + 'text/markdown' => 'markdown', + 'directory' => 'folder', + 'image' => 'image' + ]; + + $post_meta['icon'] = $icon_mapping[$post_meta['type']] ?? 'question'; + } + $post_data["post_file_dir"] = '/' . $this->data_directory . $post_data["post_path"]; $post_data['post_metadata'] = $post_meta; diff --git a/www/router.php b/www/router.php index 6d9d00b..fcf0c54 100644 --- a/www/router.php +++ b/www/router.php @@ -3,9 +3,11 @@ $data_time_start = microtime(true); require_once 'vendor/autoload.php'; -require_once 'post_adapter.php'; +require_once 'post_adapter.php'; +require_once 'fontawesome.php'; + $adapter = new PostHandler(); $loader = new \Twig\Loader\FilesystemLoader(['./templates', './user_content']); @@ -64,6 +66,7 @@ $twig->addRuntimeLoader(new class implements RuntimeLoaderInterface { function generate_website($SURI) { global $twig; global $adapter; + global $FONT_AWESOME_ARRAY; if(preg_match('/^\/api\/admin/', $SURI)) { header('Content-Type: application/json'); @@ -146,17 +149,20 @@ function generate_website($SURI) { echo $twig->render('post_types/directory.html', [ "post" => $post, - "subposts" => $adapter->get_subposts_by_path($SURI) + "subposts" => $adapter->get_subposts_by_path($SURI), + "fa" => $FONT_AWESOME_ARRAY ]); } elseif($post['post_metadata']['type'] == 'text/markdown') { echo $twig->render('post_types/markdown.html', [ - "post" => $post + "post" => $post, + "fa" => $FONT_AWESOME_ARRAY ]); } elseif($post['post_metadata']['type'] == 'image') { echo $twig->render('post_types/image.html', [ - "post" => $post + "post" => $post, + "fa" => $FONT_AWESOME_ARRAY ]); } diff --git a/www/static/dergstyle.css b/www/static/dergstyle.css index fac0da9..b95e70e 100644 --- a/www/static/dergstyle.css +++ b/www/static/dergstyle.css @@ -6,6 +6,11 @@ padding: 0; } +svg { + fill: var(--text_1); + padding-top: 0.1rem; +} + body { --bg_1: #0e0a2a; --bg_2: #2c2943; diff --git a/www/templates/post_types/directory.html b/www/templates/post_types/directory.html index 5fa62fc..b583665 100644 --- a/www/templates/post_types/directory.html +++ b/www/templates/post_types/directory.html @@ -19,7 +19,7 @@ {% for subpost in subposts %}