diff --git a/LICENSE b/LICENSE index 53436b3..e13fb3a 100644 --- a/LICENSE +++ b/LICENSE @@ -14,7 +14,6 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . ---- GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 diff --git a/backend/server/adventures/migrations/0001_initial.py b/backend/server/adventures/migrations/0001_initial.py index 5dc1b49..0cde55c 100644 --- a/backend/server/adventures/migrations/0001_initial.py +++ b/backend/server/adventures/migrations/0001_initial.py @@ -1,6 +1,10 @@ -# Generated by Django 5.0.6 on 2024-06-28 01:01 +# Generated by Django 5.0.8 on 2024-08-11 02:25 import django.contrib.postgres.fields +import django.db.models.deletion +import django_resized.forms +import uuid +from django.conf import settings from django.db import migrations, models @@ -9,23 +13,109 @@ class Migration(migrations.Migration): initial = True dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ + migrations.CreateModel( + name='Checklist', + fields=[ + ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True)), + ('name', models.CharField(max_length=200)), + ('date', models.DateField(blank=True, null=True)), + ('is_public', models.BooleanField(default=False)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='ChecklistItem', + fields=[ + ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True)), + ('name', models.CharField(max_length=200)), + ('is_checked', models.BooleanField(default=False)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('checklist', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='adventures.checklist')), + ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='Collection', + fields=[ + ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True)), + ('name', models.CharField(max_length=200)), + ('description', models.TextField(blank=True, null=True)), + ('is_public', models.BooleanField(default=False)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('is_archived', models.BooleanField(default=False)), + ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.AddField( + model_name='checklist', + name='collection', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='adventures.collection'), + ), migrations.CreateModel( name='Adventure', fields=[ - ('id', models.AutoField(primary_key=True, serialize=False)), - ('type', models.CharField(max_length=100)), + ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True)), + ('type', models.CharField(choices=[('visited', 'Visited'), ('planned', 'Planned'), ('lodging', 'Lodging'), ('dining', 'Dining')], max_length=100)), ('name', models.CharField(max_length=200)), ('location', models.CharField(blank=True, max_length=200, null=True)), ('activity_types', django.contrib.postgres.fields.ArrayField(base_field=models.CharField(max_length=100), blank=True, null=True, size=None)), ('description', models.TextField(blank=True, null=True)), ('rating', models.FloatField(blank=True, null=True)), ('link', models.URLField(blank=True, null=True)), - ('image', models.ImageField(blank=True, null=True, upload_to='images/')), + ('image', django_resized.forms.ResizedImageField(blank=True, crop=None, force_format='WEBP', keep_meta=True, null=True, quality=75, scale=None, size=[1920, 1080], upload_to='images/')), ('date', models.DateField(blank=True, null=True)), - ('trip_id', models.IntegerField(blank=True, null=True)), + ('is_public', models.BooleanField(default=False)), + ('longitude', models.DecimalField(blank=True, decimal_places=6, max_digits=9, null=True)), + ('latitude', models.DecimalField(blank=True, decimal_places=6, max_digits=9, null=True)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ('collection', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='adventures.collection')), + ], + ), + migrations.CreateModel( + name='Note', + fields=[ + ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True)), + ('name', models.CharField(max_length=200)), + ('content', models.TextField(blank=True, null=True)), + ('links', django.contrib.postgres.fields.ArrayField(base_field=models.URLField(), blank=True, null=True, size=None)), + ('date', models.DateField(blank=True, null=True)), + ('is_public', models.BooleanField(default=False)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('collection', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='adventures.collection')), + ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='Transportation', + fields=[ + ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True)), + ('type', models.CharField(choices=[('car', 'Car'), ('plane', 'Plane'), ('train', 'Train'), ('bus', 'Bus'), ('boat', 'Boat'), ('bike', 'Bike'), ('walking', 'Walking'), ('other', 'Other')], max_length=100)), + ('name', models.CharField(max_length=200)), + ('description', models.TextField(blank=True, null=True)), + ('rating', models.FloatField(blank=True, null=True)), + ('link', models.URLField(blank=True, null=True)), + ('date', models.DateTimeField(blank=True, null=True)), + ('flight_number', models.CharField(blank=True, max_length=100, null=True)), + ('from_location', models.CharField(blank=True, max_length=200, null=True)), + ('to_location', models.CharField(blank=True, max_length=200, null=True)), + ('is_public', models.BooleanField(default=False)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('collection', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='adventures.collection')), + ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), ] diff --git a/backend/server/adventures/migrations/0002_initial.py b/backend/server/adventures/migrations/0002_initial.py deleted file mode 100644 index 2518d14..0000000 --- a/backend/server/adventures/migrations/0002_initial.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 5.0.6 on 2024-06-28 01:01 - -import django.db.models.deletion -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - ('adventures', '0001_initial'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.AddField( - model_name='adventure', - name='user_id', - field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL), - ), - ] diff --git a/backend/server/adventures/migrations/0003_adventure_is_public.py b/backend/server/adventures/migrations/0003_adventure_is_public.py deleted file mode 100644 index b2bdb95..0000000 --- a/backend/server/adventures/migrations/0003_adventure_is_public.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.6 on 2024-06-28 15:29 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0002_initial'), - ] - - operations = [ - migrations.AddField( - model_name='adventure', - name='is_public', - field=models.BooleanField(default=False), - ), - ] diff --git a/backend/server/adventures/migrations/0004_adventure_latitude_adventure_longitude.py b/backend/server/adventures/migrations/0004_adventure_latitude_adventure_longitude.py deleted file mode 100644 index 282878e..0000000 --- a/backend/server/adventures/migrations/0004_adventure_latitude_adventure_longitude.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 5.0.6 on 2024-06-28 18:30 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0003_adventure_is_public'), - ] - - operations = [ - migrations.AddField( - model_name='adventure', - name='latitude', - field=models.DecimalField(blank=True, decimal_places=6, max_digits=9, null=True), - ), - migrations.AddField( - model_name='adventure', - name='longitude', - field=models.DecimalField(blank=True, decimal_places=6, max_digits=9, null=True), - ), - ] diff --git a/backend/server/adventures/migrations/0005_remove_adventure_trip_id_trip_adventure_trip.py b/backend/server/adventures/migrations/0005_remove_adventure_trip_id_trip_adventure_trip.py deleted file mode 100644 index 43f80e7..0000000 --- a/backend/server/adventures/migrations/0005_remove_adventure_trip_id_trip_adventure_trip.py +++ /dev/null @@ -1,37 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-09 16:49 - -import django.db.models.deletion -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0004_adventure_latitude_adventure_longitude'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.RemoveField( - model_name='adventure', - name='trip_id', - ), - migrations.CreateModel( - name='Trip', - fields=[ - ('id', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=200)), - ('type', models.CharField(max_length=100)), - ('location', models.CharField(blank=True, max_length=200, null=True)), - ('date', models.DateField(blank=True, null=True)), - ('is_public', models.BooleanField(default=False)), - ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.AddField( - model_name='adventure', - name='trip', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='adventures.trip'), - ), - ] diff --git a/backend/server/adventures/migrations/0006_alter_adventure_type_alter_trip_type.py b/backend/server/adventures/migrations/0006_alter_adventure_type_alter_trip_type.py deleted file mode 100644 index 34e44f9..0000000 --- a/backend/server/adventures/migrations/0006_alter_adventure_type_alter_trip_type.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-09 16:58 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0005_remove_adventure_trip_id_trip_adventure_trip'), - ] - - operations = [ - migrations.AlterField( - model_name='adventure', - name='type', - field=models.CharField(choices=[('visited', 'Visited'), ('planned', 'Planned'), ('featured', 'Featured')], max_length=100), - ), - migrations.AlterField( - model_name='trip', - name='type', - field=models.CharField(choices=[('visited', 'Visited'), ('planned', 'Planned'), ('featured', 'Featured')], max_length=100), - ), - ] diff --git a/backend/server/adventures/migrations/0007_remove_adventure_trip_alter_adventure_type_and_more.py b/backend/server/adventures/migrations/0007_remove_adventure_trip_alter_adventure_type_and_more.py deleted file mode 100644 index 6210249..0000000 --- a/backend/server/adventures/migrations/0007_remove_adventure_trip_alter_adventure_type_and_more.py +++ /dev/null @@ -1,42 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-15 12:57 - -import django.db.models.deletion -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0006_alter_adventure_type_alter_trip_type'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.RemoveField( - model_name='adventure', - name='trip', - ), - migrations.AlterField( - model_name='adventure', - name='type', - field=models.CharField(choices=[('visited', 'Visited'), ('planned', 'Planned')], max_length=100), - ), - migrations.CreateModel( - name='Collection', - fields=[ - ('id', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=200)), - ('is_public', models.BooleanField(default=False)), - ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.AddField( - model_name='adventure', - name='collection', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='adventures.collection'), - ), - migrations.DeleteModel( - name='Trip', - ), - ] diff --git a/backend/server/adventures/migrations/0008_collection_description.py b/backend/server/adventures/migrations/0008_collection_description.py deleted file mode 100644 index 8decb03..0000000 --- a/backend/server/adventures/migrations/0008_collection_description.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-15 13:05 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0007_remove_adventure_trip_alter_adventure_type_and_more'), - ] - - operations = [ - migrations.AddField( - model_name='collection', - name='description', - field=models.TextField(blank=True, null=True), - ), - ] diff --git a/backend/server/adventures/migrations/0009_alter_adventure_image.py b/backend/server/adventures/migrations/0009_alter_adventure_image.py deleted file mode 100644 index 7c204e9..0000000 --- a/backend/server/adventures/migrations/0009_alter_adventure_image.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-18 15:06 - -import django_resized.forms -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0008_collection_description'), - ] - - operations = [ - migrations.AlterField( - model_name='adventure', - name='image', - field=django_resized.forms.ResizedImageField(blank=True, crop=None, force_format='WEBP', keep_meta=True, null=True, quality=75, scale=None, size=[1920, 1080], upload_to='images/'), - ), - ] diff --git a/backend/server/adventures/migrations/0010_adventure_created_at_collection_created_at.py b/backend/server/adventures/migrations/0010_adventure_created_at_collection_created_at.py deleted file mode 100644 index 949ad10..0000000 --- a/backend/server/adventures/migrations/0010_adventure_created_at_collection_created_at.py +++ /dev/null @@ -1,26 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-18 19:27 - -import django.utils.timezone -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0009_alter_adventure_image'), - ] - - operations = [ - migrations.AddField( - model_name='adventure', - name='created_at', - field=models.DateTimeField(auto_now_add=True, default=django.utils.timezone.now), - preserve_default=False, - ), - migrations.AddField( - model_name='collection', - name='created_at', - field=models.DateTimeField(auto_now_add=True, default=django.utils.timezone.now), - preserve_default=False, - ), - ] diff --git a/backend/server/adventures/migrations/0011_adventure_updated_at.py b/backend/server/adventures/migrations/0011_adventure_updated_at.py deleted file mode 100644 index d04e34a..0000000 --- a/backend/server/adventures/migrations/0011_adventure_updated_at.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.6 on 2024-07-19 12:55 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0010_adventure_created_at_collection_created_at'), - ] - - operations = [ - migrations.AddField( - model_name='adventure', - name='updated_at', - field=models.DateTimeField(auto_now=True), - ), - ] diff --git a/backend/server/adventures/migrations/0012_collection_end_date_collection_start_date.py b/backend/server/adventures/migrations/0012_collection_end_date_collection_start_date.py deleted file mode 100644 index 744d83a..0000000 --- a/backend/server/adventures/migrations/0012_collection_end_date_collection_start_date.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 5.0.7 on 2024-07-27 18:18 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0011_adventure_updated_at'), - ] - - operations = [ - migrations.AddField( - model_name='collection', - name='end_date', - field=models.DateField(blank=True, null=True), - ), - migrations.AddField( - model_name='collection', - name='start_date', - field=models.DateField(blank=True, null=True), - ), - ] diff --git a/backend/server/adventures/migrations/0013_alter_adventure_type_transportation.py b/backend/server/adventures/migrations/0013_alter_adventure_type_transportation.py deleted file mode 100644 index ab7402f..0000000 --- a/backend/server/adventures/migrations/0013_alter_adventure_type_transportation.py +++ /dev/null @@ -1,41 +0,0 @@ -# Generated by Django 5.0.7 on 2024-07-27 22:49 - -import django.db.models.deletion -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0012_collection_end_date_collection_start_date'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.AlterField( - model_name='adventure', - name='type', - field=models.CharField(choices=[('visited', 'Visited'), ('planned', 'Planned'), ('lodging', 'Lodging'), ('dining', 'Dining')], max_length=100), - ), - migrations.CreateModel( - name='Transportation', - fields=[ - ('id', models.AutoField(primary_key=True, serialize=False)), - ('type', models.CharField(max_length=100)), - ('name', models.CharField(max_length=200)), - ('description', models.TextField(blank=True, null=True)), - ('rating', models.FloatField(blank=True, null=True)), - ('link', models.URLField(blank=True, null=True)), - ('date', models.DateTimeField(blank=True, null=True)), - ('flight_number', models.CharField(blank=True, max_length=100, null=True)), - ('from_location', models.CharField(blank=True, max_length=200, null=True)), - ('to_location', models.CharField(blank=True, max_length=200, null=True)), - ('is_public', models.BooleanField(default=False)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('collection', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='adventures.collection')), - ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - ] diff --git a/backend/server/adventures/migrations/0014_alter_transportation_type_note.py b/backend/server/adventures/migrations/0014_alter_transportation_type_note.py deleted file mode 100644 index 08ecdc1..0000000 --- a/backend/server/adventures/migrations/0014_alter_transportation_type_note.py +++ /dev/null @@ -1,35 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-04 01:01 - -import django.db.models.deletion -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0013_alter_adventure_type_transportation'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.AlterField( - model_name='transportation', - name='type', - field=models.CharField(choices=[('car', 'Car'), ('plane', 'Plane'), ('train', 'Train'), ('bus', 'Bus'), ('boat', 'Boat'), ('bike', 'Bike'), ('walking', 'Walking'), ('other', 'Other')], max_length=100), - ), - migrations.CreateModel( - name='Note', - fields=[ - ('id', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=200)), - ('content', models.TextField(blank=True, null=True)), - ('date', models.DateTimeField(blank=True, null=True)), - ('is_public', models.BooleanField(default=False)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('collection', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='adventures.collection')), - ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - ] diff --git a/backend/server/adventures/migrations/0015_alter_note_date.py b/backend/server/adventures/migrations/0015_alter_note_date.py deleted file mode 100644 index 14aa7f9..0000000 --- a/backend/server/adventures/migrations/0015_alter_note_date.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-04 01:09 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0014_alter_transportation_type_note'), - ] - - operations = [ - migrations.AlterField( - model_name='note', - name='date', - field=models.DateField(blank=True, null=True), - ), - ] diff --git a/backend/server/adventures/migrations/0016_alter_note_date.py b/backend/server/adventures/migrations/0016_alter_note_date.py deleted file mode 100644 index 4e1b961..0000000 --- a/backend/server/adventures/migrations/0016_alter_note_date.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-04 02:00 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0015_alter_note_date'), - ] - - operations = [ - migrations.AlterField( - model_name='note', - name='date', - field=models.DateTimeField(blank=True, null=True), - ), - ] diff --git a/backend/server/adventures/migrations/0017_alter_note_date.py b/backend/server/adventures/migrations/0017_alter_note_date.py deleted file mode 100644 index ca0b8e6..0000000 --- a/backend/server/adventures/migrations/0017_alter_note_date.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-04 02:01 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0016_alter_note_date'), - ] - - operations = [ - migrations.AlterField( - model_name='note', - name='date', - field=models.DateField(blank=True, null=True), - ), - ] diff --git a/backend/server/adventures/migrations/0018_note_links.py b/backend/server/adventures/migrations/0018_note_links.py deleted file mode 100644 index 6366306..0000000 --- a/backend/server/adventures/migrations/0018_note_links.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-04 13:19 - -import django.contrib.postgres.fields -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0017_alter_note_date'), - ] - - operations = [ - migrations.AddField( - model_name='note', - name='links', - field=django.contrib.postgres.fields.ArrayField(base_field=models.URLField(), blank=True, null=True, size=None), - ), - ] diff --git a/backend/server/adventures/migrations/0019_collection_updated_at.py b/backend/server/adventures/migrations/0019_collection_updated_at.py deleted file mode 100644 index 5a991fd..0000000 --- a/backend/server/adventures/migrations/0019_collection_updated_at.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-05 17:51 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0018_note_links'), - ] - - operations = [ - migrations.AddField( - model_name='collection', - name='updated_at', - field=models.DateTimeField(auto_now=True), - ), - ] diff --git a/backend/server/adventures/migrations/0020_checklist_checklistitem.py b/backend/server/adventures/migrations/0020_checklist_checklistitem.py deleted file mode 100644 index 8d82ddc..0000000 --- a/backend/server/adventures/migrations/0020_checklist_checklistitem.py +++ /dev/null @@ -1,41 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-05 19:52 - -import django.db.models.deletion -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0019_collection_updated_at'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.CreateModel( - name='Checklist', - fields=[ - ('id', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=200)), - ('date', models.DateField(blank=True, null=True)), - ('is_public', models.BooleanField(default=False)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('collection', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='adventures.collection')), - ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='ChecklistItem', - fields=[ - ('id', models.AutoField(primary_key=True, serialize=False)), - ('name', models.CharField(max_length=200)), - ('is_checked', models.BooleanField(default=False)), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('checklist', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='adventures.checklist')), - ('user_id', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - ] diff --git a/backend/server/adventures/migrations/0021_collection_is_archived.py b/backend/server/adventures/migrations/0021_collection_is_archived.py deleted file mode 100644 index fc1811c..0000000 --- a/backend/server/adventures/migrations/0021_collection_is_archived.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 5.0.7 on 2024-08-07 16:20 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('adventures', '0020_checklist_checklistitem'), - ] - - operations = [ - migrations.AddField( - model_name='collection', - name='is_archived', - field=models.BooleanField(default=False), - ), - ] diff --git a/backend/server/adventures/models.py b/backend/server/adventures/models.py index 2167631..165e7d1 100644 --- a/backend/server/adventures/models.py +++ b/backend/server/adventures/models.py @@ -1,3 +1,4 @@ +import uuid from django.db import models from django.contrib.auth import get_user_model @@ -31,7 +32,7 @@ User = get_user_model() class Adventure(models.Model): - id = models.AutoField(primary_key=True) + id = models.UUIDField(default=uuid.uuid4, editable=False, unique=True, primary_key=True) user_id = models.ForeignKey( User, on_delete=models.CASCADE, default=default_user_id) type = models.CharField(max_length=100, choices=ADVENTURE_TYPES) @@ -62,7 +63,7 @@ class Adventure(models.Model): return self.name class Collection(models.Model): - id = models.AutoField(primary_key=True) + id = models.UUIDField(default=uuid.uuid4, editable=False, unique=True, primary_key=True) user_id = models.ForeignKey( User, on_delete=models.CASCADE, default=default_user_id) name = models.CharField(max_length=200) @@ -86,7 +87,7 @@ class Collection(models.Model): return self.name class Transportation(models.Model): - id = models.AutoField(primary_key=True) + id = models.UUIDField(default=uuid.uuid4, editable=False, unique=True, primary_key=True) user_id = models.ForeignKey( User, on_delete=models.CASCADE, default=default_user_id) type = models.CharField(max_length=100, choices=TRANSPORTATION_TYPES) @@ -114,7 +115,7 @@ class Transportation(models.Model): return self.name class Note(models.Model): - id = models.AutoField(primary_key=True) + id = models.UUIDField(default=uuid.uuid4, editable=False, unique=True, primary_key=True) user_id = models.ForeignKey( User, on_delete=models.CASCADE, default=default_user_id) name = models.CharField(max_length=200) @@ -137,7 +138,7 @@ class Note(models.Model): return self.name class Checklist(models.Model): - id = models.AutoField(primary_key=True) + id = models.UUIDField(default=uuid.uuid4, editable=False, unique=True, primary_key=True) user_id = models.ForeignKey( User, on_delete=models.CASCADE, default=default_user_id) name = models.CharField(max_length=200) @@ -158,7 +159,7 @@ class Checklist(models.Model): return self.name class ChecklistItem(models.Model): - id = models.AutoField(primary_key=True) + id = models.UUIDField(default=uuid.uuid4, editable=False, unique=True, primary_key=True) user_id = models.ForeignKey( User, on_delete=models.CASCADE, default=default_user_id) name = models.CharField(max_length=200) diff --git a/backend/server/users/migrations/0003_remove_customuser_id_customuser_uuid.py b/backend/server/users/migrations/0003_remove_customuser_id_customuser_uuid.py new file mode 100644 index 0000000..d583ef1 --- /dev/null +++ b/backend/server/users/migrations/0003_remove_customuser_id_customuser_uuid.py @@ -0,0 +1,23 @@ +# Generated by Django 5.0.8 on 2024-08-11 12:26 + +import uuid +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('users', '0002_alter_customuser_profile_pic'), + ] + + operations = [ + migrations.RemoveField( + model_name='customuser', + name='id', + ), + migrations.AddField( + model_name='customuser', + name='uuid', + field=models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True), + ), + ] diff --git a/backend/server/users/models.py b/backend/server/users/models.py index a2b4705..32e9e3e 100644 --- a/backend/server/users/models.py +++ b/backend/server/users/models.py @@ -1,9 +1,11 @@ +import uuid from django.contrib.auth.models import AbstractUser from django.db import models from django_resized import ResizedImageField class CustomUser(AbstractUser): profile_pic = ResizedImageField(force_format="WEBP", quality=75, null=True, blank=True, upload_to='profile-pics/') + uuid = models.UUIDField(default=uuid.uuid4, editable=False, unique=True, primary_key=True) def __str__(self): return self.username \ No newline at end of file diff --git a/frontend/src/lib/components/AdventureCard.svelte b/frontend/src/lib/components/AdventureCard.svelte index b813a9a..8053231 100644 --- a/frontend/src/lib/components/AdventureCard.svelte +++ b/frontend/src/lib/components/AdventureCard.svelte @@ -154,9 +154,12 @@
-

