// import 'dart:developer'; // import 'dart:math' as math; // // import 'package:easy_localization/easy_localization.dart'; // import 'package:flutter/foundation.dart'; // import 'package:flutter/material.dart'; // import 'package:flutter_svg/flutter_svg.dart'; // import 'package:mohem_flutter_app/app_state/app_state.dart'; // import 'package:mohem_flutter_app/classes/colors.dart'; // import 'package:mohem_flutter_app/classes/decorations_helper.dart'; // import 'package:mohem_flutter_app/classes/utils.dart'; // import 'package:mohem_flutter_app/config/routes.dart'; // import 'package:mohem_flutter_app/extensions/int_extensions.dart'; // import 'package:mohem_flutter_app/extensions/string_extensions.dart'; // import 'package:mohem_flutter_app/extensions/widget_extensions.dart'; // import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; // import 'package:mohem_flutter_app/main.dart'; // import 'package:mohem_flutter_app/ui/disclosure/disclosure_provider.dart'; // import 'package:mohem_flutter_app/ui/disclosure/widgets/countdown_timer_main_screen.dart'; // import 'package:provider/provider.dart'; // // // It is used to pass a dummy time to test Marathon // int dummyTime = DateTime.now().millisecondsSinceEpoch + 8690; // // class DisclosureBanner extends StatelessWidget { // const DisclosureBanner({Key? key}) : super(key: key); // // Widget getUnPrivilegedMarathon(BuildContext context) { // return Container( // decoration: MyDecorations.shadowDecoration, // height: isTablet ? MediaQuery.of(context).size.height * 0.17 : MediaQuery.of(context).size.height * 0.11, // clipBehavior: Clip.antiAlias, // child: Stack( // children: [ // Transform( // alignment: Alignment.center, // transform: Matrix4.rotationY( // AppState().isArabic(context) ? math.pi : 0, // ), // child: SvgPicture.asset( // "assets/images/marathon_banner_bg.svg", // fit: BoxFit.fill, // width: double.infinity, // ), // ), // AppState().isArabic(context) // ? Positioned( // right: -15, // top: -10, // child: Transform.rotate( // angle: 10, // child: Container( // width: isTablet ? 70 : 65, // height: isTablet ? 40 : 32, // color: MyColors.darkDigitColor, // ), // ), // ) // : Positioned( // left: -20, // top: -10, // child: Transform.rotate( // angle: 15, // child: Container( // width: isTablet ? 70 : 65, // height: isTablet ? 40 : 32, // color: MyColors.darkDigitColor, // ), // ), // ), // SizedBox( // width: double.infinity, // height: double.infinity, // child: Row( // children: [ // const Expanded( // flex: 3, // child: SizedBox( // width: double.infinity, // height: double.infinity, // ), // ), // Expanded( // flex: AppState().isArabic(context) ? 4 : 5, // child: SizedBox( // width: double.infinity, // height: double.infinity, // child: Row( // mainAxisAlignment: MainAxisAlignment.start, // children: [ // Column( // mainAxisAlignment: MainAxisAlignment.center, // crossAxisAlignment: CrossAxisAlignment.start, // mainAxisSize: MainAxisSize.min, // children: [ // AppState().isArabic(context) ? 0.height : 5.height, // Text( // LocaleKeys.getReadyForContest.tr(), // style: TextStyle( // fontSize: isTablet ? 20 : 11, // fontStyle: FontStyle.italic, // fontWeight: FontWeight.w600, // color: MyColors.white.withOpacity(0.83), // letterSpacing: -0.4, // ), // ), // Text( // LocaleKeys.brainMarathon.tr(), // style: TextStyle( // fontStyle: FontStyle.italic, // fontSize: isTablet ? 30 : 19, // fontWeight: FontWeight.bold, // color: MyColors.white.withOpacity(0.83), // height: 32 / 22, // ), // ), // ], // ).paddingOnly( // left: AppState().isArabic(context) ? 12 : 3, // right: AppState().isArabic(context) ? 3 : 12, // ) // ], // ), // ), // ), // ], // ), // ), // AppState().isArabic(context) // ? Align( // alignment: Alignment.topRight, // child: SizedBox( // height: isTablet ? 30 : 20, // width: isTablet ? 45 : 35, // child: Transform.rotate( // angle: math.pi / 4.5, // child: Text( // LocaleKeys.brainMarathon.tr(), // textAlign: TextAlign.center, // maxLines: 2, // style: TextStyle( // color: MyColors.white, // fontWeight: FontWeight.bold, // fontSize: isTablet ? 8 : 6, // height: 1.2, // ), // ), // ), // ), // ).paddingOnly(top: 5) // : Align( // alignment: Alignment.topLeft, // child: SizedBox( // height: isTablet ? 30 : 20, // width: isTablet ? 45 : 35, // child: Transform.rotate( // angle: -math.pi / 4.5, // child: Text( // LocaleKeys.brainMarathon.tr(), // textAlign: TextAlign.center, // maxLines: 2, // style: TextStyle( // color: MyColors.kWhiteColor, // fontWeight: FontWeight.bold, // fontSize: isTablet ? 8 : 6, // height: 1.2, // ), // ), // ), // ), // ).paddingOnly(top: 5), // Container( // height: double.infinity, // width: double.infinity, // color: Colors.black.withOpacity(0.6), // child: const Icon( // Icons.lock_rounded, // color: MyColors.lightGreyIconColor, // ), // ), // ], // ), // ); // } // // Widget getNoUpcomingMarathonWidget(BuildContext context) { // return Container( // decoration: MyDecorations.shadowDecoration, // height: isTablet ? MediaQuery.of(context).size.height * 0.17 : MediaQuery.of(context).size.height * 0.11, // clipBehavior: Clip.antiAlias, // child: Stack( // children: [ // Transform( // alignment: Alignment.center, // transform: Matrix4.rotationY( // AppState().isArabic(context) ? math.pi : 0, // ), // child: SvgPicture.asset( // "assets/images/marathon_banner_bg.svg", // fit: BoxFit.fill, // width: double.infinity, // ), // ), // AppState().isArabic(context) // ? Positioned( // right: -15, // top: -10, // child: Transform.rotate( // angle: 10, // child: Container( // width: isTablet ? 70 : 65, // height: isTablet ? 40 : 32, // color: MyColors.darkDigitColor, // ), // ), // ) // : Positioned( // left: -20, // top: -10, // child: Transform.rotate( // angle: 15, // child: Container( // width: isTablet ? 70 : 65, // height: isTablet ? 40 : 32, // color: MyColors.darkDigitColor, // ), // ), // ), // SizedBox( // width: double.infinity, // height: double.infinity, // child: Row( // children: [ // const Expanded( // flex: 3, // child: SizedBox( // width: double.infinity, // height: double.infinity, // ), // ), // Expanded( // flex: AppState().isArabic(context) ? 4 : 5, // child: SizedBox( // width: double.infinity, // height: double.infinity, // child: Row( // mainAxisAlignment: MainAxisAlignment.start, // children: [ // Column( // mainAxisAlignment: MainAxisAlignment.center, // crossAxisAlignment: CrossAxisAlignment.start, // mainAxisSize: MainAxisSize.min, // children: [ // AppState().isArabic(context) ? 0.height : 5.height, // Text( // LocaleKeys.noUpcoming.tr(), // style: TextStyle( // fontSize: isTablet ? 20 : 11, // fontStyle: FontStyle.italic, // fontWeight: FontWeight.w600, // color: MyColors.white.withOpacity(0.83), // letterSpacing: -0.4, // ), // ), // Text( // LocaleKeys.brainMarathon.tr(), // style: TextStyle( // fontStyle: FontStyle.italic, // fontSize: isTablet ? 30 : 19, // fontWeight: FontWeight.bold, // color: MyColors.white.withOpacity(0.83), // height: 32 / 22, // ), // ), // Text( // LocaleKeys.youCanPlayDemo.tr(), // style: TextStyle( // fontSize: isTablet ? 20 : 11, // fontStyle: FontStyle.italic, // fontWeight: FontWeight.w600, // color: MyColors.white.withOpacity(0.83), // letterSpacing: -0.4, // ), // ), // ], // ).paddingOnly( // left: AppState().isArabic(context) ? 12 : 3, // right: AppState().isArabic(context) ? 3 : 12, // ) // ], // ), // ), // ), // ], // ), // ), // AppState().isArabic(context) // ? Align( // alignment: Alignment.topRight, // child: SizedBox( // height: isTablet ? 30 : 20, // width: isTablet ? 45 : 35, // child: Transform.rotate( // angle: math.pi / 4.5, // child: Text( // LocaleKeys.brainMarathon.tr(), // textAlign: TextAlign.center, // maxLines: 2, // style: TextStyle( // color: MyColors.white, // fontWeight: FontWeight.bold, // fontSize: isTablet ? 8 : 6, // height: 1.2, // ), // ), // ), // ), // ).paddingOnly(top: 5) // : Align( // alignment: Alignment.topLeft, // child: SizedBox( // height: isTablet ? 30 : 20, // width: isTablet ? 45 : 35, // child: Transform.rotate( // angle: -math.pi / 4.5, // child: Text( // LocaleKeys.brainMarathon.tr(), // textAlign: TextAlign.center, // maxLines: 2, // style: TextStyle( // color: MyColors.kWhiteColor, // fontWeight: FontWeight.bold, // fontSize: isTablet ? 8 : 6, // height: 1.2, // ), // ), // ), // ), // ).paddingOnly(top: 5), // ], // ), // ).onPress(() { // Navigator.pushNamed(context, AppRoutes.marathonIntroScreen); // }); // } // // @override // Widget build(BuildContext context) { // DisclosureProvider provider = context.read(); // // if(provider.isUserWaiting) { // // provider.isUserWaiting = false; // // provider.getMarathonDetailsFromApi(); // // } // return !provider.isPrivilegedWithMarathon // ? getUnPrivilegedMarathon(context) // : provider.isUpComingMarathon // ? Container( // decoration: MyDecorations.shadowDecoration, // height: isTablet ? MediaQuery.of(context).size.height * 0.17 : MediaQuery.of(context).size.height * 0.11, // clipBehavior: Clip.antiAlias, // child: Stack( // children: [ // Transform( // alignment: Alignment.center, // transform: Matrix4.rotationY( // AppState().isArabic(context) ? math.pi : 0, // ), // child: SvgPicture.asset( // "assets/images/marathon_banner_bg.svg", // fit: BoxFit.fill, // width: double.infinity, // ), // ), // AppState().isArabic(context) // ? Positioned( // right: -15, // top: -10, // child: Transform.rotate( // angle: 10, // child: Container( // width: isTablet ? 70 : 65, // height: isTablet ? 40 : 32, // color: MyColors.darkDigitColor, // ), // ), // ) // : Positioned( // left: -20, // top: -10, // child: Transform.rotate( // angle: 15, // child: Container( // width: isTablet ? 70 : 65, // height: isTablet ? 40 : 32, // color: MyColors.darkDigitColor, // ), // ), // ), // SizedBox( // width: double.infinity, // height: double.infinity, // child: Row( // children: [ // const Expanded( // flex: 3, // child: SizedBox( // width: double.infinity, // height: double.infinity, // ), // ), // Expanded( // flex: AppState().isArabic(context) ? 4 : 5, // child: SizedBox( // width: double.infinity, // height: double.infinity, // child: Row( // mainAxisAlignment: MainAxisAlignment.start, // children: [ // Column( // mainAxisAlignment: MainAxisAlignment.center, // crossAxisAlignment: CrossAxisAlignment.start, // mainAxisSize: MainAxisSize.min, // children: [ // AppState().isArabic(context) ? 0.height : 5.height, // Text( // LocaleKeys.getReadyForContest.tr(), // style: TextStyle( // fontSize: isTablet ? 20 : 11, // fontStyle: FontStyle.italic, // fontWeight: FontWeight.w600, // color: MyColors.white.withOpacity(0.83), // letterSpacing: -0.4, // ), // ), // Flexible( // child: Text( // displayLocalizedContent( // isPhoneLangArabic: AppState().isArabic(context), // selectedLanguage: provider.marathonDetailModel.selectedLanguage ?? 0, // englishContent: provider.marathonDetailModel.titleEn ?? "", // arabicContent: provider.marathonDetailModel.titleAr ?? "", // ), // overflow: TextOverflow.ellipsis, // style: TextStyle( // fontStyle: FontStyle.italic, // fontSize: isTablet ? 30 : 19, // fontWeight: FontWeight.bold, // color: MyColors.white.withOpacity(0.83), // height: 32 / 22, // ), // ), // ), // isTablet ? 10.height : 3.height, // DisclosureCountdownTimerForMainScreen( // timeToMarathon: DateTime.parse(provider.marathonDetailModel.startTime!).millisecondsSinceEpoch, // provider: provider, // ), // ], // ).paddingOnly( // left: AppState().isArabic(context) ? 12 : 3, // right: AppState().isArabic(context) ? 3 : 12, // ) // ], // ), // ), // ), // ], // ), // ), // AppState().isArabic(context) // ? Align( // alignment: Alignment.topRight, // child: SizedBox( // height: isTablet ? 30 : 20, // width: isTablet ? 45 : 35, // child: Transform.rotate( // angle: math.pi / 4.5, // child: Text( // LocaleKeys.brainMarathon.tr(), // textAlign: TextAlign.center, // maxLines: 2, // style: TextStyle( // color: MyColors.white, // fontWeight: FontWeight.bold, // fontSize: isTablet ? 8 : 6, // height: 1.2, // ), // ), // ), // ), // ).paddingOnly(top: 5) // : Align( // alignment: Alignment.topLeft, // child: SizedBox( // height: isTablet ? 30 : 20, // width: isTablet ? 45 : 35, // child: Transform.rotate( // angle: -math.pi / 4.5, // child: Text( // LocaleKeys.brainMarathon.tr(), // textAlign: TextAlign.center, // maxLines: 2, // style: TextStyle( // color: MyColors.kWhiteColor, // fontWeight: FontWeight.bold, // fontSize: isTablet ? 8 : 6, // height: 1.2, // ), // ), // ), // ), // ).paddingOnly(top: 5), // !AppState().isArabic(context) // ? Positioned( // right: 0, // bottom: 0, // child: RotatedBox( // quarterTurns: 4, // child: SvgPicture.asset("assets/images/arrow_next.svg", color: MyColors.whiteColor), // ).paddingAll(isTablet ? 20 : 15), // ) // : Positioned( // bottom: 0, // left: 0, // child: RotatedBox( // quarterTurns: 2, // child: SvgPicture.asset("assets/images/arrow_next.svg", color: MyColors.whiteColor), // ).paddingAll(isTablet ? 20 : 15), // ), // ], // ).onPress(() async { // int remainingTimeInMinutes = DateTime.parse(provider.marathonDetailModel.startTime!).difference(DateTime.now()).inMinutes; // if (remainingTimeInMinutes > 5 && provider.marathonDetailModel.sponsors != null && provider.marathonDetailModel.sponsors!.isNotEmpty) { // Utils.showLoading(context); // // try { // // await provider.initializeVideoPlayer().then((_) { // // Utils.hideLoading(context); // // provider.startTimerForSponsorVideo(); // // Navigator.pushNamed(context, AppRoutes.marathonSponsorVideoScreen); // // }); // // } catch (e) { // // if (kDebugMode) { // // log("Error in VideoPlayer: ${e.toString()}"); // // } // // Utils.hideLoading(context); // // Navigator.pushNamed(context, AppRoutes.marathonIntroScreen); // // } // } else { // Navigator.pushNamed(context, AppRoutes.marathonIntroScreen); // } // provider.updateLanguageAsPerMarathon(context, provider.isUpComingMarathon ? provider.marathonDetailModel : provider.demoMarathonDetailModel); // }), // ) // : getNoUpcomingMarathonWidget(context); // } // }