Browse code

Add annotation to fe slot booking

Benjamin Roth authored on06/09/2024 14:22:45
Showing6 changed files
... ...
@@ -97,7 +97,7 @@ $GLOBALS['TL_DCA']['tl_vr_wa_reservation'] = array
97 97
     'palettes' => array
98 98
     (
99 99
         '__selector__' => array(),
100
-        'default' => 'pid,uid,unit,amount,behaelter,upload'
100
+        'default' => 'pid,uid,unit,amount,behaelter,annotation,upload'
101 101
     ),
102 102
 
103 103
     // Subpalettes
... ...
@@ -216,5 +216,13 @@ $GLOBALS['TL_DCA']['tl_vr_wa_reservation'] = array
216 216
             ),
217 217
             'sql'                     => "varchar(255) BINARY NOT NULL default ''"
218 218
         ),
219
+        'annotation' => array
220
+        (
221
+            'exclude'                 => true,
222
+            'search'                  => true,
223
+            'inputType'               => 'textarea',
224
+            'eval'                    => array('tl_class'=>'clr', 'readonly'=>"true"),
225
+            'sql'                     => "text NULL"
226
+        )
219 227
     )
220 228
 );
... ...
@@ -26,6 +26,9 @@ $GLOBALS['TL_LANG']['tl_vr_wa_reservation']['uid'][0] = 'Winzer';
26 26
 $GLOBALS['TL_LANG']['tl_vr_wa_reservation']['uid'][1] = 'Zuordnung des anliefernden Winzers.';
27 27
 $GLOBALS['TL_LANG']['tl_vr_wa_reservation']['upload'][0] = 'Datei';
28 28
 $GLOBALS['TL_LANG']['tl_vr_wa_reservation']['upload'][1] = 'Die hochgeladene Datei des Winzers.';
29
+$GLOBALS['TL_LANG']['tl_vr_wa_reservation']['annotation'][0] = 'Anmerkungen';
30
+$GLOBALS['TL_LANG']['tl_vr_wa_reservation']['annotation'][1] = 'Ergänzende Hinweise zu diesem Zeitslot.';
31
+
29 32
 
30 33
 $GLOBALS['TL_LANG']['tl_vr_wa_reservation']['title_legend'] = 'Leseart';
31 34
 
... ...
@@ -77,6 +77,10 @@
77 77
                         </fieldset>
78 78
                     </div>
79 79
                 </div>
80
+                <fieldset>
81
+                    <label for="res-annotation"><strong>Anmerkung</strong></label>
82
+                    <textarea id="res-annotation" name="annotation">{{ buchung.annotation }}</textarea>
83
+                </fieldset>
80 84
                 {% if file is defined %}
81 85
                     <fieldset>
82 86
                         <div class="t-label">Aktuelle Datei</div>
... ...
@@ -112,6 +112,10 @@
112 112
                             </div>
113 113
                         </div>
114 114
                         <fieldset>
115
+                            <label for="res-annotation"><strong>Anmerkung</strong></label>
116
+                            <textarea id="res-annotation" name="annotation"></textarea>
117
+                        </fieldset>
118
+                        <fieldset>
115 119
                             <label for="res-upload"><strong>Dateianhang</strong></label>
116 120
                             <input type="file" id="res-upload" name="upload">
117 121
                         </fieldset>
... ...
@@ -46,7 +46,7 @@
46 46
                                 {% for time,bookings in standort.times %}
47 47
                                     <h3 class="tl_folder_list px-1 row u-items-center">
48 48
                                         <div class="col-2 pl-0">{{ time|date('H:i') }}</div>
49
-                                        <div class="col-3">
49
+                                        <div class="col-2">
50 50
                                             <div class="t-label">Standort</div>
51 51
                                             {{ standort.standort }}
52 52
                                         </div>
... ...
@@ -57,20 +57,20 @@
57 57
                                     </h3>
58 58
                                     <div class="bookings u-row-striped">
59 59
                                         {% for booking in bookings.items %}
60
-                                            <div class="row u-items-center">
61
-                                                <div class="col-2 time icon-uhr-outline">
60
+                                            <div class="row u-items-flex-start">
61
+                                                <div class="col-2 time icon-uhr-outline align">
62 62
                                                     <div class="t-label">Uhrzeit</div>
63 63
                                                     {{ booking.slot.time|date('H:i') }}
64 64
                                                     <div class="t-label">Standort</div>
65 65
                                                     {{ booking.standort }}
66 66
                                                 </div>
67
-                                                <div class="col-3 behaelter icon-behaelter-outline">
67
+                                                <div class="col-2 behaelter icon-behaelter-outline">
68 68
                                                     <div class="t-label">Gebuchte Bottichkapazität</div>
69 69
                                                     {{ booking.behaelter }}
70 70
                                                     <div class="t-label">Anlieferungseinheit</div>
71 71
                                                     {{ booking.amount }} x {{ booking.unit }}
72 72
                                                 </div>
73
-                                                <div class="col-5 rebsorten icon-reben-outline">
73
+                                                <div class="col-3 rebsorten icon-reben-outline">
74 74
                                                     <div class="t-label">Mitglied</div>
75 75
                                                     {% if booking.member is not null %}
76 76
                                                         {% if booking.member.memberno is defined %}
... ...
@@ -84,7 +84,11 @@
84 84
                                                             </div>{% endif %}
85 85
                                                     {% endif %}
86 86
                                                 </div>
87
-                                                <div class="col-1 u-text-right action">
87
+                                                <div class="col-3 annotation">
88
+                                                    <div class="t-label">Anmerkung des Anlieferers</div>
89
+                                                    {{ booking.annotation }}
90
+                                                </div>
91
+                                                <div class="col u-text-right action">
88 92
                                                     <a
89 93
                                                         href="/contao?do=weinanlieferung&table=tl_vr_wa_reservation&act=edit&id={{ booking.id }}&rt={{ request_token }}&ref={{ ref }}"
90 94
                                                         {#                        onclick="Backend.openModalIframe({'title':'Quellelement ID {{ booking.id }} bearbeiten','url':this.href});return false" #}
... ...
@@ -439,6 +439,7 @@ class SlotAjaxController extends AbstractController
439 439
             'unit' => intval(Input::post('unit')),
440 440
             'behaelter' => $intBehaelter,
441 441
             'amount' => Input::post('behaelter'),
442
+            'annotation' => Input::post('annotation'),
442 443
         ]);
443 444
         $Reservation->setRow($arrData);
444 445
         $Reservation->save();
... ...
@@ -534,6 +535,7 @@ class SlotAjaxController extends AbstractController
534 535
         $Reservation->unit = intval(Input::post('unit'));
535 536
         $Reservation->behaelter = $intBehaelter;
536 537
         $Reservation->amount = Input::post('behaelter');
538
+        $Reservation->annotation = Input::post('annotation');
537 539
 
538 540
         $Reservation->save();
539 541