diff --git a/backend/server/adventures/migrations/0065_transportation_end_code_transportation_start_code.py b/backend/server/adventures/migrations/0065_transportation_end_code_transportation_start_code.py new file mode 100644 index 00000000..82c187ad --- /dev/null +++ b/backend/server/adventures/migrations/0065_transportation_end_code_transportation_start_code.py @@ -0,0 +1,23 @@ +# Generated by Django 5.2.6 on 2025-12-27 00:20 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('adventures', '0064_collectionitineraryitem'), + ] + + operations = [ + migrations.AddField( + model_name='transportation', + name='end_code', + field=models.CharField(blank=True, max_length=100, null=True), + ), + migrations.AddField( + model_name='transportation', + name='start_code', + field=models.CharField(blank=True, max_length=100, null=True), + ), + ] diff --git a/backend/server/adventures/models.py b/backend/server/adventures/models.py index faf4fc8a..e1cc530f 100644 --- a/backend/server/adventures/models.py +++ b/backend/server/adventures/models.py @@ -316,6 +316,8 @@ class Transportation(models.Model): origin_longitude = models.DecimalField(max_digits=9, decimal_places=6, null=True, blank=True) destination_latitude = models.DecimalField(max_digits=9, decimal_places=6, null=True, blank=True) destination_longitude = models.DecimalField(max_digits=9, decimal_places=6, null=True, blank=True) + start_code = models.CharField(max_length=100, blank=True, null=True) # Could be airport code, station code, etc. + end_code = models.CharField(max_length=100, blank=True, null=True) # Could be airport code, station code, etc. to_location = models.CharField(max_length=200, blank=True, null=True) is_public = models.BooleanField(default=False) collection = models.ForeignKey('Collection', on_delete=models.CASCADE, blank=True, null=True) diff --git a/backend/server/adventures/serializers.py b/backend/server/adventures/serializers.py index 5cd95ba1..08a76cea 100644 --- a/backend/server/adventures/serializers.py +++ b/backend/server/adventures/serializers.py @@ -432,7 +432,7 @@ class TransportationSerializer(CustomModelSerializer): 'link', 'date', 'flight_number', 'from_location', 'to_location', 'is_public', 'collection', 'created_at', 'updated_at', 'end_date', 'origin_latitude', 'origin_longitude', 'destination_latitude', 'destination_longitude', - 'start_timezone', 'end_timezone', 'distance', 'images', 'attachments' + 'start_timezone', 'end_timezone', 'distance', 'images', 'attachments', 'start_code', 'end_code' ] read_only_fields = ['id', 'created_at', 'updated_at', 'user', 'distance'] diff --git a/frontend/src/lib/components/CollectionModal.svelte b/frontend/src/lib/components/CollectionModal.svelte index 6904ccb0..1f675c8c 100644 --- a/frontend/src/lib/components/CollectionModal.svelte +++ b/frontend/src/lib/components/CollectionModal.svelte @@ -9,6 +9,14 @@ import MarkdownEditor from './MarkdownEditor.svelte'; + // Icons + import CollectionIcon from '~icons/mdi/folder-multiple'; + import InfoIcon from '~icons/mdi/information'; + import CalendarIcon from '~icons/mdi/calendar'; + import LinkIcon from '~icons/mdi/link'; + import SaveIcon from '~icons/mdi/content-save'; + import CloseIcon from '~icons/mdi/close'; + export let collectionToEdit: Collection | null = null; let collection: Collection = { @@ -22,7 +30,9 @@ locations: collectionToEdit?.locations || [], link: collectionToEdit?.link || '', shared_with: undefined, - itinerary: [] + itinerary: [], + status: 'folder', + days_until_start: null }; console.log(collection); @@ -107,141 +117,226 @@ } - + -