fix localization and UI updates

fatima_dev
Fatimah.Alshammari 2 months ago
parent d9a2dd4fcb
commit 885b922a41

@ -1,3 +1,4 @@
import 'package:mc_common_app/generated/locale_keys.g.dart';
import 'package:mc_common_app/models/appointments_models/schedule_model.dart'; import 'package:mc_common_app/models/appointments_models/schedule_model.dart';
import 'package:mc_common_app/models/general_models/generic_resp_model.dart'; import 'package:mc_common_app/models/general_models/generic_resp_model.dart';
import 'package:mc_common_app/models/provider_branches_models/profile/services.dart'; import 'package:mc_common_app/models/provider_branches_models/profile/services.dart';
@ -6,15 +7,16 @@ import 'package:car_provider_app/views/branch_management/schedule/widgets/chips_
import 'package:mc_common_app/utils/enums.dart'; import 'package:mc_common_app/utils/enums.dart';
import 'package:mc_common_app/utils/utils.dart'; import 'package:mc_common_app/utils/utils.dart';
import 'package:mc_common_app/view_models/base_view_model.dart'; import 'package:mc_common_app/view_models/base_view_model.dart';
import 'package:easy_localization/easy_localization.dart';
List<PickerItem> initDaysList = [ List<PickerItem> initDaysList = [
PickerItem(id: 1, title: "Sunday", isSelected: false), PickerItem(id: 1, title: LocaleKeys.sunday.tr(), isSelected: false),
PickerItem(id: 2, title: "Monday", isSelected: false), PickerItem(id: 2, title: LocaleKeys.monday.tr(), isSelected: false),
PickerItem(id: 3, title: "Tuesday", isSelected: false), PickerItem(id: 3, title: LocaleKeys.tuesday.tr(), isSelected: false),
PickerItem(id: 4, title: "Wednesday", isSelected: false), PickerItem(id: 4, title: LocaleKeys.wednesday.tr(), isSelected: false),
PickerItem(id: 5, title: "Thursday", isSelected: false), PickerItem(id: 5, title: LocaleKeys.thursday.tr(), isSelected: false),
PickerItem(id: 6, title: "Friday", isSelected: false), PickerItem(id: 6, title: LocaleKeys.friday.tr(), isSelected: false),
PickerItem(id: 7, title: "Saturday", isSelected: false), PickerItem(id: 7, title: LocaleKeys.saturday.tr(), isSelected: false),
]; ];
class ScheduleVM extends BaseVM { class ScheduleVM extends BaseVM {

@ -1,109 +1,109 @@
import 'package:car_provider_app/config/provider_routes.dart'; // import 'package:car_provider_app/config/provider_routes.dart';
import 'package:flutter/material.dart'; // import 'package:flutter/material.dart';
import 'package:mc_common_app/classes/consts.dart'; // import 'package:mc_common_app/classes/consts.dart';
import 'package:mc_common_app/config/routes.dart'; // import 'package:mc_common_app/config/routes.dart';
import 'package:mc_common_app/extensions/int_extensions.dart'; // import 'package:mc_common_app/extensions/int_extensions.dart';
import 'package:mc_common_app/extensions/string_extensions.dart'; // import 'package:mc_common_app/extensions/string_extensions.dart';
import 'package:mc_common_app/generated/locale_keys.g.dart'; // import 'package:mc_common_app/generated/locale_keys.g.dart';
import 'package:mc_common_app/theme/colors.dart'; // import 'package:mc_common_app/theme/colors.dart';
import 'package:mc_common_app/utils/navigator.dart'; // import 'package:mc_common_app/utils/navigator.dart';
import 'package:mc_common_app/widgets/extensions/extensions_widget.dart'; // import 'package:mc_common_app/widgets/extensions/extensions_widget.dart';
import 'package:flutter_svg/flutter_svg.dart'; // import 'package:flutter_svg/flutter_svg.dart';
import 'package:easy_localization/easy_localization.dart'; // import 'package:easy_localization/easy_localization.dart';
//
//
class AppointmentDetailListWidget extends StatelessWidget { // class AppointmentDetailListWidget extends StatelessWidget {
bool isNeedClick; // bool isNeedClick;
//
AppointmentDetailListWidget({Key? key, this.isNeedClick = true}) : super(key: key); // AppointmentDetailListWidget({Key? key, this.isNeedClick = true}) : super(key: key);
//
@override // @override
Widget build(BuildContext context) { // Widget build(BuildContext context) {
return Column( // return Column(
crossAxisAlignment: CrossAxisAlignment.start, // crossAxisAlignment: CrossAxisAlignment.start,
children: [ // children: [
Row( // Row(
crossAxisAlignment: CrossAxisAlignment.start, // crossAxisAlignment: CrossAxisAlignment.start,
children: [ // children: [
Expanded( // Expanded(
child: Column( // child: Column(
crossAxisAlignment: CrossAxisAlignment.start, // crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.start, // mainAxisAlignment: MainAxisAlignment.start,
children: [ // children: [
"Olaya Brach".toText( // "Olaya Brach".toText(
fontSize: 12, // fontSize: 12,
color: MyColors.darkTextColor, // color: MyColors.darkTextColor,
isBold: true, // isBold: true,
), // ),
"Abdullah Alhbas".toText( // "Abdullah Alhbas".toText(
fontSize: 14, // fontSize: 14,
isBold: true, // isBold: true,
), // ),
Row( // Row(
children: [ // children: [
"Appt. On:".toText( // "Appt. On:".toText(
color: MyColors.lightTextColor, // color: MyColors.lightTextColor,
), // ),
2.width, // 2.width,
"19-Mar-2023 11:48 AM".toText(), // "19-Mar-2023 11:48 AM".toText(),
], // ],
), // ),
], // ],
), // ),
), // ),
SvgPicture.asset( // SvgPicture.asset(
MyAssets.icEdit, // MyAssets.icEdit,
color: Colors.black, // color: Colors.black,
width: 20, // width: 20,
height: 20, // height: 20,
) // )
], // ],
), // ),
8.height, // 8.height,
showServices("Maintenance"), // showServices("Maintenance"),
2.height, // 2.height,
showServices("Accessories and Modification"), // showServices("Accessories and Modification"),
24.height, // 24.height,
LocaleKeys.totalAmount.tr().toText( // LocaleKeys.totalAmount.tr().toText(
fontSize: 12, // fontSize: 12,
color: MyColors.lightTextColor, // color: MyColors.lightTextColor,
isBold: true, // isBold: true,
), // ),
Row( // Row(
mainAxisAlignment: MainAxisAlignment.start, // mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.end, // crossAxisAlignment: CrossAxisAlignment.end,
children: [ // children: [
"30,000".toText(fontSize: 16, isBold: true), // "30,000".toText(fontSize: 16, isBold: true),
2.width, // 2.width,
LocaleKeys.sar.tr().toText( // LocaleKeys.sar.tr().toText(
color: MyColors.lightTextColor, // color: MyColors.lightTextColor,
), // ),
], // ],
), // ),
], // ],
).toWhiteContainer( // ).toWhiteContainer(
width: double.infinity, // width: double.infinity,
allPading: 12, // allPading: 12,
onTap: () { // onTap: () {
if (isNeedClick) navigateWithName(context, AppRoutes.updateAppointmentPage); // if (isNeedClick) navigateWithName(context, AppRoutes.updateAppointmentPage);
}, // },
); // );
} // }
//
Widget showServices(String title) { // Widget showServices(String title) {
return Row( // return Row(
children: [ // children: [
const Icon( // const Icon(
Icons.ac_unit, // Icons.ac_unit,
color: MyColors.primaryColor, // color: MyColors.primaryColor,
size: 18, // size: 18,
), // ),
8.width, // 8.width,
title.toText( // title.toText(
fontSize: 14, // fontSize: 14,
isBold: true, // isBold: true,
), // ),
], // ],
); // );
} // }
} // }

@ -195,7 +195,7 @@ class _CreateItemPageState extends State<CreateItemPage> {
), ),
), ),
ShowFillButton( ShowFillButton(
title: (itemData!.isUpdateOrSelected ?? false) ? "Update Item" : "Create Item", title: (itemData!.isUpdateOrSelected ?? false) ? LocaleKeys.updateItem.tr() : LocaleKeys.createItem.tr(),
maxWidth: double.infinity, maxWidth: double.infinity,
onPressed: () async { onPressed: () async {
if (validation()) { if (validation()) {
@ -260,20 +260,39 @@ class _CreateItemPageState extends State<CreateItemPage> {
); );
} }
// bool validation() {
// bool valid = true;
// if (pickedImage.isEmpty && file == null) {
// Utils.showToast("Please add al least one item image.");
// valid = false;
// }
// if (name == null || name!.length < 3) {
// Utils.showToast("Please add valid item name");
// valid = false;
// } else if (description == null || description!.length < 3) {
// Utils.showToast("Please add valid item description");
// valid = false;
// } else if (price == null) {
// Utils.showToast("Please add valid item price");
// valid = false;
// }
// return valid;
// }
bool validation() { bool validation() {
bool valid = true; bool valid = true;
if (pickedImage.isEmpty && file == null) { if (pickedImage.isEmpty && file == null) {
Utils.showToast("Please add al least one item image."); Utils.showToast(LocaleKeys.pleaseAddAtLeastOneItemImage.tr());
valid = false; valid = false;
} }
if (name == null || name!.length < 3) { if (name == null || name!.length < 3) {
Utils.showToast("Please add valid item name"); Utils.showToast(LocaleKeys.pleaseAddValidItemName.tr());
valid = false; valid = false;
} else if (description == null || description!.length < 3) { } else if (description == null || description!.length < 3) {
Utils.showToast("Please add valid item description"); Utils.showToast(LocaleKeys.pleaseAddValidItemDescription.tr());
valid = false; valid = false;
} else if (price == null) { } else if (price == null) {
Utils.showToast("Please add valid item price"); Utils.showToast(LocaleKeys.pleaseAddValidItemPrice.tr());
valid = false; valid = false;
} }
return valid; return valid;

@ -58,11 +58,11 @@ class ItemsListPage extends StatelessWidget {
children: [ children: [
model.serviceItems!.data![index].name.toString().toText(fontSize: 16, isBold: true), model.serviceItems!.data![index].name.toString().toText(fontSize: 16, isBold: true),
4.height, 4.height,
showItem("${LocaleKeys.availableforAppointment.tr()}:", (model.serviceItems!.data![index].isAllowAppointment ?? false) ? "Yes" : "No", showItem("${LocaleKeys.availableforAppointment.tr()}:", (model.serviceItems!.data![index].isAllowAppointment ?? false) ? LocaleKeys.yes.tr() : LocaleKeys.no.tr(),
valueColor: Colors.green), valueColor: Colors.green),
showItem("${LocaleKeys.allowingWorkshopService.tr()}:", (model.serviceItems!.data![index].isAppointmentCompanyLoc ?? false) ? "Yes" : "No", showItem("${LocaleKeys.allowingWorkshopService.tr()}:", (model.serviceItems!.data![index].isAppointmentCompanyLoc ?? false) ? LocaleKeys.yes.tr() : LocaleKeys.no.tr(),
valueColor: Colors.green), valueColor: Colors.green),
showItem("${LocaleKeys.allowingHomeService.tr()}:", (model.serviceItems!.data![index].isAppointmentCustomerLoc ?? false) ? "Yes" : "No", showItem("${LocaleKeys.allowingHomeService.tr()}:", (model.serviceItems!.data![index].isAppointmentCustomerLoc ?? false) ? LocaleKeys.yes.tr() : LocaleKeys.no.tr(),
valueColor: Colors.green), valueColor: Colors.green),
12.height, 12.height,
LocaleKeys.serviceAmount.tr().toText(fontSize: 13, color: MyColors.lightTextColor), LocaleKeys.serviceAmount.tr().toText(fontSize: 13, color: MyColors.lightTextColor),

@ -1,122 +1,122 @@
import 'package:flutter/material.dart'; // import 'package:flutter/material.dart';
import 'package:mc_common_app/extensions/int_extensions.dart'; // import 'package:mc_common_app/extensions/int_extensions.dart';
import 'package:mc_common_app/extensions/string_extensions.dart'; // import 'package:mc_common_app/extensions/string_extensions.dart';
import 'package:mc_common_app/theme/colors.dart'; // import 'package:mc_common_app/theme/colors.dart';
import 'package:mc_common_app/widgets/extensions/extensions_widget.dart'; // import 'package:mc_common_app/widgets/extensions/extensions_widget.dart';
//
class DegradePackageSheet extends StatelessWidget { // class DegradePackageSheet extends StatelessWidget {
const DegradePackageSheet({super.key}); // const DegradePackageSheet({super.key});
//
@override // @override
Widget build(BuildContext context) { // Widget build(BuildContext context) {
return Container( // return Container(
width: double.infinity, // width: double.infinity,
padding: const EdgeInsets.all(12), // padding: const EdgeInsets.all(12),
child: Column( // child: Column(
crossAxisAlignment: CrossAxisAlignment.start, // crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.start, // mainAxisAlignment: MainAxisAlignment.start,
children: [ // children: [
"Deactivate the branches & users ".toText( // "Deactivate the branches & users ".toText(
fontSize: 18, // fontSize: 18,
isBold: true, // isBold: true,
), // ),
"To select this subscription you need to deactivate your branches and users as this package only supports 1 branch and 2 users per branch. You can reactivate these branches later after upgrading the package" // "To select this subscription you need to deactivate your branches and users as this package only supports 1 branch and 2 users per branch. You can reactivate these branches later after upgrading the package"
.toText( // .toText(
fontSize: 14, // fontSize: 14,
color: MyColors.lightTextColor, // color: MyColors.lightTextColor,
), // ),
12.height, // 12.height,
showBranchList(), // showBranchList(),
12.height, // 12.height,
], // ],
), // ),
); // );
} // }
//
Widget showBranchList() { // Widget showBranchList() {
return ListView.separated( // return ListView.separated(
itemBuilder: (context, index) { // itemBuilder: (context, index) {
return Column( // return Column(
children: [ // children: [
Row( // Row(
crossAxisAlignment: CrossAxisAlignment.start, // crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.start, // mainAxisAlignment: MainAxisAlignment.start,
children: [ // children: [
customCheckBox(true), // customCheckBox(true),
12.width, // 12.width,
Expanded( // Expanded(
child: Column( // child: Column(
crossAxisAlignment: CrossAxisAlignment.start, // crossAxisAlignment: CrossAxisAlignment.start,
children: [ // children: [
"Olaya Branch".toText( // "Olaya Branch".toText(
fontSize: 16, // fontSize: 16,
isBold: true, // isBold: true,
), // ),
"3 Users".toText( // "3 Users".toText(
fontSize: 10, // fontSize: 10,
color: MyColors.lightTextColor, // color: MyColors.lightTextColor,
), // ),
], // ],
), // ),
), // ),
IconButton( // IconButton(
onPressed: () {}, // onPressed: () {},
icon: const Icon( // icon: const Icon(
Icons.keyboard_arrow_down, // Icons.keyboard_arrow_down,
), // ),
) // )
], // ],
), // ),
showUser("Mirza"), // showUser("Mirza"),
12.height, // 12.height,
showUser("Shafique"), // showUser("Shafique"),
], // ],
).toContainer( // ).toContainer(
isShadowEnabled: true, // isShadowEnabled: true,
borderRadius: 0, // borderRadius: 0,
paddingAll: 12, // paddingAll: 12,
); // );
}, // },
separatorBuilder: (context, index) { // separatorBuilder: (context, index) {
return 12.height; // return 12.height;
}, // },
physics: const NeverScrollableScrollPhysics(), // physics: const NeverScrollableScrollPhysics(),
shrinkWrap: true, // shrinkWrap: true,
itemCount: 2, // itemCount: 2,
); // );
} // }
//
Widget showUser(String user) { // Widget showUser(String user) {
return Row( // return Row(
children: [ // children: [
const SizedBox( // const SizedBox(
width: 24, // width: 24,
), // ),
customCheckBox(false), // customCheckBox(false),
12.width, // 12.width,
user.toText(fontSize: 14), // user.toText(fontSize: 14),
], // ],
); // );
} // }
//
Widget customCheckBox(bool isChecked) { // Widget customCheckBox(bool isChecked) {
return SizedBox( // return SizedBox(
height: 18, // height: 18,
width: 18, // width: 18,
child: isChecked // child: isChecked
? const Icon( // ? const Icon(
Icons.done, // Icons.done,
color: Colors.white, // color: Colors.white,
size: 14, // size: 14,
) // )
: const SizedBox(), // : const SizedBox(),
).toContainer( // ).toContainer(
isEnabledBorder: true, // isEnabledBorder: true,
paddingAll: 0, // paddingAll: 0,
borderRadius: 0, // borderRadius: 0,
borderWidget: 1, // borderWidget: 1,
borderColor: MyColors.primaryColor, // borderColor: MyColors.primaryColor,
backgroundColor: isChecked ? MyColors.primaryColor : Colors.transparent, // backgroundColor: isChecked ? MyColors.primaryColor : Colors.transparent,
); // );
} // }
} // }

@ -1,89 +1,91 @@
import 'package:car_provider_app/views/subscriptions/sheet/degrage_package_sheet.dart'; // import 'package:car_provider_app/views/subscriptions/sheet/degrage_package_sheet.dart';
import 'package:flutter/material.dart'; // import 'package:flutter/material.dart';
import 'package:mc_common_app/extensions/int_extensions.dart'; // import 'package:mc_common_app/extensions/int_extensions.dart';
import 'package:mc_common_app/extensions/string_extensions.dart'; // import 'package:mc_common_app/extensions/string_extensions.dart';
import 'package:mc_common_app/theme/colors.dart'; // import 'package:mc_common_app/generated/locale_keys.g.dart';
import 'package:mc_common_app/widgets/bottom_sheet.dart'; // import 'package:mc_common_app/theme/colors.dart';
import 'package:mc_common_app/widgets/button/show_fill_button.dart'; // import 'package:mc_common_app/widgets/bottom_sheet.dart';
import 'package:mc_common_app/widgets/extensions/extensions_widget.dart'; // import 'package:mc_common_app/widgets/button/show_fill_button.dart';
// import 'package:mc_common_app/widgets/extensions/extensions_widget.dart';
class SelectPackageSheet extends StatelessWidget { // import 'package:easy_localization/easy_localization.dart';
const SelectPackageSheet({super.key}); //
// class SelectPackageSheet extends StatelessWidget {
@override // const SelectPackageSheet({super.key});
Widget build(BuildContext context) { //
return Container( // @override
width: double.infinity, // Widget build(BuildContext context) {
padding: const EdgeInsets.all(12), // return Container(
child: Column( // width: double.infinity,
crossAxisAlignment: CrossAxisAlignment.start, // padding: const EdgeInsets.all(12),
mainAxisAlignment: MainAxisAlignment.start, // child: Column(
children: [ // crossAxisAlignment: CrossAxisAlignment.start,
"When do you want to upgrade".toText( // mainAxisAlignment: MainAxisAlignment.start,
fontSize: 19, // children: [
isBold: true, // LocaleKeys.whendoyouWanttoUpgrade.tr().toText(
), // fontSize: 19,
12.height, // isBold: true,
showPackage(), // ),
12.height, // 12.height,
showPackage(), // showPackage(),
12.height, // 12.height,
ShowFillButton( // showPackage(),
title: "Upgrade", // 12.height,
maxWidth: double.infinity, // ShowFillButton(
onPressed: () { // title: LocaleKeys.upgradeVar.tr(),
showMyBottomSheet(context, child: const DegradePackageSheet()); // maxWidth: double.infinity,
}, // onPressed: () {
), // showMyBottomSheet(context, child: const DegradePackageSheet());
12.height, // },
], // ),
), // 12.height,
); // ],
} // ),
// );
Widget showPackage() { // }
return Row( //
crossAxisAlignment: CrossAxisAlignment.start, // Widget showPackage() {
mainAxisAlignment: MainAxisAlignment.start, // return Row(
children: [ // crossAxisAlignment: CrossAxisAlignment.start,
Checkbox( // mainAxisAlignment: MainAxisAlignment.start,
value: false, // children: [
onChanged: (v) {}, // Checkbox(
), // value: false,
Expanded( // onChanged: (v) {},
child: Column( // ),
crossAxisAlignment: CrossAxisAlignment.start, // Expanded(
mainAxisAlignment: MainAxisAlignment.start, // child: Column(
children: [ // crossAxisAlignment: CrossAxisAlignment.start,
"Now".toText( // mainAxisAlignment: MainAxisAlignment.start,
fontSize: 16, // children: [
isBold: true, // LocaleKeys.nowVar.tr().toText(
), // fontSize: 16,
"Your subscription will upgrade now. Affecting from 23 January, 2024" // isBold: true,
.toText( // ),
fontSize: 12, // "Your subscription will upgrade now. Affecting from 23 January, 2024"
color: MyColors.lightTextColor, // .toText(
), // fontSize: 12,
12.height, // color: MyColors.lightTextColor,
Row( // ),
mainAxisAlignment: MainAxisAlignment.start, // 12.height,
crossAxisAlignment: CrossAxisAlignment.end, // Row(
children: [ // mainAxisAlignment: MainAxisAlignment.start,
"175".toText( // crossAxisAlignment: CrossAxisAlignment.end,
fontSize: 26, // children: [
isBold: true, // "175".toText(
), // fontSize: 26,
2.width, // isBold: true,
"SAR".toText( // ),
color: MyColors.lightTextColor, // 2.width,
fontSize: 16, // LocaleKeys.sar.tr().toText(
), // color: MyColors.lightTextColor,
], // fontSize: 16,
) // ),
], // ],
), // )
) // ],
], // ),
).toContainer(isShadowEnabled: true); // )
} // ],
} // ).toContainer(isShadowEnabled: true);
// }
// }

@ -80,7 +80,8 @@ class _UpgradePackageSheetState extends State<UpgradePackageSheet> {
12.height, 12.height,
packageItem( packageItem(
LocaleKeys.nowVar.tr(), LocaleKeys.nowVar.tr(),
("${LocaleKeys.yourSubscriptionUpgradeAffectingFrom.tr()} ${widget.subscription.dateEnd == null ? DateHelper.formatAsDayMonthYear(DateTime.now()) : DateHelper.formatAsDayMonthYear(DateHelper.parseStringToDate(DateHelper.formatDateT(widget.subscription.dateEnd!)))}"), ("${LocaleKeys.yourSubscriptionUpgradeAffectingFrom.tr()} ${widget.subscription.dateEnd == null ? DateFormat('d MMMM yyyy', context.locale.toString()).format(DateTime.now()) : DateFormat('d MMMM yyyy', context.locale.toString()).format(DateHelper.parseStringToDate(DateHelper.formatDateT(widget.subscription.dateEnd!)))}"),
// ("${LocaleKeys.yourSubscriptionUpgradeAffectingFrom.tr()} ${widget.subscription.dateEnd == null ? DateHelper.formatAsDayMonthYear(DateTime.now()) : DateHelper.formatAsDayMonthYear(DateHelper.parseStringToDate(DateHelper.formatDateT(widget.subscription.dateEnd!)))}"),
double.parse(model.newPrice).toStringAsFixed(2), double.parse(model.newPrice).toStringAsFixed(2),
isNowSelected, isNowSelected,
).onPress(() { ).onPress(() {
@ -93,7 +94,8 @@ class _UpgradePackageSheetState extends State<UpgradePackageSheet> {
if (AppState().getproviderSubscription.isNotEmpty && !AppState().getproviderSubscription.first.isExpired! && !widget.isRenew) ...[ if (AppState().getproviderSubscription.isNotEmpty && !AppState().getproviderSubscription.first.isExpired! && !widget.isRenew) ...[
packageItem( packageItem(
LocaleKeys.upgradeAfterCurrentExpiry.tr(), LocaleKeys.upgradeAfterCurrentExpiry.tr(),
("${LocaleKeys.yourSubscriptionUpgradeCurrentSubscriptionAffectingFrom.tr()} ${AppState().getproviderSubscription.first.dateEnd == null ? "" : AppState().getproviderSubscription.first.dateEnd == null ? DateHelper.formatAsDayMonthYear(DateTime.now()) : DateHelper.formatAsDayMonthYear(DateHelper.parseStringToDate(DateHelper.formatDateT(AppState().getproviderSubscription.first.dateEnd!)))}"), ("${LocaleKeys.yourSubscriptionUpgradeCurrentSubscriptionAffectingFrom.tr()} ${AppState().getproviderSubscription.first.dateEnd == null ? "" : AppState().getproviderSubscription.first.dateEnd == null ? DateFormat('d MMMM yyyy', context.locale.toString()).format(DateTime.now()) : DateFormat('d MMMM yyyy', context.locale.toString()).format(DateHelper.parseStringToDate(DateHelper.formatDateT(AppState().getproviderSubscription.first.dateEnd!)))}"),
// ("${LocaleKeys.yourSubscriptionUpgradeCurrentSubscriptionAffectingFrom.tr()} ${AppState().getproviderSubscription.first.dateEnd == null ? "" : AppState().getproviderSubscription.first.dateEnd == null ? DateHelper.formatAsDayMonthYear(DateTime.now()) : DateHelper.formatAsDayMonthYear(DateHelper.parseStringToDate(DateHelper.formatDateT(AppState().getproviderSubscription.first.dateEnd!)))}"),
widget.subscription.price.toString(), widget.subscription.price.toString(),
isNowSelected ? false : true, isNowSelected ? false : true,
).onPress(() { ).onPress(() {

@ -44,7 +44,7 @@ class AllSubscriptionsCard extends StatelessWidget {
color: textColor, color: textColor,
), ),
), ),
if (subscription.isMyCurrentPackage!) "Current Package".toText(color: MyColors.primaryColor, fontWeight: MyFonts.SemiBold), if (subscription.isMyCurrentPackage!) LocaleKeys.currentPackage.tr().toText(color: MyColors.primaryColor, fontWeight: MyFonts.SemiBold),
if (!subscription.isMyCurrentPackage!) if (!subscription.isMyCurrentPackage!)
(subscription.subscriptionTypeEnum)! (subscription.subscriptionTypeEnum)!
.getStringSubscriptionTypeEnum() .getStringSubscriptionTypeEnum()
@ -82,7 +82,7 @@ class AllSubscriptionsCard extends StatelessWidget {
children: [ children: [
subscription.price.toString().toText(fontSize: 29, isBold: true, color: textColor, letterSpacing: -1.77, height: 1), subscription.price.toString().toText(fontSize: 29, isBold: true, color: textColor, letterSpacing: -1.77, height: 1),
2.width, 2.width,
"${subscription.currency ?? ""} for ${subscription.durationDays} ${LocaleKeys.daysVar.tr()}".toText(color: MyColors.lightTextColor, fontSize: 16, letterSpacing: -0.64).paddingOnly(bottom: 3), "${subscription.currency ?? ""} ${LocaleKeys.forVar.tr()} ${subscription.durationDays} ${LocaleKeys.daysVar.tr()}".toText(color: MyColors.lightTextColor, fontSize: 16, letterSpacing: -0.64).paddingOnly(bottom: 3),
], ],
), ),
), ),
@ -91,7 +91,7 @@ class AllSubscriptionsCard extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
children: [ children: [
(subscription.subscriptionTypeEnum == SubscriptionTypeEnum.current && subscription.isRenewable!) ? "Renew".toText() : (subscription.subscriptionTypeEnum)!.getStringSubscriptionTypeEnum().toText(), (subscription.subscriptionTypeEnum == SubscriptionTypeEnum.current && subscription.isRenewable!) ? LocaleKeys.renewVar.tr().toText() : (subscription.subscriptionTypeEnum)!.getStringSubscriptionTypeEnum().toText(),
6.width, 6.width,
const Icon( const Icon(
Icons.arrow_forward, Icons.arrow_forward,

@ -53,7 +53,7 @@ class MySubscriptionsCard extends StatelessWidget {
), ),
), ),
5.width, 5.width,
(subscriptionVM.isExpired! ? "Expired" : "Subscribed").toText(color: subscriptionVM.isExpired! ? MyColors.darkTextColor : MyColors.white) (subscriptionVM.isExpired! ? LocaleKeys.expired.tr() : LocaleKeys.subscribed.tr()).toText(color: subscriptionVM.isExpired! ? MyColors.darkTextColor : MyColors.white)
], ],
) )
.toContainer( .toContainer(
@ -71,9 +71,9 @@ class MySubscriptionsCard extends StatelessWidget {
// showItem("Users:", "${pvm.subUsersRemaining.toString()} of ${pvm.totalSubUsers.toString()} remaining"), // showItem("Users:", "${pvm.subUsersRemaining.toString()} of ${pvm.totalSubUsers.toString()} remaining"),
// showItem("Branches:", "${pvm.branchesRemaining.toString()} of ${pvm.totalBranches.toString()} remaining"), // showItem("Branches:", "${pvm.branchesRemaining.toString()} of ${pvm.totalBranches.toString()} remaining"),
showItem("Ads: ", "${subscriptionVM.adsRemaining.toString()} remaining"), showItem(LocaleKeys.adsWith.tr(), "${subscriptionVM.adsRemaining.toString()} ${LocaleKeys.remaining.tr()}"),
showItem("Users: ", "${subscriptionVM.subUsersRemaining.toString()} remaining"), showItem(LocaleKeys.usersWith.tr(), "${subscriptionVM.subUsersRemaining.toString()} ${LocaleKeys.remaining.tr()}"),
showItem("Branches: ", "${subscriptionVM.branchesRemaining.toString()} remaining"), showItem(LocaleKeys.branchesWith.tr(), "${subscriptionVM.branchesRemaining.toString()} ${LocaleKeys.remaining.tr()}"),
14.height, 14.height,
Row( Row(
@ -93,7 +93,7 @@ class MySubscriptionsCard extends StatelessWidget {
color: textColor, color: textColor,
), ),
2.width, 2.width,
" ${LocaleKeys.sar.tr()}/Month".toText(color: MyColors.lightTextColor, fontSize: 16, letterSpacing: -0.64).paddingOnly(bottom: 3), " ${LocaleKeys.sar.tr()}/${LocaleKeys.month.tr()}".toText(color: MyColors.lightTextColor, fontSize: 16, letterSpacing: -0.64).paddingOnly(bottom: 3),
], ],
), ),
), ),
@ -101,12 +101,13 @@ class MySubscriptionsCard extends StatelessWidget {
), ),
Row( Row(
children: [ children: [
"${subscriptionVM.isExpired! ? "Expired" : "Expires"} on ${DateHelper.formatAsDayMonthYear(DateHelper.parseStringToDate(DateHelper.formatDateT(subscriptionVM.dateEnd ?? "")))}".toText(fontSize: 14, letterSpacing: -0.56, color: textColor, fontWeight: MyFonts.Medium), "${subscriptionVM.isExpired! ? LocaleKeys.expired.tr() : LocaleKeys.expiresOn.tr()} ${DateFormat('d MMMM yyyy', context.locale.toString()).format(DateHelper.parseStringToDate(DateHelper.formatDateT(subscriptionVM.dateEnd ?? "")))}".toText(fontSize: 14, letterSpacing: -0.56, color: textColor, fontWeight: MyFonts.Medium),
// "${subscriptionVM.isExpired! ? LocaleKeys.expired.tr() : LocaleKeys.expiresOn.tr()} ${DateHelper.formatAsDayMonthYear(DateHelper.parseStringToDate(DateHelper.formatDateT(subscriptionVM.dateEnd ?? "")))}".toText(fontSize: 14, letterSpacing: -0.56, color: textColor, fontWeight: MyFonts.Medium),
if (subscriptionVM.isRenewable!) if (subscriptionVM.isRenewable!)
Row( Row(
children: [ children: [
6.width, 6.width,
"Renew".toText(color: MyColors.primaryColor, fontSize: 14, letterSpacing: -0.56, textDecoration: TextDecoration.underline, decorationColor: MyColors.primaryColor, fontWeight: MyFonts.Medium), LocaleKeys.renew.tr().toText(color: MyColors.primaryColor, fontSize: 14, letterSpacing: -0.56, textDecoration: TextDecoration.underline, decorationColor: MyColors.primaryColor, fontWeight: MyFonts.Medium),
], ],
).onPress(() { ).onPress(() {
onRenewSubscriptionClick(); onRenewSubscriptionClick();

@ -41,8 +41,9 @@ dependencies:
mc_common_app: mc_common_app:
# path: D:\Development\car_common_app # path: D:\Development\car_common_app
# path: /Users/faizhashmi/Development/Projects/MyProjects/CloudSolutions/car_common_app # path: /Users/faizhashmi/Development/Projects/MyProjects/CloudSolutions/car_common_app
path: /Volumes/Data/Projects/Flutter_Projects/car_common_app # path: /Volumes/Data/Projects/Flutter_Projects/car_common_app
# path: /Users/aamir/StudioProjects/car_common_app
path: C:/dev/Mawater/car_common_app

Loading…
Cancel
Save