+

+
{#if adventure.type == 'visited' && user?.pk == adventure.user_id} diff --git a/frontend/src/lib/components/CollectionCard.svelte b/frontend/src/lib/components/CollectionCard.svelte index 7696c74..5439fc7 100644 --- a/frontend/src/lib/components/CollectionCard.svelte +++ b/frontend/src/lib/components/CollectionCard.svelte @@ -80,7 +80,20 @@ class="card min-w-max lg:w-96 md:w-80 sm:w-60 xs:w-40 bg-primary-content shadow-xl overflow-hidden text-base-content" >
-

{collection.name}

+
+ +
+
+
{collection.is_public ? 'Public' : 'Private'}
+ {#if collection.is_archived} +
Archived
+ {/if} +

{collection.adventures.length} Adventures

{#if collection.start_date && collection.end_date}

@@ -96,12 +109,7 @@ ) + 1}{' '} days

{/if} -
-
{collection.is_public ? 'Public' : 'Private'}
- {#if collection.is_archived} -
Archived
- {/if} -
+
{#if type != 'link'}
{/if} - {#if adventures.length == 0 && transportations.length == 0} + {#if adventures.length == 0 && transportations.length == 0 && notes.length == 0 && checklists.length == 0} {/if} {#if adventures.length > 0} diff --git a/frontend/src/routes/map/+page.svelte b/frontend/src/routes/map/+page.svelte index 99dd7ed..236207b 100644 --- a/frontend/src/routes/map/+page.svelte +++ b/frontend/src/routes/map/+page.svelte @@ -22,17 +22,18 @@ $: { if (!showVisited) { - markers = markers.filter((marker) => marker.type !== 'visited'); + markers = data.props.markers.filter((marker) => marker.type !== 'visited'); } else { const visitedMarkers = data.props.markers.filter((marker) => marker.type === 'visited'); markers = [...markers, ...visitedMarkers]; } if (!showPlanned) { - markers = markers.filter((marker) => marker.type !== 'planned'); + markers = data.props.markers.filter((marker) => marker.type !== 'planned'); } else { const plannedMarkers = data.props.markers.filter((marker) => marker.type === 'planned'); markers = [...markers, ...plannedMarkers]; } + console.log(markers); } let newMarker = []; @@ -55,15 +56,6 @@ } function createNewAdventure(event) { - // markers = visited - // .filter((adventure) => adventure.latitude !== null && adventure.longitude !== null) - // .map((adventure) => { - // return { - // lngLat: [adventure.longitude, adventure.latitude] as [number, number], - // name: adventure.name, - // type: adventure.type - // }; - // }); console.log(event.detail); let newMarker = { @@ -109,25 +101,45 @@ let createModalOpen = false; - - +

Adventure Map

-{#if newMarker.length > 0} - - -{:else} - -{/if} +
+
+

Map Options

+
+ + + + + + + {#if newMarker.length > 0} + + + {:else} + + {/if} +
+
+
{#if createModalOpen} {/if} - - -