Revolution #1
1 changed files with 23 additions and 9 deletions
|
|
@ -1,13 +1,13 @@
|
||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
|
||||||
import 'package:animated_background/animated_background.dart';
|
import 'package:animated_background/animated_background.dart';
|
||||||
|
import 'package:dio/dio.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:tuuli_api/tuuli_api.dart';
|
import 'package:tuuli_api/tuuli_api.dart';
|
||||||
import 'package:tuuli_app/api_controller.dart';
|
import 'package:tuuli_app/api_controller.dart';
|
||||||
|
|
||||||
class LoginPageController extends GetxController
|
class LoginPageController extends GetxController {
|
||||||
with GetSingleTickerProviderStateMixin {
|
|
||||||
final _login = "".obs;
|
final _login = "".obs;
|
||||||
String get login => _login.value;
|
String get login => _login.value;
|
||||||
set login(String value) => _login.value = value;
|
set login(String value) => _login.value = value;
|
||||||
|
|
@ -37,13 +37,31 @@ class LoginPageController extends GetxController
|
||||||
if (resp.statusCode == 200 && respData != null) {
|
if (resp.statusCode == 200 && respData != null) {
|
||||||
final accessToken = respData.accessToken;
|
final accessToken = respData.accessToken;
|
||||||
Get.find<ApiController>().token = accessToken;
|
Get.find<ApiController>().token = accessToken;
|
||||||
Get.offAllNamed("/home");
|
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||||
|
Get.offAllNamed("/home");
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
Get.snackbar(
|
Get.snackbar(
|
||||||
"Login failed",
|
"Login failed",
|
||||||
resp.statusMessage ?? "Unknown error",
|
resp.statusMessage ?? "Unknown error",
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
} on DioError catch (e) {
|
||||||
|
final errorData = e.response?.data;
|
||||||
|
if (errorData != null) {
|
||||||
|
final error = errorData["error"];
|
||||||
|
if (error != null) {
|
||||||
|
Get.snackbar(
|
||||||
|
"Login failed",
|
||||||
|
"$error",
|
||||||
|
);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
Get.snackbar(
|
||||||
|
"Login failed",
|
||||||
|
"$e",
|
||||||
|
);
|
||||||
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
Get.snackbar(
|
Get.snackbar(
|
||||||
"Login failed",
|
"Login failed",
|
||||||
|
|
@ -65,12 +83,8 @@ class LoginPage extends GetView<LoginPageController> {
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
body: Stack(
|
body: Stack(
|
||||||
children: [
|
children: [
|
||||||
AnimatedBackground(
|
const SizedBox.square(
|
||||||
behaviour: RandomParticleBehaviour(),
|
dimension: 0,
|
||||||
vsync: controller,
|
|
||||||
child: const SizedBox.square(
|
|
||||||
dimension: 0,
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
Row(
|
Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.start,
|
mainAxisAlignment: MainAxisAlignment.start,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue