License icon in audiobooks.
authorRadek Czajka <rczajka@rczajka.pl>
Tue, 14 Apr 2020 14:38:36 +0000 (16:38 +0200)
committerRadek Czajka <rczajka@rczajka.pl>
Thu, 10 Sep 2020 12:15:11 +0000 (14:15 +0200)
src/catalogue/models/bookmedia.py
src/catalogue/templates/catalogue/snippets/jplayer.html

index d1f2bf0..de493d7 100644 (file)
@@ -96,6 +96,7 @@ class BookMedia(models.Model):
                 audio = id3.ID3(self.file.path)
                 artist_name = ', '.join(', '.join(tag.text) for tag in audio.getall('TPE1'))
                 director_name = ', '.join(', '.join(tag.text) for tag in audio.getall('TPE3'))
+                license = ', '.join(tag.url for tag in audio.getall('WCOP'))
                 project = ", ".join([
                     t.data.decode('utf-8') for t in audio.getall('PRIV')
                     if t.owner == 'wolnelektury.pl?project'])
@@ -109,6 +110,7 @@ class BookMedia(models.Model):
                 audio = mutagen.File(self.file.path)
                 artist_name = ', '.join(audio.get('artist', []))
                 director_name = ', '.join(audio.get('conductor', []))
+                license = ', '.join(audio.get('license', []))
                 project = ", ".join(audio.get('project', []))
                 funded_by = ", ".join(audio.get('funded_by', []))
             except (MutagenError, AttributeError):
@@ -116,7 +118,7 @@ class BookMedia(models.Model):
         else:
             return {}
         return {'artist_name': artist_name, 'director_name': director_name,
-                'project': project, 'funded_by': funded_by}
+                'project': project, 'funded_by': funded_by, 'license': license}
 
     def ext(self):
         return self.formats[self.type].ext
index 8847f99..50e0242 100644 (file)
@@ -35,6 +35,7 @@
                   {% with extra_info=i.mp3.get_extra_info_json %}
                     {% trans "Artist:" %}&nbsp;<span class='artist'>{{ extra_info.artist_name }}</span>,
                     {% trans "director:" %}&nbsp;<span class='director'>{{ extra_info.director_name }}</span>
+                    {% if extra_info.license %}{% license_icon extra_info.license %}{% endif %}
                     <p>
                       {% with fb=extra_info.funded_by %}
                         {% if fb %}Dofinansowano ze środków: {{ fb }}.{% endif %}