diff --git a/.gitignore b/.gitignore index 6d6c41b..e167a73 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ /.flutter-plugins /.flutter-plugins-dependencies /.packages +/.env \ No newline at end of file diff --git a/lib/localization/ru/ru_translations.dart b/lib/localization/ru/ru_translations.dart index 4bbe707..f66e39c 100644 --- a/lib/localization/ru/ru_translations.dart +++ b/lib/localization/ru/ru_translations.dart @@ -5,6 +5,7 @@ final Map ru = { "username": "Имя пользователя", "password": "Пароль", "password_confirmation": "Подтвердите пароль", + 'wrong_credentials': "Неверные данные пользователя", //name Screen "first_name": "Имя", diff --git a/lib/main.dart b/lib/main.dart index af96004..ddae144 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -4,13 +4,14 @@ import 'package:flutter_localizations/flutter_localizations.dart'; import 'core/app_export.dart'; import 'package:hive_flutter/hive_flutter.dart'; import 'package:path_provider/path_provider.dart'; -import 'package:eatvio_app/data/models/tokenModel/token_model.dart'; +import 'package:flutter_dotenv/flutter_dotenv.dart'; var globalMessengerKey = GlobalKey(); void main() async { WidgetsFlutterBinding.ensureInitialized(); final appDocumentDir = await getApplicationDocumentsDirectory(); final path = appDocumentDir.path; + await dotenv.load(fileName: ".env"); await Hive.initFlutter(path); SystemChrome.setPreferredOrientations([ DeviceOrientation.portraitUp, diff --git a/lib/presentation/auth/auth_screen/auth_screen.dart b/lib/presentation/auth/auth_screen/auth_screen.dart index 6a0c344..8e5e76d 100644 --- a/lib/presentation/auth/auth_screen/auth_screen.dart +++ b/lib/presentation/auth/auth_screen/auth_screen.dart @@ -7,6 +7,7 @@ import 'package:validators/validators.dart'; import 'package:eatvio_app/widgets/next_step_button.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'dart:convert'; import 'package:hive/hive.dart'; import 'package:http/http.dart' as http; @@ -83,8 +84,7 @@ class AuthScreen extends StatelessWidget { 'password': state.passwordController!.text, }; final response = await http.post( - Uri.parse( - 'https://emaibo4wahye-dev3.eatvio.ru/api/login'), + Uri.parse(dotenv.env['SERVER_ROOT']! + '/login'), headers: {'Content-Type': 'application/json'}, body: json.encode(credentials), encoding: utf8); @@ -103,7 +103,7 @@ class AuthScreen extends StatelessWidget { builder: (context) => AlertDialog( title: Text('Ошибка'), content: - Text(jsonDecode(jsonEncode(response.body))), + Text(dotenv.env['SERVER_ROOT']! + '/login'), actions: [ TextButton( onPressed: () { diff --git a/lib/presentation/profile/my_profile_screen/bloc/my_profile_bloc.dart b/lib/presentation/profile/my_profile_screen/bloc/my_profile_bloc.dart index eafd579..4bd82cf 100644 --- a/lib/presentation/profile/my_profile_screen/bloc/my_profile_bloc.dart +++ b/lib/presentation/profile/my_profile_screen/bloc/my_profile_bloc.dart @@ -1,5 +1,3 @@ -import 'dart:ffi'; - import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; import '/core/app_export.dart'; @@ -7,6 +5,7 @@ import 'package:eatvio_app/presentation/profile/my_profile_screen/models/my_prof import 'package:http/http.dart' as http; import 'dart:convert'; import 'package:hive/hive.dart'; +import 'package:flutter_dotenv/flutter_dotenv.dart'; part 'my_profile_event.dart'; part 'my_profile_state.dart'; @@ -24,7 +23,7 @@ class MyProfileBloc extends Bloc { box.delete('token'); final response = await http.post( - Uri.parse('http://10.55.5.126:1092/api/profile/logout'), + Uri.parse(dotenv.env['SERVER_ROOT']! + '/profile/logout'), headers: { 'Authorization': 'Bearer $token', }, @@ -47,7 +46,7 @@ class MyProfileBloc extends Bloc { final box = await Hive.openBox('token'); final token = box.get('token'); final response = await http.get( - Uri.parse('https://emaibo4wahye-dev3.eatvio.ru/api/profile/index'), + Uri.parse(dotenv.env['SERVER_ROOT']! + '/profile/index'), headers: { 'Authorization': 'Bearer $token', }, diff --git a/lib/presentation/registration/additional_information_screen/additional_information_screen.dart b/lib/presentation/registration/additional_information_screen/additional_information_screen.dart index 4d3f3b3..b512a72 100644 --- a/lib/presentation/registration/additional_information_screen/additional_information_screen.dart +++ b/lib/presentation/registration/additional_information_screen/additional_information_screen.dart @@ -7,7 +7,7 @@ import 'package:eatvio_app/widgets/app_bar/custom_app_bar.dart'; import 'package:eatvio_app/widgets/next_step_button.dart'; import 'package:eatvio_app/widgets/custom_text_form_field.dart'; import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart'; -import 'package:eatvio_app/data/models/tokenModel/token_model.dart'; +import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'package:flutter/material.dart'; import 'dart:convert'; import 'package:hive/hive.dart'; @@ -72,8 +72,7 @@ class AdditionalInformationScreen extends StatelessWidget { .userRegistrationSheet; sheet.additionalInfo = state.editTextController!.text; final response = await http.post( - Uri.parse( - 'https://emaibo4wahye-dev3.eatvio.ru/api/register'), + Uri.parse(dotenv.env['SERVER_ROOT']! + '/register'), headers: {'Content-Type': 'application/json'}, body: json.encode(sheet), ); diff --git a/pubspec.yaml b/pubspec.yaml index 1d6f969..d9ee454 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -21,6 +21,7 @@ dependencies: path_provider: ^2.1.0 fl_chart: ^0.66.0 flutter_spinkit: ^5.0.0 + flutter_dotenv: ^5.1.0 dev_dependencies: flutter_test: @@ -30,6 +31,7 @@ flutter: assets: - assets/ - assets/images/ + - .env fonts: - family: Segoe UI fonts: