More cfps (#75)

* Law, Testing and Knowledge Miniconf CFP

* Admin registration for latest CFPs
This commit is contained in:
Scott Bragg 2016-09-27 18:10:41 +10:00 committed by GitHub
parent 52d443790f
commit 35bb710250
5 changed files with 149 additions and 4 deletions

View file

@ -14,6 +14,10 @@ from symposion.proposals import models as symposion_models
@admin.register(models.WootconfProposal) @admin.register(models.WootconfProposal)
@admin.register(models.KernelProposal) @admin.register(models.KernelProposal)
@admin.register(models.GamesProposal) @admin.register(models.GamesProposal)
@admin.register(models.TestingProposal)
@admin.register(models.KnowledgeProposal)
@admin.register(models.LawProposal)
class CategoryAdmin(admin.ModelAdmin): class CategoryAdmin(admin.ModelAdmin):
class AdditionalSpeakerInline(admin.TabularInline): class AdditionalSpeakerInline(admin.TabularInline):

View file

@ -5,7 +5,8 @@ from pinaxcon import widgets
from .models import TalkProposal, TutorialProposal, MiniconfProposal from .models import TalkProposal, TutorialProposal, MiniconfProposal
from .models import SysAdminProposal, WriteTheDocsProposal, WootconfProposal from .models import SysAdminProposal, WriteTheDocsProposal, WootconfProposal
from .models import KernelProposal, OpenRadioProposal, SecurityProposal from .models import KernelProposal, OpenRadioProposal, SecurityProposal
from .models import GamesProposal from .models import GamesProposal, TestingProposal, LawProposal
from .models import KnowledgeProposal
class ProposalForm(forms.ModelForm): class ProposalForm(forms.ModelForm):
@ -239,3 +240,69 @@ class GamesProposalForm(ProposalForm):
"private_abstract" : widgets.AceMarkdownEditor(), "private_abstract" : widgets.AceMarkdownEditor(),
"technical_requirements" : widgets.AceMarkdownEditor(), "technical_requirements" : widgets.AceMarkdownEditor(),
} }
class TestingProposalForm(ProposalForm):
class Meta:
model = TestingProposal
fields = [
"title",
"target_audience",
"abstract",
"private_abstract",
"technical_requirements",
"project",
"project_url",
"recording_release",
"materials_release",
]
widgets = {
"abstract" : widgets.AceMarkdownEditor(),
"private_abstract" : widgets.AceMarkdownEditor(),
"technical_requirements" : widgets.AceMarkdownEditor(),
}
class KnowledgeProposalForm(ProposalForm):
class Meta:
model = KnowledgeProposal
fields = [
"title",
"target_audience",
"abstract",
"private_abstract",
"technical_requirements",
"project",
"project_url",
"recording_release",
"materials_release",
]
widgets = {
"abstract" : widgets.AceMarkdownEditor(),
"private_abstract" : widgets.AceMarkdownEditor(),
"technical_requirements" : widgets.AceMarkdownEditor(),
}
class LawProposalForm(ProposalForm):
class Meta:
model = LawProposal
fields = [
"title",
"target_audience",
"abstract",
"private_abstract",
"technical_requirements",
"project",
"project_url",
"recording_release",
"materials_release",
]
widgets = {
"abstract" : widgets.AceMarkdownEditor(),
"private_abstract" : widgets.AceMarkdownEditor(),
"technical_requirements" : widgets.AceMarkdownEditor(),
}

View file

@ -0,0 +1,56 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.7 on 2016-09-27 07:58
from __future__ import unicode_literals
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('symposion_proposals', '0001_initial'),
('proposals', '0006_auto_20160925_0551'),
]
operations = [
migrations.CreateModel(
name='KnowledgeProposal',
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=[(1, b'User'), (2, b'Business'), (3, b'Community'), (4, b'Developer')])),
('recording_release', models.BooleanField(default=True, help_text=b"I allow Linux Australia to release any recordings of 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>")),
('materials_release', models.BooleanField(default=True, help_text=b"I allow Linux Australia 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>")),
],
options={
'verbose_name': 'Open Knowledge Australia Miniconf Proposal',
},
bases=('symposion_proposals.proposalbase',),
),
migrations.CreateModel(
name='LawProposal',
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=[(1, b'User'), (2, b'Business'), (3, b'Community'), (4, b'Developer')])),
('recording_release', models.BooleanField(default=True, help_text=b"I allow Linux Australia to release any recordings of 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>")),
('materials_release', models.BooleanField(default=True, help_text=b"I allow Linux Australia 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>")),
],
options={
'verbose_name': 'Open Law and Policy Miniconf Proposal',
},
bases=('symposion_proposals.proposalbase',),
),
migrations.CreateModel(
name='TestingProposal',
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=[(1, b'User'), (2, b'Business'), (3, b'Community'), (4, b'Developer')])),
('recording_release', models.BooleanField(default=True, help_text=b"I allow Linux Australia to release any recordings of 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>")),
('materials_release', models.BooleanField(default=True, help_text=b"I allow Linux Australia 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>")),
],
options={
'verbose_name': 'Testing/Automation Miniconf Proposal',
},
bases=('symposion_proposals.proposalbase',),
),
]

View file

@ -108,12 +108,12 @@ class SecurityProposal(Proposal):
class GamesProposal(Proposal): class GamesProposal(Proposal):
TYPE_PRESENTATION = 1 TYPE_PRESENTATION = 1
TYPE_DEMONSTRATION = 2 TYPE_DEMONSTRATION = 2
TYPE_OTHER = 3 TYPE_OTHER = 3
TALK_FORMATS = [ TALK_FORMATS = [
(TYPE_PRESENTATION, "Presentation"), (TYPE_PRESENTATION, "Presentation"),
(TYPE_DEMONSTRATION, "Demonstration"), (TYPE_DEMONSTRATION, "Demonstration"),
(TYPE_OTHER, "Other"), (TYPE_OTHER, "Other"),
] ]
@ -122,3 +122,18 @@ class GamesProposal(Proposal):
class Meta: class Meta:
verbose_name = "Games and FOSS Miniconf Proposal" verbose_name = "Games and FOSS Miniconf Proposal"
class TestingProposal(Proposal):
class Meta:
verbose_name = "Testing/Automation Miniconf Proposal"
class KnowledgeProposal(Proposal):
class Meta:
verbose_name = "Open Knowledge Australia Miniconf Proposal"
class LawProposal(Proposal):
class Meta:
verbose_name = "Open Law and Policy Miniconf Proposal"

View file

@ -260,6 +260,9 @@ PROPOSAL_FORMS = {
"security-miniconf": "pinaxcon.proposals.forms.SecurityProposalForm", "security-miniconf": "pinaxcon.proposals.forms.SecurityProposalForm",
"kernel-miniconf": "pinaxcon.proposals.forms.KernelProposalForm", "kernel-miniconf": "pinaxcon.proposals.forms.KernelProposalForm",
"games-miniconf": "pinaxcon.proposals.forms.GamesProposalForm", "games-miniconf": "pinaxcon.proposals.forms.GamesProposalForm",
"testing-miniconf": "pinaxcon.proposals.forms.TestingProposalForm",
"knowledge-miniconf": "pinaxcon.proposals.forms.KnowledgeProposalForm",
"lawpolicy-miniconf": "pinaxcon.proposals.forms.LawProposalForm",
} }
#PINAX_PAGES_HOOKSET = "pinaxcon.hooks.PinaxPagesHookSet" #PINAX_PAGES_HOOKSET = "pinaxcon.hooks.PinaxPagesHookSet"