Compare commits

...

2 commits

Author SHA1 Message Date
fb5b0347fb
feat: automatically populate past trips list 2024-11-07 15:21:04 +01:00
6d716a242b
feat: multiple privacy zones 2024-11-07 14:50:23 +01:00
3 changed files with 35 additions and 16 deletions

View file

@ -21,7 +21,23 @@ class TrackerController extends Controller
*/
public function show_past_trips_list()
{
return view('past-trips');
$trips = [];
foreach (config('app.past_trip_ids') as $tripId) {
$tripData = $this->get_trip_data($tripId, false);
$trips[$tripId] = [
'name' => $tripData->name,
'start_date' => new DateTime($tripData->date_start),
'end_date' => new DateTime($tripData->date_end)
];
}
return view(
'past-trips',
[
'trips' => $trips
]
);
}
/**

View file

@ -14,9 +14,10 @@
<main id="pastTripsList">
<ol>
<li><a href="/x8gkdo56o7k3eyp3w2ql">Monkey Run Scotland 2022</a></li>
<li><a href="/47xj8go928ql9mq3r20p">Europespedition III: Leds Free or Die Hard</a></li>
<li><a href="/2ozdklm6dro0951n04xg">Bentral American Diaries</a></li>
@php $DATE_FORMAT = 'M Y' @endphp
@foreach ($trips as $trip_id => $trip)
<li><a href="/{{ $trip_id }}">{{ $trip['name'] }}</a> <span>({{ $trip['start_date']->format($DATE_FORMAT) }} to {{ $trip['end_date']->format($DATE_FORMAT) }})</span></li>
@endforeach
</ol>
</main>
</body>

View file

@ -66,18 +66,20 @@
@if(!in_array($location->id, config('app.current_trip_ignore')))
@php
// Privacy zones
$privacyLatLons = config('app.privacy_lat_lons');
$latLon = explode(',', $privacyLatLons[0]);
if (
!(
( $location->latitude - $latLon[0] > 0.01 ) || ( $location->latitude - $latLon[0] < -0.01 ) ||
( $location->longitude - $latLon[1] > 0.01 ) || ( $location->longitude - $latLon[1] < -0.01 )
)
) {
$location->latitude = $location->latitude + ((rand(0,2)-1)/100);
$location->longitude = $location->longitude + ((rand(0,2)-1)/100);
}
// Privacy zones
$privacyLatLons = config('app.privacy_lat_lons');
foreach ($privacyLatLons as $latLonUnparsed) {
$latLon = explode(',', $latLonUnparsed);
if (
!(
( $location->latitude - $latLon[0] > 0.01 ) || ( $location->latitude - $latLon[0] < -0.01 ) ||
( $location->longitude - $latLon[1] > 0.01 ) || ( $location->longitude - $latLon[1] < -0.01 )
)
) {
$location->latitude = $location->latitude + ((rand(0,2)-1)/100);
$location->longitude = $location->longitude + ((rand(0,2)-1)/100);
}
}
@endphp
[{{ $location->latitude }}, {{ $location->longitude }}],