-
+ class="flex-1 h-10 md:h-40 lg:h-48 border border-gray-200 -mt-px -ml-px"
+>
+
+ class="w-full h-full p-0.5 md:p-2 flex flex-col {{ $dayInMonth ? '' : 'opacity-30 md:opacity-100 md:bg-gray-100' }} {{ $dayInMonth ? ($isToday ? 'md:bg-yellow-100' : 'bg-white') : '' }} {{ $selectedDay && $selectedDay->isSameDay($day) ? 'bg-blue-50 md:bg-inherit' : '' }}"
+ >
+
+
+ {{ $day->format('j') }}
+
- {{-- Number of Day --}}
-
-
+
{{ $day->format('j') }}
-
+
+
@if($events->isNotEmpty())
{{ $events->count() }} {{ Str::plural('event', $events->count()) }}
@endif
- {{-- Events --}}
-
+ @if($events->isNotEmpty())
+
+ @foreach($events->take(3) as $event)
+
+ @endforeach
+ @if($events->count() > 3)
+
+{{ $events->count() - 3 }}
+ @endif
+
{{ $events->count() }} {{ Str::plural('event', $events->count()) }}
+
+ @endif
+
+
@foreach($events as $event)
- @include($eventView, [
- 'event' => $event,
- ])
+ @include($eventView, ['event' => $event])
@endforeach
-
diff --git a/resources/views/mobile-day-detail.blade.php b/resources/views/mobile-day-detail.blade.php
new file mode 100644
index 0000000..4c0e8f4
--- /dev/null
+++ b/resources/views/mobile-day-detail.blade.php
@@ -0,0 +1,42 @@
+@if($day)
+
+
+ {{ $day->format('l, M j') }}
+
+
+ @if($events->isEmpty())
+
No events
+ @else
+
+ @foreach($events as $event)
+
+
+
+
+
{{ $event['title'] }}
+
+ @if(($event['is_multiday'] ?? false))
+
+ Day {{ $event['day_position'] ?? 1 }} of {{ $event['total_days'] ?? 1 }}
+
+ @endif
+
+ @if(isset($event['start_time']) || isset($event['end_time']))
+
+ {{ $event['start_time'] ?? 'All day' }}@if(isset($event['end_time'])) – {{ $event['end_time'] }}@endif
+
+ @endif
+
+
+ @endforeach
+
+ @endif
+
+@else
+
Tap a day to see events
+@endif
diff --git a/src/LivewireCalendar.php b/src/LivewireCalendar.php
index bc42118..7292305 100755
--- a/src/LivewireCalendar.php
+++ b/src/LivewireCalendar.php
@@ -58,12 +58,14 @@ class LivewireCalendar extends Component
public $dragAndDropEnabled;
public $dayClickEnabled;
public $eventClickEnabled;
+ public $selectedDay;
protected $casts = [
'startsAt' => 'date',
'endsAt' => 'date',
'gridStartsAt' => 'date',
'gridEndsAt' => 'date',
+ 'selectedDay' => 'date',
];
public function mount($initialYear = null,
@@ -107,6 +109,8 @@ public function mount($initialYear = null,
$this->dayClickEnabled = $dayClickEnabled;
$this->eventClickEnabled = $eventClickEnabled;
+ $this->selectedDay = Carbon::today()->startOfDay();
+
$this->afterMount($extras);
}
@@ -157,6 +161,7 @@ public function goToCurrentMonth()
{
$this->startsAt = Carbon::today()->startOfMonth()->startOfDay();
$this->endsAt = $this->startsAt->clone()->endOfMonth()->startOfDay();
+ $this->selectedDay = Carbon::today()->startOfDay();
$this->calculateGridStartsEnds();
}
@@ -270,9 +275,14 @@ protected function enrichEventForDay(array $event, Carbon $day): array
return $event;
}
+ public function selectDay($year, $month, $day)
+ {
+ $this->selectedDay = Carbon::createFromDate($year, $month, $day)->startOfDay();
+ }
+
public function onDayClick($year, $month, $day)
{
- //
+ $this->selectDay($year, $month, $day);
}
public function onEventClick($eventId)