|  |  |  | @ -17,6 +17,7 @@ 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/models/offers_and_discounts/get_offers_list.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:mohem_flutter_app/models/privilege_list_model.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:mohem_flutter_app/provider/chat_provider_model.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:mohem_flutter_app/provider/dashboard_provider_model.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:mohem_flutter_app/ui/landing/widget/app_drawer.dart'; | 
		
	
	
		
			
				
					|  |  |  | @ -62,7 +63,9 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |       data = Provider.of<DashboardProviderModel>(context, listen: false); | 
		
	
		
			
				|  |  |  |  |       marathonProvider = Provider.of<MarathonProvider>(context, listen: false); | 
		
	
		
			
				|  |  |  |  |       cProvider = Provider.of<ChatProviderModel>(context, listen: false); | 
		
	
		
			
				|  |  |  |  |       _bHubCon(); | 
		
	
		
			
				|  |  |  |  |       if (checkIfPrivilegedForChat()) { | 
		
	
		
			
				|  |  |  |  |         _bHubCon(); | 
		
	
		
			
				|  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |       _onRefresh(true); | 
		
	
		
			
				|  |  |  |  |     }); | 
		
	
		
			
				|  |  |  |  |   } | 
		
	
	
		
			
				
					|  |  |  | @ -166,15 +169,6 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |                     "masterId": val.result!.data!.notificationMasterId, | 
		
	
		
			
				|  |  |  |  |                     "advertisement": value.mohemmItgResponseItem!.result!.data!.advertisement, | 
		
	
		
			
				|  |  |  |  |                   }); | 
		
	
		
			
				|  |  |  |  |                   // Navigator.push( | 
		
	
		
			
				|  |  |  |  |                   //   context, | 
		
	
		
			
				|  |  |  |  |                   //   MaterialPageRoute( | 
		
	
		
			
				|  |  |  |  |                   //     builder: (BuildContext context) => ITGAdsScreen( | 
		
	
		
			
				|  |  |  |  |                   //       addMasterId: val.result!.data!.notificationMasterId!, | 
		
	
		
			
				|  |  |  |  |                   //       advertisement: value.mohemmItgResponseItem!.result!.data!.advertisement!, | 
		
	
		
			
				|  |  |  |  |                   //     ), | 
		
	
		
			
				|  |  |  |  |                   //   ), | 
		
	
		
			
				|  |  |  |  |                   // ); | 
		
	
		
			
				|  |  |  |  |                 } | 
		
	
		
			
				|  |  |  |  |               } | 
		
	
		
			
				|  |  |  |  |             }, | 
		
	
	
		
			
				
					|  |  |  | @ -188,46 +182,6 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |   Widget build(BuildContext context) { | 
		
	
		
			
				|  |  |  |  |     return Scaffold( | 
		
	
		
			
				|  |  |  |  |       key: _scaffoldState, | 
		
	
		
			
				|  |  |  |  |       // appBar: AppBar( | 
		
	
		
			
				|  |  |  |  |       //   actions: [ | 
		
	
		
			
				|  |  |  |  |       //     IconButton( | 
		
	
		
			
				|  |  |  |  |       //         onPressed: () { | 
		
	
		
			
				|  |  |  |  |       //           data.getITGNotification().then((val) { | 
		
	
		
			
				|  |  |  |  |       //             if (val!.result!.data != null) { | 
		
	
		
			
				|  |  |  |  |       //               print("-------------------- Survey ----------------------------"); | 
		
	
		
			
				|  |  |  |  |       //               if (val.result!.data!.notificationType == "Survey") { | 
		
	
		
			
				|  |  |  |  |       //                 Navigator.pushNamed(context, AppRoutes.survey, arguments: val.result!.data); | 
		
	
		
			
				|  |  |  |  |       //               } else { | 
		
	
		
			
				|  |  |  |  |       //                 print("------------------------------------------- Ads --------------------"); | 
		
	
		
			
				|  |  |  |  |       //                 DashboardApiClient().getAdvertisementDetail(val.result!.data!.notificationMasterId ?? "").then( | 
		
	
		
			
				|  |  |  |  |       //                   (value) { | 
		
	
		
			
				|  |  |  |  |       //                     if (value!.mohemmItgResponseItem!.statusCode == 200) { | 
		
	
		
			
				|  |  |  |  |       //                       if (value.mohemmItgResponseItem!.result!.data != null) { | 
		
	
		
			
				|  |  |  |  |       //                         Navigator.pushNamed(context, AppRoutes.advertisement, arguments: { | 
		
	
		
			
				|  |  |  |  |       //                           "masterId": val.result!.data!.notificationMasterId, | 
		
	
		
			
				|  |  |  |  |       //                           "advertisement": value.mohemmItgResponseItem!.result!.data!.advertisement, | 
		
	
		
			
				|  |  |  |  |       //                         }); | 
		
	
		
			
				|  |  |  |  |       // | 
		
	
		
			
				|  |  |  |  |       //                         // Navigator.push( | 
		
	
		
			
				|  |  |  |  |       //                         //   context, | 
		
	
		
			
				|  |  |  |  |       //                         //   MaterialPageRoute( | 
		
	
		
			
				|  |  |  |  |       //                         //     builder: (BuildContext context) => ITGAdsScreen( | 
		
	
		
			
				|  |  |  |  |       //                         //       addMasterId: val.result!.data!.notificationMasterId!, | 
		
	
		
			
				|  |  |  |  |       //                         //       advertisement: value.mohemmItgResponseItem!.result!.data!.advertisement!, | 
		
	
		
			
				|  |  |  |  |       //                         //     ), | 
		
	
		
			
				|  |  |  |  |       //                         //   ), | 
		
	
		
			
				|  |  |  |  |       //                         // ); | 
		
	
		
			
				|  |  |  |  |       //                       } | 
		
	
		
			
				|  |  |  |  |       //                     } | 
		
	
		
			
				|  |  |  |  |       //                   }, | 
		
	
		
			
				|  |  |  |  |       //                 ); | 
		
	
		
			
				|  |  |  |  |       //               } | 
		
	
		
			
				|  |  |  |  |       //             } | 
		
	
		
			
				|  |  |  |  |       //           }); | 
		
	
		
			
				|  |  |  |  |       //         }, | 
		
	
		
			
				|  |  |  |  |       //         icon: Icon(Icons.add)) | 
		
	
		
			
				|  |  |  |  |       //   ], | 
		
	
		
			
				|  |  |  |  |       // ), | 
		
	
		
			
				|  |  |  |  |       body: Column( | 
		
	
		
			
				|  |  |  |  |         children: [ | 
		
	
		
			
				|  |  |  |  |           Row( | 
		
	
	
		
			
				
					|  |  |  | @ -614,24 +568,28 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |                 children: [ | 
		
	
		
			
				|  |  |  |  |                   SvgPicture.asset( | 
		
	
		
			
				|  |  |  |  |                     "assets/icons/chat/chat.svg", | 
		
	
		
			
				|  |  |  |  |                     color: currentIndex == 4 | 
		
	
		
			
				|  |  |  |  |                         ? MyColors.grey3AColor | 
		
	
		
			
				|  |  |  |  |                         : cProvider.disbaleChatForThisUser | 
		
	
		
			
				|  |  |  |  |                             ? MyColors.lightGreyE3Color | 
		
	
		
			
				|  |  |  |  |                             : MyColors.grey98Color, | 
		
	
		
			
				|  |  |  |  |                     color: !checkIfPrivilegedForChat() | 
		
	
		
			
				|  |  |  |  |                         ? MyColors.lightGreyE3Color | 
		
	
		
			
				|  |  |  |  |                         : currentIndex == 4 | 
		
	
		
			
				|  |  |  |  |                             ? MyColors.grey3AColor | 
		
	
		
			
				|  |  |  |  |                             : cProvider.disbaleChatForThisUser | 
		
	
		
			
				|  |  |  |  |                                 ? MyColors.lightGreyE3Color | 
		
	
		
			
				|  |  |  |  |                                 : MyColors.grey98Color, | 
		
	
		
			
				|  |  |  |  |                   ).paddingAll(4), | 
		
	
		
			
				|  |  |  |  |                   Consumer<ChatProviderModel>( | 
		
	
		
			
				|  |  |  |  |                     builder: (BuildContext cxt, ChatProviderModel data, Widget? child) { | 
		
	
		
			
				|  |  |  |  |                       return Positioned( | 
		
	
		
			
				|  |  |  |  |                         right: 0, | 
		
	
		
			
				|  |  |  |  |                         top: 0, | 
		
	
		
			
				|  |  |  |  |                         child: Container( | 
		
	
		
			
				|  |  |  |  |                           padding: const EdgeInsets.only(left: 4, right: 4), | 
		
	
		
			
				|  |  |  |  |                           alignment: Alignment.center, | 
		
	
		
			
				|  |  |  |  |                           decoration: BoxDecoration(color: cProvider.disbaleChatForThisUser ? MyColors.pinkDarkColor : MyColors.redColor, borderRadius: BorderRadius.circular(17)), | 
		
	
		
			
				|  |  |  |  |                           child: data.chatUConvCounter.toString().toText10(color: Colors.white), | 
		
	
		
			
				|  |  |  |  |                         ), | 
		
	
		
			
				|  |  |  |  |                       ); | 
		
	
		
			
				|  |  |  |  |                       return !checkIfPrivilegedForChat() | 
		
	
		
			
				|  |  |  |  |                           ? const SizedBox() | 
		
	
		
			
				|  |  |  |  |                           : Positioned( | 
		
	
		
			
				|  |  |  |  |                               right: 0, | 
		
	
		
			
				|  |  |  |  |                               top: 0, | 
		
	
		
			
				|  |  |  |  |                               child: Container( | 
		
	
		
			
				|  |  |  |  |                                 padding: const EdgeInsets.only(left: 4, right: 4), | 
		
	
		
			
				|  |  |  |  |                                 alignment: Alignment.center, | 
		
	
		
			
				|  |  |  |  |                                 decoration: BoxDecoration(color: cProvider.disbaleChatForThisUser ? MyColors.pinkDarkColor : MyColors.redColor, borderRadius: BorderRadius.circular(17)), | 
		
	
		
			
				|  |  |  |  |                                 child: data.chatUConvCounter.toString().toText10(color: Colors.white), | 
		
	
		
			
				|  |  |  |  |                               ), | 
		
	
		
			
				|  |  |  |  |                             ); | 
		
	
		
			
				|  |  |  |  |                     }, | 
		
	
		
			
				|  |  |  |  |                   ), | 
		
	
		
			
				|  |  |  |  |                 ], | 
		
	
	
		
			
				
					|  |  |  | @ -655,7 +613,7 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |             } else if (index == 3) { | 
		
	
		
			
				|  |  |  |  |               Navigator.pushNamed(context, AppRoutes.itemsForSale); | 
		
	
		
			
				|  |  |  |  |             } else if (index == 4) { | 
		
	
		
			
				|  |  |  |  |               if (!cProvider.disbaleChatForThisUser) { | 
		
	
		
			
				|  |  |  |  |               if (!cProvider.disbaleChatForThisUser && checkIfPrivilegedForChat()) { | 
		
	
		
			
				|  |  |  |  |                 Navigator.pushNamed(context, AppRoutes.chat); | 
		
	
		
			
				|  |  |  |  |               } | 
		
	
		
			
				|  |  |  |  |             } | 
		
	
	
		
			
				
					|  |  |  | @ -680,7 +638,17 @@ class _DashboardScreenState extends State<DashboardScreen> with WidgetsBindingOb | 
		
	
		
			
				|  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |     }); | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     Navigator.pushNamed(context, AppRoutes.offersAndDiscountsDetails, arguments: getOffersDetailList); | 
		
	
		
			
				|  |  |  |  |   } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |   bool checkIfPrivilegedForChat() { | 
		
	
		
			
				|  |  |  |  |     for (PrivilegeListModel element in AppState().privilegeListModel!) { | 
		
	
		
			
				|  |  |  |  |       if (element.serviceName?.toLowerCase() == "chat") { | 
		
	
		
			
				|  |  |  |  |         if (element.previlege != null) { | 
		
	
		
			
				|  |  |  |  |           return element.previlege!; | 
		
	
		
			
				|  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |       } | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  |     return false; | 
		
	
		
			
				|  |  |  |  |   } | 
		
	
		
			
				|  |  |  |  | } | 
		
	
	
		
			
				
					|  |  |  | 
 |