# Generated by Django 5.1.1 on 2025-07-10 12:38

import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models


class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('property', '0001_initial'),
        ('users', '0001_initial'),
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.AddField(
            model_name='property',
            name='agent',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='properties', to='users.agent'),
        ),
        migrations.AddField(
            model_name='property',
            name='posted_by',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
        ),
        migrations.AddField(
            model_name='propertybookmark',
            name='property',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='bookmarked_by', to='property.property'),
        ),
        migrations.AddField(
            model_name='propertybookmark',
            name='user',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='property_bookmarks', to=settings.AUTH_USER_MODEL),
        ),
        migrations.AddField(
            model_name='propertyboost',
            name='property',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='boosts', to='property.property'),
        ),
        migrations.AddField(
            model_name='propertyboost',
            name='user',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='property_boosts', to=settings.AUTH_USER_MODEL),
        ),
        migrations.AddField(
            model_name='property',
            name='featured_pictures',
            field=models.ManyToManyField(blank=True, related_name='properties', to='property.propertyimage'),
        ),
        migrations.AddField(
            model_name='propertyview',
            name='property',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='views', to='property.property'),
        ),
        migrations.AddField(
            model_name='propertyview',
            name='user',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL),
        ),
        migrations.AddField(
            model_name='tempproperty',
            name='agent',
            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='temp_properties', to='users.agent'),
        ),
        migrations.AddField(
            model_name='tempproperty',
            name='user',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='temp_properties', to=settings.AUTH_USER_MODEL),
        ),
        migrations.AddField(
            model_name='temppropertyimage',
            name='temp_property',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='images', to='property.tempproperty'),
        ),
        migrations.AlterUniqueTogether(
            name='propertybookmark',
            unique_together={('user', 'property')},
        ),
        migrations.AddIndex(
            model_name='propertyboost',
            index=models.Index(fields=['property', 'expires_at'], name='property_pr_propert_73df49_idx'),
        ),
        migrations.AlterUniqueTogether(
            name='propertyboost',
            unique_together={('property', 'user', 'boosted_at')},
        ),
        migrations.AddIndex(
            model_name='propertyview',
            index=models.Index(fields=['property', 'user', 'session_key'], name='property_pr_propert_1a473c_idx'),
        ),
        migrations.AddIndex(
            model_name='propertyview',
            index=models.Index(fields=['property', 'viewed_at'], name='property_pr_propert_8758d8_idx'),
        ),
    ]
