feat: enhance class access logic for directors in my_classes endpoint
All checks were successful
Build & Push / Build & Push image (push) Successful in 40s

This commit is contained in:
2026-03-05 23:13:50 +01:00
parent d4f09bb368
commit 2782c3bea6
2 changed files with 120 additions and 172 deletions

View File

@@ -427,14 +427,17 @@ def me():
@api_bp.route('/my/classes', methods=['GET'])
@login_required
def my_classes():
"""Geeft alle klassen van de school en de eigen klassen van de leerkracht."""
"""Geeft alle klassen van de school en de eigen klassen van de leerkracht.
Directeurs en hoger zien automatisch alle klassen als my_classes."""
if not current_user.school_id:
return jsonify({'all_classes': [], 'my_classes': []})
all_cls = Class.query.filter_by(school_id=current_user.school_id)\
.order_by(Class.name).all()
# Directeurs en hoger hebben toegang tot alle klassen zonder expliciete koppeling
my_cls = all_cls if current_user.is_director else current_user.classes
return jsonify({
'all_classes': [{'id': c.id, 'name': c.name} for c in all_cls],
'my_classes': [{'id': c.id, 'name': c.name} for c in current_user.classes],
'my_classes': [{'id': c.id, 'name': c.name} for c in my_cls],
})