mymuseum-visitapp/lib/Components/AdminPopup.dart

73 lines
2.3 KiB
Dart

import 'package:flutter/material.dart';
import 'package:mymuseum_visitapp/Helpers/DatabaseHelper.dart';
import 'package:mymuseum_visitapp/Helpers/translationHelper.dart';
import 'package:mymuseum_visitapp/Models/visitContext.dart';
import 'package:mymuseum_visitapp/app_context.dart';
import 'package:provider/provider.dart';
import '../constants.dart';
class AdminPopup extends StatefulWidget {
const AdminPopup({
Key? key,
}) : super(key: key);
@override
State<AdminPopup> createState() => _AdminPopupState();
}
class _AdminPopupState extends State<AdminPopup> {
final TextEditingController _controller = TextEditingController();
bool isPasswordOk = false;
String password = "FORT2023!";
VisitAppContext? visitAppContext;
@override
Widget build(BuildContext context) {
Size size = MediaQuery.of(context).size;
final appContext = Provider.of<AppContext>(context);
visitAppContext = appContext.getContext() as VisitAppContext;
isPasswordOk = visitAppContext!.isAdmin!;
return Container(
width: size.width*0.65,
height: isPasswordOk ? size.height*0.1 : size.height*0.25,
margin: const EdgeInsets.all(kDefaultPadding),
child: isPasswordOk ? Column(
children: [
Text("Audios qui ne fonctionnent pas :"),
Text("TODO list"),
],
) :
Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text("Mot de passe admin"),
SizedBox(
width: size.width*0.65,
height: size.height *0.2,
child: TextFormField(
controller: _controller,
onChanged: (value) {
if(value == password) {
setState(() {
isPasswordOk = true;
visitAppContext!.isAdmin = true;
appContext.setContext(visitAppContext!);
DatabaseHelper.instance.updateTableMain(DatabaseTableType.main, visitAppContext!);
});
}
},
//style: const TextStyle(color: Colors.white),
obscureText: true,
enableSuggestions: false,
autocorrect: false,
),
),
],
),
);
}
}