From 270d76d93939050ec3823bfa2b1d904d596aede2 Mon Sep 17 00:00:00 2001
From: Todd Dembrey <todd.dembrey@torchbox.com>
Date: Fri, 22 Dec 2017 10:09:55 +0000
Subject: [PATCH] Add workflow onto the fund model

---
 .../apply/migrations/0002_fund_workflow.py    | 21 +++++++++++++++++++
 opentech/apply/models.py                      | 10 ++++++++-
 2 files changed, 30 insertions(+), 1 deletion(-)
 create mode 100644 opentech/apply/migrations/0002_fund_workflow.py

diff --git a/opentech/apply/migrations/0002_fund_workflow.py b/opentech/apply/migrations/0002_fund_workflow.py
new file mode 100644
index 000000000..f06de397a
--- /dev/null
+++ b/opentech/apply/migrations/0002_fund_workflow.py
@@ -0,0 +1,21 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.7 on 2017-12-19 10:10
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import opentech.apply.workflow
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('apply', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='fund',
+            name='workflow',
+            field=models.CharField(choices=[('single', opentech.apply.workflow.SingleStage), ('double', opentech.apply.workflow.DoubleStage)], default='single', max_length=100),
+        ),
+    ]
diff --git a/opentech/apply/models.py b/opentech/apply/models.py
index d23470729..1d9f10a6f 100644
--- a/opentech/apply/models.py
+++ b/opentech/apply/models.py
@@ -6,6 +6,8 @@ from wagtail.wagtailsnippets.edit_handlers import SnippetChooserPanel
 
 from opentech.utils.models import SocialFields, ListingFields
 
+from .workflow import SingleStage, DoubleStage
+
 
 class ApplyHomePage(Page, SocialFields, ListingFields):
     # Only allow creating HomePages at the root level
@@ -25,8 +27,14 @@ class ApplyHomePage(Page, SocialFields, ListingFields):
         Page.promote_panels +
         SocialFields.promote_panels +
         ListingFields.promote_panels
-    )
 
 
 class FundPage(Page):
     parent_page_types = [ApplyHomePage]
+    WORKFLOWS = (
+        ('single', SingleStage),
+        ('double', DoubleStage),
+    )
+
+    name = models.CharField(max_length=60)
+    workflow = models.CharField(choices=WORKFLOWS, max_length=100, default=WORKFLOWS[0][0])
-- 
GitLab