Revision 5de4187f

b/cloudcms/migrations/0009_auto__add_field_clientversionsource_default.py
1
# encoding: utf-8
2
import datetime
3
from south.db import db
4
from south.v2 import SchemaMigration
5
from django.db import models
6

  
7
class Migration(SchemaMigration):
8
    
9
    def forwards(self, orm):
10
        
11
        # Adding field 'ClientVersionSource.default'
12
        db.add_column('cloudcms_clientversionsource', 'default', self.gf('django.db.models.fields.BooleanField')(default=True, blank=True), keep_default=False)
13
    
14
    
15
    def backwards(self, orm):
16
        
17
        # Deleting field 'ClientVersionSource.default'
18
        db.delete_column('cloudcms_clientversionsource', 'default')
19
    
20
    
21
    models = {
22
        'cloudcms.application': {
23
            'Meta': {'object_name': 'Application'},
24
            'app_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
25
            'code': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
26
            'extra_styles': ('django.db.models.fields.TextField', [], {'default': "''", 'blank': 'True'}),
27
            'facebook_username': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
28
            'favicon': ('feincms.module.medialibrary.fields.MediaFileForeignKey', [], {'blank': 'True', 'related_name': "'as_favicon'", 'null': 'True', 'to': "orm['medialibrary.MediaFile']"}),
29
            'footer_bottom': ('django.db.models.fields.TextField', [], {'default': "''", 'blank': 'True'}),
30
            'footer_top': ('django.db.models.fields.TextField', [], {'default': "''", 'blank': 'True'}),
31
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
32
            'index_url': ('django.db.models.fields.CharField', [], {'default': "'/'", 'max_length': '255'}),
33
            'linked_in_username': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
34
            'logo': ('feincms.module.medialibrary.fields.MediaFileForeignKey', [], {'to': "orm['medialibrary.MediaFile']", 'null': 'True', 'blank': 'True'}),
35
            'show_twitter_feed_on_top': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
36
            'site': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['sites.Site']"}),
37
            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
38
            'twitter_username': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'})
39
        },
40
        'cloudcms.client': {
41
            'Meta': {'object_name': 'Client'},
42
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
43
            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
44
            'uid': ('django.db.models.fields.CharField', [], {'max_length': '255'})
45
        },
46
        'cloudcms.clientversionsource': {
47
            'Meta': {'object_name': 'ClientVersionSource'},
48
            'architecture': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
49
            'client': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['cloudcms.Client']"}),
50
            'default': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
51
            'file_regex': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
52
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
53
            'link': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
54
            'logo': ('feincms.module.medialibrary.fields.MediaFileForeignKey', [], {'to': "orm['medialibrary.MediaFile']", 'null': 'True', 'blank': 'True'}),
55
            'os': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
56
            'source_type': ('django.db.models.fields.CharField', [], {'max_length': '60'}),
57
            'version_regex': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
58
        },
59
        'medialibrary.category': {
60
            'Meta': {'object_name': 'Category'},
61
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
62
            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['medialibrary.Category']"}),
63
            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '150', 'db_index': 'True'}),
64
            'title': ('django.db.models.fields.CharField', [], {'max_length': '200'})
65
        },
66
        'medialibrary.mediafile': {
67
            'Meta': {'object_name': 'MediaFile'},
68
            'categories': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['medialibrary.Category']", 'null': 'True', 'blank': 'True'}),
69
            'copyright': ('django.db.models.fields.CharField', [], {'max_length': '200', 'blank': 'True'}),
70
            'created': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
71
            'file': ('django.db.models.fields.files.FileField', [], {'max_length': '255'}),
72
            'file_size': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
73
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
74
            'type': ('django.db.models.fields.CharField', [], {'max_length': '12'})
75
        },
76
        'sites.site': {
77
            'Meta': {'object_name': 'Site', 'db_table': "'django_site'"},
78
            'domain': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
79
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
80
            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
81
        }
82
    }
83
    
84
    complete_apps = ['cloudcms']
b/cloudcms/models.py
112 112
        return simplejson.dumps(list(self.get_sources().get_latest_versions()),
113 113
                default=dthandler)
114 114

  
115
    def get_default_os(self):
116
        try:
117
            return self.clientversionsource_set.filter(default=True)[0].os
118
        except IndexError:
119
            return self.clientversionsource_set.filter()[0].os
120

  
115 121
    def __unicode__(self):
116 122
        return self.name
117 123

  
......
121 127
    Client version source. source_type choices should map to
122 128
    cloudcms.clients.SOURCE_TYPES.
123 129
    """
130

  
131
    default = models.BooleanField(default=True)
124 132
    source_type = models.CharField(max_length=60,
125 133
            choices=(('link','Link'),
126 134
                     ('direct','Direct'),
b/cloudcms/templates/content/client_downloads.html
9 9
<script>
10 10
    $(document).ready(function(){
11 11
        if (window.ClientDownloads) { 
12
        	
13 12
            var clients_data = {{ content.client.to_json|safe }};          
14
            var clients_default = 'windows';
13
            var clients_default = '{{ content.client.get_default_os }}';
15 14
            var clients = new ClientDownloads(".clients-wrapper", clients_data, clients_default);
16 15
            clients.update();
17
            
18
             
19 16
        }
20 17
    })
21 18
</script>

Also available in: Unified diff