move calculated values into function

This commit is contained in:
j 2011-09-30 16:09:30 +02:00
parent 9b4c87b867
commit a33c7f6325

View file

@ -108,18 +108,21 @@ class Annotation(models.Model):
else: else:
return self.value return self.value
def update_calculated_values(self):
self.duration = self.end - self.start
if self.duration > 0:
self.hue, self.saturation, self.lightness = extract.average_color(
self.item.timeline_prefix, self.start, self.end)
else:
self.hue = self.saturation = self.lightness = 0
#FIXME: set volume here
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
if not self.id: if not self.id:
super(Annotation, self).save(*args, **kwargs) super(Annotation, self).save(*args, **kwargs)
self.public_id = '%s/%s' % (self.item.itemId, ox.to32(self.id)) self.public_id = '%s/%s' % (self.item.itemId, ox.to32(self.id))
if self.duration != self.end - self.start: if self.duration != self.end - self.start:
self.duration = self.end - self.start self.update_calculated_values()
if self.duration > 0:
self.hue, self.saturation, self.lightness = extract.average_color(
self.item.timeline_prefix, self.start, self.end)
else:
self.hue = self.saturation = self.lightness = 0
#FIXME: set volume here
super(Annotation, self).save(*args, **kwargs) super(Annotation, self).save(*args, **kwargs)
def json(self, layer=False, keys=None): def json(self, layer=False, keys=None):