From 7a491122d1846e40fcc7814288800f26694726dd Mon Sep 17 00:00:00 2001 From: DrMaxNix Date: Sun, 25 Feb 2024 17:21:01 +0100 Subject: [PATCH 1/9] :page_facing_up: update copyright year --- LICENSE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index 11664aa..78bde0c 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Kim Endisch +Copyright (c) 2024 Kim Endisch Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: From 442da207d2c7fa514d77f1d9a6e166d25c802a9d Mon Sep 17 00:00:00 2001 From: DrMaxNix Date: Sun, 25 Feb 2024 18:06:26 +0100 Subject: [PATCH 2/9] :sparkles: lang selection (fix #7) --- init.php | 28 +++++++++++++++++++++++++++ meta.php | 8 ++++++-- page/lang_autoselect.php | 41 ++++++++++++++++++++++++++++++++++++++++ page/start/index.php | 4 ++-- page/strings.php | 8 ++++++++ 5 files changed, 85 insertions(+), 4 deletions(-) create mode 100644 init.php create mode 100644 page/lang_autoselect.php create mode 100644 page/strings.php diff --git a/init.php b/init.php new file mode 100644 index 0000000..e548d72 --- /dev/null +++ b/init.php @@ -0,0 +1,28 @@ + diff --git a/meta.php b/meta.php index 5b24977..7166d7f 100644 --- a/meta.php +++ b/meta.php @@ -5,7 +5,10 @@ // DEPENDENCIES // // used extensions - static::$ext[] = "excuse"; + static::$ext[] = "project"; + static::$ext[] = "lang"; + static::$ext[] = "request"; + static::$ext[] = "url"; // ROUTES // @@ -16,6 +19,7 @@ // pages static::$route["thi-hub.de"] = [ - ["path" => "", "target" => "page/start"] + ["path" => "", "target" => "page/start"], + ["path" => ":lang", "target" => "page/start"], ]; ?> diff --git a/page/lang_autoselect.php b/page/lang_autoselect.php new file mode 100644 index 0000000..3fbb7fe --- /dev/null +++ b/page/lang_autoselect.php @@ -0,0 +1,41 @@ +get()); + $path_raw_full = implode("/", $path_raw); + Url_redirect::path_modify($path_raw_full); + } + + + // LANGUAGE MANAGER // + // hack: fake get param from url path + $_GET["lang"] = $param_lang; + + // initialize + Data::$lang_object = new Lang(list: ["de", "en"], default: "de"); + Data::$lang = Data::$lang_object->get(); + + // load dict + Data::$dict = new Lang_Dict(Data::$lang_object); + require("./page/strings.php"); +?> diff --git a/page/start/index.php b/page/start/index.php index 578ed9e..c4fe8ec 100644 --- a/page/start/index.php +++ b/page/start/index.php @@ -1,7 +1,7 @@ diff --git a/page/strings.php b/page/strings.php new file mode 100644 index 0000000..49bada5 --- /dev/null +++ b/page/strings.php @@ -0,0 +1,8 @@ +define([ + + ]); +?> From 7d04f1819889070a2bff9b3175be564b78b8fc89 Mon Sep 17 00:00:00 2001 From: DrMaxNix Date: Sun, 25 Feb 2024 18:09:02 +0100 Subject: [PATCH 3/9] :bug: use data class --- page/strings.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/page/strings.php b/page/strings.php index 49bada5..0a02207 100644 --- a/page/strings.php +++ b/page/strings.php @@ -2,7 +2,7 @@ declare(strict_types = 1); namespace Kimendisch\Thi_Hub; - $dict->define([ + Data::$dict->define([ ]); ?> From f79ccde0af1198118652ce1c66b0e4fd2d561019 Mon Sep 17 00:00:00 2001 From: DrMaxNix Date: Sun, 25 Feb 2024 18:19:08 +0100 Subject: [PATCH 4/9] :bento: add logo --- asset/logo-1024.png | Bin 0 -> 18461 bytes asset/logo-2048.png | Bin 0 -> 47617 bytes asset/logo-256.png | Bin 0 -> 3495 bytes asset/logo-512.png | Bin 0 -> 8208 bytes asset/logo-bg-1024.png | Bin 0 -> 19783 bytes asset/logo-bg-2048.png | Bin 0 -> 50854 bytes asset/logo-bg-256.png | Bin 0 -> 3797 bytes asset/logo-bg-512.png | Bin 0 -> 8880 bytes asset/logo.svg | 12 ++++++++++++ 9 files changed, 12 insertions(+) create mode 100644 asset/logo-1024.png create mode 100644 asset/logo-2048.png create mode 100644 asset/logo-256.png create mode 100644 asset/logo-512.png create mode 100644 asset/logo-bg-1024.png create mode 100644 asset/logo-bg-2048.png create mode 100644 asset/logo-bg-256.png create mode 100644 asset/logo-bg-512.png create mode 100644 asset/logo.svg diff --git a/asset/logo-1024.png b/asset/logo-1024.png new file mode 100644 index 0000000000000000000000000000000000000000..77b9feaacda8b14c41b844d4b88eca3090f5312e GIT binary patch literal 18461 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 literal 0 HcmV?d00001 diff --git a/asset/logo-2048.png b/asset/logo-2048.png new file mode 100644 index 0000000000000000000000000000000000000000..b146c4cce464f43a6ebc5c610f45e52d1c91fa86 GIT binary patch literal 47617 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 literal 0 HcmV?d00001 diff --git a/asset/logo-256.png b/asset/logo-256.png new file mode 100644 index 0000000000000000000000000000000000000000..85053e6a2dce5ddb71c739c3b096d7ef6d39b6ea GIT binary patch literal 3495 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 p8N)C)y|?Ena9lY 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 R|1~`DmCNdiIhXD{`Cmd>8Pfm& literal 0 HcmV?d00001 diff --git a/asset/logo-bg-2048.png b/asset/logo-bg-2048.png new file mode 100644 index 0000000000000000000000000000000000000000..7a3cdf32125ad0144bb7a4dcfb49249e91c138b9 GIT binary patch literal 50854 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

I1@ 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%0Dgyx{ISf%YVTzWtS6BU4|YaG(jg)Ic)5tG zx!zMO4_5kg^sX-Q44LE8c=m<@_n{MF{s*SnE0m+6W#Xjnp>bDN?vF;e|`d zwYmd?zDQpQDN@U`!c>=jz9IS)E6jG2rXF}NmO9L3Fo8Y|Em=uT#KID;e%K`KD_bZ` zf#dakVL^d7@=TFm*IKKzX?hc^-e#9Tb=?|kXT*`0#A|=H+A@^+rG*9iBUZilOoTtzhW`Od)hM@Lq)wa+M<1-ct7?u+7kykd`h9Fz=gc ze6*hkH_P<6ce%?H&Wt@M*bOcRY*2!h#?sF${597cEDyL#LU}>=mU06clVPD_Ax! zcMXF4&7N`3gKH+?QyhP$O&haF;bQE9{HB55uV^Pi9u&@XWH0q65<#c(+9V%IEBq?5 zcH0}6z`oD{H}ukSdk7vl{oE8)-2hd$WnG_VC4b)H-hG?4XQ6OzEPJXy5o=n!6=oN6 zVt+ibIs2MQ{?fAP0=K>XCdeYiH%^XP>3L=6DHq>yBM=et#Lw3kQhdJRLp!pfMGQ@` zLE#NM`PE78VuF#~#-jAHY`mx>^@teFWCSFluv=UPaqS{?e#6>42T6R%);F{CHYFvv z;oUQeHNJ^1zB;<=DFJLhSEr14xe3EDE+1Kz_jI~Grq1rh=!^PtX`RS7n~~s z>=YL(v+?uB4oiIoU^8A0&&bLu`9e)=y7a>wz@vNbVpL40gC6(fb*Ui&MG2BWiNDg1-wW&9f%C4Ett!Gzh{)@^lPLESS4vw_$v?-x#QfaOi@$O=!DH zEcR!D<;nix^A{ZWu1zOo~ZeY#pg|M);Dtg}G?dS{1i zM&wbaLx*tf-0uuh{HUKkRi~nXB|qEJxy#YnV=Sv^Z(aPE5Rp!MPXb4u4%iei2_j9b zP8k_GPT68$fivWhesT*sWL1YVc4bc#hD&*>Yvx`#`^5N$zYfG-_Gpf4*6+dXMKNA; zEG#+~^vszr*K7qnEV-5>QcS%-wr!WPz6w_%)n`xt5JEIP1b43tnB=2vMIwg|HL9Mn z&eQSP7X%uwo!qVBFz{ZkH~xiP@Dx*Fw;otySDF90k5W>{Nj9W8S4W@Eu`&n0fG?Hr zJy>tfiQDBJxmsB$1mTjqo4P~~rsVWibB`9^R(Ez`kZUiZ6MtZiJgfkdilI=9P13sW5G1VGyOOu4O6fx0v`R&mgGMRRr z%=8H_2-Nnw!%U=v3)klCijQPf`1vyxv6(E|54cX7QVw}q+GCl(fb-wqb0lmL+~(wpohB3P9oX9!aU!H_69_Yl$emMhYVN*JYD zv`r5Vo*%Td4(xAie48rAs9}|a9|(@Bt!**q@d?z{mpVFLuy6|N*?PpG!>Orsaf+!Y zKq!>})(jspnA3s>bNRTFvy+;;JEWD*P}4o7Ti+BzNK$zU6K#BOd`OZ(JAE?{`@-Yf z>+qwVZm?ZiJksENOO+sgM^=ee)j9^>>L~#^N)@m9~>JEP8lB`933V+1KM$}d^`5YbHR0mL~1q~ z1I_G1S3AY{4|Is`PkC;yN8oh6K*$@N&c5E>%qD*8`o*JHuRnPj1o=Kb`uPb82?at5 zC1M#HV;pX|3*$37RNlwOeP8hR3>>xa^%!`6@s7`uc5`kk`DllAAa(w~3*mlZ6g5$(ocwyd2{RX&ILUqJ6)8vk1*>F>z=9hpB$ g?thgE{42OTFTUoDo0~F#6%2ktwKJ+I$1dObKQb%7 literal 0 HcmV?d00001 diff --git a/asset/logo-bg-256.png b/asset/logo-bg-256.png new file mode 100644 index 0000000000000000000000000000000000000000..addad82253d6034422b936d2a98d40d9589d2f2a GIT binary patch literal 3797 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 literal 0 HcmV?d00001 diff --git a/asset/logo-bg-512.png b/asset/logo-bg-512.png new file mode 100644 index 0000000000000000000000000000000000000000..d733d2e63fc50ee2201a90ad414bcd230831fea1 GIT binary patch literal 8880 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 dTlKq4v8aUjyi9lScMb^BxpGw_@6zo@{|`#U + + + + + + + + + + + From e974aa49c8237524c2352912c89505cacf9c2ec1 Mon Sep 17 00:00:00 2001 From: DrMaxNix Date: Sun, 25 Feb 2024 19:13:50 +0100 Subject: [PATCH 5/9] :sparkles: main page layout (fix #2) --- init.php | 7 + meta.php | 2 + page/footer.php | 34 +++ page/lang_autoselect.php | 14 ++ page/page_base.php | 21 ++ page/start/index.php | 54 +++++ page/strings.php | 34 +++ page/style.css | 440 +++++++++++++++++++++++++++++++++++++++ 8 files changed, 606 insertions(+) create mode 100644 page/footer.php create mode 100644 page/page_base.php create mode 100644 page/style.css diff --git a/init.php b/init.php index e548d72..fa24e8f 100644 --- a/init.php +++ b/init.php @@ -24,5 +24,12 @@ * @var Lang_Dict $dict Dict object for current client. */ public static Lang_Dict $dict; + + + + /** + * @var array $alternate Urls for this page in alternate language. + */ + public static array $alternate = []; } ?> diff --git a/meta.php b/meta.php index 7166d7f..72b06f5 100644 --- a/meta.php +++ b/meta.php @@ -9,6 +9,8 @@ static::$ext[] = "lang"; static::$ext[] = "request"; static::$ext[] = "url"; + static::$ext[] = "page"; + static::$ext[] = "file"; // ROUTES // diff --git a/page/footer.php b/page/footer.php new file mode 100644 index 0000000..609a249 --- /dev/null +++ b/page/footer.php @@ -0,0 +1,34 @@ + + + + + + +

diff --git a/page/lang_autoselect.php b/page/lang_autoselect.php index 3fbb7fe..71bbdeb 100644 --- a/page/lang_autoselect.php +++ b/page/lang_autoselect.php @@ -5,6 +5,7 @@ use Flake\Lang; use Flake\Lang_Dict; use Flake\Request; + use Flake\Url; use Flake\Url_redirect; // MAYBE REDIRECT // @@ -38,4 +39,17 @@ // load dict Data::$dict = new Lang_Dict(Data::$lang_object); require("./page/strings.php"); + + + // BUILD ALTERNATE LANGUAGE URLS // + // get content path + $content_path_raw = Request::path_raw(); + $content_path_raw = array_splice($content_path_raw, 1); + + // prepend lang codes + foreach(["de", "en"] as $one_lang_code){ + $path_raw = $content_path_raw; + array_unshift($path_raw, $one_lang_code); + Data::$alternate[$one_lang_code] = Url::path_modify(implode("/", $path_raw)); + } ?> diff --git a/page/page_base.php b/page/page_base.php new file mode 100644 index 0000000..97cc502 --- /dev/null +++ b/page/page_base.php @@ -0,0 +1,21 @@ +'; + Page::$head["alternate_en"] = ''; + + Page::author("Kim Endisch"); + Page::$head["analytics"] = ''; + + Page::css("./page/style.css"); + Page::font("ubuntu"); + Page::font("tabler"); +?> diff --git a/page/start/index.php b/page/start/index.php index c4fe8ec..e1cfbc2 100644 --- a/page/start/index.php +++ b/page/start/index.php @@ -1,7 +1,61 @@ get("title")); + Page::description(Data::$dict->get("description")); + + Page::robots(index: true, follow: true); + Page::keywords("thi", "thi hub", "thi links", "hochschule", "ingolstadt", "hochschule ingolstadt"); +?> + + + + + +
+
+ + +
+
+ + About Title +
+
+
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. +
+
+
+
+
+ + + + diff --git a/page/strings.php b/page/strings.php index 0a02207..ddfed63 100644 --- a/page/strings.php +++ b/page/strings.php @@ -3,6 +3,40 @@ namespace Kimendisch\Thi_Hub; Data::$dict->define([ + "title" => [ + "de" => "THI-Hub.de", + "en" => "THI-Hub.de", + ], + "description" => [ + "de" => "Ein übersichtlicher Hub für Student*innen der THI", + "en" => "A simple hub for THI students", + ], + + + + + "text_sourcecode" => [ + "de" => "Quellcode", + "en" => "Source Code" + ], + + "text_imprint" => [ + "de" => "Impressum", + "en" => "Imprint" + ], + "link_imprint" => [ + "de" => "https://www.tjdev.de/impressum", + "en" => "https://www.tjdev.de/imprint" + ], + + "text_privacy_policy" => [ + "de" => "Datenschutz­erklärung", + "en" => "Privacy Policy" + ], + "link_privacy_policy" => [ + "de" => "https://www.tjdev.de/datenschutz", + "en" => "https://www.tjdev.de/privacy" + ], ]); ?> diff --git a/page/style.css b/page/style.css new file mode 100644 index 0000000..7bb28a9 --- /dev/null +++ b/page/style.css @@ -0,0 +1,440 @@ +:root { + --color-bg: #21252b; + --color-bg-light: #2c313a; + + --color-white: #c5cad3; + + --color-gray-light: #acb0b9; + --color-gray: #828997; + --color-gray-dark: #5c6370; + --color-gray-dark-dark: #454b54; + + --color-red: #e06c75; + --color-red-light: #e9969d; + --color-red-dark: #cb4d58; + + --color-orange: #d19a66; + --color-orange-light: #ddb48d; + --color-orange-dark: #b9804b; + + --color-yellow: #dace71; + --color-yellow-light: #e5dc9a; + --color-yellow-dark: #c4b754; + + --color-green: #98c379; + --color-green-light: #b3d39c; + --color-green-dark: #7fa762; + + --color-cyan: #71d6bc; + --color-cyan-light: #98e1cf; + --color-cyan-dark: #55bea4; + + --color-blue: #61afef; + --color-blue-light: #90c7f4; + --color-blue-dark: #3e97e0; + + --color-purple: #c678dd; + --color-purple-light: #d7a1e8; + --color-purple-dark: #af5bc8; + + + + --theme: var(--color-cyan); + --theme-light: var(--color-cyan-light); + --theme-dark: var(--color-cyan-dark); +} +* { + box-sizing: border-box; +} + + + +html, body { + margin: 0; + padding: 0; + overflow-x: hidden; + + color: var(--color-white); + background-color: var(--color-bg); +} +html { + font-size: 16px; +} +@media only screen and (max-width: 1000px) { + html { + font-size: 14px; + } +} +body { + min-height: 100vh; + min-height: 100dvh; + + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + + font-size: 0; + font-family: "Ubuntu", sans-serif; +} +span { + display: block; + font-size: 1rem; +} +a { + text-decoration: none; +} +span a { + color: var(--theme); +} +span a:hover { + text-decoration: underline; + cursor: pointer; +} +span.gray a { + color: var(--color-gray); + text-decoration: underline; + text-decoration-style: dotted; +} +span.gray a:hover { + text-decoration-style: solid; +} +button { + all: unset; +} +button:focus { + outline: revert; +} + +.colored { + color: var(--theme); +} +.gray { + color: var(--color-gray); +} +.gray-dark { + color: var(--color-gray-dark-dark); +} +.white { + color: var(--color-white); +} + +.hidden { + visibility: hidden !important; +} +.gone { + display: none !important; +} + +.select-none { + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} + + + + + +/* PAGE LAYOUT */ +.page-container { + flex-grow: 1; + + display: flex; + flex-direction: column; + align-items: center; + justify-content: flex-start; +} +.page { + max-width: 60vw; + + padding: 6rem 2rem; + + display: flex; + flex-direction: column; + gap: 6rem; + + text-align: center; +} +@media only screen and (max-width: 1600px) { + .page { + max-width: 75vw; + } +} +@media only screen and (max-width: 1300px) { + .page { + max-width: 85vw; + } +} +@media only screen and (max-width: 1000px) { + .page { + max-width: 100vw; + padding: 6rem 1rem; + } +} + + + + + +/* PAGE TITLE */ +.page > .title { + display: flex; + flex-direction: column; + gap: 1rem; + + margin: 2rem 0; +} +@media only screen and (max-width: 1000px) { + .page > .title { + margin: 0 0; + } +} +.page > .title h1, .page > .title h2 { + align-self: center; + margin: 0; +} + +.page > .title h1 { + font-size: 3rem; + + background-image: linear-gradient(to right, var(--color-red), var(--color-orange), var(--color-yellow), var(--color-green), var(--color-blue), var(--color-purple)); + -webkit-background-clip: text; + color: transparent; +} +.page > .title h2 { + font-size: 1.5rem; +} + + + + + +/* SECTIONS */ +.section { + display: flex; + flex-direction: column; + + width: 100%; +} + +.section > .header { + align-self: flex-start; + + position: relative; + padding-right: 0.5rem; + + display: inline-flex; + flex-direction: row; + align-items: center; + justify-content: flex-start; + gap: 0.5rem; + + color: var(--theme); +} +.section > .header .extra { + color: var(--color-gray); +} + +.section > .content { + display: flex; + flex-direction: column; + gap: 1rem; + + padding: 1rem 2rem; +} +.section > .content.rows { + flex-direction: row; + flex-wrap: wrap; + align-items: flex-start; + justify-content: center; +} + + + + + +/* BOX */ +.box { + display: flex; + flex-direction: column; + align-items: center; + gap: 1rem; + + padding: 2rem; + + border-radius: 2rem; + background-color: var(--color-bg-light); +} +.box.shrink { + display: inline-flex; +} + +.box .title, .box .extra { + display: inline-flex; + flex-direction: row; + justify-content: center; + align-items: baseline; + gap: 0.5rem; +} +.box .title { + position: relative; + left: -0.5rem; + padding-left: 0.5rem; + + color: var(--theme); + font-size: 1.5rem; +} +.box .extra { + color: var(--color-gray); +} + + + + + +/* BUTTONS */ +.button-list { + display: flex; + flex-wrap: wrap; + justify-content: center; + gap: 1rem; +} + +.button, .button.disabled:hover { + align-items: center; + + display: inline-flex; + gap: 0.5rem; + width: fit-content; + padding: 1rem 1.5rem; + + color: var(--color-white); + border-radius: 1rem; + background-color: var(--color-gray-dark-dark); + + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} +.button.on-bg { + background-color: var(--color-bg-light); +} +.button:hover { + cursor: pointer; +} +.button:hover { + background-color: var(--color-gray-dark); +} +.button.on-bg:hover { + background-color: var(--color-gray-dark-dark); +} +.button.disabled { + opacity: 0.3; +} +.button.disabled:hover { + cursor: not-allowed; +} + +.button.primary, .button.primary.disabled:hover { + color: var(--color-bg); + background-color: var(--theme); +} +.button.primary:hover { + background-color: var(--theme-dark); +} + +.button .icon.big { + font-size: 2rem; +} +.button .text { + display: inline-flex; + flex-flow: column; + align-items: flex-start; +} + +.button.red, .button.red.disabled:hover, .button.orange, .button.orange.disabled:hover, .button.yellow, .button.yellow.disabled:hover, .button.green, .button.green.disabled:hover, .button.cyan, .button.cyan.disabled:hover, .button.blue, .button.blue.disabled:hover, .button.purple, .button.purple.disabled:hover { + color: var(--color-bg); +} +.button.red, .button.red.disabled:hover { background-color: var(--color-red); } +.button.red:hover { background-color: var(--color-red-dark); } +.button.orange, .button.orange.disabled:hover { background-color: var(--color-orange); } +.button.orange:hover { background-color: var(--color-orange-dark); } +.button.yellow, .button.yellow.disabled:hover { background-color: var(--color-yellow); } +.button.yellow:hover { background-color: var(--color-yellow-dark); } +.button.green, .button.green.disabled:hover { background-color: var(--color-green); } +.button.green:hover { background-color: var(--color-green-dark); } +.button.cyan, .button.cyan.disabled:hover { background-color: var(--color-cyan); } +.button.cyan:hover { background-color: var(--color-cyan-dark); } +.button.blue, .button.blue.disabled:hover { background-color: var(--color-blue); } +.button.blue:hover { background-color: var(--color-blue-dark); } +.button.purple, .button.purple.disabled:hover { background-color: var(--color-purple); } +.button.purple:hover { background-color: var(--color-purple-dark); } + + + + + +/* FOOTER */ +.footer { + width: 100%; + + display: flex; + flex-direction: row; + justify-content: space-between; + flex-wrap: wrap; + gap: 1rem; + + padding: 1rem; + + background-color: var(--color-bg-light); +} +.footer > div { + flex-grow: 1; + flex-shrink: 1; + flex-basis: 0px; + + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; + gap: 0.5rem; + + text-align: center; +} +@media only screen and (max-width: 1000px) { + .footer > div { + flex-basis: 100%; + justify-content: center !important; + } +} + +.footer > div a { + font-size: 1rem; + color: var(--theme); +} +.footer > div a:hover { + text-decoration: underline; +} + +.footer .delimiter { + color: var(--color-gray); +} +.footer .brand { + justify-content: flex-start; +} +.footer .legal { + justify-content: flex-end; +} + +.footer .brand img { + height: 2rem; +} +.footer .brand .version { + color: var(--color-gray); +} + +.footer .lang .selected { + font-weight: bold; + color: inherit; +} From a74981bdbbf3fc91df6bd77df8f0e3c767c483d8 Mon Sep 17 00:00:00 2001 From: DrMaxNix Date: Fri, 1 Mar 2024 15:44:50 +0100 Subject: [PATCH 6/9] :art: end all lines with comma --- page/strings.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/page/strings.php b/page/strings.php index ddfed63..88adb5c 100644 --- a/page/strings.php +++ b/page/strings.php @@ -18,25 +18,25 @@ "text_sourcecode" => [ "de" => "Quellcode", - "en" => "Source Code" + "en" => "Source Code", ], "text_imprint" => [ "de" => "Impressum", - "en" => "Imprint" + "en" => "Imprint", ], "link_imprint" => [ "de" => "https://www.tjdev.de/impressum", - "en" => "https://www.tjdev.de/imprint" + "en" => "https://www.tjdev.de/imprint", ], "text_privacy_policy" => [ "de" => "Datenschutz­erklärung", - "en" => "Privacy Policy" + "en" => "Privacy Policy", ], "link_privacy_policy" => [ "de" => "https://www.tjdev.de/datenschutz", - "en" => "https://www.tjdev.de/privacy" + "en" => "https://www.tjdev.de/privacy", ], ]); ?> From 57f43c2d3e22c1da460045b6c99fd2943477f992 Mon Sep 17 00:00:00 2001 From: DrMaxNix Date: Fri, 1 Mar 2024 16:23:00 +0100 Subject: [PATCH 7/9] :sparkles: quicklink buttons (fix #3) --- page/start/index.php | 11 +++---- page/strings.php | 73 ++++++++++++++++++++++++++++++++++++++++++++ page/style.css | 5 ++- 3 files changed, 82 insertions(+), 7 deletions(-) diff --git a/page/start/index.php b/page/start/index.php index e1cfbc2..ef5de97 100644 --- a/page/start/index.php +++ b/page/start/index.php @@ -26,14 +26,13 @@