Optimized menus

This commit is contained in:
Kevin Veen-Birkenbach 2025-01-08 19:37:24 +01:00
parent cc04bbf0f5
commit 4b2c251e79
8 changed files with 195 additions and 270 deletions

View File

@ -86,18 +86,6 @@
}
],
"networks": [
{
"name": "GitHub",
"icon": "bi bi-github",
"link": "https://github.com/kevinveenbirkenbach"
},
{
"name": "Instagram",
"icon": "fa-brands fa-instagram",
"link": "https://www.instagram.com/kevinveenbirkenbach/"
}
],
"company": {
"titel": "Kevin Veen-Birkenbach",
"subtitel": "Consulting and Coaching Solutions",
@ -107,22 +95,112 @@
"postal_code": "DE-13351",
"city": "Berlin",
"country": "Germany"
}
},
"imprint_url": "https://s.veen.world/imprint"
},
"navigation": [
"navigation": {
"header":[
{
"name": "Microblog",
"description": "Read my microblogs",
"icon_class": "fa-brands fa-mastodon",
"href": "https://microblog.veen.world/@kevinveenbirkenbach",
"subitems": []
},
{
"name": "Pictures",
"description": "View my photo gallery",
"icon_class": "fa-solid fa-camera",
"href": "https://picture.veen.world/kevinveenbirkenbach",
"subitems": []
},
{
"name": "Videos",
"description": "Watch my videos",
"icon_class": "fa-solid fa-video",
"href": "https://video.veen.world/a/kevinveenbirkenbach",
"subitems": []
},
{
"name": "Blog",
"description": "Read my blog",
"icon_class": "fa-solid fa-blog",
"href": "https://blog.veen.world",
"subitems": []
},
{"name": "Code",
"icon_class": "fa-solid fa-laptop-code",
"subitems": [
{
"name": "Github",
"description": "View my GitHub profile",
"icon_class": "bi bi-github",
"href": "https://github.com/kevinveenbirkenbach",
"subitems": []
},
{
"name": "Gitea",
"description": "Explore my code repositories",
"icon_class": "fa-solid fa-code",
"href": "https://git.veen.world/kevinveenbirkenbach",
"subitems": []
}
]
},
{
"name": "Logbooks",
"description": "My activity logs",
"icon_class": "fa-solid fa-book",
"href": null,
"subitems": [
{
"name": "Skydiver",
"description": "View my skydiving logs",
"icon_class": "fa-solid fa-parachute-box",
"href": "https://s.veen.world/skydiverlog",
"subitems": []
},
{
"name": "Skipper",
"description": "See my sailing records",
"icon_class": "fa-solid fa-sailboat",
"href": "https://s.veen.world/meilenbuch",
"subitems": []
},
{
"name": "Diver",
"description": "Check my diving logs",
"icon_class": "fa-solid fa-fish",
"href": "https://s.veen.world/diverlog",
"subitems": []
},
{
"name": "Pilot",
"description": "Review my flight logs",
"icon_class": "fa-solid fa-plane",
"href": "https://s.veen.world/pilotlog",
"subitems": []
},
{
"name": "Nature",
"description": "Explore my nature logs",
"icon_class": "fa-solid fa-tree",
"href": "https://s.veen.world/naturejournal",
"subitems": []
}
]
}
],
"footer":
[
{
"name": "Networks",
"name": "Social Media",
"description": "Social and developer networks",
"icon_class": "fa-solid fa-network-wired",
"href": null,
"subitems": [
{
"name": "GitHub",
"description": "View my GitHub profile",
"icon_class": "bi bi-github",
"href": "https://github.com/kevinveenbirkenbach",
"subitems": []
},
{
"name": "Instagram",
"description": "Follow me on Instagram",
@ -131,20 +209,6 @@
"subitems": []
},
{
"name": "XING",
"description": "Visit my XING profile",
"icon_class": "bi bi-building",
"href": "https://www.xing.com/profile/Kevin_VeenBirkenbach",
"subitems": []
},
{
"name": "LinkedIn",
"description": "Connect on LinkedIn",
"icon_class": "bi bi-linkedin",
"href": "https://www.linkedin.com/in/kevinveenbirkenbach",
"subitems": []
},
{
"name": "Facebook",
"description": "Like my Facebook page",
"icon_class": "fa-brands fa-facebook",
@ -168,127 +232,50 @@
]
},
{
"name": "Fediverse",
"name": "Community",
"description": "My presence in the Fediverse",
"icon_class": "fa-brands fa-mastodon",
"href": null,
"subitems": [
{
"name": "Microblog",
"description": "Read my microblogs",
"icon_class": "fa-brands fa-mastodon",
"href": "https://microblog.veen.world/@kevinveenbirkenbach",
"subitems": []
},
{
"name": "Pictures",
"description": "View my photo gallery",
"icon_class": "fa-solid fa-camera",
"href": "https://picture.veen.world/kevinveenbirkenbach",
"subitems": []
},
{
"name": "Videos",
"description": "Watch my videos",
"icon_class": "fa-solid fa-video",
"href": "https://video.veen.world/a/kevinveenbirkenbach",
"subitems": []
},
{
"name": "Blog",
"description": "Read my blog",
"icon_class": "fa-solid fa-blog",
"href": "https://blog.veen.world",
"subitems": []
},
{
"name": "Code",
"description": "Explore my code repositories",
"icon_class": "fa-solid fa-code",
"href": "https://git.veen.world/kevinveenbirkenbach",
"subitems": []
},
{
"name": "Forum",
"description": "Join the discussion",
"icon_class": "fa-brands fa-discourse",
"href": "https://forum.veen.world/u/kevinveenbirkenbach",
"subitems": []
}
},
{
"name": "Newsletter",
"description": "Subscribe to my newsletter",
"icon_class": "fa-solid fa-envelope-open-text",
"href": "https://newsletter.veen.world/subscription/form",
"subitems": []
},
{
"name": "Patreon",
"description": "Support me on Patreon",
"icon_class": "fa-brands fa-patreon",
"href": "https://patreon.com/kevinveenbirkenbach",
"subitems": []
}
]
},
{
"name": "Engagement",
"description": "Opportunities to interact",
"icon_class": "fa-solid fa-handshake",
"name": "Work Hub",
"description": "Curated collection of self hosted tools for work, organization, and learning.",
"icon_class": "fa-solid fa-toolbox",
"href": null,
"subitems": [
{
"name": "Newsletter",
"description": "Subscribe to my newsletter",
"icon_class": "fa-solid fa-envelope-open-text",
"href": "https://newsletter.veen.world/subscription/form",
"subitems": []
},
{
"name": "Summits",
"description": "Join live events",
"icon_class": "fa-solid fa-video",
"href": "https://meet.veen.world/",
"subitems": []
},
{
"name": "Mail",
"description": "Send me a mail",
"icon_class": "fa-solid fa-envelope",
"href": "https://mail.veen.world/",
"subitems": []
},
{
"name": "Academy",
"description": "Learn with my academy",
"icon_class": "fa-solid fa-graduation-cap",
"href": "https://academy.veen.world/",
"subitems": []
},
{
"name": "Chat",
"description": "Chat with me",
"icon_class": "fa-solid fa-comment",
"href": "https://element.veen.world/",
"subitems": []
},
{
"name": "Links",
"description": "Find my curated links",
"icon_class": "bi bi-link",
"href": "https://s.veen.world/admin/",
"subitems": []
},
{
"name": "Patreon",
"description": "Support me on Patreon",
"icon_class": "fa-brands fa-patreon",
"href": "https://patreon.com/kevinveenbirkenbach",
"subitems": []
}
]
},
{
"name": "Workflow",
"description": "My tools and projects",
"icon_class": "fa-solid fa-briefcase",
"href": null,
"subitems": [
{
"name": "Projects",
"name": "Open Project",
"description": "Explore my projects",
"icon_class": "fa-solid fa-chart-line",
"href": "https://project.veen.world/",
"subitems": []
},
{
"name": "Kanban",
"name": "Taiga",
"description": "View my Kanban board",
"icon_class": "bi bi-clipboard2-check-fill",
"href": "https://kanban.veen.world/",
@ -309,57 +296,70 @@
"subitems": []
},
{
"name": "Cloud",
"name": "Elements",
"description": "Chat with me",
"icon_class": "fa-solid fa-comment",
"href": "https://element.veen.world/",
"subitems": []
},
{
"name": "Big Blue Button",
"description": "Join live events",
"icon_class": "fa-solid fa-video",
"href": "https://meet.veen.world/",
"subitems": []
},
{
"name": "Mailu",
"description": "Send me a mail",
"icon_class": "fa-solid fa-envelope",
"href": "https://mail.veen.world/",
"subitems": []
},
{
"name": "Moodel",
"description": "Learn with my academy",
"icon_class": "fa-solid fa-graduation-cap",
"href": "https://academy.veen.world/",
"subitems": []
},
{
"name": "Yourls",
"description": "Find my curated links",
"icon_class": "bi bi-link",
"href": "https://s.veen.world/admin/",
"subitems": []
},
{
"name": "Nextcloud",
"description": "Access my cloud storage",
"icon_class": "fa-solid fa-cloud",
"href": "https://cloud.veen.world/u/kevinveenbirkenbach",
"href": "https://cloud.veen.world/",
"subitems": []
}
]
},
{
"name": "Logbooks",
"description": "My activity logs",
"icon_class": "fa-solid fa-book",
"href": null,
"subitems": [
{
"name": "Skydiver",
"description": "View my skydiving logs",
"icon_class": "fa-solid fa-parachute-box",
"href": "https://s.veen.world/skydiverlog",
"subitems": []
"name": "Carreer Profiles",
"icon_class": "fa-solid fa-user-tie",
"subitems": [
{
"name": "XING",
"description": "Visit my XING profile",
"icon_class": "bi bi-building",
"href": "https://www.xing.com/profile/Kevin_VeenBirkenbach",
"subitems": []
},
{
"name": "LinkedIn",
"description": "Connect on LinkedIn",
"icon_class": "bi bi-linkedin",
"href": "https://www.linkedin.com/in/kevinveenbirkenbach",
"subitems": []
}
]
},
{
"name": "Skipper",
"description": "See my sailing records",
"icon_class": "fa-solid fa-sailboat",
"href": "https://s.veen.world/meilenbuch",
"subitems": []
},
{
"name": "Diver",
"description": "Check my diving logs",
"icon_class": "fa-solid fa-fish",
"href": "https://s.veen.world/diverlog",
"subitems": []
},
{
"name": "Pilot",
"description": "Review my flight logs",
"icon_class": "fa-solid fa-plane",
"href": "https://s.veen.world/pilotlog",
"subitems": []
},
{
"name": "Nature",
"description": "Explore my nature logs",
"icon_class": "fa-solid fa-tree",
"href": "https://s.veen.world/naturejournal",
"subitems": []
}
]
},
{
"name": "Contact",
"description": "Get in touch",
@ -420,6 +420,11 @@
"subitems": []
}
]
},
{
"name":"Imprint",
"icon_class":"fa-solid fa-scale-balanced",
"href":"https://s.veen.world/imprint"
}
]
] }
}

