# Generated by Django 3.0.3 on 2020-04-13 12:43 import django.contrib.postgres.constraints import django.db.models.deletion import django.db.models.expressions from django.db import migrations, models class Migration(migrations.Migration): dependencies = [ ("camps", "0034_add_team_permission_sets"), ("program", "0086_sessions_slots_availability"), ] operations = [ migrations.RemoveConstraint( model_name="eventsession", name="prevent_eventsession_eventtype_eventlocation_overlaps", ), migrations.RemoveConstraint( model_name="speakeravailability", name="prevent_speakeravailability_overlaps", ), migrations.RemoveConstraint( model_name="speakerproposalavailability", name="prevent_speakerproposalavailability_overlaps", ), migrations.RenameField( model_name="speakerproposalavailability", old_name="speakerproposal", new_name="speaker_proposal", ), migrations.RenameField( model_name="url", old_name="eventproposal", new_name="event_proposal", ), migrations.RenameField( model_name="url", old_name="speakerproposal", new_name="speaker_proposal", ), migrations.RenameField( model_name="url", old_name="urltype", new_name="url_type", ), migrations.AlterField( model_name="event", name="duration_minutes", field=models.PositiveIntegerField( blank=True, null=True, default=None, help_text="The duration of this event in minutes. Leave blank to use the default from the event_type.", ), ), migrations.AlterField( model_name="eventlocation", name="camp", field=models.ForeignKey( on_delete=django.db.models.deletion.PROTECT, related_name="event_locations", to="camps.Camp", ), ), migrations.AlterField( model_name="eventproposal", name="event_type", field=models.ForeignKey( help_text="The type of event", on_delete=django.db.models.deletion.PROTECT, related_name="event_proposals", to="program.EventType", ), ), migrations.AlterField( model_name="eventproposal", name="speakers", field=models.ManyToManyField( blank=True, help_text="Pick the speaker(s) for this event. If you cannot see anything here you need to go back and create Speaker Proposal(s) first.", related_name="event_proposals", to="program.SpeakerProposal", ), ), migrations.AlterField( model_name="eventproposal", name="track", field=models.ForeignKey( help_text="The track this event belongs to", on_delete=django.db.models.deletion.PROTECT, related_name="event_proposals", to="program.EventTrack", ), ), migrations.AlterField( model_name="eventsession", name="camp", field=models.ForeignKey( help_text="The Camp this EventSession belongs to", on_delete=django.db.models.deletion.PROTECT, related_name="event_sessions", to="camps.Camp", ), ), migrations.AlterField( model_name="eventsession", name="event_location", field=models.ForeignKey( help_text="The event location this session is for", on_delete=django.db.models.deletion.PROTECT, related_name="event_sessions", to="program.EventLocation", ), ), migrations.AlterField( model_name="eventsession", name="event_type", field=models.ForeignKey( help_text="The type of event this session is for", on_delete=django.db.models.deletion.PROTECT, related_name="event_sessions", to="program.EventType", ), ), migrations.AlterField( model_name="eventtrack", name="camp", field=models.ForeignKey( help_text="The Camp this Track belongs to", on_delete=django.db.models.deletion.PROTECT, related_name="event_tracks", to="camps.Camp", ), ), migrations.AlterField( model_name="speakereventconflict", name="events", field=models.ManyToManyField( help_text="The conflict events", related_name="speaker_conflicts", to="program.Event", ), ), migrations.AlterField( model_name="speakereventconflict", name="speaker", field=models.OneToOneField( help_text="The Speaker", on_delete=django.db.models.deletion.PROTECT, related_name="event_conflicts", to="program.Speaker", ), ), migrations.AlterField( model_name="speakerproposal", name="camp", field=models.ForeignKey( editable=False, on_delete=django.db.models.deletion.PROTECT, related_name="speaker_proposals", to="camps.Camp", ), ), migrations.AlterField( model_name="speakerproposaleventconflict", name="events", field=models.ManyToManyField( help_text="The conflict events", related_name="speaker_proposal_conflicts", to="program.Event", ), ), migrations.AlterField( model_name="speakerproposaleventconflict", name="speakerproposal", field=models.OneToOneField( help_text="The SpeakerProposal", on_delete=django.db.models.deletion.PROTECT, related_name="event_conflicts", to="program.SpeakerProposal", ), ), migrations.RenameField( model_name="speakerproposaleventconflict", old_name="speakerproposal", new_name="speaker_proposal", ), migrations.AddConstraint( model_name="eventsession", constraint=django.contrib.postgres.constraints.ExclusionConstraint( expressions=[ ("when", "&&"), ("event_location", "="), ("event_type", "="), ], name="prevent_event_session_event_type_event_location_overlaps", ), ), migrations.AddConstraint( model_name="speakeravailability", constraint=django.contrib.postgres.constraints.ExclusionConstraint( expressions=[ (django.db.models.expressions.F("speaker"), "="), ("when", "&&"), ], name="prevent_speaker_availability_overlaps", ), ), migrations.AddConstraint( model_name="speakerproposalavailability", constraint=django.contrib.postgres.constraints.ExclusionConstraint( expressions=[ (django.db.models.expressions.F("speaker_proposal"), "="), ("when", "&&"), ], name="prevent_speaker_proposal_availability_overlaps", ), ), ]