return simplejson.dumps(list(self.get_sources().get_latest_versions()),
default=dthandler)
+ def get_default_os(self):
+ try:
+ return self.clientversionsource_set.filter(default=True)[0].os
+ except IndexError:
+ return self.clientversionsource_set.filter()[0].os
+
def __unicode__(self):
return self.name
Client version source. source_type choices should map to
cloudcms.clients.SOURCE_TYPES.
"""
+
+ default = models.BooleanField(default=True)
source_type = models.CharField(max_length=60,
choices=(('link','Link'),
('direct','Direct'),
"""
ordering = models.SmallIntegerField(_('ordering'), default=0)
-
+ image_faq = MediaFileForeignKey(MediaFile, blank=True, null=True, related_name='image_faq')
+ image_userguide = MediaFileForeignKey(MediaFile, blank=True, null=True,related_name='image_userguide')
+ class_name = models.CharField(_('class name'), max_length=100, blank=True)
+
+
class Meta:
verbose_name = _('service')
verbose_name_plural = _('services')
objects = translations.TranslatedObjectManager()
+ def get_first_question(self):
+ try:
+ return self.faqs.filter(is_active=True)[0]
+ except:
+ return None
+
+ def get_first_entry(self):
+ try:
+ return self.userguideentries.filter(is_active=True)[0]
+ except:
+ return None
+
def __unicode__(self):
trans = translations.TranslatedObjectMixin.__unicode__(self)
return trans or _('Unnamed category')
slug = models.SlugField(_('slug'), unique=True)
description = models.CharField(_('description'), max_length=250, blank=True)
cms_page = models.ForeignKey(Page, null=True, blank=True)
-
+ title_faq = models.CharField(_('service title (faq section)'), max_length=100, blank=True)
+ title_userguide = models.CharField(_('service title (userguide section)'), max_length=100, blank=True)
+
class Meta:
verbose_name = _('service translation')
verbose_name_plural = _('service translations')