]> git.parisson.com Git - telemeta.git/commitdiff
fix csv table
authorGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Fri, 13 Nov 2015 15:28:50 +0000 (16:28 +0100)
committerGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Fri, 13 Nov 2015 15:28:50 +0000 (16:28 +0100)
telemeta/models/item.py

index 20166cc0f3ec4bed0ab4048bed58145ef4fd6c56..689aad54e57705eaf785fc8b835190857e4c779e 100644 (file)
@@ -264,25 +264,18 @@ class MediaItem(MediaResource):
             keywords.append(keyword.value)
         metadata['keywords'] = ';'.join(keywords)
 
-        i = 0
+        related_media_urls = []
         for media in self.related.all():
-            tag = 'related_media_title' + '_' + str(i)
-            if media.title:
-                metadata[tag] = media.title
-            else:
-                metadata[tag] = ''
-            tag = 'related_media_url' + '_' + str(i)
             if media.url:
-                metadata[tag] = media.url
+                related_media_urls.append(media.url)
             elif media.url:
-                metadata[tag] = get_full_url(reverse('telemeta-item-related',
-                                            kwargs={'public_id': self.public_id, 'media_id': media.id}))
-            i += 1
+                related_media_urls.append(get_full_url(reverse('telemeta-item-related',
+                                            kwargs={'public_id': self.public_id, 'media_id': media.id})))
+        metadata['related_media_urls'] = ';'.join(related_media_urls)
 
         instruments = []
         instrument_vernacular_names = []
         performers = []
-
         for performance in self.performances.all():
             if performance.instrument:
                 instruments.append(performance.instrument.name)
@@ -290,18 +283,17 @@ class MediaItem(MediaResource):
                 instrument_vernacular_names.append(performance.alias.name)
             if performance.musicians:
                 performers.append(performance.musicians.replace(' et ', ';'))
-
         metadata['instruments'] = ';'.join(instruments)
         metadata['instrument_vernacular_names'] = ';'.join(instrument_vernacular_names)
         metadata['performers'] = ';'.join(performers)
 
-        i = 0
-        for identifier in self.identifiers.all():
+        identifiers = self.identifiers.all()
+        if identifiers:
+            identifier = identifiers[0]
             metadata['identifier' + '_' + str(i)] = identifier.identifier
             metadata['identifier_type' + '_' + str(i)] = identifier.type
             metadata['identifier_date_last' + '_' + str(i)] = unicode(identifier.date_last)
             metadata['identifier_notes' + '_' + str(i)] = identifier.notes
-            i += 1
 
         analyzers = ['channels', 'samplerate', 'duration', 'resolution', 'mime_type']
         for analyzer_id in analyzers:
@@ -314,6 +306,8 @@ class MediaItem(MediaResource):
                 metadata[analyzer_id] = value
             elif analyzer_id == 'duration':
                 metadata[analyzer_id] = self.approx_duration
+            else:
+                metadata[analyzer_id] = ''
 
         metadata['file_size'] = unicode(self.size())
         metadata['thumbnail'] = get_full_url(reverse('telemeta-item-visualize',