]> git.parisson.com Git - telemeta.git/commitdiff
add collection metada to item CSV export
authorGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Thu, 22 Oct 2015 14:31:01 +0000 (16:31 +0200)
committerGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Thu, 22 Oct 2015 14:31:01 +0000 (16:31 +0200)
telemeta/models/item.py

index 2f7ad391e3bbbbb70260134e4300d4119179f2aa..0afe1bd0d0ec27ccd4f9a7bb0ce2fa987d978c82 100644 (file)
@@ -163,7 +163,7 @@ class MediaItem(MediaResource):
                 return 'none'
         else:
             return _('none')
-            
+
 
     class Meta(MetaCore):
         db_table = 'media_items'
@@ -270,7 +270,7 @@ class MediaItem(MediaResource):
             if media.url:
                 metadata[tag] = media.url
             elif media.url:
-                metadata[tag] = get_full_url(reverse('telemeta-collection-related',
+                metadata[tag] = get_full_url(reverse('telemeta-item-related',
                                             kwargs={'public_id': self.public_id, 'media_id': media.id}))
             i += 1
 
@@ -302,7 +302,13 @@ class MediaItem(MediaResource):
         for analyzer_id in analyzers:
             analysis = MediaItemAnalysis.objects.filter(item=self, analyzer_id=analyzer_id)
             if analysis:
-                metadata[analyzer_id] = analysis[0].value
+                if analyzer_id == 'duration':
+                    value = ':'.join([str('%.2d' % int(t)) for t in analysis[0].value.split(':')])
+                else:
+                    value = analysis[0].value
+                metadata[analyzer_id] = value
+            elif analyzer_id == 'duration':
+                metadata[analyzer_id] = self.approx_duration
 
         metadata['file_size'] = unicode(self.size())
         metadata['thumbnail'] = get_full_url(reverse('telemeta-item-visualize',
@@ -320,6 +326,17 @@ class MediaItem(MediaResource):
             metadata['identifier_date'] = unicode(identifier.date_last)
             metadata['identifier_note'] = identifier.notes
 
+        # Collection
+        metadata['recording_context'] = self.collection.recording_context
+        metadata['description_collection'] = self.collection.description
+        metadata['status'] = self.collection.status
+        metadata['original_format'] = self.collection.original_format
+        metadata['physical_format'] = self.collection.physical_format
+        metadata['year_published'] = self.collection.year_published
+        metadata['publisher'] = self.collection.publisher
+        metadata['publisher_collection'] = self.collection.publisher_collection
+        metadata['reference_collection'] = self.collection.reference
+
         return metadata