diff --git a/app.py b/app.py index 695625f..0660bf5 100644 --- a/app.py +++ b/app.py @@ -2837,6 +2837,45 @@ def team_deactivate(member_id): return jsonify({'success': True}) +@app.route('/team/edit', methods=['POST']) +def team_edit(): + """Bearbeitet ein Team-Mitglied.""" + member_id = request.form.get('member_id') + name = request.form.get('name', '').strip() + email = request.form.get('email', '').strip() + role = request.form.get('role', '').strip() + responsibilities = request.form.get('responsibilities', '').strip() + telegram_chat_id = request.form.get('telegram_chat_id', '').strip() + + if not member_id or not name or not email or not role or not responsibilities: + flash('Alle Felder außer Telegram Chat ID sind Pflichtfelder!', 'danger') + return redirect(url_for('team')) + + # Optional: Telegram Chat ID als Integer + chat_id = None + if telegram_chat_id: + try: + chat_id = int(telegram_chat_id) + except ValueError: + flash('Telegram Chat ID muss eine Zahl sein!', 'warning') + chat_id = None + + # Update in Datenbank + con = sqlite3.connect(EMAIL_JOURNAL_DB) + con.execute(""" + UPDATE team_members + SET name = ?, email = ?, role = ?, responsibilities = ?, telegram_id = ? + WHERE id = ? + """, (name, email, role, responsibilities, chat_id, member_id)) + con.commit() + con.close() + + flash(f'✅ Team-Member "{name}" erfolgreich aktualisiert!', 'success') + logger.info(f"[Team] Member #{member_id} aktualisiert: {name} ({email})") + + return redirect(url_for('team')) + + @app.route('/api/telegram-qr') def telegram_qr(): """Generiert QR-Code für Telegram Bot.""" diff --git a/templates/team.html b/templates/team.html index 28f4013..2537183 100644 --- a/templates/team.html +++ b/templates/team.html @@ -121,9 +121,74 @@ + + +