selectFavTeam method
Future<void>
selectFavTeam(
- dynamic context, {
- bool? force,
})
Implementation
Future<void> selectFavTeam(context, {bool? force}) async {
if (force == null || force == false) {
if (currentUserAccounts.user.value.favTeam != null) {
log("Favori Takım seçilmiş");
return;
}
if (currentUserAccounts.favteamRequest) {
log("Sorulmuş ama seçmek istememiş");
return;
}
}
await favteamfetch();
showDialog(
barrierDismissible: false,
context: context,
builder: (BuildContext context) {
return Center(
child: SizedBox(
width: ARMOYU.screenWidth * 0.95,
child: Card(
child: Padding(
padding: const EdgeInsets.all(5.0),
child: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
const Text(
'Favori Takımını Seç',
style: TextStyle(
fontWeight: FontWeight.bold,
fontSize: 18,
),
textAlign: TextAlign.center,
),
const SizedBox(height: 20),
SingleChildScrollView(
scrollDirection: Axis.horizontal,
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: List.generate(
currentUserAccounts.favoriteteams!.length,
(index) => Padding(
padding:
const EdgeInsets.symmetric(horizontal: 5.0),
child: InkWell(
onTap: () {
Navigator.of(context).pop(
currentUserAccounts.favoriteteams![index]);
},
child: Column(
children: [
CachedNetworkImage(
imageUrl: currentUserAccounts
.favoriteteams![index].logo,
height: 60,
width: 60,
),
Text(currentUserAccounts
.favoriteteams![index].name),
],
),
),
),
),
),
),
const SizedBox(height: 20),
Align(
alignment: Alignment.center,
child: InkWell(
onTap: () {
Navigator.of(context).pop(null);
},
child: CustomText.costum1("Bunlardan Hiçbiri"),
),
)
],
),
),
),
),
);
},
).then((selectedTeam) {
// Kullanıcının seçtiği takımı işle
if (selectedTeam != null) {
log('Seçilen Takım: ${selectedTeam.name}');
favteamselect(selectedTeam);
} else {
favteamselect(null);
}
currentUserAccounts.favteamRequest = true;
});
}