$ git clone http://vcs.parisson.com/git/telemeta.git
-Licence
+License
=======
CeCILL v2 (see LICENSE)
search_fields = ['element_id', 'user']
ordering = ['-time']
+class FormatAdmin(admin.ModelAdmin):
+ search_fields = ['code', 'vendor']
admin.site.register(MediaFonds, MediaFondsAdmin)
admin.site.register(MediaCorpus, MediaCorpusAdmin)
admin.site.register(Language, LanguageAdmin)
admin.site.register(Revision, RevisionAdmin)
+
+admin.site.register(Format, FormatAdmin)
class Enumeration(ModelCore):
"Abstract enumerations base class"
value = CharField(_('value'), required=True, unique=True)
-
+
def __unicode__(self):
return self.value
db_table = 'metadata_authors'
verbose_name = _("record author")
-class MetadataWriter(Enumeration):
+class MetadataWriter(Enumeration):
"Collection metadata writer"
class Meta(MetaEnumeration):
verbose_name = _("record writer")
class LegalRight(Enumeration):
- "Collection legal rights"
+ "Collection legal rights"
class Meta(MetaEnumeration):
db_table = 'legal_rights'
db_table = 'context_keywords'
verbose_name = _("keyword")
-class Publisher(Enumeration):
+class Publisher(Enumeration):
"Collection publisher"
class Meta(MetaEnumeration):
verbose_name = _('population / social group')
class EthnicGroupAlias(ModelCore):
- "Item ethnic group other name"
+ "Item ethnic group other name"
ethnic_group = ForeignKey('EthnicGroup', related_name="aliases", verbose_name=_('population / social group'))
value = CharField(_('name'), required=True)
unique_together = (('ethnic_group', 'value'),)
ordering = ['ethnic_group__value']
+# Tape formats
+class TapeLength(Enumeration):
+ "Tape length (cm)"
+
+ class Meta(MetaEnumeration):
+ db_table = 'tape_length'
+ verbose_name = _("tape length (cm)")
+
+class TapeWidth(Enumeration):
+ "Tape width (inch)"
+
+ class Meta(MetaEnumeration):
+ db_table = 'tape_width'
+ verbose_name = _("tape width (inch)")
+
+class TapeSpeed(Enumeration):
+ "Tape speed (m/s)"
+
+ class Meta(MetaEnumeration):
+ db_table = 'tape_speed'
+ verbose_name = _("tape speed (m/s)")
+
+class TapeVendor(Enumeration):
+ "Tape vendor"
+
+ class Meta(MetaEnumeration):
+ db_table = 'tape_vendor'
+ verbose_name = _("tape vendor")
verbose_name = _('fonds related media')
verbose_name_plural = _('fonds related media')
+
+class Format(ModelCore):
+ """ Physical format object as proposed by the LAM"""
+
+ item = ForeignKey(MediaItem, related_name="formats", verbose_name=_('item'))
+ original_code = CharField(_('original code'), required=True)
+ support_number = CharField(_('support number'))
+ status = CharField(_('status'))
+ conservation_state = CharField(_('conservation state'))
+ comments = TextField(_('comments'))
+
+ tape_length = WeakForeignKey(TapeLength, related_name="formats", verbose_name = _("tape length (cm)"))
+ tape_width = WeakForeignKey(TapeWidth, related_name="formats", verbose_name = _("tape width (inch)"))
+ tape_speed = WeakForeignKey(TapeSpeed, related_name="formats", verbose_name = _("tape speed (m/s)"))
+ tape_vendor = WeakForeignKey(TapeVendor, related_name="formats")
+ tape_thickness = CharField(_('tape thickness (um)'))
+ tape_diameter = CharField(_('tape diameter (mm)'))
+ tape_reference = CharField(_('tape reference'))
+
+ class Meta(MetaCore):
+ db_table = 'media_formats'
+ verbose_name = _('format')
+
+ def __unicode__(self):
+ return self.original_code
+
+ @property
+ def public_id(self):
+ return self.original_code
+
<dd>{% if item.recorded_from_date %}{{ item.recorded_from_date }}{% endif %}{% if item.recorded_from_date and item.recorded_to_date%} - {% endif %}{% if item.recorded_to_date %}{{ item.recorded_to_date}}{% endif %}</dd>
+ {% if last_revision %}
+ <dt>{% trans "Last modification" %}</dt>
+ <dd>{{ last_revision.time }}</dd>
+ {% endif %}
+
</dl>
{% endblock general_info %}
</div>
related_media = MediaItemRelated.objects.filter(item=item)
check_related_media(related_media)
+ last_revision = Revision.objects.filter(element_type='item', element_id=item.id).order_by('-time')[0]
return render(request, template,
{'item': item, 'export_formats': formats,
'audio_export_enabled': getattr(settings, 'TELEMETA_DOWNLOAD_ENABLED', True),
'previous' : previous, 'next' : next, 'marker': marker_id, 'playlists' : playlists,
'public_access': public_access, 'width': width, 'height': height,
- 'related_media': related_media, 'mime_type': mime_type,
+ 'related_media': related_media, 'mime_type': mime_type, 'last_revision': last_revision,
})
@method_decorator(permission_required('telemeta.change_mediaitem'))
--- /dev/null
+#!/bin/sh
+
+python setup.py register
+python setup.py sdist upload
+