Added ungleich app to extend Page models.
Ungleich app has a model called UngleichPage, this model has an attribute called image_header which will be used to set the background image for the page header. Signed-off-by: rscnt <rascnt@gmail.com>
This commit is contained in:
		
					parent
					
						
							
								6c312a6e2e
							
						
					
				
			
			
				commit
				
					
						76bfb3c47b
					
				
			
		
					 10 changed files with 152 additions and 11 deletions
				
			
		|  | @ -7,7 +7,7 @@ Copyright 2015 Ungleich. | |||
| import os | ||||
| import logging | ||||
| import django.db.backends.postgresql_psycopg2 | ||||
| 
 | ||||
| from django.utils.translation import ugettext_lazy as _ | ||||
| 
 | ||||
| gettext = lambda s: s | ||||
| BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) | ||||
|  | @ -81,6 +81,8 @@ INSTALLED_APPS = ( | |||
|     'djangocms_blog', | ||||
|     'bootstrap3', | ||||
|     'compressor', | ||||
|     # ungleich | ||||
|     'ungleich', | ||||
| ) | ||||
| 
 | ||||
| MIDDLEWARE_CLASSES = ( | ||||
|  | @ -159,12 +161,6 @@ DATABASES = { | |||
| # Internationalization | ||||
| # https://docs.djangoproject.com/en/1.7/topics/i18n/ | ||||
| 
 | ||||
| LANGUAGES = ( | ||||
|     ('en', 'English'), | ||||
| ) | ||||
| 
 | ||||
| LANGUAGE_CODE = 'en' | ||||
| 
 | ||||
| TIME_ZONE = 'UTC' | ||||
| 
 | ||||
| USE_I18N = True | ||||
|  | @ -173,6 +169,62 @@ USE_L10N = True | |||
| 
 | ||||
| USE_TZ = True | ||||
| 
 | ||||
| LANGUAGES = ( | ||||
|     ('en-us', _('US English')), | ||||
| ) | ||||
| 
 | ||||
| LANGUAGE_CODE = 'en-us' | ||||
| 
 | ||||
| CMS_PLACEHOLDER_CONF = { | ||||
|     'logo_image': { | ||||
|         'name': 'Logo Image', | ||||
|         'plugins': ['FilerImagePlugin'], | ||||
|         'limits': { | ||||
|             'global': 1, | ||||
|         } | ||||
|     }, | ||||
|     'page-title': { | ||||
|         'name': 'Page Title', | ||||
|         'plugins': ['TextPlugin'], | ||||
|         'default_plugins': [ | ||||
|             { | ||||
|                 'plugin_type': 'TextPlugin', | ||||
|                 'values': { | ||||
|                     'body': 'Page Title...' | ||||
|                 } | ||||
|             } | ||||
|         ], | ||||
|         'limits': { | ||||
|             'global': 1, | ||||
|         } | ||||
|     }, | ||||
|     'page-subtitle': { | ||||
|         'name': 'Page Subtitle', | ||||
|         'inherit': 'page-title', | ||||
|         'default_plugins': [ | ||||
|             { | ||||
|                 'plugin_type': 'TextPlugin', | ||||
|                 'values': { | ||||
|                     'body': 'Page subtitle...' | ||||
|                 } | ||||
|             } | ||||
|         ], | ||||
|     }, | ||||
|     'footer_copyright': { | ||||
|         'name': 'Copyright', | ||||
|         'inherit': 'page-title', | ||||
|         'default_plugins': [ | ||||
|             { | ||||
|                 'plugin_type': 'TextPlugin', | ||||
|                 'values': { | ||||
|                     'body': 'Copyright...' | ||||
|                 } | ||||
|             } | ||||
|         ], | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
| try: | ||||
|     from dynamicweb.local.local_settings import * | ||||
| except ImportError: | ||||
|  |  | |||
|  | @ -1,14 +1,21 @@ | |||
| from django.conf.urls import include, url | ||||
| from django.conf.urls import patterns, include, url | ||||
| from django.contrib import admin | ||||
| # deprecated in version 1.8 | ||||
| from django.conf.urls.i18n import i18n_patterns | ||||
| from django.conf.urls.static import static | ||||
| from dynamicweb import settings | ||||
| 
 | ||||
| urlpatterns = i18n_patterns('', | ||||
| urlpatterns = [ | ||||
|     url(r'^admin/', include(admin.site.urls)), | ||||
|     url(r'^digital.glarus/', include('digital_glarus.urls', | ||||
|         namespace="digital_glarus")), | ||||
|                                      namespace="digital_glarus")), | ||||
|     url(r'^', include('cms.urls')), | ||||
|     url(r'^taggit_autosuggest/', include('taggit_autosuggest.urls')), | ||||
| ) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) | ||||
| ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) | ||||
| 
 | ||||
| if settings.DEBUG: | ||||
|     urlpatterns += patterns('', | ||||
|                             url(r'^media/(?P<path>.*)$', 'django.views.static.serve', { | ||||
|                                 'document_root': settings.MEDIA_ROOT, | ||||
|                             }), | ||||
|     ) | ||||
|  |  | |||
							
								
								
									
										0
									
								
								ungleich/__init__.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								ungleich/__init__.py
									
										
									
									
									
										Normal file
									
								
							
							
								
								
									
										12
									
								
								ungleich/admin.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								ungleich/admin.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| from django.contrib import admin | ||||
| from cms.extensions import PageExtensionAdmin | ||||
| 
 | ||||
| # Register your models here. | ||||
| 
 | ||||
| from .models import UngleichPage | ||||
| 
 | ||||
| 
 | ||||
| class UngleichPageAdmin(PageExtensionAdmin): | ||||
|     pass | ||||
| 
 | ||||
| admin.site.register(UngleichPage, UngleichPageAdmin) | ||||
							
								
								
									
										25
									
								
								ungleich/cms_toolbar.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								ungleich/cms_toolbar.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,25 @@ | |||
| from cms.extensions.toolbar import ExtensionToolbar | ||||
| from django.utils.translation import ugettext_lazy as _ | ||||
| 
 | ||||
| from cms.toolbar_pool import toolbar_pool | ||||
| from cms.toolbar_base import CMSToolbar | ||||
| 
 | ||||
| from .models import UngleichPage | ||||
| 
 | ||||
| 
 | ||||
| @toolbar_pool.register | ||||
| class UngleichPageToolbar(ExtensionToolbar): | ||||
|     # defineds the model for the current toolbar | ||||
|     model = UngleichPage | ||||
| 
 | ||||
|     def populate(self): | ||||
|         # setup the extension toolbar with permissions and sanity checks | ||||
|         current_page_menu = self._setup_extension_toolbar() | ||||
|         # if it's all ok | ||||
|         if current_page_menu: | ||||
|             # retrieves the instance of the current extension (if any) and the toolbar item url | ||||
|             page_extension, url = self.get_page_extension_admin() | ||||
|             if url: | ||||
|                 # adds a toolbar item | ||||
|                 current_page_menu.add_modal_item(_('Page Header'), url=url, | ||||
|                     disabled=not self.toolbar.edit_mode) | ||||
							
								
								
									
										27
									
								
								ungleich/migrations/0001_initial.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								ungleich/migrations/0001_initial.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,27 @@ | |||
| # -*- coding: utf-8 -*- | ||||
| from __future__ import unicode_literals | ||||
| 
 | ||||
| from django.db import models, migrations | ||||
| 
 | ||||
| 
 | ||||
| class Migration(migrations.Migration): | ||||
| 
 | ||||
|     dependencies = [ | ||||
|         ('cms', '0011_auto_20150419_1006'), | ||||
|     ] | ||||
| 
 | ||||
|     operations = [ | ||||
|         migrations.CreateModel( | ||||
|             name='UngleichPage', | ||||
|             fields=[ | ||||
|                 ('id', models.AutoField(serialize=False, primary_key=True, auto_created=True, verbose_name='ID')), | ||||
|                 ('image_header', models.ImageField(upload_to='image_header')), | ||||
|                 ('extended_object', models.OneToOneField(editable=False, to='cms.Page')), | ||||
|                 ('public_extension', models.OneToOneField(editable=False, related_name='draft_extension', null=True, to='ungleich.UngleichPage')), | ||||
|             ], | ||||
|             options={ | ||||
|                 'abstract': False, | ||||
|             }, | ||||
|             bases=(models.Model,), | ||||
|         ), | ||||
|     ] | ||||
							
								
								
									
										0
									
								
								ungleich/migrations/__init__.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								ungleich/migrations/__init__.py
									
										
									
									
									
										Normal file
									
								
							
							
								
								
									
										12
									
								
								ungleich/models.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								ungleich/models.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| from django.db import models | ||||
| 
 | ||||
| from cms.extensions import PageExtension | ||||
| from cms.extensions.extension_pool import extension_pool | ||||
| 
 | ||||
| 
 | ||||
| # Create your models here. | ||||
| 
 | ||||
| class UngleichPage(PageExtension): | ||||
|     image_header = models.ImageField(upload_to='image_header') | ||||
| 
 | ||||
| extension_pool.register(UngleichPage) | ||||
							
								
								
									
										3
									
								
								ungleich/tests.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								ungleich/tests.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,3 @@ | |||
| from django.test import TestCase | ||||
| 
 | ||||
| # Create your tests here. | ||||
							
								
								
									
										3
									
								
								ungleich/views.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								ungleich/views.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,3 @@ | |||
| from django.shortcuts import render | ||||
| 
 | ||||
| # Create your views here. | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue