merge fixes
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import 'package:pweb/generated/i18n/app_localizations.dart';
|
||||
import 'package:pweb/providers/two_factor.dart';
|
||||
|
||||
|
||||
class ResendCodeButton extends StatelessWidget {
|
||||
@@ -12,9 +15,7 @@ class ResendCodeButton extends StatelessWidget {
|
||||
final localizations = AppLocalizations.of(context)!;
|
||||
|
||||
return TextButton(
|
||||
onPressed: () {
|
||||
// TODO: Add resend logic
|
||||
},
|
||||
onPressed: () => context.read<TwoFactorProvider>().resendCode(),
|
||||
style: TextButton.styleFrom(
|
||||
padding: EdgeInsets.zero,
|
||||
minimumSize: const Size(0, 0),
|
||||
@@ -28,4 +29,4 @@ class ResendCodeButton extends StatelessWidget {
|
||||
child: Text(localizations.twoFactorResend),
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,8 @@ import 'package:flutter/material.dart';
|
||||
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import 'package:pshared/provider/pfe/provider.dart';
|
||||
import 'package:pshared/provider/account.dart';
|
||||
import 'package:pshared/provider/locale.dart';
|
||||
|
||||
import 'package:pweb/app/router/pages.dart';
|
||||
import 'package:pweb/pages/login/buttons.dart';
|
||||
@@ -34,17 +35,22 @@ class _LoginFormState extends State<LoginForm> {
|
||||
final ValueNotifier<bool> _isPasswordAcceptable = ValueNotifier<bool>(false);
|
||||
|
||||
Future<String?> _login(BuildContext context, VoidCallback onLogin, void Function(Object e) onError) async {
|
||||
final pfeProvider = Provider.of<PfeProvider>(context, listen: false);
|
||||
final provider = Provider.of<AccountProvider>(context, listen: false);
|
||||
|
||||
try {
|
||||
// final account = await pfeProvider.login(
|
||||
// email: _usernameController.text,
|
||||
// password: _passwordController.text,
|
||||
// );
|
||||
onLogin();
|
||||
final outcome = await provider.login(
|
||||
email: _usernameController.text,
|
||||
password: _passwordController.text,
|
||||
locale: context.read<LocaleProvider>().locale.languageCode,
|
||||
);
|
||||
if (outcome.isPending) {
|
||||
navigateAndReplace(context, Pages.sfactor);
|
||||
} else {
|
||||
onLogin();
|
||||
}
|
||||
return 'ok';
|
||||
} catch (e) {
|
||||
onError(pfeProvider.error == null ? e : pfeProvider.error!);
|
||||
onError(provider.error ?? e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@@ -89,7 +95,7 @@ class _LoginFormState extends State<LoginForm> {
|
||||
onSignUp: () => navigate(context, Pages.signup),
|
||||
login: () => _login(
|
||||
context,
|
||||
() => navigateAndReplace(context, Pages.sfactor),
|
||||
() => navigateAndReplace(context, Pages.dashboard),
|
||||
(e) => postNotifyUserOfErrorX(
|
||||
context: context,
|
||||
errorSituation: AppLocalizations.of(context)!.errorLogin,
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'package:flutter_timezone/flutter_timezone.dart';
|
||||
|
||||
import 'package:go_router/go_router.dart';
|
||||
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import 'package:pshared/provider/pfe/provider.dart';
|
||||
import 'package:pshared/api/requests/login_data.dart';
|
||||
import 'package:pshared/models/describable.dart';
|
||||
import 'package:pshared/provider/account.dart';
|
||||
import 'package:pshared/provider/locale.dart';
|
||||
|
||||
import 'package:pweb/app/router/pages.dart';
|
||||
import 'package:pweb/pages/signup/form/content.dart';
|
||||
@@ -31,7 +36,7 @@ class SignUpFormState extends State<SignUpForm> {
|
||||
VoidCallback onSignUp,
|
||||
void Function(Object e) onError,
|
||||
) async {
|
||||
final pfeProvider = Provider.of<PfeProvider>(context, listen: false);
|
||||
final provider = Provider.of<AccountProvider>(context, listen: false);
|
||||
|
||||
setState(() {
|
||||
_autoValidateMode = true;
|
||||
@@ -42,20 +47,34 @@ class SignUpFormState extends State<SignUpForm> {
|
||||
}
|
||||
|
||||
try {
|
||||
// final account = await pfeProvider.signUp(
|
||||
// companyName: controllers.companyName.text.trim(),
|
||||
// description: controllers.description.text.trim().isEmpty
|
||||
// ? null
|
||||
// : controllers.description.text.trim(),
|
||||
// firstName: controllers.firstName.text.trim(),
|
||||
// lastName: controllers.lastName.text.trim(),
|
||||
// email: controllers.email.text.trim(),
|
||||
// password: controllers.password.text,
|
||||
// );
|
||||
final orgDescription = controllers.description.text.trim();
|
||||
final locs = AppLocalizations.of(context)!;
|
||||
final locale = context.read<LocaleProvider>().locale;
|
||||
final timezone = await FlutterTimezone.getLocalTimezone(locale.toString());
|
||||
await provider.signup(
|
||||
account: AccountData.build(
|
||||
login: LoginData.build(
|
||||
login: controllers.email.text.trim(),
|
||||
password: controllers.password.text,
|
||||
locale: locale.toLanguageTag(),
|
||||
),
|
||||
name: controllers.password.text,
|
||||
lastName: controllers.lastName.text.trim(),
|
||||
),
|
||||
organization: newDescribable(
|
||||
name: controllers.companyName.text.trim(),
|
||||
description: orgDescription.isEmpty ? null : orgDescription,
|
||||
),
|
||||
timezone: timezone.identifier,
|
||||
ownerRole: newDescribable(
|
||||
name: locs.ownerRole,
|
||||
description: locs.ownerRoleDescription,
|
||||
),
|
||||
);
|
||||
onSignUp();
|
||||
return 'ok';
|
||||
} catch (e) {
|
||||
onError(pfeProvider.error ?? e);
|
||||
onError(provider.error ?? e);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user