feat: Zeige Lektionstitel hinter "Vorlage:" an

Co-authored-by: aider (deepseek/deepseek-reasoner) <aider@aider.chat>
This commit is contained in:
jamulix 2025-10-21 18:14:53 +02:00
commit e1e080f30f
3 changed files with 20 additions and 4 deletions

18
app.py
View file

@ -193,11 +193,18 @@ def index():
print(f"Rendering Index - Current Text Länge: {len(current_text)} Zeichen")
# Bestimme den Lektionstitel
current_lesson_title = "Unbekannte Lektion"
if lessons and progress.current_text_index < len(lessons):
lesson = lessons[progress.current_text_index]
current_lesson_title = lesson.get('description', f"Lektion {progress.current_text_index + 1}")
return render_template('index.html',
current_text=current_text,
current_position=progress.current_position,
last_text=progress.last_text,
lessons=lessons)
lessons=lessons,
current_lesson_title=current_lesson_title)
except Exception as e:
print(f"Fehler in index(): {e}")
@ -394,10 +401,15 @@ def next_text():
db.session.commit()
# Bestimme den Titel der neuen Lektion
new_lesson = lessons[progress.current_text_index]
lesson_title = new_lesson.get('description', f"Lektion {progress.current_text_index + 1}")
return jsonify({
'text': lessons[progress.current_text_index]['text'],
'text': new_lesson['text'],
'index': progress.current_text_index,
'total': len(lessons)
'total': len(lessons),
'title': lesson_title
})
except Exception as e:

View file

@ -37,6 +37,8 @@ document.addEventListener('DOMContentLoaded', function() {
.then(data => {
currentText = data.text;
document.getElementById('target-text').textContent = currentText;
// Aktualisiere den Lektionstitel
document.getElementById('lesson-title').textContent = data.title;
userInput.value = '';
userInput.focus(); // Fokus zurück auf Eingabefeld
updateStatistics('', currentText);
@ -58,6 +60,8 @@ document.addEventListener('DOMContentLoaded', function() {
.then(data => {
currentText = data.text;
document.getElementById('target-text').textContent = currentText;
// Aktualisiere den Lektionstitel
document.getElementById('lesson-title').textContent = data.title;
userInput.value = '';
userInput.focus(); // Fokus zurück auf Eingabefeld
updateStatistics('', currentText);

View file

@ -18,7 +18,7 @@
<div class="card-body">
<!-- Textanzeige -->
<div class="mb-4">
<h5 class="card-title">Vorlage: {{ current_lesson_title }}</h5>
<h5 class="card-title">Vorlage: <span id="lesson-title">{{ current_lesson_title }}</span></h5>
<div id="target-text" class="border p-3 bg-white rounded" style="white-space: pre-line; font-family: monospace;">
{{ current_text|safe }}
</div>