added simple validation
This commit is contained in:
parent
ca1c41a52b
commit
42448f928b
|
|
@ -11,10 +11,12 @@ class AuthorizationPage extends StatefulWidget {
|
||||||
class _AuthorizationPage extends State<AuthorizationPage> {
|
class _AuthorizationPage extends State<AuthorizationPage> {
|
||||||
final TextEditingController _loginController = new TextEditingController();
|
final TextEditingController _loginController = new TextEditingController();
|
||||||
final TextEditingController _passwordController = new TextEditingController();
|
final TextEditingController _passwordController = new TextEditingController();
|
||||||
|
final _formKey = GlobalKey<FormState>();
|
||||||
final borederRadius = BorderRadius.all(Radius.circular(10));
|
final borederRadius = BorderRadius.all(Radius.circular(10));
|
||||||
bool passwordVisible = false;
|
bool passwordVisible = false;
|
||||||
|
|
||||||
void _login(){
|
void _login(){
|
||||||
|
if (_formKey.currentState!.validate()) {
|
||||||
final String login = _loginController.text;
|
final String login = _loginController.text;
|
||||||
final String password = _passwordController.text;
|
final String password = _passwordController.text;
|
||||||
|
|
||||||
|
|
@ -24,6 +26,23 @@ class _AuthorizationPage extends State<AuthorizationPage> {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
String? _validatePassword(String? password){
|
||||||
|
if (password == null || password.isEmpty)
|
||||||
|
return 'Введите пароль';
|
||||||
|
if (password != '123456')
|
||||||
|
return 'Пароль: 123456';
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
String? _validateLogin(String? login){
|
||||||
|
if (login == null || login.isEmpty)
|
||||||
|
return 'Введите логин';
|
||||||
|
if (login != 'admin')
|
||||||
|
return 'Логин: admin';
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void dispose() {
|
void dispose() {
|
||||||
|
|
@ -61,20 +80,22 @@ class _AuthorizationPage extends State<AuthorizationPage> {
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget _buildFormWidget(BuildContext context) {
|
Widget _buildFormWidget(BuildContext context) {
|
||||||
return Column(
|
return Form(
|
||||||
|
key: _formKey,
|
||||||
|
child: Column(
|
||||||
children: [
|
children: [
|
||||||
TextField(
|
TextFormField(
|
||||||
controller: _loginController,
|
controller: _loginController,
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
prefixIcon: Icon(Icons.account_circle),
|
prefixIcon: Icon(Icons.account_circle),
|
||||||
border: OutlineInputBorder(
|
border: OutlineInputBorder(
|
||||||
borderRadius: borederRadius
|
borderRadius: borederRadius
|
||||||
),
|
),
|
||||||
labelText: 'Логин'
|
labelText: 'Логин'),
|
||||||
)
|
validator: (text) => _validateLogin(text),
|
||||||
),
|
),
|
||||||
SizedBox(height: 25,),
|
SizedBox(height: 25,),
|
||||||
TextField(
|
TextFormField(
|
||||||
controller: _passwordController,
|
controller: _passwordController,
|
||||||
obscureText: !passwordVisible,
|
obscureText: !passwordVisible,
|
||||||
decoration: InputDecoration(
|
decoration: InputDecoration(
|
||||||
|
|
@ -85,17 +106,13 @@ class _AuthorizationPage extends State<AuthorizationPage> {
|
||||||
labelText: 'Пароль',
|
labelText: 'Пароль',
|
||||||
suffixIcon: IconButton(
|
suffixIcon: IconButton(
|
||||||
icon: Icon(
|
icon: Icon(
|
||||||
passwordVisible ? Icons.visibility : Icons.visibility_off
|
passwordVisible ? Icons.visibility : Icons.visibility_off),
|
||||||
),
|
onPressed: () => setState(() => passwordVisible = !passwordVisible),
|
||||||
onPressed: () {
|
)),
|
||||||
setState(() {
|
validator: (text) => _validatePassword(text),
|
||||||
passwordVisible = !passwordVisible;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
)
|
|
||||||
)
|
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue