Skip to content

Commit

Permalink
Merge branch 'develop' of github.com:divio/django-cms into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
digi604 committed Sep 17, 2012
2 parents 5643965 + 4824588 commit 35f76b0
Show file tree
Hide file tree
Showing 6 changed files with 113 additions and 10 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG.txt
Expand Up @@ -95,7 +95,7 @@
- Fixed wrong language prefix handling for form actions and admin preview
- Admin icons in django 1.4 fixed
- Added requirements.txt for pip and testing in test_requirements
- Google map plugin with height and width properties
- Google map plugin with height and width properties. Migrations will set default values on not-null fields.
- Docs fixes
- Code cleanup
- Switched html5lib to HTML serializer
Expand Down
62 changes: 62 additions & 0 deletions cms/plugins/googlemap/migrations/0011_remove_zoom_null_values.py
@@ -0,0 +1,62 @@
# encoding: utf-8
import datetime
from south.db import db
from south.v2 import DataMigration
from django.db import models

class Migration(DataMigration):

def forwards(self, orm):
"Write your forwards methods here."
for plugin in orm.GoogleMap.objects.filter(models.Q(zoom=None) | models.Q(zoom__lt=0)):
plugin.zoom = 13
plugin.save()
print 'Applying 13 as zoom value for plugin %s. See 2.3.1 Release notes for further info' % plugin.pk
for plugin in orm.GoogleMap.objects.filter(zoom__gt=21):
plugin.zoom = 21
plugin.save()
print 'Applying 21 as zoom value for plugin %s. See 2.3.1 Release notes for further info' % plugin.pk


def backwards(self, orm):
"Write your backwards methods here."
#raise RuntimeError("Cannot reverse this migration.")

models = {
'cms.cmsplugin': {
'Meta': {'object_name': 'CMSPlugin'},
'creation_date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'language': ('django.db.models.fields.CharField', [], {'max_length': '15', 'db_index': 'True'}),
'level': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
'lft': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
'parent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['cms.CMSPlugin']", 'null': 'True', 'blank': 'True'}),
'placeholder': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['cms.Placeholder']", 'null': 'True'}),
'plugin_type': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
'position': ('django.db.models.fields.PositiveSmallIntegerField', [], {'null': 'True', 'blank': 'True'}),
'rght': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
'tree_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'})
},
'cms.placeholder': {
'Meta': {'object_name': 'Placeholder'},
'default_width': ('django.db.models.fields.PositiveSmallIntegerField', [], {'null': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'slot': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
},
'googlemap.googlemap': {
'Meta': {'object_name': 'GoogleMap', 'db_table': "'cmsplugin_googlemap'", '_ormbases': ['cms.CMSPlugin']},
'address': ('django.db.models.fields.CharField', [], {'max_length': '150'}),
'city': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
'cmsplugin_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['cms.CMSPlugin']", 'unique': 'True', 'primary_key': 'True'}),
'content': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
'lat': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '10', 'decimal_places': '6', 'blank': 'True'}),
'lng': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '10', 'decimal_places': '6', 'blank': 'True'}),
'route_planer': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'route_planer_title': ('django.db.models.fields.CharField', [], {'default': "u'Calculate your fastest way to here'", 'max_length': '150', 'null': 'True', 'blank': 'True'}),
'title': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
'zipcode': ('django.db.models.fields.CharField', [], {'max_length': '30'}),
'zoom': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
}
}

complete_apps = ['googlemap']
Expand Up @@ -18,9 +18,8 @@ def forwards(self, orm):
self.gf('django.db.models.fields.CharField')(default='400px', max_length=6),
keep_default=False)


# Changing field 'GoogleMap.zoom'
db.alter_column('cmsplugin_googlemap', 'zoom', self.gf('django.db.models.fields.PositiveSmallIntegerField')())
db.alter_column('cmsplugin_googlemap', 'zoom', self.gf('django.db.models.fields.PositiveSmallIntegerField')(default=13))

def backwards(self, orm):
# Deleting field 'GoogleMap.width'
Expand Down
29 changes: 22 additions & 7 deletions docs/getting_started/plugin_reference.rst
Expand Up @@ -68,6 +68,20 @@ GoogleMap

Displays a map of an address on your page.

Both address and coordinates are supported to center the map; zoom level and
route planner can be set when adding/editing plugin in the admin.

.. versionadded:: 2.3.2
width/height parameter has been added, so it's no longer required to set
plugin container size in CSS or template.

.. versionchanged:: 2.3.2
Zoom level is set via a select field which ensure only legal values are used.

.. note:: Due to the above change, `level` field is now marked as `NOT NULL`,
and a datamigration has been introduced to modify existing googlemap plugin
instance to set the default value if `level` if is `NULL`.

For installation be sure you have the following in the :setting:`django:INSTALLED_APPS`
setting in your project's ``settings.py`` file::

Expand Down Expand Up @@ -132,14 +146,15 @@ in it create a file called ``picture.html``. Here is an example

{% load thumbnail %}

{% if picture.url %}<a href="{{ picture.url }}">{% endif %}
{% ifequal placeholder "content" %}
{% if link %}<a href="{{ link }}">{% endif %}
{% if placeholder == "content" %}
<img src="{% thumbnail picture.image 300x600 %}"{% if picture.alt %} alt="{{ picture.alt }}"{% endif %} />
{% endifequal %}
{% ifequal placeholder "teaser" %}
<img src="{% thumbnail picture.image 150x150 %}"{% if picture.alt %} alt="{{ picture.alt }}"{% endif %} />
{% endifequal %}
{% if picture.url %}</a>{% endif %}
{% else %}
{% if placeholder == "teaser" %}
<img src="{% thumbnail picture.image 150x150 %}"{% if picture.alt %} alt="{{ picture.alt }}"{% endif %} />
{% endif %}
{% endif %}
{% if link %}</a>{% endif %}


In this template the picture is scaled differently based on which placeholder
Expand Down
19 changes: 19 additions & 0 deletions docs/upgrade/2.3.2.rst
@@ -0,0 +1,19 @@
###################
2.3.2 release notes
###################

*******************
What's new in 2.3.2
*******************

Google map plugin
===================

Google map plugin now supports width and height fields so that plugin size
can be modified in the page admin or frontend editor.

Zoom level is now set via a select field which ensure only legal values are used.

.. warning:: Due to the above change, `level` field is now marked as `NOT NULL`,
and a datamigration has been introduced to modify existing googlemap plugin
instance to set the default value if `level` if is `NULL`.
8 changes: 8 additions & 0 deletions docs/upgrade/index.rst
Expand Up @@ -2,6 +2,14 @@
Upgrading a django CMS installation
###################################

*************
2.3.2 Release
*************

.. toctree::
:maxdepth: 1

2.3.2

***********
2.3 Release
Expand Down

0 comments on commit 35f76b0

Please sign in to comment.