Просмотр исходного кода

Add favorite-toggle heart icon to horecagelegenheid card; fix FavorietenAgenda auth header

Adds a heart icon overlay (top-right of the venue photo) on the
HorecagelegenhedenOverzicht cards as UI-only favorite affordance
(the actual toggle API call is separate follow-up work).

Also fixes FavorietenAgendaCall: its Cookie header was a hardcoded
literal session value instead of the templated ${sessionname}=
${sessionid}, so every request used one stale, expired session
regardless of who was actually logged in.
bob 1 месяц назад
Родитель
Сommit
1a2251f1d8

+ 2 - 0
lib/backend/api_requests/api_calls.dart

@@ -156,6 +156,8 @@ class FavorietenAgendaCall {
       callType: ApiCallType.GET,
       headers: {
         'Cookie': '${sessionname}=${sessionid}',
+        'Content-Type': 'application/json',
+        'Accept': 'application/json',
       },
       params: {},
       returnBody: true,

+ 7 - 0
lib/flutter_flow/internationalization.dart

@@ -720,6 +720,13 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'en': '',
     },
   },
+  // HorecagelegenheidoverzichtKaart
+  {
+    'ujd0p09x': {
+      'nl': 'MessageFavoriet...',
+      'en': '',
+    },
+  },
   // GeenEvenementenComponent
   {
     '0zgufytz': {

+ 2 - 0
lib/horecagelegenhedenoverzicht/horecagelegenheidoverzicht_kaart/horecagelegenheidoverzicht_kaart_model.dart

@@ -1,9 +1,11 @@
+import '/flutter_flow/flutter_flow_icon_button.dart';
 import '/flutter_flow/flutter_flow_theme.dart';
 import '/flutter_flow/flutter_flow_util.dart';
 import '/flutter_flow/flutter_flow_widgets.dart';
 import 'dart:ui';
 import 'horecagelegenheidoverzicht_kaart_widget.dart'
     show HorecagelegenheidoverzichtKaartWidget;
+import 'package:aligned_tooltip/aligned_tooltip.dart';
 import 'package:cached_network_image/cached_network_image.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_spinkit/flutter_spinkit.dart';

+ 58 - 0
lib/horecagelegenhedenoverzicht/horecagelegenheidoverzicht_kaart/horecagelegenheidoverzicht_kaart_widget.dart

@@ -1,7 +1,9 @@
+import '/flutter_flow/flutter_flow_icon_button.dart';
 import '/flutter_flow/flutter_flow_theme.dart';
 import '/flutter_flow/flutter_flow_util.dart';
 import '/flutter_flow/flutter_flow_widgets.dart';
 import 'dart:ui';
+import 'package:aligned_tooltip/aligned_tooltip.dart';
 import 'package:cached_network_image/cached_network_image.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_spinkit/flutter_spinkit.dart';
@@ -258,6 +260,62 @@ class _HorecagelegenheidoverzichtKaartWidgetState
                           ),
                         ),
                       ),
+                      Align(
+                        alignment: AlignmentDirectional(1.0, -1.0),
+                        child: AlignedTooltip(
+                          content: Padding(
+                            padding: EdgeInsets.all(4.0),
+                            child: Text(
+                              FFLocalizations.of(context).getText(
+                                'ujd0p09x' /* MessageFavoriet... */,
+                              ),
+                              style: FlutterFlowTheme.of(context)
+                                  .bodyLarge
+                                  .override(
+                                    font: GoogleFonts.inter(
+                                      fontWeight: FlutterFlowTheme.of(context)
+                                          .bodyLarge
+                                          .fontWeight,
+                                      fontStyle: FlutterFlowTheme.of(context)
+                                          .bodyLarge
+                                          .fontStyle,
+                                    ),
+                                    letterSpacing: 0.0,
+                                    fontWeight: FlutterFlowTheme.of(context)
+                                        .bodyLarge
+                                        .fontWeight,
+                                    fontStyle: FlutterFlowTheme.of(context)
+                                        .bodyLarge
+                                        .fontStyle,
+                                  ),
+                            ),
+                          ),
+                          offset: 4.0,
+                          preferredDirection: AxisDirection.down,
+                          borderRadius: BorderRadius.circular(8.0),
+                          backgroundColor:
+                              FlutterFlowTheme.of(context).secondaryBackground,
+                          elevation: 4.0,
+                          tailBaseWidth: 24.0,
+                          tailLength: 12.0,
+                          waitDuration: Duration(milliseconds: 100),
+                          showDuration: Duration(milliseconds: 1500),
+                          triggerMode: TooltipTriggerMode.tap,
+                          child: FlutterFlowIconButton(
+                            borderRadius: 8.0,
+                            buttonSize: 32.0,
+                            fillColor: Colors.white,
+                            icon: Icon(
+                              Icons.favorite_border,
+                              color: Color(0xFFB50808),
+                              size: 24.0,
+                            ),
+                            onPressed: () {
+                              print('IconButtonFavoriet pressed ...');
+                            },
+                          ),
+                        ),
+                      ),
                     ],
                   ),
                 ),