Commits

tehfink committed 8a9e693

readme updated & version bump

Comments (0)

Files changed (2)

 - django-cms-2: 2.0.2
 - django: 1.1.1
 
-Setup
+Setup:
 - make sure requirements are installed and properly working
 - add cmsplugin_photologue to python path
-- add 'cmsplugin_photologue' to INSTALLED_APPS
-- add ('cmsplugin_photologue.urls', 'Photologue app') to CMS_APPLICATIONS_URLS
-- add ('cmsplugin_photologue.navigation', 'Photologue app Navigation') to CMS_NAVIGATION_EXTENDERS
+- add 'cmsplugin_photologue' to settings.INSTALLED_APPS
+- add ('cmsplugin_photologue.urls', 'Photologue app') to settings.CMS_APPLICATIONS_URLS
+- add ('cmsplugin_photologue.navigation', 'Photologue app Navigation') to settings.CMS_NAVIGATION_EXTENDERS
 - run `python manage.py syncdb` and, if you haven't already, photologue's `python manage.py plinit`
 - add plugins to pages, or attach 'Photologue plugin app' and 'Photologue plugin navigation' to a page (you may have to restart server process for urls to an attached page to work, something with how django-cms caches urls)
 
+Upgrading:
+- new fields were added to the plugin models. here's how to upgrade your models:
+$ python manage.py dbshell
+> alter table cmsplugin_photologuegalleryplugin add column template varchar(255) DEFAULT 'default';
+> alter table cmsplugin_photologuephotoplugin add column template varchar(255) DEFAULT 'default';
+> alter table cmsplugin_photologuegalleryplugin add column sample_size smallint DEFAULT 3;
+
 Versioning:
 i'm going to _try_ and track the most recent django-cms release and the current trunk, starting with 2.0.2.
 - branches are named based on django-cms; eg: cms-2.X
 - releases are tagged based on django-cms; eg: cms-2.0.2
 
-Optional
+Optional:
 - the photologue default templates extend a 'base.html', while django-cms uses a default 'index.html'. quick solution: create a 'base.html' placeholder template which extends 'index.html'. see 'cmsplugin_photologue/templates/base.html' for an example.
 - recommended: install cms-context_processors (or your own), so {{ site }} will work in photologue pages attached to cms pages. NB: this should be fixed in latest django-cms trunk. does it work for anyone?
-- define CMSPLUGIN_PHOTOLOGUE_SAMPLE_SIZE, CMSPLUGIN_PHOTOLOGUE_CSS_CHOICES in settings.py
-- copy cmsplugin_photologue/templates/plugins/ to your project directory
+- define in settings.py:
+    CMS_APPLICATIONS_URLS - django cms apphook
+    CMS_NAVIGATION_EXTENDERS - django cms navigation extenders
+    CMSPLUGIN_PHOTOLOGUE_ROOT_URL - defines base url for apphook
+    CMSPLUGIN_PHOTOLOGUE_GALLERY_TEMPLATES & CMSPLUGIN_PHOTOLOGUE_PHOTO_TEMPLATES - define custom templates for gallery & photo plugins
+    CMSPLUGIN_PHOTOLOGUE_SAMPLE_SIZE - number of random photos to show in gallery template, overrides photologue's setting
+    CMSPLUGIN_PHOTOLOGUE_CSS_CHOICES - define multiple css classes to apply to plugins
+    CMSPLUGIN_PHOTOLOGUE_GALLERY_TEMPLATES_CHOICES - define multiple custom templates for gallery plugins
+    CMSPLUGIN_PHOTOLOGUE_PHOTO_TEMPLATES_CHOICES - define multiple custom templates for photo plugins
+- copy cmsplugin_photologue/templates/plugins/ to your project's template directory
 
 Todo:
-- create variable to control root view displayed when attaching app to cms page
-- define CMSPLUGIN_PHOTOLOGUE_SAMPLE_SIZE per plugin
-- cache navigation extenders
+- integrate js galleries, such as Galleriffic
 
 Example Projects:
 - are stripped down, slightly modified versions of django-cms' example project for each relevant version
 
 
 Examples (settings.py):
+
+CMS_APPLICATIONS_URLS = (
+    ('cmsplugin_photologue.urls', 'Photologue plugin app'),
+)
+#allows apphook in 'Advanced Settings' of django-cms page
+
+CMS_NAVIGATION_EXTENDERS = (
+    ('cmsplugin_photologue.navigation.get_nodes', 'Photologue plugin navigation'),
+)
+#extends django-cms menu navigation with photologue navigation tree
+
+CMSPLUGIN_PHOTOLOGUE_ROOT_URL = {
+    'name': 'pl-gallery-archive-day',
+    'template': '',
+    'extra_args': { 'year': '2010', 'month': 'jan', 'day': '3' }
+}
+#define a photologue urlpatterns as the root apphook url (defaults to 'pl-gallery-archive'):
+##name: urlpattern from photologue.urls
+##template: your custom template, leave blank to use photologue's default
+##extra_args: extra arguments required by the photologue urls
+
+CMSPLUGIN_PHOTOLOGUE_GALLERY_TEMPLATES = (
+    ('default', 'photologue_gallery.html'),
+    ('Galleriffic simple', 'galleriffic_simple.html'),
+    ('Galleriffic black', 'galleriffic_black.html'),
+)
+CMSPLUGIN_PHOTOLOGUE_PHOTO_TEMPLATES = (
+    ('default', 'photologue_photo.html'),
+    ('Lightbox blue', 'lightbox_blue1.html'),
+)
+#define custom templates for gallery & photo plugins
+
 CMSPLUGIN_PHOTOLOGUE_CSS_CHOICES = (('0', ''),('1', 'left'),('2', 'right'),('3', 'center'),) )
-- adds an optional css class to the gallery or photo enclosing div in the plugin templates
+#adds an optional css class to the gallery or photo enclosing div in the plugin templates
 
 CMSPLUGIN_PHOTOLOGUE_SAMPLE_SIZE = 3
-- overrides photologue.urls.SAMPLE_SIZE : 'Number of random images from the gallery to display.'
-
-
-Note:
-This is not great code, but it works. Please tell me how to make it better!
+#overrides photologue.urls.SAMPLE_SIZE : 'Number of random images from the gallery to display.'

cmsplugin_photologue/__init__.py

-VERSION = (0, 2, 4, 'beta')
+VERSION = (0, 2, 7, 'beta')
 __version__ = '.'.join(map(str, VERSION))