View File

@ -20,23 +20,24 @@
<img src="{{company.logo}}" alt="logo"/>
<h1>{{company.titel}}</h1>
<h2>{{company.subtitel}}</h2>
<br />
</header>
{% set menu = "top" %}
{% include "navigation.html.j2"%}
{% set menu_type = "header" %}
{% include "moduls/navigation.html.j2"%}
{% block content %}{% endblock %}
{% set menu = "bottom" %}
{% include "navigation.html.j2" %}
{% set menu_type = "footer" %}
{% include "moduls/navigation.html.j2" %}
<footer class="footer">
<div itemscope itemtype="http://schema.org/LocalBusiness" class="small">
<p itemprop="name">{{ company.titel }} <br />
{{ company.subtitel }}</p>
<span><i class="fa-solid fa-location-dot"></i> {{ company.address.values() | join(", ") }}</span>
<p><a href="/imprint"><i class="fa-solid fa-scale-balanced"></i> Imprint</a></p>
<p><a href="{{company.imprint_url}}"><i class="fa-solid fa-scale-balanced"></i> Imprint</a></p>
</div>
</footer>
</div>
<!-- Include modal -->
{% include "modal.html.j2" %}
{% include "moduls/modal.html.j2" %}
<script src="{{ url_for('static', filename='js/dynamic-modal.js') }}"></script>
</body>
</html>

