fixed several page and teacher page creation

This commit is contained in:
2026-08-23 13:22:50 +02:00
parent a7e4c5f083
commit c80535eb97
42 changed files with 2623 additions and 1 deletions
+46
View File
@@ -10,6 +10,8 @@ import '../screens/lessons_page.dart';
import '../screens/orders_detail_page.dart';
import '../screens/account_page.dart';
import '../screens/settings_page.dart';
import '../screens/teacher_panel_page.dart';
import '../services/role_service.dart';
import 'package:url_launcher/url_launcher.dart';
class AppDrawer extends StatelessWidget {
@@ -95,6 +97,50 @@ class AppDrawer extends StatelessWidget {
fallbackLetter: _avatarLetter,
),
// Sezione insegnante: visibile solo a staff (Admin/teacher).
FutureBuilder<UserRole>(
future: RoleService.fetchMyRole(token: token),
builder: (context, snap) {
final isStaff = snap.data?.isStaff ?? false;
if (!isStaff) return const SizedBox.shrink();
return Column(
children: [
Container(
width: double.infinity,
padding: const EdgeInsets.fromLTRB(16, 10, 16, 4),
child: const Text(
'INSEGNANTE',
style: TextStyle(
fontSize: 11,
fontWeight: FontWeight.w900,
color: Color(0xFF10B981),
letterSpacing: 0.5,
),
),
),
ListTile(
leading: const Icon(Icons.calendar_month_rounded),
title: const Text('Pannello classi'),
onTap: () {
Navigator.of(context).pop();
Navigator.push(
context,
MaterialPageRoute(
builder: (_) => TeacherPanelPage(
token: token,
school: school,
userFirstName: userFirstName,
),
),
);
},
),
const Divider(height: 1),
],
);
},
),
ListTile(
leading: const Icon(Icons.medical_information),
title: const Text('Certificati medici'),