diff --git a/maps/templates/maps/search.html b/maps/templates/maps/search.html
index 8ba42c4..4ef3af9 100644
--- a/maps/templates/maps/search.html
+++ b/maps/templates/maps/search.html
@@ -1,10 +1,17 @@
+{% load static %}
diff --git a/requirements.txt b/requirements.txt
index f66f3f6..6bba777 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,11 +1,18 @@
+agate==1.6.1
+agate-dbf==0.2.1
+agate-excel==0.2.3
+agate-sql==0.5.4
asgiref==3.2.3
attrs==19.3.0
+Babel==2.8.0
boto==2.49.0
certifi==2019.11.28
chardet==3.0.4
confusable-homoglyphs==3.2.0
coreapi==2.3.3
coreschema==0.0.4
+csvkit==1.0.5
+dbfread==2.0.7
defusedxml==0.6.0
dj-database-url==0.5.0
Django==3.0.3
@@ -20,24 +27,32 @@ django-ses==0.8.14
djangorestframework==3.11.0
djangorestframework-gis==0.15
drf-yasg==1.17.1
+et-xmlfile==1.0.1
future==0.18.2
gunicorn==20.0.4
honcho==1.0.1
idna==2.8
importlib-metadata==1.4.0
inflection==0.3.1
+isodate==0.6.0
itypes==1.1.0
+jdcal==1.4.1
Jinja2==2.10.3
jsonschema==3.2.0
+leather==0.3.3
Markdown==3.1.1
MarkupSafe==1.1.1
more-itertools==8.1.0
oauthlib==3.1.0
+openpyxl==3.0.3
packaging==20.0
+parsedatetime==2.5
psycopg2==2.8.4
pyparsing==2.4.6
pyrsistent==0.15.7
+python-slugify==4.0.0
python3-openid==3.1.0
+pytimeparse==1.1.8
pytz==2019.3
PyYAML==5.3
requests==2.22.0
@@ -45,9 +60,12 @@ requests-oauthlib==1.3.0
ruamel.yaml==0.16.5
ruamel.yaml.clib==0.2.0
six==1.14.0
+SQLAlchemy==1.3.16
sqlparse==0.3.0
swagger-spec-validator==2.4.3
+text-unidecode==1.3
uritemplate==3.0.1
urllib3==1.25.7
whitenoise==5.0.1
+xlrd==1.2.0
zipp==1.0.0
diff --git a/surveys/forms.py b/surveys/forms.py
index 47428c0..9de029c 100644
--- a/surveys/forms.py
+++ b/surveys/forms.py
@@ -62,7 +62,7 @@ class Meta:
}
widgets = {
'url': URLInput(attrs={'placeholder': 'e.g., https://example.coop/'}),
- 'founded': DateTimeInput(format="%d/%m/%Y", attrs={'placeholder': "DD/MM/YY"}),
+ 'founded': DateTimeInput(format="%d/%m/%Y", attrs={'placeholder': "MM/DD/YYYY"}),
'media_url': URLInput(attrs={'placeholder': 'e.g., https://www.youtube.com/watch?v=qcPUARqRsVM'}),
'logo_url': URLInput(attrs={'placeholder': 'e.g., https://example.coop/logo.png'}),
}
diff --git a/surveys/migrations/0001_initial.py b/surveys/migrations/0001_initial.py
new file mode 100644
index 0000000..7da654d
--- /dev/null
+++ b/surveys/migrations/0001_initial.py
@@ -0,0 +1,119 @@
+# Generated by Django 3.0.3 on 2020-05-03 03:42
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ initial = True
+
+ dependencies = [
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Ecosystem2020Questions',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('column_name', models.CharField(max_length=2)),
+ ('question', models.CharField(blank=True, max_length=254)),
+ ],
+ options={
+ 'db_table': 'surveys_ecosystem2020_questions',
+ 'managed': False,
+ },
+ ),
+ migrations.CreateModel(
+ name='Ecosystem2020',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('a', models.DateTimeField(auto_now=True, db_column='A')),
+ ('b', models.CharField(blank=True, db_column='B', max_length=254)),
+ ('c', models.CharField(blank=True, db_column='C', max_length=254)),
+ ('d', models.CharField(blank=True, db_column='D', max_length=254)),
+ ('e', models.CharField(blank=True, db_column='E', max_length=254)),
+ ('f', models.CharField(blank=True, db_column='F', max_length=254)),
+ ('g', models.CharField(blank=True, db_column='G', max_length=254)),
+ ('h', models.CharField(blank=True, db_column='H', max_length=254)),
+ ('i', models.CharField(blank=True, db_column='I', max_length=254)),
+ ('j', models.CharField(blank=True, db_column='J', max_length=254)),
+ ('k', models.CharField(blank=True, db_column='K', max_length=254)),
+ ('l', models.CharField(blank=True, db_column='L', max_length=254)),
+ ('m', models.CharField(blank=True, db_column='M', max_length=254)),
+ ('n', models.CharField(blank=True, db_column='N', max_length=254)),
+ ('o', models.CharField(blank=True, db_column='O', max_length=254)),
+ ('p', models.CharField(blank=True, db_column='P', max_length=254)),
+ ('q', models.CharField(blank=True, db_column='Q', max_length=254)),
+ ('r', models.CharField(blank=True, db_column='R', max_length=254)),
+ ('s', models.CharField(blank=True, db_column='S', max_length=254)),
+ ('t', models.CharField(blank=True, db_column='T', max_length=254)),
+ ('u', models.CharField(blank=True, db_column='U', max_length=254)),
+ ('v', models.CharField(blank=True, db_column='V', max_length=254)),
+ ('w', models.CharField(blank=True, db_column='W', max_length=254)),
+ ('x', models.CharField(blank=True, db_column='X', max_length=254)),
+ ('y', models.CharField(blank=True, db_column='Y', max_length=254)),
+ ('z', models.CharField(blank=True, db_column='Z', max_length=254)),
+ ('aa', models.CharField(blank=True, db_column='AA', max_length=254)),
+ ('ab', models.CharField(blank=True, db_column='AB', max_length=254)),
+ ('ac', models.CharField(blank=True, db_column='AC', max_length=254)),
+ ('ad', models.CharField(blank=True, db_column='AD', max_length=254)),
+ ('ae', models.CharField(blank=True, db_column='AE', max_length=254)),
+ ('af', models.CharField(blank=True, db_column='AF', max_length=254)),
+ ('ag', models.CharField(blank=True, db_column='AG', max_length=254)),
+ ('ah', models.CharField(blank=True, db_column='AH', max_length=254)),
+ ('ai', models.CharField(blank=True, db_column='AI', max_length=254)),
+ ('aj', models.CharField(blank=True, db_column='AJ', max_length=254)),
+ ('ak', models.CharField(blank=True, db_column='AK', max_length=254)),
+ ('al', models.CharField(blank=True, db_column='AL', max_length=254)),
+ ('am', models.CharField(blank=True, db_column='AM', max_length=254)),
+ ('an', models.CharField(blank=True, db_column='AN', max_length=254)),
+ ('ao', models.CharField(blank=True, db_column='AO', max_length=254)),
+ ('ap', models.CharField(blank=True, db_column='AP', max_length=254)),
+ ('aq', models.CharField(blank=True, db_column='AQ', max_length=254)),
+ ('ar', models.CharField(blank=True, db_column='AR', max_length=254)),
+ ('as_field', models.CharField(blank=True, db_column='AS', max_length=254)),
+ ('at', models.CharField(blank=True, db_column='AT', max_length=254)),
+ ('au', models.CharField(blank=True, db_column='AU', max_length=254)),
+ ('av', models.CharField(blank=True, db_column='AV', max_length=254)),
+ ('aw', models.CharField(blank=True, db_column='AW', max_length=254)),
+ ('ax', models.CharField(blank=True, db_column='AX', max_length=254)),
+ ('ay', models.CharField(blank=True, db_column='AY', max_length=254)),
+ ('az', models.CharField(blank=True, db_column='AZ', max_length=254)),
+ ('ba', models.CharField(blank=True, db_column='BA', max_length=254)),
+ ('bb', models.CharField(blank=True, db_column='BB', max_length=254)),
+ ('bc', models.CharField(blank=True, db_column='BC', max_length=254)),
+ ('bd', models.CharField(blank=True, db_column='BD', max_length=254)),
+ ('be', models.CharField(blank=True, db_column='BE', max_length=254)),
+ ('bf', models.CharField(blank=True, db_column='BF', max_length=254)),
+ ('bg', models.CharField(blank=True, db_column='BG', max_length=254)),
+ ('bh', models.CharField(blank=True, db_column='BH', max_length=254)),
+ ('bi', models.CharField(blank=True, db_column='BI', max_length=254)),
+ ('bj', models.CharField(blank=True, db_column='BJ', max_length=254)),
+ ('bk', models.CharField(blank=True, db_column='BK', max_length=254)),
+ ('bl', models.CharField(blank=True, db_column='BL', max_length=254)),
+ ('bm', models.CharField(blank=True, db_column='BM', max_length=254)),
+ ('bn', models.CharField(blank=True, db_column='BN', max_length=254)),
+ ('bo', models.CharField(blank=True, db_column='BO', max_length=254)),
+ ('bp', models.CharField(blank=True, db_column='BP', max_length=254)),
+ ('bq', models.CharField(blank=True, db_column='BQ', max_length=254)),
+ ('br', models.CharField(blank=True, db_column='BR', max_length=254)),
+ ('bs', models.CharField(blank=True, db_column='BS', max_length=254)),
+ ('bt', models.CharField(blank=True, db_column='BT', max_length=254)),
+ ('bu', models.CharField(blank=True, db_column='BU', max_length=254)),
+ ('bv', models.CharField(blank=True, db_column='BV', max_length=254)),
+ ('bw', models.CharField(blank=True, db_column='BW', max_length=254)),
+ ('bx', models.CharField(blank=True, db_column='BX', max_length=254)),
+ ('by', models.CharField(blank=True, db_column='BY', max_length=254)),
+ ('bz', models.CharField(blank=True, db_column='BZ', max_length=254)),
+ ('ca', models.CharField(blank=True, db_column='CA', max_length=254)),
+ ('cb', models.CharField(blank=True, db_column='CB', max_length=254)),
+ ('cc', models.CharField(blank=True, db_column='CC', max_length=254)),
+ ('cd', models.CharField(blank=True, db_column='CD', max_length=254)),
+ ('ce', models.CharField(blank=True, db_column='CE', max_length=254)),
+ ],
+ options={
+ 'db_table': 'surveys_ecosystem2020',
+ 'managed': True,
+ },
+ ),
+ ]
diff --git a/surveys/models.py b/surveys/models.py
index 71a8362..278018e 100644
--- a/surveys/models.py
+++ b/surveys/models.py
@@ -1,3 +1,100 @@
-from django.db import models
+from django.contrib.gis.db import models
-# Create your models here.
+
+class Ecosystem2020Questions(models.Model):
+ column_name = models.CharField(max_length=2)
+ question = models.CharField(max_length=254, blank=True,)
+
+ class Meta:
+ managed = False
+ db_table = 'surveys_ecosystem2020_questions'
+
+
+class Ecosystem2020(models.Model):
+ a = models.DateTimeField(db_column='A', auto_now=True)
+ b = models.CharField(db_column='B', max_length=254, blank=True,)
+ c = models.CharField(db_column='C', max_length=254, blank=True,)
+ d = models.CharField(db_column='D', max_length=254, blank=True,)
+ e = models.CharField(db_column='E', max_length=254, blank=True,)
+ f = models.CharField(db_column='F', max_length=254, blank=True,)
+ g = models.CharField(db_column='G', max_length=254, blank=True,)
+ h = models.CharField(db_column='H', max_length=254, blank=True,)
+ i = models.CharField(db_column='I', max_length=254, blank=True,)
+ j = models.CharField(db_column='J', max_length=254, blank=True,)
+ k = models.CharField(db_column='K', max_length=254, blank=True,)
+ l = models.CharField(db_column='L', max_length=254, blank=True,)
+ m = models.CharField(db_column='M', max_length=254, blank=True,)
+ n = models.CharField(db_column='N', max_length=254, blank=True,)
+ o = models.CharField(db_column='O', max_length=254, blank=True,)
+ p = models.CharField(db_column='P', max_length=254, blank=True,)
+ q = models.CharField(db_column='Q', max_length=254, blank=True,)
+ r = models.CharField(db_column='R', max_length=254, blank=True,)
+ s = models.CharField(db_column='S', max_length=254, blank=True,)
+ t = models.CharField(db_column='T', max_length=254, blank=True,)
+ u = models.CharField(db_column='U', max_length=254, blank=True,)
+ v = models.CharField(db_column='V', max_length=254, blank=True,)
+ w = models.CharField(db_column='W', max_length=254, blank=True,)
+ x = models.CharField(db_column='X', max_length=254, blank=True,)
+ y = models.CharField(db_column='Y', max_length=254, blank=True,)
+ z = models.CharField(db_column='Z', max_length=254, blank=True,)
+ aa = models.CharField(db_column='AA', max_length=254, blank=True,)
+ ab = models.CharField(db_column='AB', max_length=254, blank=True,)
+ ac = models.CharField(db_column='AC', max_length=254, blank=True,)
+ ad = models.CharField(db_column='AD', max_length=254, blank=True,)
+ ae = models.CharField(db_column='AE', max_length=254, blank=True,)
+ af = models.CharField(db_column='AF', max_length=254, blank=True,)
+ ag = models.CharField(db_column='AG', max_length=254, blank=True,)
+ ah = models.CharField(db_column='AH', max_length=254, blank=True,)
+ ai = models.CharField(db_column='AI', max_length=254, blank=True,)
+ aj = models.CharField(db_column='AJ', max_length=254, blank=True,)
+ ak = models.CharField(db_column='AK', max_length=254, blank=True,)
+ al = models.CharField(db_column='AL', max_length=254, blank=True,)
+ am = models.CharField(db_column='AM', max_length=254, blank=True,)
+ an = models.CharField(db_column='AN', max_length=254, blank=True,)
+ ao = models.CharField(db_column='AO', max_length=254, blank=True,)
+ ap = models.CharField(db_column='AP', max_length=254, blank=True,)
+ aq = models.CharField(db_column='AQ', max_length=254, blank=True,)
+ ar = models.CharField(db_column='AR', max_length=254, blank=True,)
+ as_field = models.CharField(db_column='AS', max_length=254, blank=True,) # Field renamed because it was a Python reserved word.
+ at = models.CharField(db_column='AT', max_length=254, blank=True,)
+ au = models.CharField(db_column='AU', max_length=254, blank=True,)
+ av = models.CharField(db_column='AV', max_length=254, blank=True,)
+ aw = models.CharField(db_column='AW', max_length=254, blank=True,)
+ ax = models.CharField(db_column='AX', max_length=254, blank=True,)
+ ay = models.CharField(db_column='AY', max_length=254, blank=True,)
+ az = models.CharField(db_column='AZ', max_length=254, blank=True,)
+ ba = models.CharField(db_column='BA', max_length=254, blank=True,)
+ bb = models.CharField(db_column='BB', max_length=254, blank=True,)
+ bc = models.CharField(db_column='BC', max_length=254, blank=True,)
+ bd = models.CharField(db_column='BD', max_length=254, blank=True,)
+ be = models.CharField(db_column='BE', max_length=254, blank=True,)
+ bf = models.CharField(db_column='BF', max_length=254, blank=True,)
+ bg = models.CharField(db_column='BG', max_length=254, blank=True,)
+ bh = models.CharField(db_column='BH', max_length=254, blank=True,)
+ bi = models.CharField(db_column='BI', max_length=254, blank=True,)
+ bj = models.CharField(db_column='BJ', max_length=254, blank=True,)
+ bk = models.CharField(db_column='BK', max_length=254, blank=True,)
+ bl = models.CharField(db_column='BL', max_length=254, blank=True,)
+ bm = models.CharField(db_column='BM', max_length=254, blank=True,)
+ bn = models.CharField(db_column='BN', max_length=254, blank=True,)
+ bo = models.CharField(db_column='BO', max_length=254, blank=True,)
+ bp = models.CharField(db_column='BP', max_length=254, blank=True,)
+ bq = models.CharField(db_column='BQ', max_length=254, blank=True,)
+ br = models.CharField(db_column='BR', max_length=254, blank=True,)
+ bs = models.CharField(db_column='BS', max_length=254, blank=True,)
+ bt = models.CharField(db_column='BT', max_length=254, blank=True,)
+ bu = models.CharField(db_column='BU', max_length=254, blank=True,)
+ bv = models.CharField(db_column='BV', max_length=254, blank=True,)
+ bw = models.CharField(db_column='BW', max_length=254, blank=True,)
+ bx = models.CharField(db_column='BX', max_length=254, blank=True,)
+ by = models.CharField(db_column='BY', max_length=254, blank=True,)
+ bz = models.CharField(db_column='BZ', max_length=254, blank=True,)
+ ca = models.CharField(db_column='CA', max_length=254, blank=True,)
+ cb = models.CharField(db_column='CB', max_length=254, blank=True,)
+ cc = models.CharField(db_column='CC', max_length=254, blank=True,)
+ cd = models.CharField(db_column='CD', max_length=254, blank=True,)
+ ce = models.CharField(db_column='CE', max_length=254, blank=True,)
+
+ class Meta:
+ managed = True
+ db_table = 'surveys_ecosystem2020'
diff --git a/surveys/templates/surveys/ecosystem_2020/social_networks.html b/surveys/templates/surveys/ecosystem_2020/social_networks.html
index 2aeae6b..bb90d8c 100644
--- a/surveys/templates/surveys/ecosystem_2020/social_networks.html
+++ b/surveys/templates/surveys/ecosystem_2020/social_networks.html
@@ -7,7 +7,7 @@
{% block content %}