Make URLImage title optional, use URLFeed title
authorTero Marttila <terom@fixme.fi>
Wed, 21 Aug 2013 01:18:22 +0300
changeset 51 6f35a169ef01
parent 50 b8a8269d7214
child 52 bb851151e956
Make URLImage title optional, use URLFeed title
qrurls/admin.py
qrurls/migrations/0008_auto__add_field_url_title.py
qrurls/models.py
qrurls/views.py
--- a/qrurls/admin.py	Wed Aug 21 01:17:44 2013 +0300
+++ b/qrurls/admin.py	Wed Aug 21 01:18:22 2013 +0300
@@ -132,6 +132,7 @@
                 'shorturl', 
                 'publishing_time', 
                 'timezone',
+                'title',
             ),
         }),
         ("QRCode", {
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qrurls/migrations/0008_auto__add_field_url_title.py	Wed Aug 21 01:18:22 2013 +0300
@@ -0,0 +1,47 @@
+# -*- coding: utf-8 -*-
+import datetime
+from south.db import db
+from south.v2 import SchemaMigration
+from django.db import models
+
+
+class Migration(SchemaMigration):
+
+    def forwards(self, orm):
+        # Adding field 'URL.title'
+        db.add_column(u'qrurls_url', 'title',
+                      self.gf('django.db.models.fields.CharField')(max_length=1024, null=True, blank=True),
+                      keep_default=False)
+
+
+    def backwards(self, orm):
+        # Deleting field 'URL.title'
+        db.delete_column(u'qrurls_url', 'title')
+
+
+    models = {
+        u'qrurls.url': {
+            'Meta': {'object_name': 'URL'},
+            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'publishing_time': ('django.db.models.fields.TimeField', [], {'default': 'datetime.time(0, 0)'}),
+            'shorturl': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50'}),
+            'title': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'})
+        },
+        u'qrurls.urlimage': {
+            'Meta': {'ordering': "['uploaded']", 'object_name': 'URLImage'},
+            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}),
+            'title': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'blank': 'True'}),
+            'uploaded': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'})
+        },
+        u'qrurls.urlitem': {
+            'Meta': {'ordering': "['published']", 'object_name': 'URLItem'},
+            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
+            'image': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['qrurls.URLImage']", 'null': 'True', 'blank': 'True'}),
+            'published': ('django.db.models.fields.DateTimeField', [], {}),
+            'shorturl': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['qrurls.URL']"}),
+            'url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'})
+        }
+    }
+
+    complete_apps = ['qrurls']
\ No newline at end of file
--- a/qrurls/models.py	Wed Aug 21 01:17:44 2013 +0300
+++ b/qrurls/models.py	Wed Aug 21 01:18:22 2013 +0300
@@ -46,6 +46,8 @@
             help_text="Changing this will break existing QR-codes!")
     publishing_time = models.TimeField(default=datetime.time(),
             help_text="Default time to publish new URLItems (in timezone)")
+    title = models.CharField(max_length=1024, blank=True, null=True,
+            help_text="Text to display together with images.")
 
     class Meta:
         verbose_name = u"URL Feed"
@@ -109,7 +111,7 @@
 
 class URLImage(models.Model):
     image = models.ImageField(upload_to=IMAGES_MEDIA, storage=SecretFileSystemStorage())
-    title = models.CharField(max_length=1024)
+    title = models.CharField(max_length=1024, blank=True)
     uploaded = models.DateTimeField(auto_now_add=True)
 
     class Meta:
--- a/qrurls/views.py	Wed Aug 21 01:17:44 2013 +0300
+++ b/qrurls/views.py	Wed Aug 21 01:18:22 2013 +0300
@@ -52,8 +52,10 @@
     if url_item.url :
         return HttpResponseRedirect(url_item.url)
     elif url_item.image :
+        title = url_item.image.title or url_item.shorturl.title
+
         return render(request, 'qrurls/image.html', dict(
-            title   = url_item.image.title,
+            title   = title,
             image   = url_item.image,
         ))
     else :