├── .gitignore ├── acoidea ├── __init__.py ├── settings │ ├── __init__.py │ ├── base.py │ ├── dev.py │ └── production.py ├── static │ ├── css │ │ └── acoidea.css │ ├── img │ │ └── nescode.svg │ └── js │ │ └── acoidea.js ├── templates │ ├── 404.html │ ├── 500.html │ ├── base.html │ └── footer.html ├── urls.py └── wsgi.py ├── home ├── __init__.py ├── migrations │ ├── 0001_initial.py │ ├── 0002_create_homepage.py │ ├── 0003_homepage_body.py │ ├── 0004_auto_20160121_1634.py │ ├── 0005_auto_20160121_1643.py │ ├── 0006_homepagecarouselitem_homepagerelatedlink.py │ ├── 0007_auto_20160122_0723.py │ ├── 0008_auto_20160122_0954.py │ ├── 0009_advert_advertplacement.py │ ├── 0010_auto_20160122_1142.py │ ├── 0011_auto_20160307_0122.py │ ├── 0012_auto_20160307_0128.py │ ├── 0013_auto_20160307_0155.py │ ├── 0014_auto_20160422_0643.py │ ├── 0015_auto_20160422_0647.py │ ├── 0016_blogpage_intro.py │ ├── 0017_auto_20160422_1104.py │ ├── 0018_auto_20160422_1106.py │ ├── 0019_contactpage_intro.py │ ├── 0020_formpage_page.py │ ├── 0021_auto_20160423_0434.py │ ├── 0022_auto_20160423_0437.py │ ├── 0023_auto_20160423_0641.py │ ├── 0024_auto_20160425_0424.py │ ├── 0025_contactpage_page.py │ ├── 0026_auto_20160425_0713.py │ ├── 0027_contactpage_thank_you_text.py │ ├── 0028_auto_20160425_0719.py │ ├── 0029_auto_20160425_1336.py │ ├── 0030_auto_20160517_0526.py │ ├── 0031_auto_20160603_0945.py │ └── __init__.py ├── models.py ├── templates │ ├── home │ │ ├── blog_index_page.html │ │ ├── blog_page.html │ │ ├── breadcrumbs.html │ │ ├── contact_page.html │ │ ├── event_index_page.html │ │ ├── event_page.html │ │ ├── form_page.html │ │ ├── form_page_landing.html │ │ ├── home_page.html │ │ ├── includes │ │ │ ├── blog_list_item.html │ │ │ ├── carousel.html │ │ │ ├── contact.html │ │ │ ├── event_list_item.html │ │ │ ├── form.html │ │ │ ├── google_map.html │ │ │ ├── intro.html │ │ │ ├── one_column_block.html │ │ │ ├── page_blocks.html │ │ │ ├── person_list_item.html │ │ │ ├── related_links.html │ │ │ ├── search_box.html │ │ │ ├── streamfield.html │ │ │ ├── three_column_block.html │ │ │ └── two_column_block.html │ │ ├── person_page.html │ │ ├── search_results.html │ │ ├── standard_index_page.html │ │ ├── standard_page.html │ │ └── tags │ │ │ ├── adverts.html │ │ │ ├── breadcrumbs.html │ │ │ ├── standard_index_listing.html │ │ │ ├── top_menu.html │ │ │ └── top_menu_children.html │ └── registration │ │ ├── activate.html │ │ ├── activation_complete.html │ │ ├── activation_email.txt │ │ ├── activation_email_subject.txt │ │ ├── login.html │ │ ├── logout.html │ │ ├── password_change_done.html │ │ ├── password_change_form.html │ │ ├── password_reset_complete.html │ │ ├── password_reset_confirm.html │ │ ├── password_reset_done.html │ │ ├── password_reset_email.html │ │ ├── password_reset_form.html │ │ ├── registration_closed.html │ │ ├── registration_complete.html │ │ └── registration_form.html ├── templatetags │ ├── __init__.py │ └── home_tags.py └── views.py ├── manage.py ├── readme.md ├── requirements.txt └── search ├── __init__.py ├── templates └── search │ └── search.html └── views.py /.gitignore: -------------------------------------------------------------------------------- 1 | db.sqlite3 2 | .DS_STORE 3 | .Python 4 | *.pyc 5 | *.pyo 6 | /static 7 | /media 8 | -------------------------------------------------------------------------------- /acoidea/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nescode/wagtailcmsdemo/b9cf9447f41d5464610bcfd17e13112a73f9cdd5/acoidea/__init__.py -------------------------------------------------------------------------------- /acoidea/settings/__init__.py: -------------------------------------------------------------------------------- 1 | from .dev import * 2 | -------------------------------------------------------------------------------- /acoidea/settings/base.py: -------------------------------------------------------------------------------- 1 | """ 2 | Django settings for acoidea project. 3 | 4 | Generated by 'django-admin startproject' using Django 1.9.1. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/1.9/topics/settings/ 8 | 9 | For the full list of settings and their values, see 10 | https://docs.djangoproject.com/en/1.9/ref/settings/ 11 | """ 12 | 13 | # Build paths inside the project like this: os.path.join(BASE_DIR, ...) 14 | import os 15 | 16 | PROJECT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 17 | BASE_DIR = os.path.dirname(PROJECT_DIR) 18 | 19 | 20 | # Quick-start development settings - unsuitable for production 21 | # See https://docs.djangoproject.com/en/1.9/howto/deployment/checklist/ 22 | 23 | 24 | # Application definition 25 | 26 | INSTALLED_APPS = [ 27 | 'home', 28 | 'search', 29 | 30 | 'wagtail.wagtailforms', 31 | 'wagtail.wagtailredirects', 32 | 'wagtail.wagtailembeds', 33 | 'wagtail.wagtailsites', 34 | 'wagtail.wagtailusers', 35 | 'wagtail.wagtailsnippets', 36 | 'wagtail.wagtaildocs', 37 | 'wagtail.wagtailimages', 38 | 'wagtail.wagtailsearch', 39 | 'wagtail.wagtailadmin', 40 | 'wagtail.wagtailcore', 41 | 'wagtail.contrib.wagtailsitemaps', 42 | 43 | 'modelcluster', 44 | 'compressor', 45 | 'taggit', 46 | 47 | 'django.contrib.admin', 48 | 'django.contrib.auth', 49 | 'django.contrib.contenttypes', 50 | 'django.contrib.sessions', 51 | 'django.contrib.messages', 52 | 'django.contrib.staticfiles', 53 | 54 | # Thirdparty APPS 55 | 'crispy_forms', 56 | 'registration', 57 | ] 58 | 59 | MIDDLEWARE_CLASSES = [ 60 | 'django.contrib.sessions.middleware.SessionMiddleware', 61 | 'django.middleware.common.CommonMiddleware', 62 | 'django.middleware.csrf.CsrfViewMiddleware', 63 | 'django.contrib.auth.middleware.AuthenticationMiddleware', 64 | 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 65 | 'django.contrib.messages.middleware.MessageMiddleware', 66 | 'django.middleware.clickjacking.XFrameOptionsMiddleware', 67 | 'django.middleware.security.SecurityMiddleware', 68 | 69 | 'wagtail.wagtailcore.middleware.SiteMiddleware', 70 | 'wagtail.wagtailredirects.middleware.RedirectMiddleware', 71 | ] 72 | 73 | ROOT_URLCONF = 'acoidea.urls' 74 | 75 | TEMPLATES = [ 76 | { 77 | 'BACKEND': 'django.template.backends.django.DjangoTemplates', 78 | 'DIRS': [ 79 | os.path.join(PROJECT_DIR, 'templates'), 80 | ], 81 | 'APP_DIRS': True, 82 | 'OPTIONS': { 83 | 'context_processors': [ 84 | 'django.template.context_processors.debug', 85 | 'django.template.context_processors.request', 86 | 'django.contrib.auth.context_processors.auth', 87 | 'django.contrib.messages.context_processors.messages', 88 | ], 89 | }, 90 | }, 91 | ] 92 | 93 | WSGI_APPLICATION = 'acoidea.wsgi.application' 94 | 95 | 96 | # Database 97 | # https://docs.djangoproject.com/en/1.9/ref/settings/#databases 98 | 99 | DATABASES = { 100 | 'default': { 101 | 'ENGINE': 'django.db.backends.sqlite3', 102 | 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 103 | } 104 | } 105 | 106 | 107 | # Internationalization 108 | # https://docs.djangoproject.com/en/1.9/topics/i18n/ 109 | 110 | LANGUAGE_CODE = 'en-us' 111 | 112 | TIME_ZONE = 'UTC' 113 | 114 | USE_I18N = True 115 | 116 | USE_L10N = True 117 | 118 | USE_TZ = True 119 | 120 | 121 | # Static files (CSS, JavaScript, Images) 122 | # https://docs.djangoproject.com/en/1.9/howto/static-files/ 123 | 124 | STATICFILES_FINDERS = [ 125 | 'django.contrib.staticfiles.finders.FileSystemFinder', 126 | 'django.contrib.staticfiles.finders.AppDirectoriesFinder', 127 | 'compressor.finders.CompressorFinder', 128 | ] 129 | 130 | STATICFILES_DIRS = [ 131 | os.path.join(PROJECT_DIR, 'static'), 132 | ] 133 | 134 | STATIC_ROOT = os.path.join(BASE_DIR, 'static') 135 | STATIC_URL = '/static/' 136 | 137 | MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 138 | MEDIA_URL = '/media/' 139 | 140 | 141 | # Wagtail settings 142 | 143 | WAGTAIL_SITE_NAME = "acoidea" 144 | 145 | # Crispy forms 146 | CRISPY_TEMPLATE_PACK = 'bootstrap3' 147 | 148 | # Registration redux setiing 149 | 150 | ACCOUNT_ACTIVATION_DAYS = 7 151 | REGISTRATION_AUTO_LOGIN = True 152 | REGISTRATION_EMAIL_HTML = True 153 | SITE_ID = 1 154 | LOGIN_REDIRECT_URL = '/' 155 | -------------------------------------------------------------------------------- /acoidea/settings/dev.py: -------------------------------------------------------------------------------- 1 | from .base import * 2 | 3 | 4 | # SECURITY WARNING: don't run with debug turned on in production! 5 | DEBUG = True 6 | 7 | for template_engine in TEMPLATES: 8 | template_engine['OPTIONS']['debug'] = True 9 | 10 | # SECURITY WARNING: keep the secret key used in production secret! 11 | SECRET_KEY = 'c(qefe16js8xm7*kzy#m*sorafo=^c9oe+zi$p4sq+1mwfp+n!' 12 | 13 | 14 | EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend' 15 | 16 | 17 | try: 18 | from .local import * 19 | except ImportError: 20 | pass 21 | -------------------------------------------------------------------------------- /acoidea/settings/production.py: -------------------------------------------------------------------------------- 1 | from .base import * 2 | 3 | 4 | DEBUG = False 5 | 6 | try: 7 | from .local import * 8 | except ImportError: 9 | pass 10 | -------------------------------------------------------------------------------- /acoidea/static/css/acoidea.css: -------------------------------------------------------------------------------- 1 | /* Custom css for acoidea */ 2 | 3 | body { 4 | font-family: 'Roboto', sans-serif; 5 | height: 100%; 6 | margin: 0; 7 | padding: 0; 8 | } 9 | 10 | * { 11 | -webkit-border-radius: 2px !important; 12 | -moz-border-radius: 2px !important; 13 | border-radius: 2px !important; 14 | } 15 | 16 | .container{ 17 | max-width: 1100px; 18 | } 19 | /* Navbar, Brand and main menu */ 20 | 21 | .navbar-brand { 22 | float: left; 23 | height: 50px; 24 | padding: 11px 15px; 25 | font-size: 20px; 26 | line-height: 20px; 27 | font-weight: 700; 28 | } 29 | 30 | .navbar-default .navbar-brand { 31 | color: #000; 32 | } 33 | .navbar-default { 34 | background-color: #FFFFFF; 35 | border-color: #FFFFFF; 36 | text-transform: uppercase; 37 | } 38 | 39 | .navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:focus, .navbar-default .navbar-nav>.active>a:hover { 40 | color: #008EC0; 41 | background-color: #FFFFFF; 42 | 43 | } 44 | 45 | .navbar-default .navbar-nav>li>a { 46 | color: #000; 47 | } 48 | 49 | 50 | /* Breadcrumb */ 51 | 52 | .breadcrumb { 53 | padding: 50px 0px; 54 | margin-top: 30px; 55 | list-style: none; 56 | font-size: 20px; 57 | font-weight: bold; 58 | background-color: transparent; 59 | color: #FFF; 60 | } 61 | 62 | 63 | .breadcrumb>.active { 64 | color: #231F20; 65 | } 66 | 67 | .custom{ 68 | color: #FFF; 69 | } 70 | .well { 71 | min-height: 20px; 72 | padding: 0px; 73 | margin-bottom: 0px; 74 | background-color: #F2F2F2; 75 | border: 0px solid #e3e3e3; 76 | border-radius: 0px; 77 | color: #FFF; 78 | } 79 | /* Carousel */ 80 | 81 | .carousel-control.right { 82 | right: 0; 83 | left: auto; 84 | background-image: none; 85 | background-image: none; 86 | /*filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);*/ 87 | background-repeat: no-repeat; 88 | } 89 | 90 | .carousel-control.left { 91 | left: 0; 92 | left: auto; 93 | background-image: none; 94 | background-image: none; 95 | background-repeat: no-repeat; 96 | } 97 | 98 | .carousel-caption { 99 | padding-bottom: 80px; 100 | color: #FFF; 101 | } 102 | /* Font customizaton */ 103 | 104 | h2, h3, h4{ 105 | font-weight: 300; 106 | color: #333333; 107 | } 108 | 109 | h1{ 110 | font-size: 29px; 111 | color: #FFF; 112 | font-weight: 300; 113 | text-transform: uppercase; 114 | } 115 | 116 | p{ 117 | font-size: 17px; 118 | font-weight: 300; 119 | color: #333333; 120 | } 121 | 122 | a{ 123 | color: #939393; 124 | } 125 | 126 | a:hover{ 127 | color: #007EE5; 128 | text-decoration: none; 129 | } 130 | strong { 131 | font-weight: 400; 132 | font-size: 15px; 133 | } 134 | 135 | label { 136 | font-weight: 300; 137 | } 138 | 139 | blockquote { 140 | color: #FF4422; 141 | border-left: 5px solid #FF4422; 142 | } 143 | .carousel-intro { 144 | color: #FFF; 145 | } 146 | 147 | .textjustify{ 148 | text-align: justify; 149 | } 150 | /* Buttons */ 151 | 152 | .btn-danger { 153 | color: #FFF; 154 | background-color: transparent; 155 | border-color: #FFF; 156 | border-width: 2px; 157 | border-radius: 2px; 158 | font-weight: 300; 159 | } 160 | 161 | .btn-danger:hover { 162 | color: #FFF; 163 | background-color: #007EE5; 164 | border-color: #FFF; 165 | border-width: 2px; 166 | border-radius: 0px; 167 | font-weight: 300; 168 | } 169 | /* Page into */ 170 | 171 | .pageintro{ 172 | padding-top: 20px; 173 | font-weight: 500; 174 | } 175 | 176 | .page-header { 177 | padding-bottom: 9px; 178 | margin: 78px 0 20px; 179 | border-bottom: 1px solid #eee; 180 | } 181 | 182 | .paddingtopbottom{ 183 | padding-top: 10px; 184 | padding-bottom: 10px; 185 | } 186 | /* Listing */ 187 | 188 | .list-inline{ 189 | padding-top: 5px; 190 | padding-bottom: 5px; 191 | text-transform: uppercase; 192 | } 193 | 194 | ul{ 195 | font-size: 17px; 196 | font-weight: 300; 197 | } 198 | 199 | /* Custom footer */ 200 | 201 | .footercustom{ 202 | padding-top: 100px; 203 | } 204 | 205 | .footer { 206 | background-color: #EDEFF1; 207 | color: #333333; 208 | padding-top: 10px; 209 | } 210 | 211 | .copyright{ 212 | font-size: 14px; 213 | color: #939393; 214 | font-weight: 300; 215 | } 216 | 217 | 218 | /* Social media */ 219 | 220 | /* footer social icons */ 221 | .list-inline { 222 | padding-left: 0; 223 | margin-left: 0px; 224 | } 225 | -------------------------------------------------------------------------------- /acoidea/static/img/nescode.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 21 | 43 | 45 | 46 | 48 | image/svg+xml 49 | 51 | 52 | 53 | 54 | 55 | 60 | 63 | 65 | 71 | 76 | 77 | NESCODE 92 | 93 | 94 | 95 | -------------------------------------------------------------------------------- /acoidea/static/js/acoidea.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nescode/wagtailcmsdemo/b9cf9447f41d5464610bcfd17e13112a73f9cdd5/acoidea/static/js/acoidea.js -------------------------------------------------------------------------------- /acoidea/templates/404.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block body_class %}template-404{% endblock %} 4 | 5 | {% block content %} 6 |

