Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
53d5309d65 | |||
a131fc8077 | |||
deec62fec0 | |||
9e5906943d |
@@ -42,7 +42,7 @@ Diese moderne Python-Webanwendung (Flask) ermöglicht verschiedene Datumsberechn
|
|||||||
|
|
||||||
Datumsrechner Live: [https://date.elpatron.me](https://date.elpatron.me)
|
Datumsrechner Live: [https://date.elpatron.me](https://date.elpatron.me)
|
||||||
|
|
||||||

|
[](https://date.elpatron.me)
|
||||||
|
|
||||||
**[Lighthouse](https://en.wikipedia.org/wiki/Lighthouse_(software))-Performance-Score:**
|
**[Lighthouse](https://en.wikipedia.org/wiki/Lighthouse_(software))-Performance-Score:**
|
||||||
|
|
||||||
|
6
app.py
6
app.py
@@ -503,6 +503,12 @@ def api_docs():
|
|||||||
response = make_response(render_template('swagger.html'))
|
response = make_response(render_template('swagger.html'))
|
||||||
return add_cache_headers(response)
|
return add_cache_headers(response)
|
||||||
|
|
||||||
|
@app.route('/sitemap.xml')
|
||||||
|
def sitemap():
|
||||||
|
"""Serviert die Sitemap für Suchmaschinen"""
|
||||||
|
from flask import send_file
|
||||||
|
return send_file('sitemap.xml', mimetype='application/xml')
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
app.run(debug=True, host="0.0.0.0")
|
app.run(debug=True, host="0.0.0.0")
|
Binary file not shown.
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 57 KiB |
14
robots.txt
14
robots.txt
@@ -1,2 +1,14 @@
|
|||||||
User-agent: *
|
User-agent: *
|
||||||
Allow: /
|
Allow: /
|
||||||
|
|
||||||
|
# Sitemap
|
||||||
|
Sitemap: https://date.elpatron.me/sitemap.xml
|
||||||
|
|
||||||
|
# Disallow private areas
|
||||||
|
Disallow: /stats
|
||||||
|
Disallow: /log/
|
||||||
|
Disallow: /htmlcov/
|
||||||
|
|
||||||
|
# Allow API endpoints for documentation
|
||||||
|
Allow: /api-docs
|
||||||
|
Allow: /static/swagger.json
|
83
sitemap.xml
Normal file
83
sitemap.xml
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||||
|
<!-- Hauptseite -->
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>weekly</changefreq>
|
||||||
|
<priority>1.0</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<!-- API-Dokumentation -->
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/api-docs</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>monthly</changefreq>
|
||||||
|
<priority>0.8</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<!-- Statische Ressourcen -->
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/static/favicon.ico</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>yearly</changefreq>
|
||||||
|
<priority>0.1</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/static/favicon.png</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>yearly</changefreq>
|
||||||
|
<priority>0.1</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/static/favicon.svg</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>yearly</changefreq>
|
||||||
|
<priority>0.1</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/static/logo.svg</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>yearly</changefreq>
|
||||||
|
<priority>0.1</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/static/manifest.json</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>monthly</changefreq>
|
||||||
|
<priority>0.3</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/static/service-worker.js</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>monthly</changefreq>
|
||||||
|
<priority>0.3</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/static/swagger.json</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>monthly</changefreq>
|
||||||
|
<priority>0.5</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<!-- Sprachversionen der Hauptseite -->
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/?lang=de</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>weekly</changefreq>
|
||||||
|
<priority>0.9</priority>
|
||||||
|
</url>
|
||||||
|
|
||||||
|
<url>
|
||||||
|
<loc>https://date.elpatron.me/?lang=en</loc>
|
||||||
|
<lastmod>2025-08-03</lastmod>
|
||||||
|
<changefreq>weekly</changefreq>
|
||||||
|
<priority>0.9</priority>
|
||||||
|
</url>
|
||||||
|
</urlset>
|
@@ -498,9 +498,9 @@ button:focus, .accordion-header:focus {
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0.5em;
|
top: 0.5em;
|
||||||
right: 0.5em;
|
right: 0.5em;
|
||||||
background: rgba(37, 99, 235, 0.15);
|
background: #ffffff;
|
||||||
color: var(--primary-dark);
|
color: #000000;
|
||||||
border: 1px solid var(--border);
|
border: 2px solid #000000;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
padding: 0.3em 0.6em;
|
padding: 0.3em 0.6em;
|
||||||
font-size: 0.8em;
|
font-size: 0.8em;
|
||||||
@@ -514,19 +514,20 @@ button:focus, .accordion-header:focus {
|
|||||||
z-index: 5;
|
z-index: 5;
|
||||||
}
|
}
|
||||||
.read-aloud-btn:hover {
|
.read-aloud-btn:hover {
|
||||||
background: rgba(37, 99, 235, 0.25);
|
background: #f0f0f0;
|
||||||
border-color: var(--primary);
|
border-color: #333333;
|
||||||
}
|
}
|
||||||
.read-aloud-btn:focus {
|
.read-aloud-btn:focus {
|
||||||
outline: 3px solid #facc15;
|
outline: 3px solid #facc15;
|
||||||
outline-offset: 2px;
|
outline-offset: 2px;
|
||||||
box-shadow: 0 0 0 4px #1e293b;
|
box-shadow: 0 0 0 4px #1e293b;
|
||||||
background: rgba(37, 99, 235, 0.25);
|
background: #f0f0f0;
|
||||||
border-color: var(--primary);
|
border-color: #333333;
|
||||||
}
|
}
|
||||||
.read-aloud-btn.playing {
|
.read-aloud-btn.playing {
|
||||||
background: var(--primary);
|
background: #000000;
|
||||||
color: white;
|
color: #ffffff;
|
||||||
|
border-color: #000000;
|
||||||
}
|
}
|
||||||
.accordion {
|
.accordion {
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
@@ -1499,7 +1500,7 @@ footer br + a {
|
|||||||
{% if request.form.get('werktage') %}
|
{% if request.form.get('werktage') %}
|
||||||
{{ _('Anzahl der Werktage zwischen') }} <b>{{ format_date(request.form.get('start1', '')) }}</b> {{ _('und') }} <b>{{ format_date(request.form.get('end1', '')) }}:</b>{% if request.form.get('bundesland') %} {{ _('(Feiertage:') }} {{ request.form.get('bundesland') }}){% endif %}: {{ tage }}
|
{{ _('Anzahl der Werktage zwischen') }} <b>{{ format_date(request.form.get('start1', '')) }}</b> {{ _('und') }} <b>{{ format_date(request.form.get('end1', '')) }}:</b>{% if request.form.get('bundesland') %} {{ _('(Feiertage:') }} {{ request.form.get('bundesland') }}){% endif %}: {{ tage }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ _('Anzahl der Tage zwischen') }} <b>{{ format_date(request.form.get('start1', '')) }}</b> {{ _('und') }} <b>{{ format_date(request.form.get('end1', '')) }}</b>: {{ tage }}.
|
{{ _('Anzahl der Tage zwischen') }} <b>{{ format_date(request.form.get('start1', '')) }}</b> {{ _('und') }} <b>{{ format_date(request.form.get('end1', '')) }}</b>: {{ tage }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if wochenendtage_anzahl is not none or (feiertage_anzahl is not none and request.form.get('bundesland')) %}
|
{% if wochenendtage_anzahl is not none or (feiertage_anzahl is not none and request.form.get('bundesland')) %}
|
||||||
<br>
|
<br>
|
||||||
|
Reference in New Issue
Block a user