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")
|
||||
return redirect(url_for("admin_users"))
|
||||
|
||||
@app.route("/impressum")
|
||||
def impressum():
|
||||
return render_template("impressum.html")
|
||||
|
||||
if __name__ == "__main__":
|
||||
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_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;
|
||||
}
|
||||
}
|
||||
|
||||
.btn:disabled {
|
||||
opacity: 0.5;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
|
||||
/* contacts verbergen bei self assessment */
|
||||
|
||||
@ -1,17 +1,21 @@
|
||||
{% extends 'base.html' %}
|
||||
{% block title %}Themen{% endblock %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
<section class="card">
|
||||
<h1>Themen</h1>
|
||||
<div class="topic-grid">
|
||||
{% for item in themen %}
|
||||
<article class="topic-box">
|
||||
<h2>{{ item.kurztitel }}</h2>
|
||||
<h3>{{ item.titel }}</h3>
|
||||
<p>{{ item.infotext }}</p>
|
||||
<a class="btn" href="{{ url_for('topic', thema_id=item.id) }}">Thema öffnen</a>
|
||||
</article>
|
||||
{% endfor %}
|
||||
<div class="content-card">
|
||||
<h1>Self Assessment</h1>
|
||||
|
||||
<p>
|
||||
Wir helfen Ihnen mit einer kurzen Selbsteinschätzung sich einen Überblick über ihre Unternehmenssituation zu verschaffen.
|
||||
</p>
|
||||
|
||||
{% if themen and themen|length > 0 %}
|
||||
<div class="form-actions" style="margin-top: 24px;">
|
||||
<a class="btn" href="{{ url_for('topic', thema_id=themen[0].id) }}">
|
||||
Self Assessment starten
|
||||
</a>
|
||||
</div>
|
||||
{% else %}
|
||||
<p class="muted">Aktuell sind keine Themen verfügbar.</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
</section>
|
||||
{% 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">
|
||||
<div class="container">
|
||||
<p>© dasunternehmen – Flask Projektgrundlage</p>
|
||||
<p>© dasunternehmen – <a href="{{ url_for('impressum') }}">Impressum</a></p>
|
||||
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
@ -1,18 +1,34 @@
|
||||
{% extends 'base.html' %}
|
||||
{% block title %}Ergebnis{% endblock %}
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
<section class="card">
|
||||
<h1>Assessment Ergebnis</h1>
|
||||
<img class="result-chart" src="{{ url_for('generated_chart', filename=chart_file) }}" alt="Assessment Grafik">
|
||||
<div class="content-card">
|
||||
<p><strong>Das Ergebnis mit Anmerkungen zur Verbesserung erhalten Sie via email.</strong></p>
|
||||
|
||||
<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">
|
||||
<thead>
|
||||
<tr><th>Thema</th><th>JA Antworten</th></tr>
|
||||
<tr>
|
||||
<th>Thema</th>
|
||||
<th>JA-Antworten</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% 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 %}
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</div>
|
||||
{% endblock %}
|
||||
@ -8,22 +8,55 @@
|
||||
</section>
|
||||
|
||||
<section class="card">
|
||||
<form method="post">
|
||||
<form method="post" id="topic-form">
|
||||
<input type="hidden" name="assessment_id" value="{{ assessment_id }}">
|
||||
|
||||
{% for frage in fragen %}
|
||||
<div class="question-box">
|
||||
<p>{{ loop.index }}. {{ frage.text }}</p>
|
||||
<p><strong>{{ frage.text }}</strong></p>
|
||||
<div class="radio-row">
|
||||
<label><input type="radio" name="frage_{{ frage.id }}" value="ja" required> Ja</label>
|
||||
<label><input type="radio" name="frage_{{ frage.id }}" value="nein"> Nein</label>
|
||||
<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>
|
||||
{% endfor %}
|
||||
<button class="btn" type="submit">Speichern und weiter</button>
|
||||
|
||||
<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 class="card">
|
||||
<section class="card" style="display:none">
|
||||
<h2>Ansprechpartner</h2>
|
||||
{% for person in ansprechpartner %}
|
||||
<div class="contact-box">
|
||||
|
||||
Loading…
Reference in New Issue
Block a user