From 000315ac0edf71cf3a3a35ea70882548a3b5e5a8 Mon Sep 17 00:00:00 2001 From: hussam al-habibeh Date: Tue, 23 Jun 2020 16:50:30 +0300 Subject: [PATCH 1/2] translation 'updates' --- lib/client/base_app_client.dart | 12 ++++- lib/config/config.dart | 9 ++++ lib/config/localized_values.dart | 2 + lib/providers/hospital_provider.dart | 18 +++---- .../medicine/pharmacies_list_screen.dart | 30 +++++++----- lib/screens/patients/patients_screen.dart | 22 +++++++-- lib/screens/profile_screen.dart | 4 +- lib/util/translations_delegate_base.dart | 2 + pubspec.lock | 48 +++++++++---------- 9 files changed, 95 insertions(+), 52 deletions(-) diff --git a/lib/client/base_app_client.dart b/lib/client/base_app_client.dart index 6e0914f8..e842430a 100644 --- a/lib/client/base_app_client.dart +++ b/lib/client/base_app_client.dart @@ -3,12 +3,15 @@ import 'dart:convert'; import 'package:doctor_app_flutter/config/config.dart'; import 'package:doctor_app_flutter/config/shared_pref_kay.dart'; import 'package:doctor_app_flutter/models/doctor/doctor_profile_model.dart'; +import 'package:doctor_app_flutter/providers/project_provider.dart'; import 'package:doctor_app_flutter/util/dr_app_shared_pref.dart'; import 'package:doctor_app_flutter/util/helpers.dart'; import 'package:http/http.dart' as http; +import 'package:provider/provider.dart'; DrAppSharedPreferances sharedPref = new DrAppSharedPreferances(); Helpers helpers = new Helpers(); +//ProjectProvider projectsProvider = new ProjectProvider(); /* *@author: Mohammad Aljammal @@ -38,6 +41,7 @@ class BaseAppClient { String token = await sharedPref.getString(TOKEN); if (profile != null) { DoctorProfileModel doctorProfile = DoctorProfileModel.fromJson(profile); + body['DoctorID'] = doctorProfile?.doctorID; body['EditedBy'] = doctorProfile?.doctorID; body['ProjectID'] = doctorProfile?.projectID; @@ -45,7 +49,13 @@ class BaseAppClient { body['ClinicID'] = doctorProfile?.clinicID; } body['TokenID'] = token ?? ''; - body['LanguageID'] = LANGUAGE_ID; + + String lang = await sharedPref.getString(APP_Language); + if (lang == 'ar' && lang == null) + body['LanguageID'] = 1; + else + body['LanguageID'] = 2; + body['stamp'] = STAMP; body['IPAdress'] = IP_ADDRESS; body['VersionID'] = VERSION_ID; diff --git a/lib/config/config.dart b/lib/config/config.dart index d3f1e95d..2ebba10f 100644 --- a/lib/config/config.dart +++ b/lib/config/config.dart @@ -57,6 +57,15 @@ var SERVICES_PATIANT_HEADER = [ "Tomorrow", "Referral" ]; +var SERVICES_PATIANT_HEADER_AR = [ + "المريض الخارجي", + "المريض المنوم", + "المريض المعافى", + "المريض المحول الي", + "المريض المحال المعافى", + "مريض الغد", + "المريض المحول مني" +]; //****************** // Colors ////// by : ibrahim diff --git a/lib/config/localized_values.dart b/lib/config/localized_values.dart index 133dbfef..20ad3ca6 100644 --- a/lib/config/localized_values.dart +++ b/lib/config/localized_values.dart @@ -211,4 +211,6 @@ const Map> localizedValues = { 'en': 'You don\'t have any Orders', 'ar': 'لا يوجد لديك اي طلبات' }, + 'beingBad': {'en': 'being bad', 'ar': 'سيء'}, + 'beingGreat': {'en': 'being great', 'ar': 'راثع'}, }; diff --git a/lib/providers/hospital_provider.dart b/lib/providers/hospital_provider.dart index 547bffe2..a32e9516 100644 --- a/lib/providers/hospital_provider.dart +++ b/lib/providers/hospital_provider.dart @@ -6,7 +6,7 @@ class HospitalProvider with ChangeNotifier { Future getProjectsList() async { const url = GET_PROJECTS; var info = { - "LanguageID": 2, + "LanguageID": 1, "stamp": "2020-02-26T13:51:44.111Z", "IPAdress": "11.11.11.11", "VersionID": 1.2, @@ -15,17 +15,13 @@ class HospitalProvider with ChangeNotifier { "SessionID": "i1UJwCTSqt", "IsLoginForDoctorApp": true }; - dynamic localRes ; + dynamic localRes; - await BaseAppClient.post(url, - onSuccess: ( response, statusCode) async { - localRes= response; - }, - onFailure: (String error, int statusCode) { - throw error; - }, - body: info); + await BaseAppClient.post(url, onSuccess: (response, statusCode) async { + localRes = response; + }, onFailure: (String error, int statusCode) { + throw error; + }, body: info); return Future.value(localRes); - } } diff --git a/lib/screens/medicine/pharmacies_list_screen.dart b/lib/screens/medicine/pharmacies_list_screen.dart index 598c3e08..2f42a8ea 100644 --- a/lib/screens/medicine/pharmacies_list_screen.dart +++ b/lib/screens/medicine/pharmacies_list_screen.dart @@ -3,6 +3,7 @@ import 'dart:typed_data'; import 'package:doctor_app_flutter/config/size_config.dart'; import 'package:doctor_app_flutter/providers/medicine_provider.dart'; +import 'package:doctor_app_flutter/providers/project_provider.dart'; import 'package:doctor_app_flutter/util/dr_app_shared_pref.dart'; import 'package:doctor_app_flutter/util/helpers.dart'; import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart'; @@ -34,6 +35,7 @@ class _PharmaciesListState extends State { var _data; Helpers helpers = new Helpers(); MedicineProvider _medicineProvider; + ProjectProvider projectsProvider; bool _isInit = true; //bool _isOutOfStuck = false; @@ -50,6 +52,7 @@ class _PharmaciesListState extends State { @override Widget build(BuildContext context) { + projectsProvider = Provider.of(context); return AppScaffold( appBarTitle: TranslationBase.of(context).pharmaciesList, body: Container( @@ -139,18 +142,23 @@ class _PharmaciesListState extends State { ); })), Container( - margin: EdgeInsets.only( - top: SizeConfig.widthMultiplier * 2, - bottom: SizeConfig.widthMultiplier * 2, - right: SizeConfig.widthMultiplier * 4, - left: SizeConfig.widthMultiplier * 4, + margin: EdgeInsets.only( + top: SizeConfig.widthMultiplier * 2, + bottom: SizeConfig.widthMultiplier * 2, + right: SizeConfig.widthMultiplier * 4, + left: SizeConfig.widthMultiplier * 4, + ), + child: Align( + alignment: Alignment.centerLeft, + child: AppText( + TranslationBase.of(context).youCanFindItIn, + fontWeight: FontWeight.bold, ), - child: Align( - alignment: Alignment.centerLeft, - child: AppText( - TranslationBase.of(context).youCanFindItIn, - fontWeight: FontWeight.bold, - ))), + ), + alignment: projectsProvider.isArabic + ? Alignment.topRight + : Alignment.topLeft, + ), Expanded( child: Container( width: SizeConfig.screenWidth * 0.99, diff --git a/lib/screens/patients/patients_screen.dart b/lib/screens/patients/patients_screen.dart index fef6567a..5e64a805 100644 --- a/lib/screens/patients/patients_screen.dart +++ b/lib/screens/patients/patients_screen.dart @@ -12,6 +12,7 @@ import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/models/patient/patient_model.dart'; import 'package:doctor_app_flutter/models/patient/topten_users_res_model.dart'; import 'package:doctor_app_flutter/providers/patients_provider.dart'; +import 'package:doctor_app_flutter/providers/project_provider.dart'; import 'package:doctor_app_flutter/routes.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/profile_medical_info_widget.dart'; @@ -53,7 +54,8 @@ class _PatientsScreenState extends State { final String assetName = 'assets/image.svg'; // List _locations = ['Today', 'Old Date', 'YESTERDAY']; - List _locations = ['All', 'Today', 'Tomorrow', 'Next Week']; + List _locations = []; //['All', 'Today', 'Tomorrow', 'Next Week']; + int _activeLocation = 0; bool _isInit = true; @@ -63,6 +65,7 @@ class _PatientsScreenState extends State { bool _isError = true; String error = ""; + ProjectProvider projectsProvider; final _controller = TextEditingController(); @@ -71,12 +74,18 @@ class _PatientsScreenState extends State { @override void didChangeDependencies() { + projectsProvider = Provider.of(context); + final routeArgs = ModalRoute.of(context).settings.arguments as Map; patient = routeArgs['patientSearchForm']; patientType = routeArgs['selectedType']; - patientTypetitle = SERVICES_PATIANT_HEADER[int.parse(patientType)]; + + if (!projectsProvider.isArabic) + patientTypetitle = SERVICES_PATIANT_HEADER[int.parse(patientType)]; + else + patientTypetitle = SERVICES_PATIANT_HEADER_AR[int.parse(patientType)]; print(patientType); @@ -296,6 +305,12 @@ class _PatientsScreenState extends State { */ @override Widget build(BuildContext context) { + _locations = [ + TranslationBase.of(context).all, + TranslationBase.of(context).today, + TranslationBase.of(context).tomorrow, + TranslationBase.of(context).nextWeek, + ]; PatientsProvider patientsProv = Provider.of(context); return AppScaffold( @@ -539,7 +554,8 @@ class _PatientsScreenState extends State { ], ) : AppText( - item.nationalityName, + item.nationalityName ?? + item.nationalityNameN, fontSize: 2.5 * SizeConfig.textMultiplier, diff --git a/lib/screens/profile_screen.dart b/lib/screens/profile_screen.dart index fa9869ad..283649aa 100644 --- a/lib/screens/profile_screen.dart +++ b/lib/screens/profile_screen.dart @@ -78,8 +78,8 @@ class _ProfileScreenState extends State { Icons.crop_square, color: Colors.black, subTitle: doctorProfile.doctorRate == 0 - ? "being bad" - : "being great", + ? TranslationBase.of(context).beingBad + : TranslationBase.of(context).beingGreat, ), ], ), diff --git a/lib/util/translations_delegate_base.dart b/lib/util/translations_delegate_base.dart index 33eadefb..822e74c7 100644 --- a/lib/util/translations_delegate_base.dart +++ b/lib/util/translations_delegate_base.dart @@ -230,6 +230,8 @@ class TranslationBase { localizedValues['prescriptionInfo'][locale.languageCode]; String get errorNoOrders => localizedValues['errorNoOrders'][locale.languageCode]; + String get beingBad => localizedValues['beingBad'][locale.languageCode]; + String get beingGreat => localizedValues['beingGreat'][locale.languageCode]; } class TranslationBaseDelegate extends LocalizationsDelegate { diff --git a/pubspec.lock b/pubspec.lock index cafaf489..71445e35 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -127,13 +127,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "7.1.0" - characters: - dependency: transitive - description: - name: characters - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.0" charcode: dependency: transitive description: @@ -162,13 +155,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.2" - clock: - dependency: transitive - description: - name: clock - url: "https://pub.dartlang.org" - source: hosted - version: "1.0.1" code_builder: dependency: transitive description: @@ -260,13 +246,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "4.1.4" - fake_async: - dependency: transitive - description: - name: fake_async - url: "https://pub.dartlang.org" - source: hosted - version: "1.1.0" fixnum: dependency: transitive description: @@ -371,6 +350,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.1.4" + image: + dependency: transitive + description: + name: image + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.12" imei_plugin: dependency: "direct main" description: @@ -482,7 +468,7 @@ packages: name: path url: "https://pub.dartlang.org" source: hosted - version: "1.7.0" + version: "1.6.4" pedantic: dependency: transitive description: @@ -511,6 +497,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.0" + petitparser: + dependency: transitive + description: + name: petitparser + url: "https://pub.dartlang.org" + source: hosted + version: "2.4.0" platform: dependency: transitive description: @@ -683,7 +676,7 @@ packages: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.2.16" + version: "0.2.15" timing: dependency: transitive description: @@ -747,6 +740,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.1.0" + xml: + dependency: transitive + description: + name: xml + url: "https://pub.dartlang.org" + source: hosted + version: "3.6.1" yaml: dependency: transitive description: @@ -755,5 +755,5 @@ packages: source: hosted version: "2.2.1" sdks: - dart: ">=2.9.0-14.0.dev <3.0.0" + dart: ">=2.7.0 <3.0.0" flutter: ">=1.12.13+hotfix.5 <2.0.0" From 3ef9ca1a0492151c27e4b6caf84e7bce50bcd655 Mon Sep 17 00:00:00 2001 From: hussam al-habibeh Date: Wed, 24 Jun 2020 10:21:00 +0300 Subject: [PATCH 2/2] Json data translation --- lib/client/base_app_client.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/client/base_app_client.dart b/lib/client/base_app_client.dart index e842430a..edd8802f 100644 --- a/lib/client/base_app_client.dart +++ b/lib/client/base_app_client.dart @@ -51,7 +51,7 @@ class BaseAppClient { body['TokenID'] = token ?? ''; String lang = await sharedPref.getString(APP_Language); - if (lang == 'ar' && lang == null) + if (lang != null && lang == 'ar') body['LanguageID'] = 1; else body['LanguageID'] = 2;