import 'dart:io'; import 'package:fikoyt_mesaici/apps/mesaici/model/alt_kart/alt_kart.dart'; import 'package:fikoyt_mesaici/core/fikoyt.service.dart'; import 'package:fikoyt_mesaici/core/widgets/yazi_kutulari/yazi_kutulari.dart'; import 'package:fikoyt_ui/fikoyt_ui.dart'; import 'package:fikoyt_ui/ui/fikoyt_card.dart'; import 'package:file_picker/file_picker.dart'; import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; import 'package:mongo_dart/mongo_dart.dart' hide Center, State; class AciklamaEkleWidget extends StatefulWidget { AciklamaEkleWidget({ super.key, AltKart? altKart, }) : altKart = altKart ?? AltKart(); final AltKart altKart; @override State createState() => _AciklamaEkleWidgetState(); } class _AciklamaEkleWidgetState extends State { @override Widget build(BuildContext context) { return Column( children: [ Center( child: SingleChildScrollView( physics: BouncingScrollPhysics(), scrollDirection: Axis.horizontal, padding: EdgeInsets.symmetric(vertical: 5), child: Column( children: [ FikoYTButton( text: "📷 Resim Ekle", tema: FikoYTButtonTheme( fontSize: 12, textColor: Theme.of(context).extension()?.textColor, backgroundColor: Theme.of(context).extension()?.cardBackgroundColor, borderColor: Colors.blueAccent, ), onPressed: () async { FilePickerResult? result = await FilePicker.platform.pickFiles( allowMultiple: false, type: FileType.image, lockParentWindow: true, ); if (result != null) { File storeImage = File(result.files.first.path!); // use getApplicationDocumentsDirectory() to get a directory inside the app String appDir; // final appDir = await getApplicationDocumentsDirectory(); FikoYTService.programYolu(ekYol: "resim_hareketler"); appDir = await FikoYTService.programYolu(ekYol: "resim_hareketler"); // get the image's directory // copy the image's whole directory to a new // profilResmiSil(); String id = ObjectId().toString(); final File localImage = await storeImage.copy('$appDir$id.jpg'); widget.altKart.ek = Ek(); widget.altKart.ek?.id = id; widget.altKart.ek?.turu = EkTuru.RESIM; setState(() {}); } else { // profilResmi.value = null; } }, ), ], ), ), ), if (widget.altKart.ek?.id != null) FutureBuilder( future: FikoYTService.programYolu(ekYol: "resim_hareketler"), builder: (context, snapshot) => snapshot.data != null ? Container(decoration: BoxDecoration(image: Image.file(File("${snapshot.data}${widget.altKart.ek?.id}.jpg"))),) SizedBox( height: 150, child: FittedBox( fit: BoxFit.cover, child: Image.file(File("${snapshot.data}${widget.altKart.ek?.id}.jpg")), ), ) : SizedBox.shrink(), ), SizedBox( height: 10, ), SizedBox( width: 250, child: FikoAciklamaKutusu( baslik: "Açıklama Metni", radius: 5.0, degeri: widget.altKart.aciklama, yaziBoyutu: 12.0, degisti: (value) { widget.altKart.aciklama = value; }, ), ), ], ); } }