import 'package:flutter/material.dart'; import 'package:insparkspokalen_ui/models/postModel.dart'; import 'package:insparkspokalen_ui/models/teamModel.dart'; class AdminInfoBlock extends StatefulWidget { final TeamModel group; final VoidCallback onReject; final PostStatus status; const AdminInfoBlock({ super.key, required this.group, required this.onReject, required this.status, }); @override State createState() => AdminInfoBlockState(); } class AdminInfoBlockState extends State { @override Widget build(BuildContext context) { // Byt färg beroende på status Color backgroundColor; switch (widget.status) { case PostStatus.rejected: backgroundColor = Colors.grey.shade400; break; case PostStatus.approved: backgroundColor = Colors.green.shade200; break; default: backgroundColor = const Color(0xFFFEDF00); } return Card( margin: const EdgeInsets.all(10), color: backgroundColor, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(12), side: const BorderSide(color: Colors.black12), ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ ListTile( leading: const CircleAvatar( backgroundImage: AssetImage("images/profilepic.jpg"), ), title: Text( widget.group.name, style: const TextStyle( color: Colors.black, fontWeight: FontWeight.bold, ), ), subtitle: const Text( "Tid: 12:20", style: TextStyle(color: Colors.black), ), trailing: const Icon(Icons.more_vert, color: Colors.black), ), Image.asset( "images/testbild.jpg", width: double.infinity, height: 300, fit: BoxFit.cover, ), Padding( padding: const EdgeInsets.all(8.0), child: Row( children: [ const Text( "• Uppdrag ", style: TextStyle( fontWeight: FontWeight.bold, fontSize: 16, color: Colors.black, ), ), const SizedBox(width: 8), Chip( label: Text( widget.group.name, style: const TextStyle(color: Colors.black), ), backgroundColor: Colors.amber, shape: RoundedRectangleBorder( side: const BorderSide(color: Colors.amber), borderRadius: BorderRadius.circular(8), ), ), ], ), ), // Visa knappar endast om pending if (widget.status == PostStatus.pending) Padding( padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 10), child: Row( mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [ Expanded( child: ElevatedButton( onPressed: () { // Godkänn ScaffoldMessenger.of(context).showSnackBar( const SnackBar(content: Text("Inlägg godkänt")), ); // Här hade du troligen en onApprove också }, style: ElevatedButton.styleFrom( backgroundColor: Colors.green, foregroundColor: Colors.white, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(15), ), ), child: const Text("Godkänd"), ), ), const SizedBox(width: 10), Expanded( child: ElevatedButton( onPressed: () { widget.onReject(); ScaffoldMessenger.of(context).showSnackBar( const SnackBar(content: Text("Inlägg nekat")), ); }, style: ElevatedButton.styleFrom( backgroundColor: Colors.white, foregroundColor: Colors.black, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(30), ), ), child: const Text("Neka"), ), ), ], ), ), ], ), ); } }