mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-06-21 06:11:45 +00:00
feat: optimize routes around accommodation, confirm note deletions (#1123)
Optimize day routes around the accommodation
When a day has an accommodation set, the route optimizer now treats it as
the day's home base: it optimizes a loop that leaves the hotel and returns
to it, so the stop nearest the hotel comes first. On a transfer day -
checking out of one hotel and into another - the route runs from the first
hotel to the second instead.
The optimizer also gained a 2-opt pass on top of the nearest-neighbor
ordering, which removes the crossings the greedy pass used to leave behind.
A new display setting ("optimize route from accommodation", on by default)
lets you turn the anchoring off.
Confirm before deleting notes
Deleting a plan note or a collab note now asks for confirmation first. On
phones and tablets the edit and delete icons sit close together and were
easy to mis-tap, which deleted notes with no way back.
This commit is contained in:
@@ -41,6 +41,8 @@ const collab: TranslationStrings = {
|
||||
'collab.notes.cancel': 'Ακύρωση',
|
||||
'collab.notes.edit': 'Επεξεργασία',
|
||||
'collab.notes.delete': 'Διαγραφή',
|
||||
'collab.notes.confirmDeleteTitle': 'Διαγραφή σημείωσης;',
|
||||
'collab.notes.confirmDeleteBody': 'Αυτή η σημείωση θα διαγραφεί οριστικά.',
|
||||
'collab.notes.pin': 'Καρφίτσωμα',
|
||||
'collab.notes.unpin': 'Ξεκαρφίτσωμα',
|
||||
'collab.notes.daysAgo': '{n}η πριν',
|
||||
|
||||
@@ -9,6 +9,9 @@ const dayplan: TranslationStrings = {
|
||||
'dayplan.confirmRemoveTimeBody':
|
||||
'Αυτό το μέρος έχει σταθερή ώρα ({time}). Η μετακίνησή του θα αφαιρέσει την ώρα και θα επιτρέψει ελεύθερη ταξινόμηση.',
|
||||
'dayplan.confirmRemoveTimeAction': 'Αφαίρεση ώρας & μετακίνηση',
|
||||
'dayplan.confirmDeleteNoteTitle': 'Διαγραφή σημείωσης;',
|
||||
'dayplan.confirmDeleteNoteBody':
|
||||
'Αυτή η σημείωση θα διαγραφεί οριστικά.',
|
||||
'dayplan.cannotDropOnTimed':
|
||||
'Τα στοιχεία δεν μπορούν να τοποθετηθούν μεταξύ καταχωρήσεων με ώρα',
|
||||
'dayplan.cannotBreakChronology':
|
||||
@@ -32,6 +35,8 @@ const dayplan: TranslationStrings = {
|
||||
'dayplan.toast.needTwoPlaces':
|
||||
'Χρειάζονται τουλάχιστον δύο μέρη για βελτιστοποίηση διαδρομής',
|
||||
'dayplan.toast.routeOptimized': 'Η διαδρομή βελτιστοποιήθηκε',
|
||||
'dayplan.toast.routeOptimizedFromHotel':
|
||||
'Η διαδρομή βελτιστοποιήθηκε από το κατάλυμά σας',
|
||||
'dayplan.toast.noGeoPlaces':
|
||||
'Δεν βρέθηκαν μέρη με συντεταγμένες για τον υπολογισμό διαδρομής',
|
||||
'dayplan.confirmed': 'Επιβεβαιωμένο',
|
||||
|
||||
@@ -66,6 +66,9 @@ const settings: TranslationStrings = {
|
||||
'settings.bookingLabelsHint':
|
||||
'Εμφάνιση ονομάτων σταθμών / αεροδρομίων στον χάρτη. Όταν είναι απενεργοποιημένο, εμφανίζεται μόνο το εικονίδιο.',
|
||||
'settings.blurBookingCodes': 'Θόλωμα Κωδικών Κρατήσεων',
|
||||
'settings.optimizeFromAccommodation': 'Βελτιστοποίηση διαδρομής από το κατάλυμα',
|
||||
'settings.optimizeFromAccommodationHint':
|
||||
'Κατά τη βελτιστοποίηση μιας ημέρας, ξεκινήστε τη διαδρομή από το ξενοδοχείο στο οποίο ξυπνάτε και τερματίστε την σε αυτό στο οποίο κάνετε check-in το ίδιο βράδυ.',
|
||||
'settings.notifications': 'Ειδοποιήσεις',
|
||||
'settings.notifyTripInvite': 'Προσκλήσεις ταξιδιού',
|
||||
'settings.notifyBookingChange': 'Αλλαγές κρατήσεων',
|
||||
|
||||
Reference in New Issue
Block a user