Version 1.1 impressum
This commit is contained in:
parent
3446ab11a0
commit
d5e57e4df2
4
app.py
4
app.py
@ -565,5 +565,9 @@ def admin_user_delete(user_id):
|
|||||||
flash("Benutzer wurde gelöscht.", "success")
|
flash("Benutzer wurde gelöscht.", "success")
|
||||||
return redirect(url_for("admin_users"))
|
return redirect(url_for("admin_users"))
|
||||||
|
|
||||||
|
@app.route("/impressum")
|
||||||
|
def impressum():
|
||||||
|
return render_template("impressum.html")
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
app.run(host="0.0.0.0", port=5000, debug=True)
|
app.run(host="0.0.0.0", port=5000, debug=True)
|
||||||
@ -16,4 +16,4 @@ class Config:
|
|||||||
MAIL_SENDER = os.getenv('MAIL_SENDER', 'admin@kolb.cc')
|
MAIL_SENDER = os.getenv('MAIL_SENDER', 'admin@kolb.cc')
|
||||||
MAIL_USE_TLS = os.getenv('MAIL_USE_TLS', 'false').lower() == 'true'
|
MAIL_USE_TLS = os.getenv('MAIL_USE_TLS', 'false').lower() == 'true'
|
||||||
|
|
||||||
APP_BASE_URL = os.getenv('APP_BASE_URL', 'http://localhost:8086')
|
APP_BASE_URL = os.getenv('APP_BASE_URL', 'https://test.dasunternehmen.com')
|
||||||
|
|||||||
@ -315,3 +315,10 @@ textarea {
|
|||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.btn:disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* contacts verbergen bei self assessment */
|
||||||
|
|||||||
@ -1,17 +1,21 @@
|
|||||||
{% extends 'base.html' %}
|
{% extends "base.html" %}
|
||||||
{% block title %}Themen{% endblock %}
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<section class="card">
|
<div class="content-card">
|
||||||
<h1>Themen</h1>
|
<h1>Self Assessment</h1>
|
||||||
<div class="topic-grid">
|
|
||||||
{% for item in themen %}
|
<p>
|
||||||
<article class="topic-box">
|
Wir helfen Ihnen mit einer kurzen Selbsteinschätzung sich einen Überblick über ihre Unternehmenssituation zu verschaffen.
|
||||||
<h2>{{ item.kurztitel }}</h2>
|
</p>
|
||||||
<h3>{{ item.titel }}</h3>
|
|
||||||
<p>{{ item.infotext }}</p>
|
{% if themen and themen|length > 0 %}
|
||||||
<a class="btn" href="{{ url_for('topic', thema_id=item.id) }}">Thema öffnen</a>
|
<div class="form-actions" style="margin-top: 24px;">
|
||||||
</article>
|
<a class="btn" href="{{ url_for('topic', thema_id=themen[0].id) }}">
|
||||||
{% endfor %}
|
Self Assessment starten
|
||||||
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
{% else %}
|
||||||
|
<p class="muted">Aktuell sind keine Themen verfügbar.</p>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
154
templates/impressum.html
Normal file
154
templates/impressum.html
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block title %}Impressum - dasunternehmen{% endblock %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<div class="content-card">
|
||||||
|
<h1>Impressum</h1>
|
||||||
|
<p class="muted">Information nach dem ECG</p>
|
||||||
|
|
||||||
|
<div class="topic-grid" style="margin-top: 24px;">
|
||||||
|
<div class="topic-box">
|
||||||
|
<h2>Angaben zum Unternehmen</h2>
|
||||||
|
<p>
|
||||||
|
<strong>Brigitta Trsek</strong><br>
|
||||||
|
Dorfstrasse 30<br>
|
||||||
|
2471 Pachfurth, Austria<br>
|
||||||
|
Tel | Phone: +43 676 6590088<br>
|
||||||
|
E-Mail: <a href="mailto:office@dasunternehmen.com">office@dasunternehmen.com</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3>VAT | UID</h3>
|
||||||
|
<p>AT57347758</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="topic-box">
|
||||||
|
<h2>Gewerbeberechtigungen</h2>
|
||||||
|
<p>Berechtigungen:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Schriftsteller/Journalist (freies Gewerbe)</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Spezielle Aufsichtsbehörde</h3>
|
||||||
|
<p>keine</p>
|
||||||
|
|
||||||
|
<h3>Kammerzugehörigkeit</h3>
|
||||||
|
<p>Mitglied der Wirtschaftskammer Niederösterreich</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card" style="margin-top: 24px;">
|
||||||
|
<h2>Rechtliche Hinweise</h2>
|
||||||
|
<p>
|
||||||
|
Datenschutzrichtlinie<br>
|
||||||
|
<a href="https://www.dasunternehmen.com/datenschutzerklaerung/" target="_blank" rel="noopener noreferrer">
|
||||||
|
https://www.dasunternehmen.com/datenschutzerklaerung/
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Nutzungsbedingungen<br>
|
||||||
|
<a href="https://www.dasunternehmen.com/nutzungsbedingungen/" target="_blank" rel="noopener noreferrer">
|
||||||
|
https://www.dasunternehmen.com/nutzungsbedingungen/
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Cookierichtlinie<br>
|
||||||
|
<a href="https://www.dasunternehmen.com/cookierichtlinie/" target="_blank" rel="noopener noreferrer">
|
||||||
|
https://www.dasunternehmen.com/cookierichtlinie/
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Allgemeine Geschäfts- und Lieferbedingungen<br>
|
||||||
|
Download unter:<br>
|
||||||
|
<a href="https://www.dasunternehmen.com/agb/" target="_blank" rel="noopener noreferrer">
|
||||||
|
https://www.dasunternehmen.com/agb/
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<h2>Zentrale Kontaktstelle – DSA</h2>
|
||||||
|
<p>
|
||||||
|
Unsere zentrale Kontaktstelle nach dem Digital Services Act – DSA
|
||||||
|
(Verordnung (EU) 2022/265) für Nutzer und Behörden nach Art. 11, 12 DSA
|
||||||
|
erreichen Sie wie folgt:
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<strong>Brigitta Trsek</strong><br>
|
||||||
|
Dorfstrasse 30<br>
|
||||||
|
2471 Pachfurth, Austria<br>
|
||||||
|
Tel | Phone: +43 676 6590088<br>
|
||||||
|
E-Mail: <a href="mailto:office@dasunternehmen.com">office@dasunternehmen.com</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<h2>§ 25 Mediengesetz</h2>
|
||||||
|
<p>
|
||||||
|
Inhaber sowie Medieninhaber der Website und deren Dienste ist Brigitta Trsek
|
||||||
|
in Vertretung von <b>dasunternehmen.com</b>. Die Website dient der Information über
|
||||||
|
die Aktivitäten und das Produktportfolio des Unternehmens. Alle Inhalte dienen
|
||||||
|
der persönlichen Information. Eine Weiterverwendung und Reproduktion über den
|
||||||
|
persönlichen Gebrauch hinaus ist nicht gestattet. Bilder, Logos und Grafiken
|
||||||
|
dürfen nicht ohne vorherige ausdrückliche schriftliche Genehmigung des jeweiligen
|
||||||
|
Copyrightinhabers veröffentlicht oder weiterverbreitet werden, sei dies zu
|
||||||
|
gewerblichen oder anderen Zwecken.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<h2>Information gemäß § 19 Abs 3 AStG</h2>
|
||||||
|
<p>
|
||||||
|
Gemäß § 19 Abs 3 AStG haben wir den Verbraucher, wenn wir mit diesem in einer
|
||||||
|
eventuellen Streitigkeit keine Einigung erzielen können, auf Papier oder einem
|
||||||
|
anderen dauerhaften Datenträger (z. B. E-Mail) auf die zuständige Stelle zur
|
||||||
|
alternativen Streitbeilegung hinzuweisen.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Verbraucher haben auch die Möglichkeit, sich an die Online-Streitbeilegungsplattform
|
||||||
|
der EU zu wenden:
|
||||||
|
<a href="https://ec.europa.eu/odr" target="_blank" rel="noopener noreferrer">
|
||||||
|
https://ec.europa.eu/odr
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Wir sind gesetzlich zu dieser Information verpflichtet, jedoch nicht gesetzlich
|
||||||
|
dazu verpflichtet, an diesem Verfahren teilzunehmen. Sie können Ihre Beschwerde
|
||||||
|
auch direkt bei uns unter folgender E-Mail-Adresse einbringen:
|
||||||
|
<a href="mailto:office@dasunternehmen.com">office@dasunternehmen.com</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<h2>Information gemäß § 4 Abs 1 Z 19 FAGG</h2>
|
||||||
|
<p>
|
||||||
|
Grundsätzlich unterwerfen wir uns Verbrauchern gegenüber keinem alternativen
|
||||||
|
Streitbeilegungsverfahren. Sollte eine gesetzliche Verpflichtung bestehen,
|
||||||
|
sind die vorgesehenen AS-Stellen hier anzugeben:
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Internet Ombudsmann<br>
|
||||||
|
<a href="https://www.ombudsmann.at" target="_blank" rel="noopener noreferrer">
|
||||||
|
https://www.ombudsmann.at
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Schlichtung für Verbrauchergeschäfte<br>
|
||||||
|
<a href="https://verbraucherschlichtung.or.at" target="_blank" rel="noopener noreferrer">
|
||||||
|
https://verbraucherschlichtung.or.at
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<h2>Newsletter</h2>
|
||||||
|
<p>
|
||||||
|
Der Versand von E-Mail-Nachrichten, Aktionen und Newslettern erfolgt unter
|
||||||
|
Berücksichtigung der Bestimmungen des österreichischen E-Commerce-Gesetzes
|
||||||
|
sowie des Telekommunikationsgesetzes. Wenn Sie künftig keine Informationen
|
||||||
|
mehr erhalten möchten, können Sie sich über den jeweiligen Abmeldelink aus
|
||||||
|
zukünftigen Mailings austragen.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
||||||
@ -1,5 +1,6 @@
|
|||||||
<footer class="site-footer">
|
<footer class="site-footer">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<p>© dasunternehmen – Flask Projektgrundlage</p>
|
<p>© dasunternehmen – <a href="{{ url_for('impressum') }}">Impressum</a></p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|||||||
@ -1,18 +1,34 @@
|
|||||||
{% extends 'base.html' %}
|
{% extends "base.html" %}
|
||||||
{% block title %}Ergebnis{% endblock %}
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<section class="card">
|
<div class="content-card">
|
||||||
<h1>Assessment Ergebnis</h1>
|
<p><strong>Das Ergebnis mit Anmerkungen zur Verbesserung erhalten Sie via email.</strong></p>
|
||||||
<img class="result-chart" src="{{ url_for('generated_chart', filename=chart_file) }}" alt="Assessment Grafik">
|
|
||||||
|
<h1>Ihr Ergebnis</h1>
|
||||||
|
|
||||||
|
<div style="margin: 24px 0;">
|
||||||
|
<img
|
||||||
|
src="{{ url_for('generated_chart', filename=chart_file) }}"
|
||||||
|
alt="Assessment Ergebnis"
|
||||||
|
class="result-chart"
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
<table class="result-table">
|
<table class="result-table">
|
||||||
<thead>
|
<thead>
|
||||||
<tr><th>Thema</th><th>JA Antworten</th></tr>
|
<tr>
|
||||||
|
<th>Thema</th>
|
||||||
|
<th>JA-Antworten</th>
|
||||||
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
{% for row in rows %}
|
{% for row in rows %}
|
||||||
<tr><td>{{ row.kurztitel }}</td><td>{{ row.ja_anzahl }}</td></tr>
|
<tr>
|
||||||
|
<td>{{ row.kurztitel }}</td>
|
||||||
|
<td>{{ row.ja_anzahl }}</td>
|
||||||
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</section>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
@ -8,22 +8,55 @@
|
|||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section class="card">
|
<section class="card">
|
||||||
<form method="post">
|
<form method="post" id="topic-form">
|
||||||
<input type="hidden" name="assessment_id" value="{{ assessment_id }}">
|
<input type="hidden" name="assessment_id" value="{{ assessment_id }}">
|
||||||
|
|
||||||
{% for frage in fragen %}
|
{% for frage in fragen %}
|
||||||
<div class="question-box">
|
<div class="question-box">
|
||||||
<p>{{ loop.index }}. {{ frage.text }}</p>
|
<p><strong>{{ frage.text }}</strong></p>
|
||||||
<div class="radio-row">
|
<div class="radio-row">
|
||||||
<label><input type="radio" name="frage_{{ frage.id }}" value="ja" required> Ja</label>
|
<label>
|
||||||
<label><input type="radio" name="frage_{{ frage.id }}" value="nein"> Nein</label>
|
<input type="radio" name="frage_{{ frage.id }}" value="ja">
|
||||||
|
Ja
|
||||||
|
</label>
|
||||||
|
<label>
|
||||||
|
<input type="radio" name="frage_{{ frage.id }}" value="nein">
|
||||||
|
Nein
|
||||||
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
<button class="btn" type="submit">Speichern und weiter</button>
|
|
||||||
</form>
|
<div class="form-actions">
|
||||||
|
<button type="submit" class="btn" id="next-button" disabled>Weiter</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
document.addEventListener("DOMContentLoaded", function () {
|
||||||
|
const form = document.getElementById("topic-form");
|
||||||
|
const nextButton = document.getElementById("next-button");
|
||||||
|
const questionNames = [
|
||||||
|
{% for frage in fragen %}
|
||||||
|
"frage_{{ frage.id }}"{% if not loop.last %},{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
];
|
||||||
|
|
||||||
|
function updateButtonState() {
|
||||||
|
const allAnswered = questionNames.every((name) => {
|
||||||
|
return form.querySelector(`input[name="${name}"]:checked`) !== null;
|
||||||
|
});
|
||||||
|
|
||||||
|
nextButton.disabled = !allAnswered;
|
||||||
|
}
|
||||||
|
|
||||||
|
form.addEventListener("change", updateButtonState);
|
||||||
|
updateButtonState();
|
||||||
|
});
|
||||||
|
</script>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section class="card">
|
<section class="card" style="display:none">
|
||||||
<h2>Ansprechpartner</h2>
|
<h2>Ansprechpartner</h2>
|
||||||
{% for person in ansprechpartner %}
|
{% for person in ansprechpartner %}
|
||||||
<div class="contact-box">
|
<div class="contact-box">
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user