Page not found

7 | 8 |

Sorry, this page could not be found.

9 | {% endblock %} 10 | -------------------------------------------------------------------------------- /acoidea/templates/500.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Internal server error 10 | 11 | 12 | 13 |

Internal server error

14 | 15 |

Sorry, there seems to be an error. Please try again soon.

16 | 17 | 18 | -------------------------------------------------------------------------------- /acoidea/templates/base.html: -------------------------------------------------------------------------------- 1 | {% load home_tags static wagtailuserbar %} 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | {% block title %}{% if self.seo_title %}{{ self.seo_title }}{% else %}{{ self.title }}{% endif %}{% endblock %}{% block title_suffix %}{% endblock %} 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | {# Global stylesheets #} 23 | 24 | 25 | 26 | 27 | 28 | {% block extra_css %} 29 | 30 | {% endblock %} 31 | 32 | {# Javascript that needs to be called from head e.g. google analytics snippet and bootstrap shivs #} 33 | 44 | 45 | 46 | 47 | 48 | 49 | {% wagtailuserbar %} 50 | 51 | {#{% include "top_menu.html" %}#} 52 | 53 | {% block menu %} 54 | {% get_site_root as site_root %} 55 | {% top_menu parent=site_root calling_page=self %} 56 | {% endblock %} 57 | 58 | {# Body content #} 59 | {% breadcrumbs %} 60 |
61 | 62 | {% block content %}{% endblock %} 63 |
64 | 65 | 66 | {# Footer content #} 67 | {% include "footer.html" %} 68 | 69 | {# Global javascript #} 70 | 71 | 72 | 73 | 74 | {% block extra_js %} 75 | {# Override this in templates to add extra javascript #} 76 | {% endblock %} 77 | 78 | 79 | 80 | -------------------------------------------------------------------------------- /acoidea/templates/footer.html: -------------------------------------------------------------------------------- 1 | {% load home_tags cache compress static wagtailuserbar %} 2 | {% load wagtailcore_tags %} 3 | {% load crispy_forms_tags %} 4 | 5 |
6 | 55 |
56 | -------------------------------------------------------------------------------- /acoidea/urls.py: -------------------------------------------------------------------------------- 1 | from django.conf.urls import include, url 2 | from django.conf import settings 3 | from django.contrib import admin 4 | 5 | from wagtail.wagtailadmin import urls as wagtailadmin_urls 6 | from wagtail.wagtaildocs import urls as wagtaildocs_urls 7 | from wagtail.wagtailcore import urls as wagtail_urls 8 | from wagtail.contrib.wagtailsitemaps.views import sitemap 9 | 10 | from search import views as search_views 11 | 12 | 13 | urlpatterns = [ 14 | url(r'^django-admin/', include(admin.site.urls)), 15 | 16 | url(r'^admin/', include(wagtailadmin_urls)), 17 | url(r'^documents/', include(wagtaildocs_urls)), 18 | 19 | url(r'^search/$', search_views.search, name='search'), 20 | 21 | # Registration redux url 22 | url(r'^accounts/', include('registration.backends.default.urls')), 23 | 24 | url(r'', include(wagtail_urls)), 25 | url('^sitemap\.xml$', sitemap), 26 | ] 27 | 28 | 29 | if settings.DEBUG: 30 | from django.conf.urls.static import static 31 | from django.contrib.staticfiles.urls import staticfiles_urlpatterns 32 | from django.views.generic import TemplateView 33 | 34 | # Serve static and media files from development server 35 | urlpatterns += staticfiles_urlpatterns() 36 | urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 37 | -------------------------------------------------------------------------------- /acoidea/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for acoidea project. 3 | 4 | It exposes the WSGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/1.9/howto/deployment/wsgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.wsgi import get_wsgi_application 13 | 14 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "acoidea.settings") 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /home/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nescode/wagtailcmsdemo/b9cf9447f41d5464610bcfd17e13112a73f9cdd5/home/__init__.py -------------------------------------------------------------------------------- /home/migrations/0001_initial.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from django.db import models, migrations 5 | 6 | 7 | class Migration(migrations.Migration): 8 | 9 | dependencies = [ 10 | ('wagtailcore', '__latest__'), 11 | ] 12 | 13 | operations = [ 14 | migrations.CreateModel( 15 | name='HomePage', 16 | fields=[ 17 | ('page_ptr', models.OneToOneField(parent_link=True, auto_created=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 18 | ], 19 | options={ 20 | 'abstract': False, 21 | }, 22 | bases=('wagtailcore.page',), 23 | ), 24 | ] 25 | -------------------------------------------------------------------------------- /home/migrations/0002_create_homepage.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | from __future__ import unicode_literals 3 | 4 | from django.db import migrations 5 | 6 | 7 | def create_homepage(apps, schema_editor): 8 | # Get models 9 | ContentType = apps.get_model('contenttypes.ContentType') 10 | Page = apps.get_model('wagtailcore.Page') 11 | Site = apps.get_model('wagtailcore.Site') 12 | HomePage = apps.get_model('home.HomePage') 13 | 14 | # Delete the default homepage 15 | Page.objects.get(id=2).delete() 16 | 17 | # Create content type for homepage model 18 | homepage_content_type, created = ContentType.objects.get_or_create( 19 | model='homepage', app_label='home') 20 | 21 | # Create a new homepage 22 | homepage = HomePage.objects.create( 23 | title="Homepage", 24 | slug='home', 25 | content_type=homepage_content_type, 26 | path='00010001', 27 | depth=2, 28 | numchild=0, 29 | url_path='/home/', 30 | ) 31 | 32 | # Create a site with the new homepage set as the root 33 | Site.objects.create( 34 | hostname='localhost', root_page=homepage, is_default_site=True) 35 | 36 | 37 | class Migration(migrations.Migration): 38 | 39 | dependencies = [ 40 | ('home', '0001_initial'), 41 | ] 42 | 43 | operations = [ 44 | migrations.RunPython(create_homepage), 45 | ] 46 | -------------------------------------------------------------------------------- /home/migrations/0003_homepage_body.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-01-16 15:31 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import wagtail.wagtailcore.fields 7 | 8 | 9 | class Migration(migrations.Migration): 10 | 11 | dependencies = [ 12 | ('home', '0002_create_homepage'), 13 | ] 14 | 15 | operations = [ 16 | migrations.AddField( 17 | model_name='homepage', 18 | name='body', 19 | field=wagtail.wagtailcore.fields.RichTextField(blank=True), 20 | ), 21 | ] 22 | -------------------------------------------------------------------------------- /home/migrations/0004_auto_20160121_1634.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-01-21 16:34 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | 7 | 8 | class Migration(migrations.Migration): 9 | 10 | dependencies = [ 11 | ('home', '0003_homepage_body'), 12 | ] 13 | 14 | operations = [ 15 | migrations.AlterModelOptions( 16 | name='homepage', 17 | options={'verbose_name': 'Homepage'}, 18 | ), 19 | ] 20 | -------------------------------------------------------------------------------- /home/migrations/0005_auto_20160121_1643.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-01-21 16:43 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import home.models 7 | import wagtail.wagtailcore.blocks 8 | import wagtail.wagtailcore.fields 9 | import wagtail.wagtaildocs.blocks 10 | import wagtail.wagtailimages.blocks 11 | 12 | 13 | class Migration(migrations.Migration): 14 | 15 | dependencies = [ 16 | ('home', '0004_auto_20160121_1634'), 17 | ] 18 | 19 | operations = [ 20 | migrations.AlterField( 21 | model_name='homepage', 22 | name='body', 23 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse'))]), 24 | ), 25 | ] 26 | -------------------------------------------------------------------------------- /home/migrations/0006_homepagecarouselitem_homepagerelatedlink.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-01-22 01:57 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('wagtailcore', '0023_alter_page_revision_on_delete_behaviour'), 14 | ('wagtailimages', '0010_change_on_delete_behaviour'), 15 | ('wagtaildocs', '0004_capitalizeverbose'), 16 | ('home', '0005_auto_20160121_1643'), 17 | ] 18 | 19 | operations = [ 20 | migrations.CreateModel( 21 | name='HomePageCarouselItem', 22 | fields=[ 23 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 24 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 25 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 26 | ('embed_url', models.URLField(blank=True, verbose_name='Embed URL')), 27 | ('caption', models.CharField(blank=True, max_length=255)), 28 | ('image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 29 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 30 | ('link_page', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page')), 31 | ('page', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='carousel_items', to='home.HomePage')), 32 | ], 33 | options={ 34 | 'ordering': ['sort_order'], 35 | 'abstract': False, 36 | }, 37 | ), 38 | migrations.CreateModel( 39 | name='HomePageRelatedLink', 40 | fields=[ 41 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 42 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 43 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 44 | ('title', models.CharField(help_text='Link title', max_length=255)), 45 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 46 | ('link_page', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page')), 47 | ('page', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_links', to='home.HomePage')), 48 | ], 49 | options={ 50 | 'ordering': ['sort_order'], 51 | 'abstract': False, 52 | }, 53 | ), 54 | ] 55 | -------------------------------------------------------------------------------- /home/migrations/0007_auto_20160122_0723.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-01-22 07:23 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | import wagtail.wagtailcore.fields 9 | 10 | 11 | class Migration(migrations.Migration): 12 | 13 | dependencies = [ 14 | ('wagtailcore', '0023_alter_page_revision_on_delete_behaviour'), 15 | ('wagtailimages', '0010_change_on_delete_behaviour'), 16 | ('wagtaildocs', '0004_capitalizeverbose'), 17 | ('home', '0006_homepagecarouselitem_homepagerelatedlink'), 18 | ] 19 | 20 | operations = [ 21 | migrations.CreateModel( 22 | name='StandardIndexPage', 23 | fields=[ 24 | ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 25 | ('intro', wagtail.wagtailcore.fields.RichTextField(blank=True)), 26 | ('feed_image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 27 | ], 28 | options={ 29 | 'abstract': False, 30 | }, 31 | bases=('wagtailcore.page',), 32 | ), 33 | migrations.CreateModel( 34 | name='StandardIndexPageRelatedLink', 35 | fields=[ 36 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 37 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 38 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 39 | ('title', models.CharField(help_text='Link title', max_length=255)), 40 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 41 | ], 42 | options={ 43 | 'ordering': ['sort_order'], 44 | 'abstract': False, 45 | }, 46 | ), 47 | migrations.CreateModel( 48 | name='StandardPage', 49 | fields=[ 50 | ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 51 | ('intro', wagtail.wagtailcore.fields.RichTextField(blank=True)), 52 | ('body', wagtail.wagtailcore.fields.RichTextField(blank=True)), 53 | ('feed_image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 54 | ], 55 | options={ 56 | 'abstract': False, 57 | }, 58 | bases=('wagtailcore.page',), 59 | ), 60 | migrations.CreateModel( 61 | name='StandardPageCarouselItem', 62 | fields=[ 63 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 64 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 65 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 66 | ('embed_url', models.URLField(blank=True, verbose_name='Embed URL')), 67 | ('caption', models.CharField(blank=True, max_length=255)), 68 | ('image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 69 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 70 | ('link_page', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page')), 71 | ('page', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='carousel_items', to='home.StandardPage')), 72 | ], 73 | options={ 74 | 'ordering': ['sort_order'], 75 | 'abstract': False, 76 | }, 77 | ), 78 | migrations.CreateModel( 79 | name='StandardPageRelatedLink', 80 | fields=[ 81 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 82 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 83 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 84 | ('title', models.CharField(help_text='Link title', max_length=255)), 85 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 86 | ('link_page', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page')), 87 | ('page', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_links', to='home.StandardPage')), 88 | ], 89 | options={ 90 | 'ordering': ['sort_order'], 91 | 'abstract': False, 92 | }, 93 | ), 94 | migrations.AddField( 95 | model_name='standardindexpagerelatedlink', 96 | name='link_page', 97 | field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page'), 98 | ), 99 | migrations.AddField( 100 | model_name='standardindexpagerelatedlink', 101 | name='page', 102 | field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_links', to='home.StandardIndexPage'), 103 | ), 104 | ] 105 | -------------------------------------------------------------------------------- /home/migrations/0008_auto_20160122_0954.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-01-22 09:54 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | import wagtail.wagtailcore.fields 9 | 10 | 11 | class Migration(migrations.Migration): 12 | 13 | dependencies = [ 14 | ('wagtailcore', '0023_alter_page_revision_on_delete_behaviour'), 15 | ('wagtailimages', '0010_change_on_delete_behaviour'), 16 | ('wagtaildocs', '0004_capitalizeverbose'), 17 | ('home', '0007_auto_20160122_0723'), 18 | ] 19 | 20 | operations = [ 21 | migrations.CreateModel( 22 | name='ContactPage', 23 | fields=[ 24 | ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 25 | ('telephone', models.CharField(blank=True, max_length=20)), 26 | ('email', models.EmailField(blank=True, max_length=254)), 27 | ('address_1', models.CharField(blank=True, max_length=255)), 28 | ('address_2', models.CharField(blank=True, max_length=255)), 29 | ('city', models.CharField(blank=True, max_length=255)), 30 | ('country', models.CharField(blank=True, max_length=255)), 31 | ('post_code', models.CharField(blank=True, max_length=10)), 32 | ('body', wagtail.wagtailcore.fields.RichTextField(blank=True)), 33 | ('feed_image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 34 | ], 35 | options={ 36 | 'abstract': False, 37 | }, 38 | bases=('wagtailcore.page', models.Model), 39 | ), 40 | migrations.CreateModel( 41 | name='EventIndexPage', 42 | fields=[ 43 | ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 44 | ('intro', wagtail.wagtailcore.fields.RichTextField(blank=True)), 45 | ], 46 | options={ 47 | 'abstract': False, 48 | }, 49 | bases=('wagtailcore.page',), 50 | ), 51 | migrations.CreateModel( 52 | name='EventIndexPageRelatedLink', 53 | fields=[ 54 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 55 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 56 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 57 | ('title', models.CharField(help_text='Link title', max_length=255)), 58 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 59 | ], 60 | options={ 61 | 'ordering': ['sort_order'], 62 | 'abstract': False, 63 | }, 64 | ), 65 | migrations.CreateModel( 66 | name='EventPage', 67 | fields=[ 68 | ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 69 | ('date_from', models.DateField(verbose_name='Start date')), 70 | ('date_to', models.DateField(blank=True, help_text='Not required if event is on a single day', null=True, verbose_name='End date')), 71 | ('time_from', models.TimeField(blank=True, null=True, verbose_name='Start time')), 72 | ('time_to', models.TimeField(blank=True, null=True, verbose_name='End time')), 73 | ('audience', models.CharField(choices=[('public', 'Public'), ('private', 'Private')], max_length=255)), 74 | ('location', models.CharField(max_length=255)), 75 | ('body', wagtail.wagtailcore.fields.RichTextField(blank=True)), 76 | ('cost', models.CharField(max_length=255)), 77 | ('signup_link', models.URLField(blank=True)), 78 | ('feed_image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 79 | ], 80 | options={ 81 | 'abstract': False, 82 | }, 83 | bases=('wagtailcore.page',), 84 | ), 85 | migrations.CreateModel( 86 | name='EventPageCarouselItem', 87 | fields=[ 88 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 89 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 90 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 91 | ('embed_url', models.URLField(blank=True, verbose_name='Embed URL')), 92 | ('caption', models.CharField(blank=True, max_length=255)), 93 | ('image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 94 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 95 | ], 96 | options={ 97 | 'ordering': ['sort_order'], 98 | 'abstract': False, 99 | }, 100 | ), 101 | migrations.CreateModel( 102 | name='EventPageRelatedLink', 103 | fields=[ 104 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 105 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 106 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 107 | ('title', models.CharField(help_text='Link title', max_length=255)), 108 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 109 | ], 110 | options={ 111 | 'ordering': ['sort_order'], 112 | 'abstract': False, 113 | }, 114 | ), 115 | migrations.CreateModel( 116 | name='EventPageSpeaker', 117 | fields=[ 118 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 119 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 120 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 121 | ('first_name', models.CharField(blank=True, max_length=255, verbose_name='Name')), 122 | ('last_name', models.CharField(blank=True, max_length=255, verbose_name='Surname')), 123 | ('image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 124 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 125 | ], 126 | options={ 127 | 'ordering': ['sort_order'], 128 | 'abstract': False, 129 | }, 130 | ), 131 | migrations.CreateModel( 132 | name='FormField', 133 | fields=[ 134 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 135 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 136 | ('label', models.CharField(help_text='The label of the form field', max_length=255, verbose_name='label')), 137 | ('field_type', models.CharField(choices=[('singleline', 'Single line text'), ('multiline', 'Multi-line text'), ('email', 'Email'), ('number', 'Number'), ('url', 'URL'), ('checkbox', 'Checkbox'), ('checkboxes', 'Checkboxes'), ('dropdown', 'Drop down'), ('radio', 'Radio buttons'), ('date', 'Date'), ('datetime', 'Date/time')], max_length=16, verbose_name='field type')), 138 | ('required', models.BooleanField(default=True, verbose_name='required')), 139 | ('choices', models.CharField(blank=True, help_text='Comma separated list of choices. Only applicable in checkboxes, radio and dropdown.', max_length=512, verbose_name='choices')), 140 | ('default_value', models.CharField(blank=True, help_text='Default value. Comma separated values supported for checkboxes.', max_length=255, verbose_name='default value')), 141 | ('help_text', models.CharField(blank=True, max_length=255, verbose_name='help text')), 142 | ], 143 | options={ 144 | 'ordering': ['sort_order'], 145 | 'abstract': False, 146 | }, 147 | ), 148 | migrations.CreateModel( 149 | name='FormPage', 150 | fields=[ 151 | ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 152 | ('to_address', models.CharField(blank=True, help_text='Optional - form submissions will be emailed to this address', max_length=255, verbose_name='to address')), 153 | ('from_address', models.CharField(blank=True, max_length=255, verbose_name='from address')), 154 | ('subject', models.CharField(blank=True, max_length=255, verbose_name='subject')), 155 | ('intro', wagtail.wagtailcore.fields.RichTextField(blank=True)), 156 | ('thank_you_text', wagtail.wagtailcore.fields.RichTextField(blank=True)), 157 | ], 158 | options={ 159 | 'abstract': False, 160 | }, 161 | bases=('wagtailcore.page',), 162 | ), 163 | migrations.CreateModel( 164 | name='PersonPage', 165 | fields=[ 166 | ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 167 | ('telephone', models.CharField(blank=True, max_length=20)), 168 | ('email', models.EmailField(blank=True, max_length=254)), 169 | ('address_1', models.CharField(blank=True, max_length=255)), 170 | ('address_2', models.CharField(blank=True, max_length=255)), 171 | ('city', models.CharField(blank=True, max_length=255)), 172 | ('country', models.CharField(blank=True, max_length=255)), 173 | ('post_code', models.CharField(blank=True, max_length=10)), 174 | ('first_name', models.CharField(max_length=255)), 175 | ('last_name', models.CharField(max_length=255)), 176 | ('intro', wagtail.wagtailcore.fields.RichTextField(blank=True)), 177 | ('biography', wagtail.wagtailcore.fields.RichTextField(blank=True)), 178 | ('feed_image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 179 | ('image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 180 | ], 181 | options={ 182 | 'abstract': False, 183 | }, 184 | bases=('wagtailcore.page', models.Model), 185 | ), 186 | migrations.CreateModel( 187 | name='PersonPageRelatedLink', 188 | fields=[ 189 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 190 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 191 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 192 | ('title', models.CharField(help_text='Link title', max_length=255)), 193 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 194 | ('link_page', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page')), 195 | ('page', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_links', to='home.PersonPage')), 196 | ], 197 | options={ 198 | 'ordering': ['sort_order'], 199 | 'abstract': False, 200 | }, 201 | ), 202 | migrations.AddField( 203 | model_name='formfield', 204 | name='page', 205 | field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='form_fields', to='home.FormPage'), 206 | ), 207 | migrations.AddField( 208 | model_name='eventpagespeaker', 209 | name='link_page', 210 | field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page'), 211 | ), 212 | migrations.AddField( 213 | model_name='eventpagespeaker', 214 | name='page', 215 | field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='speakers', to='home.EventPage'), 216 | ), 217 | migrations.AddField( 218 | model_name='eventpagerelatedlink', 219 | name='link_page', 220 | field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page'), 221 | ), 222 | migrations.AddField( 223 | model_name='eventpagerelatedlink', 224 | name='page', 225 | field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_links', to='home.EventPage'), 226 | ), 227 | migrations.AddField( 228 | model_name='eventpagecarouselitem', 229 | name='link_page', 230 | field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page'), 231 | ), 232 | migrations.AddField( 233 | model_name='eventpagecarouselitem', 234 | name='page', 235 | field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='carousel_items', to='home.EventPage'), 236 | ), 237 | migrations.AddField( 238 | model_name='eventindexpagerelatedlink', 239 | name='link_page', 240 | field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page'), 241 | ), 242 | migrations.AddField( 243 | model_name='eventindexpagerelatedlink', 244 | name='page', 245 | field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_links', to='home.EventIndexPage'), 246 | ), 247 | ] 248 | -------------------------------------------------------------------------------- /home/migrations/0009_advert_advertplacement.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-01-22 11:07 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('wagtailcore', '0023_alter_page_revision_on_delete_behaviour'), 14 | ('home', '0008_auto_20160122_0954'), 15 | ] 16 | 17 | operations = [ 18 | migrations.CreateModel( 19 | name='Advert', 20 | fields=[ 21 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 22 | ('url', models.URLField(blank=True, null=True)), 23 | ('text', models.CharField(max_length=255)), 24 | ('page', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='adverts', to='wagtailcore.Page')), 25 | ], 26 | ), 27 | migrations.CreateModel( 28 | name='AdvertPlacement', 29 | fields=[ 30 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 31 | ('advert', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='+', to='home.Advert')), 32 | ('page', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='advert_placements', to='wagtailcore.Page')), 33 | ], 34 | ), 35 | ] 36 | -------------------------------------------------------------------------------- /home/migrations/0010_auto_20160122_1142.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-01-22 11:42 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | import django.db.models.deletion 7 | import home.models 8 | import modelcluster.contrib.taggit 9 | import modelcluster.fields 10 | import wagtail.wagtailcore.blocks 11 | import wagtail.wagtailcore.fields 12 | import wagtail.wagtaildocs.blocks 13 | import wagtail.wagtailimages.blocks 14 | 15 | 16 | class Migration(migrations.Migration): 17 | 18 | dependencies = [ 19 | ('wagtailcore', '0023_alter_page_revision_on_delete_behaviour'), 20 | ('taggit', '0002_auto_20150616_2121'), 21 | ('wagtailimages', '0010_change_on_delete_behaviour'), 22 | ('wagtaildocs', '0004_capitalizeverbose'), 23 | ('home', '0009_advert_advertplacement'), 24 | ] 25 | 26 | operations = [ 27 | migrations.CreateModel( 28 | name='BlogIndexPage', 29 | fields=[ 30 | ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 31 | ('intro', wagtail.wagtailcore.fields.RichTextField(blank=True)), 32 | ], 33 | options={ 34 | 'abstract': False, 35 | }, 36 | bases=('wagtailcore.page',), 37 | ), 38 | migrations.CreateModel( 39 | name='BlogIndexPageRelatedLink', 40 | fields=[ 41 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 42 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 43 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 44 | ('title', models.CharField(help_text='Link title', max_length=255)), 45 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 46 | ], 47 | options={ 48 | 'ordering': ['sort_order'], 49 | 'abstract': False, 50 | }, 51 | ), 52 | migrations.CreateModel( 53 | name='BlogPage', 54 | fields=[ 55 | ('page_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='wagtailcore.Page')), 56 | ('body', wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse'))])), 57 | ('date', models.DateField(verbose_name='Post date')), 58 | ('feed_image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 59 | ], 60 | options={ 61 | 'abstract': False, 62 | }, 63 | bases=('wagtailcore.page',), 64 | ), 65 | migrations.CreateModel( 66 | name='BlogPageCarouselItem', 67 | fields=[ 68 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 69 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 70 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 71 | ('embed_url', models.URLField(blank=True, verbose_name='Embed URL')), 72 | ('caption', models.CharField(blank=True, max_length=255)), 73 | ('image', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='wagtailimages.Image')), 74 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 75 | ('link_page', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page')), 76 | ('page', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='carousel_items', to='home.BlogPage')), 77 | ], 78 | options={ 79 | 'ordering': ['sort_order'], 80 | 'abstract': False, 81 | }, 82 | ), 83 | migrations.CreateModel( 84 | name='BlogPageRelatedLink', 85 | fields=[ 86 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 87 | ('sort_order', models.IntegerField(blank=True, editable=False, null=True)), 88 | ('link_external', models.URLField(blank=True, verbose_name='External link')), 89 | ('title', models.CharField(help_text='Link title', max_length=255)), 90 | ('link_document', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtaildocs.Document')), 91 | ('link_page', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page')), 92 | ('page', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_links', to='home.BlogPage')), 93 | ], 94 | options={ 95 | 'ordering': ['sort_order'], 96 | 'abstract': False, 97 | }, 98 | ), 99 | migrations.CreateModel( 100 | name='BlogPageTag', 101 | fields=[ 102 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 103 | ('content_object', modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='tagged_items', to='home.BlogPage')), 104 | ('tag', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='home_blogpagetag_items', to='taggit.Tag')), 105 | ], 106 | options={ 107 | 'abstract': False, 108 | }, 109 | ), 110 | migrations.AddField( 111 | model_name='blogpage', 112 | name='tags', 113 | field=modelcluster.contrib.taggit.ClusterTaggableManager(blank=True, help_text='A comma-separated list of tags.', through='home.BlogPageTag', to='taggit.Tag', verbose_name='Tags'), 114 | ), 115 | migrations.AddField( 116 | model_name='blogindexpagerelatedlink', 117 | name='link_page', 118 | field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Page'), 119 | ), 120 | migrations.AddField( 121 | model_name='blogindexpagerelatedlink', 122 | name='page', 123 | field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='related_links', to='home.BlogIndexPage'), 124 | ), 125 | ] 126 | -------------------------------------------------------------------------------- /home/migrations/0011_auto_20160307_0122.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-03-07 01:22 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import home.models 7 | import wagtail.wagtailcore.blocks 8 | import wagtail.wagtailcore.fields 9 | import wagtail.wagtaildocs.blocks 10 | import wagtail.wagtailimages.blocks 11 | 12 | 13 | class Migration(migrations.Migration): 14 | 15 | dependencies = [ 16 | ('home', '0010_auto_20160122_1142'), 17 | ] 18 | 19 | operations = [ 20 | migrations.AlterField( 21 | model_name='blogpage', 22 | name='body', 23 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock())], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock())], icon='arrow-right', label='Right column content'))]))]), 24 | ), 25 | migrations.AlterField( 26 | model_name='homepage', 27 | name='body', 28 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock())], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock())], icon='arrow-right', label='Right column content'))]))]), 29 | ), 30 | ] 31 | -------------------------------------------------------------------------------- /home/migrations/0012_auto_20160307_0128.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-03-07 01:28 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import home.models 7 | import wagtail.wagtailcore.blocks 8 | import wagtail.wagtailcore.fields 9 | import wagtail.wagtaildocs.blocks 10 | import wagtail.wagtailimages.blocks 11 | 12 | 13 | class Migration(migrations.Migration): 14 | 15 | dependencies = [ 16 | ('home', '0011_auto_20160307_0122'), 17 | ] 18 | 19 | operations = [ 20 | migrations.AlterField( 21 | model_name='blogpage', 22 | name='body', 23 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock())], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock())], icon='arrow-right', label='Right column content'))]))]), 24 | ), 25 | migrations.AlterField( 26 | model_name='homepage', 27 | name='body', 28 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock())], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock())], icon='arrow-right', label='Right column content'))]))]), 29 | ), 30 | ] 31 | -------------------------------------------------------------------------------- /home/migrations/0013_auto_20160307_0155.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-03-07 01:55 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import home.models 7 | import wagtail.wagtailcore.blocks 8 | import wagtail.wagtailcore.fields 9 | import wagtail.wagtaildocs.blocks 10 | import wagtail.wagtailembeds.blocks 11 | import wagtail.wagtailimages.blocks 12 | 13 | 14 | class Migration(migrations.Migration): 15 | 16 | dependencies = [ 17 | ('home', '0012_auto_20160307_0128'), 18 | ] 19 | 20 | operations = [ 21 | migrations.AlterField( 22 | model_name='blogpage', 23 | name='body', 24 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 25 | ), 26 | migrations.AlterField( 27 | model_name='homepage', 28 | name='body', 29 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 30 | ), 31 | ] 32 | -------------------------------------------------------------------------------- /home/migrations/0014_auto_20160422_0643.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-22 06:43 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import home.models 7 | import wagtail.wagtailcore.blocks 8 | import wagtail.wagtailcore.fields 9 | import wagtail.wagtaildocs.blocks 10 | import wagtail.wagtailembeds.blocks 11 | import wagtail.wagtailimages.blocks 12 | 13 | 14 | class Migration(migrations.Migration): 15 | 16 | dependencies = [ 17 | ('home', '0013_auto_20160307_0155'), 18 | ] 19 | 20 | operations = [ 21 | migrations.AlterField( 22 | model_name='blogpage', 23 | name='body', 24 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'one_column', wagtail.wagtailcore.blocks.StructBlock([(b'back_image', wagtail.wagtailimages.blocks.ImageChooserBlock(blank=True, null=True)), (b'background_size', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('auto', 'Auto'), ('cover', 'Cover'), ('50%', 'Small'), ('200%', 'Large')], default='auto')), (b'background_x_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'background_y_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'text_align', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right'), ('center', 'Centre')], default='center')), (b'one_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock())], icon='arrow-left', label='Parallax content'))])), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 25 | ), 26 | migrations.AlterField( 27 | model_name='homepage', 28 | name='body', 29 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'one_column', wagtail.wagtailcore.blocks.StructBlock([(b'back_image', wagtail.wagtailimages.blocks.ImageChooserBlock(blank=True, null=True)), (b'background_size', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('auto', 'Auto'), ('cover', 'Cover'), ('50%', 'Small'), ('200%', 'Large')], default='auto')), (b'background_x_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'background_y_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'text_align', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right'), ('center', 'Centre')], default='center')), (b'one_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock())], icon='arrow-left', label='Parallax content'))])), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 30 | ), 31 | ] 32 | -------------------------------------------------------------------------------- /home/migrations/0015_auto_20160422_0647.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-22 06:47 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import home.models 7 | import wagtail.wagtailcore.blocks 8 | import wagtail.wagtailcore.fields 9 | import wagtail.wagtaildocs.blocks 10 | import wagtail.wagtailembeds.blocks 11 | import wagtail.wagtailimages.blocks 12 | 13 | 14 | class Migration(migrations.Migration): 15 | 16 | dependencies = [ 17 | ('home', '0014_auto_20160422_0643'), 18 | ] 19 | 20 | operations = [ 21 | migrations.AlterField( 22 | model_name='blogpage', 23 | name='body', 24 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'one_column', wagtail.wagtailcore.blocks.StructBlock([(b'back_image', wagtail.wagtailimages.blocks.ImageChooserBlock(blank=True)), (b'background_size', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('auto', 'Auto'), ('cover', 'Cover'), ('50%', 'Small'), ('200%', 'Large')], default='auto')), (b'background_x_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'background_y_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'text_align', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right'), ('center', 'Centre')], default='center')), (b'one_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock())], icon='arrow-left', label='Parallax content'))])), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 25 | ), 26 | migrations.AlterField( 27 | model_name='homepage', 28 | name='body', 29 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'one_column', wagtail.wagtailcore.blocks.StructBlock([(b'back_image', wagtail.wagtailimages.blocks.ImageChooserBlock(blank=True)), (b'background_size', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('auto', 'Auto'), ('cover', 'Cover'), ('50%', 'Small'), ('200%', 'Large')], default='auto')), (b'background_x_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'background_y_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'text_align', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right'), ('center', 'Centre')], default='center')), (b'one_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock())], icon='arrow-left', label='Parallax content'))])), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 30 | ), 31 | ] 32 | -------------------------------------------------------------------------------- /home/migrations/0016_blogpage_intro.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-22 11:00 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import wagtail.wagtailcore.fields 7 | 8 | 9 | class Migration(migrations.Migration): 10 | 11 | dependencies = [ 12 | ('home', '0015_auto_20160422_0647'), 13 | ] 14 | 15 | operations = [ 16 | migrations.AddField( 17 | model_name='blogpage', 18 | name='intro', 19 | field=wagtail.wagtailcore.fields.RichTextField(blank=True), 20 | ), 21 | ] 22 | -------------------------------------------------------------------------------- /home/migrations/0017_auto_20160422_1104.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-22 11:04 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import home.models 7 | import wagtail.wagtailcore.blocks 8 | import wagtail.wagtailcore.fields 9 | import wagtail.wagtaildocs.blocks 10 | import wagtail.wagtailembeds.blocks 11 | import wagtail.wagtailimages.blocks 12 | 13 | 14 | class Migration(migrations.Migration): 15 | 16 | dependencies = [ 17 | ('home', '0016_blogpage_intro'), 18 | ] 19 | 20 | operations = [ 21 | migrations.AlterField( 22 | model_name='standardpage', 23 | name='body', 24 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'one_column', wagtail.wagtailcore.blocks.StructBlock([(b'back_image', wagtail.wagtailimages.blocks.ImageChooserBlock(blank=True)), (b'background_size', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('auto', 'Auto'), ('cover', 'Cover'), ('50%', 'Small'), ('200%', 'Large')], default='auto')), (b'background_x_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'background_y_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'text_align', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right'), ('center', 'Centre')], default='center')), (b'one_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock())], icon='arrow-left', label='Parallax content'))])), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 25 | ), 26 | ] 27 | -------------------------------------------------------------------------------- /home/migrations/0018_auto_20160422_1106.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-22 11:06 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import wagtail.wagtailcore.fields 7 | 8 | 9 | class Migration(migrations.Migration): 10 | 11 | dependencies = [ 12 | ('home', '0017_auto_20160422_1104'), 13 | ] 14 | 15 | operations = [ 16 | migrations.AlterField( 17 | model_name='standardpage', 18 | name='body', 19 | field=wagtail.wagtailcore.fields.RichTextField(blank=True), 20 | ), 21 | ] 22 | -------------------------------------------------------------------------------- /home/migrations/0019_contactpage_intro.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-22 12:43 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import wagtail.wagtailcore.fields 7 | 8 | 9 | class Migration(migrations.Migration): 10 | 11 | dependencies = [ 12 | ('home', '0018_auto_20160422_1106'), 13 | ] 14 | 15 | operations = [ 16 | migrations.AddField( 17 | model_name='contactpage', 18 | name='intro', 19 | field=wagtail.wagtailcore.fields.RichTextField(blank=True), 20 | ), 21 | ] 22 | -------------------------------------------------------------------------------- /home/migrations/0020_formpage_page.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-23 04:32 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('home', '0019_contactpage_intro'), 14 | ] 15 | 16 | operations = [ 17 | migrations.AddField( 18 | model_name='formpage', 19 | name='page', 20 | field=modelcluster.fields.ParentalKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='form_items', to='home.ContactPage'), 21 | ), 22 | ] 23 | -------------------------------------------------------------------------------- /home/migrations/0021_auto_20160423_0434.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-23 04:34 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('home', '0020_formpage_page'), 14 | ] 15 | 16 | operations = [ 17 | migrations.AlterField( 18 | model_name='formpage', 19 | name='page', 20 | field=modelcluster.fields.ParentalKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='form_items', to='home.ContactPage'), 21 | ), 22 | ] 23 | -------------------------------------------------------------------------------- /home/migrations/0022_auto_20160423_0437.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-23 04:37 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('home', '0021_auto_20160423_0434'), 14 | ] 15 | 16 | operations = [ 17 | migrations.RemoveField( 18 | model_name='formpage', 19 | name='page', 20 | ), 21 | migrations.AlterField( 22 | model_name='formfield', 23 | name='page', 24 | field=modelcluster.fields.ParentalKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='form_items', to='home.ContactPage'), 25 | ), 26 | ] 27 | -------------------------------------------------------------------------------- /home/migrations/0023_auto_20160423_0641.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-23 06:41 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('home', '0022_auto_20160423_0437'), 14 | ] 15 | 16 | operations = [ 17 | migrations.AlterField( 18 | model_name='formfield', 19 | name='page', 20 | field=modelcluster.fields.ParentalKey(default=True, on_delete=django.db.models.deletion.CASCADE, related_name='form_fields', to='home.FormPage'), 21 | preserve_default=False, 22 | ), 23 | ] 24 | -------------------------------------------------------------------------------- /home/migrations/0024_auto_20160425_0424.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-25 04:24 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import home.models 7 | import wagtail.wagtailcore.blocks 8 | import wagtail.wagtailcore.fields 9 | import wagtail.wagtaildocs.blocks 10 | import wagtail.wagtailembeds.blocks 11 | import wagtail.wagtailimages.blocks 12 | 13 | 14 | class Migration(migrations.Migration): 15 | 16 | dependencies = [ 17 | ('home', '0023_auto_20160423_0641'), 18 | ] 19 | 20 | operations = [ 21 | migrations.AlterField( 22 | model_name='standardpage', 23 | name='body', 24 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'one_column', wagtail.wagtailcore.blocks.StructBlock([(b'back_image', wagtail.wagtailimages.blocks.ImageChooserBlock(blank=True)), (b'background_size', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('auto', 'Auto'), ('cover', 'Cover'), ('50%', 'Small'), ('200%', 'Large')], default='auto')), (b'background_x_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'background_y_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'text_align', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right'), ('center', 'Centre')], default='center')), (b'one_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock())], icon='arrow-left', label='Parallax content'))])), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 25 | ), 26 | ] 27 | -------------------------------------------------------------------------------- /home/migrations/0025_contactpage_page.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-25 07:06 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('home', '0024_auto_20160425_0424'), 14 | ] 15 | 16 | operations = [ 17 | migrations.AddField( 18 | model_name='contactpage', 19 | name='page', 20 | field=modelcluster.fields.ParentalKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='contact_form', to='home.FormPage'), 21 | ), 22 | ] 23 | -------------------------------------------------------------------------------- /home/migrations/0026_auto_20160425_0713.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-25 07:13 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('home', '0025_contactpage_page'), 14 | ] 15 | 16 | operations = [ 17 | migrations.AlterField( 18 | model_name='formfield', 19 | name='page', 20 | field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='contact_form', to='home.ContactPage'), 21 | ), 22 | ] 23 | -------------------------------------------------------------------------------- /home/migrations/0027_contactpage_thank_you_text.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-25 07:15 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import wagtail.wagtailcore.fields 7 | 8 | 9 | class Migration(migrations.Migration): 10 | 11 | dependencies = [ 12 | ('home', '0026_auto_20160425_0713'), 13 | ] 14 | 15 | operations = [ 16 | migrations.AddField( 17 | model_name='contactpage', 18 | name='thank_you_text', 19 | field=wagtail.wagtailcore.fields.RichTextField(blank=True), 20 | ), 21 | ] 22 | -------------------------------------------------------------------------------- /home/migrations/0028_auto_20160425_0719.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-25 07:19 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations, models 6 | import django.db.models.deletion 7 | 8 | 9 | class Migration(migrations.Migration): 10 | 11 | dependencies = [ 12 | ('home', '0027_contactpage_thank_you_text'), 13 | ] 14 | 15 | operations = [ 16 | migrations.RemoveField( 17 | model_name='contactpage', 18 | name='page', 19 | ), 20 | migrations.AddField( 21 | model_name='contactpage', 22 | name='form', 23 | field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='contact_form', to='home.FormPage'), 24 | ), 25 | ] 26 | -------------------------------------------------------------------------------- /home/migrations/0029_auto_20160425_1336.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.1 on 2016-04-25 13:36 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import django.db.models.deletion 7 | import modelcluster.fields 8 | 9 | 10 | class Migration(migrations.Migration): 11 | 12 | dependencies = [ 13 | ('home', '0028_auto_20160425_0719'), 14 | ] 15 | 16 | operations = [ 17 | migrations.RemoveField( 18 | model_name='contactpage', 19 | name='form', 20 | ), 21 | migrations.RemoveField( 22 | model_name='contactpage', 23 | name='thank_you_text', 24 | ), 25 | migrations.AlterField( 26 | model_name='formfield', 27 | name='page', 28 | field=modelcluster.fields.ParentalKey(on_delete=django.db.models.deletion.CASCADE, related_name='form_fields', to='home.FormPage'), 29 | ), 30 | ] 31 | -------------------------------------------------------------------------------- /home/migrations/0031_auto_20160603_0945.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # Generated by Django 1.9.5 on 2016-06-03 09:45 3 | from __future__ import unicode_literals 4 | 5 | from django.db import migrations 6 | import home.models 7 | import wagtail.wagtailcore.blocks 8 | import wagtail.wagtailcore.fields 9 | import wagtail.wagtaildocs.blocks 10 | import wagtail.wagtailembeds.blocks 11 | import wagtail.wagtailimages.blocks 12 | 13 | 14 | class Migration(migrations.Migration): 15 | 16 | dependencies = [ 17 | ('home', '0030_auto_20160517_0526'), 18 | ] 19 | 20 | operations = [ 21 | migrations.AlterField( 22 | model_name='blogpage', 23 | name='body', 24 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'one_column', wagtail.wagtailcore.blocks.StructBlock([(b'back_image', wagtail.wagtailimages.blocks.ImageChooserBlock(blank=True)), (b'background_size', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('auto', 'Auto'), ('cover', 'Cover'), ('50%', 'Small'), ('200%', 'Large')], default='auto')), (b'background_x_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'background_y_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'text_align', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right'), ('center', 'Centre')], default='center')), (b'one_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock())], icon='arrow-left', label='Parallax content'))])), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 25 | ), 26 | migrations.AlterField( 27 | model_name='homepage', 28 | name='body', 29 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'one_column', wagtail.wagtailcore.blocks.StructBlock([(b'back_image', wagtail.wagtailimages.blocks.ImageChooserBlock(blank=True)), (b'background_size', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('auto', 'Auto'), ('cover', 'Cover'), ('50%', 'Small'), ('200%', 'Large')], default='auto')), (b'background_x_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'background_y_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'text_align', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right'), ('center', 'Centre')], default='center')), (b'one_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock())], icon='arrow-left', label='Parallax content'))])), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 30 | ), 31 | migrations.AlterField( 32 | model_name='standardpage', 33 | name='body', 34 | field=wagtail.wagtailcore.fields.StreamField([(b'h2', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h3', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'h4', wagtail.wagtailcore.blocks.CharBlock(classname='title', icon='title')), (b'intro', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'paragraph', wagtail.wagtailcore.blocks.RichTextBlock(icon='pilcrow')), (b'aligned_image', wagtail.wagtailcore.blocks.StructBlock([(b'image', wagtail.wagtailimages.blocks.ImageChooserBlock()), (b'caption', wagtail.wagtailcore.blocks.RichTextBlock()), (b'alignment', home.models.ImageFormatChoiceBlock())], icon='image', label='Aligned image')), (b'pullquote', wagtail.wagtailcore.blocks.StructBlock([(b'quote', wagtail.wagtailcore.blocks.TextBlock('quote title')), (b'attribution', wagtail.wagtailcore.blocks.CharBlock())])), (b'aligned_html', wagtail.wagtailcore.blocks.StructBlock([(b'html', wagtail.wagtailcore.blocks.RawHTMLBlock()), (b'alignment', home.models.HTMLAlignmentChoiceBlock())], icon='code', label='Raw HTML')), (b'document', wagtail.wagtaildocs.blocks.DocumentChooserBlock(icon='doc-full-inverse')), (b'one_column', wagtail.wagtailcore.blocks.StructBlock([(b'back_image', wagtail.wagtailimages.blocks.ImageChooserBlock(blank=True)), (b'background_size', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('auto', 'Auto'), ('cover', 'Cover'), ('50%', 'Small'), ('200%', 'Large')], default='auto')), (b'background_x_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'background_y_position', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('10%', '10%'), ('20%', '20%'), ('30%', '30%'), ('40%', '40%'), ('50%', '50%'), ('60%', '60%'), ('70%', '70%'), ('80%', '80%'), ('90%', '90%'), ('100%', '100%')], default='50%')), (b'text_align', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('left', 'Left'), ('right', 'Right'), ('center', 'Centre')], default='center')), (b'one_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock())], icon='arrow-left', label='Parallax content'))])), (b'two_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'three_columns', wagtail.wagtailcore.blocks.StructBlock([(b'background', wagtail.wagtailcore.blocks.ChoiceBlock(choices=[('white', 'White'), ('black', 'Black')], default='white')), (b'left_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-left', label='Left column content')), (b'center_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Center column content')), (b'right_column', wagtail.wagtailcore.blocks.StreamBlock([('heading', wagtail.wagtailcore.blocks.CharBlock(classname='full title')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock()), ('image', wagtail.wagtailimages.blocks.ImageChooserBlock()), ('embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock()), ('google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))], icon='arrow-right', label='Right column content'))])), (b'embedded_video', wagtail.wagtailembeds.blocks.EmbedBlock(icon='media')), (b'google_map', wagtail.wagtailcore.blocks.StructBlock([(b'map_long', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_lat', wagtail.wagtailcore.blocks.CharBlock(max_length=255, required=True)), (b'map_zoom_level', wagtail.wagtailcore.blocks.CharBlock(default=14, max_length=3, required=True))]))]), 35 | ), 36 | ] 37 | -------------------------------------------------------------------------------- /home/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nescode/wagtailcmsdemo/b9cf9447f41d5464610bcfd17e13112a73f9cdd5/home/migrations/__init__.py -------------------------------------------------------------------------------- /home/templates/home/blog_index_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load wagtailcore_tags %} 3 | 4 | {% block content %} 5 |
6 | 7 | {% include "home/includes/intro.html" with intro=self.intro only %} 8 | 9 | {% if request.GET.tag|length %} 10 |

Showing posts tagged as {{ request.GET.tag|safe }} Show all

11 | {% endif %} 12 | 13 |
14 | {# Uses serve method defined in models.py - allows for paging if required #} 15 | {# See also standard index for creating a listing with a tag #} 16 | {% for blog in blogs %} 17 | {% include "home/includes/blog_list_item.html" %} 18 | {% empty %} 19 | No blogs found 20 | {% endfor %} 21 |
22 | 23 | {# Pagination - uses django.core.paginator #} 24 | {# Append any other url query string variables to the next and previous links - allows tag to be passed through #} 25 |
26 | 31 |
32 | Page {{ blogs.number }} of {{ blogs.paginator.num_pages }} 33 |
34 | 39 |
40 | 41 | {% include "home/includes/related_links.html" with related_links=self.related_links.all only %} 42 |
43 | {% endblock %} 44 | -------------------------------------------------------------------------------- /home/templates/home/blog_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load wagtailcore_tags %} 3 | 4 | 5 | {% block heading %} 6 | 23 | {% endblock %} 24 | 25 | {% block content %} 26 | 27 |
28 | {% include "home/includes/intro.html" with intro=self.intro only %} 29 | 30 | {% include "home/includes/carousel.html" with carousel_items=self.carousel_items.all only %} 31 | 32 | {% if self.body %} 33 |
34 | {% include "home/includes/streamfield.html" with content=self.body %} 35 |
36 |
37 | {% endif %} 38 | 39 | 40 | {% endblock %} 41 | -------------------------------------------------------------------------------- /home/templates/home/breadcrumbs.html: -------------------------------------------------------------------------------- 1 | 2 | {% load wagtailcore_tags %} 3 | 4 | 5 | {% if ancestors %} 6 | 16 | {% endif %} 17 | 18 | 19 | -------------------------------------------------------------------------------- /home/templates/home/contact_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load crispy_forms_tags %} 3 | {% load home_tags wagtailcore_tags %} 4 | 5 | {% block content %} 6 |
7 |
8 | {% include "home/includes/intro.html" with intro=self.intro only %} 9 | {% if self.body %} 10 |
11 | {{ self.body|richtext }} 12 |
13 | {% endif %} 14 | 15 |
16 |
17 | {% include "home/includes/contact.html" with contact=self only %} 18 |
19 |
20 | {#{% if self.post_code %}#} 21 | 22 | {# {% get_google_maps_key as google_maps_key %} #} 23 | 24 | 25 | 26 | 27 | {#{% endif %}#} 28 | {% endblock %} 29 | -------------------------------------------------------------------------------- /home/templates/home/event_index_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load wagtailcore_tags wagtailimages_tags %} 3 | 4 | {% block content %} 5 | {% include "home/includes/intro.html" with intro=self.intro only %} 6 | 7 | {# Uses method defined in models.py to retrieve all upcoming events #} 8 | {# See also standard index for creating a listing with a tag #} 9 | {% with self.events.all as events %} 10 | {% if events %} 11 |
12 | {% for event in events %} 13 | {% include "home/includes/event_list_item.html" %} 14 | {% endfor %} 15 |
16 | {% endif %} 17 | {% endwith %} 18 | 19 | {% include "home/includes/related_links.html" with related_links=self.related_links.all only %} 20 | {% endblock %} 21 | -------------------------------------------------------------------------------- /home/templates/home/event_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load home_tags wagtailcore_tags wagtailimages_tags %} 3 | 4 | {% block content %} 5 |
6 |

7 | {{ self.date_from }}{% if self.date_to %} to {{ self.date_to }}{% endif %} 8 | {% if self.time_from %}{{ self.time_from|time }}{% endif %}{% if self.time_to %} to {{ self.time_to|time }}{% endif %} 9 |

10 | {% if self.location %}

Location: {{ self.location }}

{% endif %} 11 | {% if self.audience %} 12 |

Audience: 13 | {# From EVENT_AUDIENCE_CHOICES in models.py #} 14 | {{ self.get_audience_display }}

15 | {% endif %} 16 | {% if self.cost %} 17 |

Cost: {{ self.cost|safe }}

18 | {% endif %} 19 | 20 | {% if self.signup_link %} 21 |

Sign up: {{ self.signup_link }}

22 | {% endif %} 23 | 24 |

25 | 26 | Add to calendar 27 | 28 |

29 |
30 | 31 | {% include "home/includes/carousel.html" with carousel_items=self.carousel_items.all only %} 32 | 33 | {% if self.body %} 34 |
35 | {{ self.body|richtext }} 36 |
37 | {% endif %} 38 | 39 | {% with self.speakers.all as speakers %} 40 | {% if speakers %} 41 | 42 | {% for speaker in speakers %} 43 | {% cycle '
' '' '' %} {# Open row div before first speaker then every 3 loops #} 44 |
45 | 46 | {% if speaker.link %} 47 | 48 | {% endif %} 49 | 50 | {# Speaker name_display fields concatenates first_name and last_name fields #} 51 |

{{ speaker.name_display }}

52 | {% if speaker.image %} 53 |
{% image speaker.image width-200 %}
54 | {% endif %} 55 | 56 | {% if speaker.link %} 57 |
58 | {% endif %} 59 |
60 | {% cycle '' '' '
' %} {# Close row div before every 3rd speaker #} 61 | {% endfor %} 62 | {% if not speakers|length|divisibleby:'3' %}{% endif %} {# Last close of row div if speakers list not exactly divisble by 3 #} 63 | {% endif %} 64 | {% endwith %} 65 | 66 | 67 | {% include "home/includes/related_links.html" with related_links=self.related_links.all only %} 68 | {% endblock %} 69 | -------------------------------------------------------------------------------- /home/templates/home/form_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load wagtailcore_tags %} 3 | 4 | {% load crispy_forms_tags %} 5 | 6 | {% block content %} 7 | 8 |
9 | 10 | {% include "home/includes/intro.html" with intro=self.intro only %} 11 | 12 |
13 | {% csrf_token %} 14 | {{ form|crispy }} 15 | 16 |
17 |
18 | {% endblock %} 19 | -------------------------------------------------------------------------------- /home/templates/home/form_page_landing.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load wagtailcore_tags %} 3 | 4 | {% block content %} 5 | {{ self.thank_you_text|richtext }} 6 | {% endblock %} 7 | -------------------------------------------------------------------------------- /home/templates/home/home_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% load wagtailcore_tags %} 4 | 5 | {% block body_class %}template-homepage{% endblock %} 6 | 7 | {% block content %} 8 | 9 | {% include "home/includes/carousel.html" with carousel_items=self.carousel_items.all only %} 10 | 11 | {% include "home/includes/streamfield.html" with content=self.body %} 12 | {% endblock %} 13 | -------------------------------------------------------------------------------- /home/templates/home/includes/blog_list_item.html: -------------------------------------------------------------------------------- 1 | {% load wagtailcore_tags wagtailimages_tags %} 2 | 3 | {# Individual blog item in a list - used on blog index and home page #} 4 | 5 |
6 | {% if blog.feed_image %} 7 |
8 | {% image blog.feed_image width-200 as img %} 9 | 10 |
11 | {% endif %} 12 |
13 |

{{ blog.title }}

14 |

{{ blog.date }}

15 | {% if blog.search_description %} 16 |

{{ blog.search_description }}

17 | {% endif %} 18 |
19 |
20 |
21 | -------------------------------------------------------------------------------- /home/templates/home/includes/carousel.html: -------------------------------------------------------------------------------- 1 | {% load wagtailimages_tags wagtailembeds_tags %} 2 | 3 | 4 | {% if carousel_items %} 5 | 51 | {% endif %} 52 | -------------------------------------------------------------------------------- /home/templates/home/includes/contact.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 | {% if contact.address_1 %} 6 |
Nescode Technologies Private Limited
7 |
{{ contact.address_1 }} {% if contact.address_2 %} {{ contact.address_2 }}{% endif %}
8 | {% endif %} 9 | 10 | {% if contact.city %} 11 | 12 |
{{ contact.city }}
13 | {% endif %} 14 | 15 | {% if contact.country %} 16 |
Country
17 |
{{ contact.country }}
18 | {% endif %} 19 | 20 | {% if contact.post_code %} 21 | 22 |
{{ contact.post_code }}
23 | {% endif %} 24 |
25 |
26 | {% if contact.telephone %} 27 |
Telephone
28 |
{{ contact.telephone }}
29 | {% endif %} 30 | 31 | {% if contact.email %} 32 |
Email
33 |
{{ contact.email }}
34 | {% endif %} 35 |
36 |
37 |
38 |
39 |
40 | -------------------------------------------------------------------------------- /home/templates/home/includes/event_list_item.html: -------------------------------------------------------------------------------- 1 | {% load wagtailcore_tags wagtailimages_tags %} 2 | 3 | {# Individual event item in a list - used on event index and home page #} 4 | 5 |
6 | {% if event.feed_image %} 7 |
8 | {% image event.feed_image width-200 as img %} 9 | 10 |
11 | {% endif %} 12 |
13 |

{{ event.title }}

14 |

{{ event.date_from }}{% if event.date_to %} to {{ event.date_to }}{% endif %}

15 | {% if event.search_description %} 16 |

{{ event.search_description }}

17 | {% endif %} 18 |
19 |
20 |
21 | -------------------------------------------------------------------------------- /home/templates/home/includes/form.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load wagtailcore_tags %} 3 | 4 | {% load crispy_forms_tags %} 5 | 6 | {% block content %} 7 | 8 |
9 | 10 | {% include "home/includes/intro.html" with intro=self.intro only %} 11 | 12 |
13 | {% csrf_token %} 14 | {{ form|crispy }} 15 | 16 |
17 |
18 | {% endblock %} 19 | -------------------------------------------------------------------------------- /home/templates/home/includes/google_map.html: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 |
15 | -------------------------------------------------------------------------------- /home/templates/home/includes/intro.html: -------------------------------------------------------------------------------- 1 | {% load wagtailcore_tags %} 2 | 3 | {% if intro %} 4 |
5 | {{ intro|richtext }} 6 |
7 | {% endif %} 8 | -------------------------------------------------------------------------------- /home/templates/home/includes/one_column_block.html: -------------------------------------------------------------------------------- 1 | {% load wagtailimages_tags wagtailcore_tags %} 2 | 3 | {# {% image self.back_image width-2000 as back_photo %} #} 4 | 5 | 6 | 16 |
17 | 18 |
19 |
20 | {% include "home/includes/page_blocks.html" with blocks=self.one_column only %} 21 |
22 |
23 | 24 |
25 | -------------------------------------------------------------------------------- /home/templates/home/includes/page_blocks.html: -------------------------------------------------------------------------------- 1 | {% load wagtailcore_tags wagtailimages_tags %} 2 | 3 | {% if blocks %} 4 | 5 | {% for block in blocks %} 6 | {% if block.block_type == 'heading' %} 7 |

{{ block.value }}

8 | {% elif block.block_type == 'image' %} 9 | {% image block.value width-900 class="img-responsive" %} 10 | {% else %} 11 |
12 | {{ block }} 13 |
14 | {% endif %} 15 | {% endfor %} 16 | 17 | {% endif %} 18 | -------------------------------------------------------------------------------- /home/templates/home/includes/person_list_item.html: -------------------------------------------------------------------------------- 1 | {% load wagtailcore_tags wagtailimages_tags %} 2 | 3 | {# Individual person item in a list - used on people index and home page #} 4 | 5 |
6 | {% if person.feed_image %} 7 |
8 | {% image person.feed_image width-200 as img %} 9 | 10 |
11 | {% endif %} 12 |
13 |

{{ person.first_name }} {{ person.last_name }}

14 | {% if person.search_description %} 15 |

{{ person.search_description }}

16 | {% endif %} 17 |
18 |
19 |
20 | -------------------------------------------------------------------------------- /home/templates/home/includes/related_links.html: -------------------------------------------------------------------------------- 1 | {% if related_links %} 2 | 3 |
4 |
5 | 7 |

RELATED POST AND ARTICLE

8 | 9 | 10 | 15 | 17 |
18 |
19 | {% endif %} 20 | -------------------------------------------------------------------------------- /home/templates/home/includes/search_box.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 | 6 |
7 | 10 |
11 |
12 |
13 |
14 |
15 | -------------------------------------------------------------------------------- /home/templates/home/includes/streamfield.html: -------------------------------------------------------------------------------- 1 | 2 | {% load wagtailcore_tags wagtailimages_tags %} 3 | 4 |
5 | {% for child in content %} 6 | {% if child.block_type == 'h2' %} 7 |

{{ child }}

8 | {% elif child.block_type == 'h3' %} 9 |

{{ child }}

10 | {% elif child.block_type == 'h4' %} 11 |

{{ child }}

12 | {% elif child.block_type == 'intro' %} 13 |
{{ child }}
14 | {% elif child.block_type == 'aligned_html' %} 15 | {% if child.value.alignment == 'normal' %} 16 | {{ child.value.bound_blocks.html.render }} 17 | {% else %} 18 | {{ child.value.bound_blocks.html.render }} 19 | {% endif %} 20 | {% elif child.block_type == 'pullquote' %} 21 |
22 | {{ child.value.quote }} 23 | {% if child.value.attribution %}- {{ child.value.attribution }}{% endif %} 24 |
25 | {% elif child.block_type == 'paragraph' %} 26 | {{ child.value|richtext }} 27 | {% elif child.block_type == 'aligned_image' %} 28 |
29 | {% if child.value.alignment == "left" or child.value.alignment == "right" %} 30 | {% image child.value.image width-300 as theimage %} 31 | {% else %} 32 | {% image child.value.image width-1280 as theimage %} 33 | {% endif %} 34 | 35 | {{ theimage.alt }} 36 | 37 | {% if child.value.caption %} 38 |
39 | {{ child.value.caption|richtext }} 40 |
41 | {% endif %} 42 |
43 | {% else %} 44 | {{ child }} 45 | {% endif %} 46 | {% endfor %} 47 |
48 | -------------------------------------------------------------------------------- /home/templates/home/includes/three_column_block.html: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 | {% include "home/includes/page_blocks.html" with blocks=self.left_column only %} 5 |
6 |
7 | {% include "home/includes/page_blocks.html" with blocks=self.right_column only %} 8 |
9 |
10 | {% include "home/includes/page_blocks.html" with blocks=self.right_column only %} 11 |
12 | 13 |
14 | -------------------------------------------------------------------------------- /home/templates/home/includes/two_column_block.html: -------------------------------------------------------------------------------- 1 |
2 | 3 |
4 | {% include "home/includes/page_blocks.html" with blocks=self.left_column only %} 5 |
6 |
7 | {% include "home/includes/page_blocks.html" with blocks=self.right_column only %} 8 |
9 | 10 |
11 | -------------------------------------------------------------------------------- /home/templates/home/person_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load wagtailcore_tags wagtailimages_tags %} 3 | 4 | {% block content %} 5 | {% include "home/includes/intro.html" with intro=self.intro only %} 6 | 7 | {% if self.image %} 8 | {% image self.image width-300 class="img-thumbnail" %} 9 | {% endif %} 10 | 11 | {% if self.biography %} 12 | 13 | {% endif %} 14 | 15 | {% if self.body %} 16 |
17 | {{ self.body|richtext }} 18 |
19 | {% endif %} 20 | 21 | {% include "home/includes/contact.html" with contact=self only %} 22 | 23 | {% include "home/includes/related_links.html" with related_links=self.related_links.all only %} 24 | {% endblock %} 25 | -------------------------------------------------------------------------------- /home/templates/home/search_results.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load wagtailcore_tags %} 3 | {% load crispy_forms_tags %} 4 | 5 | {% block title %}Search{% if search_results %} results{% endif %}{% endblock %} 6 | 7 | {% block heading %} 8 |

9 | Search results{% if request.GET.query %} for “{{ request.GET.query }}”{% endif %} 10 |

11 | {% endblock %} 12 | 13 | 14 | {% block content %} 15 | {% if search_picks %} 16 |
17 |

Editors picks

18 | 26 |
27 | {% endif %} 28 | 29 | {% if search_results %} 30 | 40 | {% elif search_query %} 41 | No results found 42 | {% else %} 43 | You didn’t search anything! 44 | {% endif %} 45 | {% endblock %} 46 | -------------------------------------------------------------------------------- /home/templates/home/standard_index_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load wagtailcore_tags home_tags %} 3 | 4 | {% block content %} 5 | {% include "home/includes/intro.html" with intro=self.intro only %} 6 | 7 | {# Listing created with a tag - allows filtering by whether the page is live #} 8 | {# See also the blog index or events index where the listing is created from a method defined in models.py #} 9 | {% standard_index_listing calling_page=self %} 10 | 11 | {% include "home/includes/related_links.html" with related_links=self.related_links.all only %} 12 | {% endblock %} 13 | -------------------------------------------------------------------------------- /home/templates/home/standard_page.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% load wagtailcore_tags %} 4 | 5 | {% block content %} 6 | {% include "home/includes/intro.html" with intro=self.intro only %} 7 | 8 | {# {% include "home/includes/carousel.html" with carousel_items=self.carousel_items.all only %} #} 9 | 10 | {% if self.body %} 11 |
12 | {#{{ self.body|richtext }} #} 13 | {% include "home/includes/streamfield.html" with content=self.body %} 14 |
15 | {% endif %} 16 | 17 | 18 | {#{% include "home/includes/related_links.html" with related_links=self.related_links.all only %} #} 19 | {% endblock %} 20 | -------------------------------------------------------------------------------- /home/templates/home/tags/adverts.html: -------------------------------------------------------------------------------- 1 | {% load wagtailcore_tags %} 2 | 3 | {% if adverts %} 4 | 18 | {% endif %} 19 | -------------------------------------------------------------------------------- /home/templates/home/tags/breadcrumbs.html: -------------------------------------------------------------------------------- 1 | {% load wagtailcore_tags %} 2 | 3 | {% if ancestors %} 4 |
5 |
6 | 18 |
19 |
20 | {% endif %} 21 | -------------------------------------------------------------------------------- /home/templates/home/tags/standard_index_listing.html: -------------------------------------------------------------------------------- 1 | {% load wagtailcore_tags %} 2 | {% if pages %} 3 |
4 | {% for page in pages %} 5 | 6 |

{{ page.title }}

7 | {% if page.search_description %} 8 |

{{ page.search_description }}

9 | {% endif %} 10 |
11 | {% endfor %} 12 |
13 | {% endif %} -------------------------------------------------------------------------------- /home/templates/home/tags/top_menu.html: -------------------------------------------------------------------------------- 1 | {% load staticfiles %} 2 | {% load home_tags wagtailcore_tags %} 3 | {% get_site_root as site_root %} 4 | 5 | 6 | {# Implementation of bootstrap theme dropdown menu - shows top level links and their children #} 7 | 47 | -------------------------------------------------------------------------------- /home/templates/home/tags/top_menu_children.html: -------------------------------------------------------------------------------- 1 | {% load home_tags wagtailcore_tags %} 2 | 3 | 10 | -------------------------------------------------------------------------------- /home/templates/registration/activate.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 | 6 |

{% trans "Account activation failed" %}

7 | 8 | {% endblock %} 9 | -------------------------------------------------------------------------------- /home/templates/registration/activation_complete.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 |

{% trans "Your account is now activated." %}

6 | {% endblock %} 7 | -------------------------------------------------------------------------------- /home/templates/registration/activation_email.txt: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | {% trans "Activate account at" %} {{ site.name }}: 3 | 4 | Hello there! 5 | 6 | Click the link below to activate your account. 7 | 8 | http://{{ site.domain }}{% url 'registration_activate' activation_key %} 9 | 10 | 11 | {% blocktrans %}The above link is valid for {{ expiration_days }} days.{% endblocktrans %} 12 | 13 | -Team CFE 14 | -------------------------------------------------------------------------------- /home/templates/registration/activation_email_subject.txt: -------------------------------------------------------------------------------- 1 | Complete Registration for {{ site.name }} 2 | -------------------------------------------------------------------------------- /home/templates/registration/login.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | {% load crispy_forms_tags %} 4 | 5 | 6 | {% block content %} 7 | 8 |
9 |
10 |

Login

11 |
12 | {% csrf_token %} 13 | {{ form|crispy }} 14 | 15 | 16 | 17 |
18 |
19 | 20 |
21 |
22 |
23 |
24 |

{% trans "Forgot password" %}? {% trans "Reset it" %}!

25 |

{% trans "Not member" %}? {% trans "Register" %}!

26 |
27 |
28 | 29 | {% endblock %} 30 | -------------------------------------------------------------------------------- /home/templates/registration/logout.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 |

You have successfully logged out.

Login

6 | {% endblock %} 7 | -------------------------------------------------------------------------------- /home/templates/registration/password_change_done.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 |

{% trans "Password changed" %}

6 | {% endblock %} 7 | -------------------------------------------------------------------------------- /home/templates/registration/password_change_form.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 |
6 | {% csrf_token %} 7 | {{ form.as_p }} 8 | 9 | 10 |
11 | {% endblock %} 12 | -------------------------------------------------------------------------------- /home/templates/registration/password_reset_complete.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 | 6 |

{% trans "Password reset successfully" %}

7 | 8 |

{% trans "Log in" %}

9 | 10 | {% endblock %} 11 | -------------------------------------------------------------------------------- /home/templates/registration/password_reset_confirm.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 | 6 | {% if validlink %} 7 | 8 |
9 | {% csrf_token %} 10 | {{ form.as_p }} 11 | 12 | 13 |
14 | 15 | {% else %} 16 | 17 |

{% trans "Password reset failed" %}

18 | 19 | {% endif %} 20 | 21 | {% endblock %} 22 | -------------------------------------------------------------------------------- /home/templates/registration/password_reset_done.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 |

{% trans "Email with password reset instructions has been sent." %}

6 | {% endblock %} 7 | -------------------------------------------------------------------------------- /home/templates/registration/password_reset_email.html: -------------------------------------------------------------------------------- 1 | {% load i18n %} 2 | {% blocktrans %}Reset password at {{ site_name }}{% endblocktrans %}: 3 | {% block reset_link %} 4 | {{ protocol }}://{{ domain }}{% url 'auth_password_reset_confirm' uid token %} 5 | {% endblock %} 6 | -------------------------------------------------------------------------------- /home/templates/registration/password_reset_form.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load crispy_forms_tags %} 3 | {% load i18n %} 4 | 5 | {% block content %} 6 |
7 |

Password Reset

8 |

Reset your password using your email below.

9 |
10 | {% csrf_token %} 11 | {{ form|crispy }} 12 | 13 | 14 |
15 |
16 | {% endblock %} 17 | 18 | 19 | -------------------------------------------------------------------------------- /home/templates/registration/registration_closed.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 |

{% trans "Registration is currently closed." %}

6 | {% endblock %} 7 | -------------------------------------------------------------------------------- /home/templates/registration/registration_complete.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | 4 | {% block content %} 5 |

{% trans "You are now registered. Activation email sent." %}

6 | {% endblock %} -------------------------------------------------------------------------------- /home/templates/registration/registration_form.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load i18n %} 3 | {% load crispy_forms_tags %} 4 | 5 | 6 | {% block content %} 7 |
8 |
9 |

Register with us!

10 |
11 | {% csrf_token %} 12 | {{ form|crispy }} 13 | 14 | 15 |
16 |
17 |
18 | 19 |
20 |
21 |
22 |

Need to Login?

23 |
24 |
25 | 26 | 27 | {% endblock %} 28 | -------------------------------------------------------------------------------- /home/templatetags/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nescode/wagtailcmsdemo/b9cf9447f41d5464610bcfd17e13112a73f9cdd5/home/templatetags/__init__.py -------------------------------------------------------------------------------- /home/templatetags/home_tags.py: -------------------------------------------------------------------------------- 1 | from datetime import date 2 | from django import template 3 | from django.conf import settings 4 | 5 | from home.models import PersonPage, BlogPage, EventPage, Advert, Page 6 | from home.models import Page 7 | 8 | register = template.Library() 9 | 10 | @register.assignment_tag(takes_context=True) 11 | def get_site_root(context): 12 | # NB this returns a core.Page, not the implementation-specific model used 13 | # so object-comparison to self will return false as objects would differ 14 | return context['request'].site.root_page 15 | 16 | 17 | def has_menu_children(page): 18 | return page.get_children().live().in_menu().exists() 19 | 20 | 21 | @register.inclusion_tag('home/tags/top_menu.html', takes_context=True) 22 | def top_menu(context, parent, calling_page=None): 23 | menuitems = parent.get_children().live().in_menu() 24 | for menuitem in menuitems: 25 | menuitem.show_dropdown = has_menu_children(menuitem) 26 | # We don't directly check if calling_page is None since the template 27 | # engine can pass an empty string to calling_page 28 | # if the variable passed as calling_page does not exist. 29 | menuitem.active = (calling_page.url.startswith(menuitem.url) 30 | if calling_page else False) 31 | return { 32 | 'calling_page': calling_page, 33 | 'menuitems': menuitems, 34 | # required by the pageurl tag that we want to use within this template 35 | 'request': context['request'], 36 | } 37 | 38 | # Retrieves the children of the top menu items for the drop downs 39 | @register.inclusion_tag('home/tags/top_menu_children.html', takes_context=True) 40 | def top_menu_children(context, parent): 41 | menuitems_children = parent.get_children() 42 | menuitems_children = menuitems_children.live().in_menu() 43 | return { 44 | 'parent': parent, 45 | 'menuitems_children': menuitems_children, 46 | # required by the pageurl tag that we want to use within this template 47 | 'request': context['request'], 48 | } 49 | 50 | # Retrieves all live pages which are children of the calling page 51 | #for standard index listing 52 | @register.inclusion_tag( 53 | 'home/tags/standard_index_listing.html', 54 | takes_context=True 55 | ) 56 | def standard_index_listing(context, calling_page): 57 | pages = calling_page.get_children().live() 58 | return { 59 | 'pages': pages, 60 | # required by the pageurl tag that we want to use within this template 61 | 'request': context['request'], 62 | } 63 | 64 | # Person feed for home page 65 | @register.inclusion_tag( 66 | 'home/tags/person_listing_homepage.html', 67 | takes_context=True 68 | ) 69 | def person_listing_homepage(context, count=2): 70 | people = PersonPage.objects.live().order_by('?') 71 | return { 72 | 'people': people[:count].select_related('feed_image'), 73 | # required by the pageurl tag that we want to use within this template 74 | 'request': context['request'], 75 | } 76 | 77 | 78 | # Blog feed for home page 79 | @register.inclusion_tag( 80 | 'home/tags/blog_listing_homepage.html', 81 | takes_context=True 82 | ) 83 | def blog_listing_homepage(context, count=2): 84 | blogs = BlogPage.objects.live().order_by('-date') 85 | return { 86 | 'blogs': blogs[:count].select_related('feed_image'), 87 | # required by the pageurl tag that we want to use within this template 88 | 'request': context['request'], 89 | } 90 | 91 | 92 | # Events feed for home page 93 | @register.inclusion_tag( 94 | 'home/tags/event_listing_homepage.html', 95 | takes_context=True 96 | ) 97 | def event_listing_homepage(context, count=2): 98 | events = EventPage.objects.live() 99 | events = events.filter(date_from__gte=date.today()).order_by('date_from') 100 | return { 101 | 'events': events[:count].select_related('feed_image'), 102 | # required by the pageurl tag that we want to use within this template 103 | 'request': context['request'], 104 | } 105 | 106 | 107 | # Advert snippets 108 | @register.inclusion_tag('home/tags/adverts.html', takes_context=True) 109 | def adverts(context): 110 | return { 111 | 'adverts': Advert.objects.select_related('page'), 112 | 'request': context['request'], 113 | } 114 | 115 | 116 | @register.inclusion_tag('home/tags/breadcrumbs.html', takes_context=True) 117 | def breadcrumbs(context): 118 | self = context.get('self') 119 | if self is None or self.depth <= 2: 120 | # When on the home page, displaying breadcrumbs is irrelevant. 121 | ancestors = () 122 | else: 123 | ancestors = Page.objects.ancestor_of( 124 | self, inclusive=True).filter(depth__gt=2) 125 | return { 126 | 'ancestors': ancestors, 127 | 'request': context['request'], 128 | } 129 | -------------------------------------------------------------------------------- /home/views.py: -------------------------------------------------------------------------------- 1 | from django.shortcuts import render 2 | from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger 3 | 4 | from wagtail.wagtailcore.models import Page 5 | from wagtail.wagtailsearch.models import Query 6 | 7 | try: 8 | from wagtail.contrib.wagtailsearchpromotions.models import SearchPromotion 9 | except ImportError: 10 | from wagtail.wagtailsearch.models import EditorsPick as SearchPromotion 11 | 12 | 13 | def search(request): 14 | # Search 15 | search_query = request.GET.get('query', None) 16 | if search_query: 17 | search_results = Page.objects.live().search(search_query) 18 | query = Query.get(search_query) 19 | 20 | # Record hit 21 | query.add_hit() 22 | 23 | # Get search picks 24 | search_picks = query.editors_picks.all() 25 | else: 26 | search_results = Page.objects.none() 27 | search_picks = SearchPromotion.objects.none() 28 | 29 | # Pagination 30 | page = request.GET.get('page', 1) 31 | paginator = Paginator(search_results, 10) 32 | try: 33 | search_results = paginator.page(page) 34 | except PageNotAnInteger: 35 | search_results = paginator.page(1) 36 | except EmptyPage: 37 | search_results = paginator.page(paginator.num_pages) 38 | 39 | return render(request, 'home/search_results.html', { 40 | 'search_query': search_query, 41 | 'search_results': search_results, 42 | 'search_picks': search_picks, 43 | }) 44 | -------------------------------------------------------------------------------- /manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import os 3 | import sys 4 | 5 | if __name__ == "__main__": 6 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "acoidea.settings") 7 | 8 | from django.core.management import execute_from_command_line 9 | 10 | execute_from_command_line(sys.argv) 11 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # Wagtail CMS Demo 2 | 3 | This is a demonstration project for Wagtail CMS features. You can use this project as a starting point. This project provide features demonstration of Wagtail CMS. 4 | 5 | ## Who using it? 6 | 7 | [Nescode](https://nescode.com/) 8 | 9 | ## Wagtail CMS & Django Framework Version 10 | 11 | ``` 12 | wagtail==1.5.2 13 | Django==1.9.7 14 | ``` 15 | 16 | ## For developers, From developers 17 | 18 | Demonstration of Wagtail features in this repositories is for developers only who know how to setup 19 | virtual environment and Django project. In case you would like know how to setup virtualenv, browse through [Configure virtualenv and virtualenvwrapper](http://www.sunilsrikumar.com/2016/03/django-multi-site-setup/) 20 | 21 | ## Dependencies 22 | 23 | There is no dependencies as such. You can setup Wagtail CMS using virtual environment or Vagrant. Choice is yours. 24 | 25 | ## Installation 26 | 27 | Run the following commands: 28 | ``` 29 | git clone https://github.com/nescode/wagtailcmsdemo.git 30 | cd wagtailcmsdemo 31 | pip install -r requirements.txt 32 | python manage.py migrate 33 | python manage.py runserver 34 | ``` 35 | The beautiful Wagtail CMS will be now accessible at http://127.0.0.1:8000/ and the Wagtail admin interface 36 | at http://127.0.0.1:8000/admin/ . To login into admin panel create a superuser: 37 | 38 | ``` 39 | python manage.py createsuperuser 40 | ``` 41 | Give your username, email id and password to complete the user creation process. 42 | 43 | ## Features List 44 | 45 | Available features details are as follow: 46 | * Dynamic homepage and standard page model to manage multiple block through admin panel. 47 | * One, Two and Three column content 48 | * Carousel image slider 49 | * Blog 50 | * Event management 51 | * Person/team page 52 | * Contact page 53 | * Dynamic form through admin 54 | * Standard page with StreamFieldPanel for multiple content type. 55 | * Indexing 56 | * Search across site 57 | * Document management 58 | * Registration/SignIn using registration redux module. 59 | * Multi-user 60 | * Group 61 | * Multi-site 62 | * Customized permission management for content management 63 | * Google SEO Optimization for - Page title, slug, page description 64 | * Schedule publishing of content Go live & Expiry 65 | * Bootstrap front end framework 66 | * Crispy form 67 | 68 | We are adding generic usable features frequently. Keep watching this list for any update. 69 | 70 | ## This repositories as a starting point for your project 71 | 72 | Since, secret key is public in this repositories, we recommend developer to create your own secret key in case you want to use this repositories as a starting point for your next beautiful Wagtail project. 73 | Follow this steps to create a new secret key: 74 | 75 | Step 1: Login into python prompt 76 | ``` 77 | $ python 78 | ``` 79 | Step2: Import necessary package and generate secret key 80 | ``` 81 | import os 82 | os.urandom(24).encode('hex') 83 | ``` 84 | This will generate a secret key in hex code. 85 | Now you can replace with existing secret key in settings/dev.py 86 | 87 | ## Paid development 88 | 89 | We love Wagtail because of its flexibility and clean code. We offer paid development of [Wagtail CMS](https://wagtail.io/). Just say hello at info@nescode.com to start a discussion. 90 | 91 | ## Django development company 92 | 93 | We are passionate technologists. We offer full stack development and consulting for organizations 94 | with Python, Django framework, Wagtail and PostgreSQL. Drop us a line at info@nescode.com to shape your idea. 95 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | beautifulsoup4==4.4.1 2 | dj-database-url==0.4.0 3 | dj-static==0.0.6 4 | Django==1.9.7 5 | django-appconf==1.0.1 6 | django-compressor==2.0 7 | django-crispy-forms==1.6.0 8 | django-modelcluster==2.0 9 | django-registration-redux==1.3 10 | django-taggit==0.18.1 11 | django-toolbelt==0.0.1 12 | django-treebeard==4.0 13 | djangorestframework==3.3.3 14 | gunicorn==19.4.5 15 | html5lib==0.9999999 16 | Pillow==3.2.0 17 | psycopg2==2.6.1 18 | pytz==2016.4 19 | rcssmin==1.0.6 20 | rjsmin==1.0.12 21 | six==1.10.0 22 | static3==0.6.1 23 | Unidecode==0.4.19 24 | wagtail==1.5.2 25 | wheel==0.24.0 26 | Willow==0.3 27 | -------------------------------------------------------------------------------- /search/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nescode/wagtailcmsdemo/b9cf9447f41d5464610bcfd17e13112a73f9cdd5/search/__init__.py -------------------------------------------------------------------------------- /search/templates/search/search.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load static wagtailcore_tags %} 3 | {% load crispy_forms_tags %} 4 | 5 | {% block body_class %}template-searchresults{% endblock %} 6 | 7 | {% block title %}Search{% endblock %} 8 | 9 | {% block content %} 10 |

Search

11 | 12 |
13 | 14 | 15 |
16 | 17 | {% if search_results %} 18 | 28 | 29 | {% if search_results.has_previous %} 30 | Previous 31 | {% endif %} 32 | 33 | {% if search_results.has_next %} 34 | Next 35 | {% endif %} 36 | {% elif search_query %} 37 | No results found 38 | {% endif %} 39 | {% endblock %} 40 | -------------------------------------------------------------------------------- /search/views.py: -------------------------------------------------------------------------------- 1 | from django.shortcuts import render 2 | from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger 3 | 4 | from wagtail.wagtailcore.models import Page 5 | from wagtail.wagtailsearch.models import Query 6 | 7 | 8 | def search(request): 9 | search_query = request.GET.get('query', None) 10 | page = request.GET.get('page', 1) 11 | 12 | # Search 13 | if search_query: 14 | search_results = Page.objects.live().search(search_query) 15 | query = Query.get(search_query) 16 | 17 | # Record hit 18 | query.add_hit() 19 | else: 20 | search_results = Page.objects.none() 21 | 22 | # Pagination 23 | paginator = Paginator(search_results, 10) 24 | try: 25 | search_results = paginator.page(page) 26 | except PageNotAnInteger: 27 | search_results = paginator.page(1) 28 | except EmptyPage: 29 | search_results = paginator.page(paginator.num_pages) 30 | 31 | return render(request, 'search/search.html', { 32 | 'search_query': search_query, 33 | 'search_results': search_results, 34 | }) 35 | --------------------------------------------------------------------------------