Changeset - 3f6dbc09c1ad
[Not reviewed]
0 4 1
Ben Sturmfels (bsturmfels) - 12 months ago 2023-04-21 08:39:47
ben@sturm.com.au
Split out Software Worker Co-ops track, re-add lightning talk format
5 files changed with 131 insertions and 3 deletions:
0 comments (0 inline, 0 general)
pinaxcon/proposals/admin.py
Show inline comments
...
 
@@ -25,6 +25,7 @@ models_to_register = [
 
    models.MemberProjectProposal,
 
    models.ContainerDaysProposal,
 
    models.SustainableOpenSourceBusinessProposal,
 
    models.SoftwareWorkerCoopsProposal,
 
    models.DiversityEquityInclusionProposal,
 
    models.FOSSAtPlayProposal,
 
    models.OpenSourcAIDataProposal,
pinaxcon/proposals/forms.py
Show inline comments
...
 
@@ -87,6 +87,12 @@ class SustainableOpenSourceBusinessProposalForm(MiniconfProposalForm):
 
        fields = TALK_FORMAT_FIELDS
 

	
 

	
 
class SoftwareWorkerCoopsProposalForm(MiniconfProposalForm):
 
    class Meta:
 
        model = models.SoftwareWorkerCoopsProposal
 
        fields = TALK_FORMAT_FIELDS
 

	
 

	
 
class DiversityEquityInclusionProposalForm(MiniconfProposalForm):
 
    class Meta:
 
        model = models.DiversityEquityInclusionProposal
pinaxcon/proposals/migrations/0009_auto_20230421_0139.py
Show inline comments
 
new file 100644
 
# Generated by Django 2.2.28 on 2023-04-21 08:39
 

	
 
from django.db import migrations, models
 
import django.db.models.deletion
 

	
 

	
 
class Migration(migrations.Migration):
 

	
 
    dependencies = [
 
        ('symposion_proposals', '0003_auto_20170702_2250'),
 
        ('proposals', '0008_auto_20230420_0241'),
 
    ]
 

	
 
    operations = [
 
        migrations.CreateModel(
 
            name='SoftwareWorkerCoopsProposal',
 
            fields=[
 
                ('proposalbase_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='symposion_proposals.ProposalBase')),
 
                ('target_audience', models.IntegerField(choices=[(4, 'Developer'), (3, 'Community'), (1, 'End User'), (2, 'Business')], help_text='Who is the target audience for your session?')),
 
                ('recording_release', models.BooleanField(default=True, help_text="I allow Software Freedom Conservancy to release any recordings of presentations covered by this proposal, on YouTube under the standard YouTube licence, and on other platforms under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/'> CC BY-NC-SA 4.0</a>) licence.")),
 
                ('materials_release', models.BooleanField(default=True, help_text="I allow Software Freedom Conservancy to release any other material (such as slides) from presentations covered by this proposal, under the <a href='https://creativecommons.org/licenses/by-sa/3.0/au/deed.en'> Creative Commons Attribution-Share Alike Australia 3.0 Licence</a>")),
 
                ('primary_topic', models.IntegerField(choices=[(1, 'Linux'), (2, 'Software'), (3, 'Hardware'), (4, 'Firmware'), (5, 'System Administration / Operations'), (6, 'Security'), (7, 'Documentation'), (8, 'Community'), (9, 'Science & Data'), (10, 'Galleries, Libraries, Archives & Museums (GLAM)'), (11, 'Multimedia'), (12, 'Aerospace / UAV'), (13, 'Agriculture'), (14, 'Other')], help_text='What is the primary topic area for your session?', null=True)),
 
                ('experience_level', models.IntegerField(choices=[(1, 'Beginner'), (2, 'Intermediate'), (3, 'Advanced')], help_text='What level of experience will your session be pitched at?')),
 
                ('require_approval', models.BooleanField(default=False, help_text='Do you require further approval from your employer or institution before you can confirm your availability to present?')),
 
                ('content_warning', models.TextField(blank=True, help_text='This will be shown on the schedule to give attendees advanced warning of topics covered in the session. ', verbose_name='Content Warning')),
 
                ('content_warning_html', models.TextField(blank=True)),
 
                ('talk_format', models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.')),
 
                ('ticket_acknowledgement', models.BooleanField(default=False, help_text='I understand that I will be required to purchase a conference ticket and arrange my own travel and accommodation.')),
 
            ],
 
            options={
 
                'verbose_name': 'Software Worker Co-ops',
 
            },
 
            bases=('symposion_proposals.proposalbase',),
 
        ),
 
        migrations.AlterModelOptions(
 
            name='sustainableopensourcebusinessproposal',
 
            options={'verbose_name': 'Sustainable Open Source Business'},
 
        ),
 
        migrations.AlterField(
 
            model_name='aarch64arm64proposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='bsdunixproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='communityproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='containerdaysproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='copyleftcomplianceproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='diversityequityinclusionproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='fossatplayproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='fossforeducationproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='fossindailylifeproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='memberprojectproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='opensourcaidataproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='openworkproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='scienceofcommunityproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='sustainableopensourcebusinessproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
        migrations.AlterField(
 
            model_name='xmppproposal',
 
            name='talk_format',
 
            field=models.IntegerField(choices=[(1, 'Lightning Talk (5-10 min)'), (2, 'Short Presentation (20-25 min)'), (3, 'Long Presentation (40-45 min)')], default=3, help_text='Please indicate your preferred talk length in the private abstract field below.'),
 
        ),
 
    ]
pinaxcon/proposals/models.py
Show inline comments
...
 
@@ -139,8 +139,9 @@ class MiniconfSessionProposal(Proposal):
 
    FORMAT_OTHER = 5
 

	
 
    TALK_FORMATS = [
 
        (FORMAT_MEDIUM_PRESENTATION, "Short Presentation (15 or 20 min)"),
 
        (FORMAT_LONG_PRESENTATION, "Long Presentation (45 min)"),
 
        (FORMAT_SHORT_PRESENTATION, "Lightning Talk (5-10 min)"),
 
        (FORMAT_MEDIUM_PRESENTATION, "Short Presentation (20-25 min)"),
 
        (FORMAT_LONG_PRESENTATION, "Long Presentation (40-45 min)"),
 
    ]
 

	
 
    talk_format = models.IntegerField(
...
 
@@ -176,7 +177,12 @@ class ContainerDaysProposal(MiniconfSessionProposal):
 

	
 
class SustainableOpenSourceBusinessProposal(MiniconfSessionProposal):
 
    class Meta:
 
        verbose_name = "Sustainable Open Source Business/ Software Worker Coops proposal"
 
        verbose_name = "Sustainable Open Source Business"
 

	
 

	
 
class SoftwareWorkerCoopsProposal(MiniconfSessionProposal):
 
    class Meta:
 
        verbose_name = "Software Worker Co-ops"
 

	
 

	
 
class DiversityEquityInclusionProposal(MiniconfSessionProposal):
pinaxcon/settings.py
Show inline comments
...
 
@@ -372,6 +372,7 @@ PROPOSAL_FORMS = {
 
    "sfc-member-project": "pinaxcon.proposals.forms.MemberProjectProposalForm",
 
    "container-days": "pinaxcon.proposals.forms.ContainerDaysProposalForm",
 
    "sustainable-open-source-business": "pinaxcon.proposals.forms.SustainableOpenSourceBusinessProposalForm",
 
    "software-worker-coops": "pinaxcon.proposals.forms.SoftwareWorkerCoopsProposalForm",
 
    "diversity-equity-inclusion": "pinaxcon.proposals.forms.DiversityEquityInclusionProposalForm",
 
    "foss-at-play": "pinaxcon.proposals.forms.FOSSAtPlayProposalForm",
 
    "open-source-ai-data": "pinaxcon.proposals.forms.OpenSourcAIDataProposalForm",
0 comments (0 inline, 0 general)