View File

@ -36,8 +36,8 @@
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav {% if menu == 'top' %}ms-auto{% endif %}">
{% for item in navigation %}
<ul class="navbar-nav {% if menu_type == 'header' %}ms-auto{% endif %}">
{% for item in navigation[menu_type] %}
{% if item.href %}
<!-- Single Item -->
<li class="nav-item">

View File

@ -1,41 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>General Terms and Conditions</title>
<style>
body {font-family: Arial, sans-serif; line-height: 1.6;}
h1, h2 {color: #333;}
.container {width: 80%; margin: 0 auto; padding: 20px;}
</style>
</head>
<body>
<div class="container">
<h1>General Terms and Conditions</h1>
<h2>1. Scope of Services</h2>
<p>Kevin Veen-Birkenbach, operating under the business name "Beratungs- und Coachingdienstleistungen," provides various services including consulting, coaching, educational services, freelance assignments, and project-based work.</p>
<h2>2. Payment Terms</h2>
<ul>
<li>Payment is due upon booking any service.</li>
<li>In case of cancellation more than 30 days before the scheduled service, the client is entitled to a full refund.</li>
<li>If cancellation occurs less than 30 days but more than 14 days before the service, 50% of the total fee will be retained.</li>
<li>For cancellations less than 14 days prior to the service, 100% of the total fee will be retained.</li>
<li>If the service is cancelled by Kevin Veen-Birkenbach for any reason, the client is entitled to a full refund.</li>
</ul>
<h2>3. Contact Information</h2>
<p>Kevin Veen-Birkenbach<br>
Beratungs- und Coachingdienstleistungen<br>
Afrikanische Straße 43, 13351 Berlin, Germany<br>
Phone: +491781798023<br>
Email: <a href="mailto:kevin@veen.world">kevin@veen.world</a></p>
<h2>4. Tax Identification</h2>
<p>VAT ID: 23/569/00564</p>
<h2>5. Amendments and Validity</h2>
<p>These terms and conditions are subject to change. The version valid at the time of booking will apply.</p>
</div>
</body>
</html>

View File

@ -1,40 +0,0 @@
<html>
<header>
<title>Impressum</title>
<meta charset="utf-8" >
</header>
<body>
<h1>Impressum</h1>
<h2>Angaben gem&auml;&szlig; &sect; 5 TMG</h2>
<p>Kevin Veen-Birkenbach<br />
Beratungs- und Coachingdienstleistungen<br />
Afrikanische Stra&szlig;e 43<br />
13351 Berlin</p>
<h2>Kontakt</h2>
<p>Telefon: +491781798023<br />
E-Mail: kevin@veen.world</p>
<h2>Umsatzsteuer-ID</h2>
<p>Umsatzsteuer-Identifikationsnummer gem&auml;&szlig; &sect; 27 a Umsatzsteuergesetz:<br />
23/569/00564</p>
<h2>Angaben zur Berufs&shy;haftpflicht&shy;versicherung</h2>
<p><strong>Name und Sitz des Versicherers:</strong><br />
Markel Insurance SE<br />
Sophienstr. 26<br />
80333 M&uuml;nchen<br />
Registergericht: Amtsgericht M&uuml;nchen<br />
Handelsregisternummer: HRB 233618</p>
<p><strong>Geltungsraum der Versicherung:</strong><br />Weltweit</p>
<h2>Redaktionell verantwortlich</h2>
<p>Kevin Veen-Birkenbach</p>
<h2>Verbraucher&shy;streit&shy;beilegung/Universal&shy;schlichtungs&shy;stelle</h2>
<p>Universalschlichtungsstelle des Bundes<br>
Zentrums für Schlichtung e.V.<br>
Straßburger Straße 8<br>
77694 Kehl am Rhein</p>
</body>

View File

@ -1,9 +1,9 @@
{% extends "base.html" %}
{% extends "moduls/base.html.j2" %}
{% block content %}
<div class="row">
{% for card in cards %}
{% include "card.html.j2" %}
{% include "moduls/card.html.j2" %}
{% endfor %}
</div>
{% endblock %}