class Meta:
model = MediaCollection
- exclude = ['alt_ids', 'travail']
+ exclude = model.exclude
def clean_doctype_code(self):
return self.cleaned_data['doctype_code'] or 0
class Meta:
model = MediaItem
- exclude = ('copied_from_item', 'mimetype', 'url',
- 'organization', 'depositor', 'rights',
- 'recordist', 'digitalist', 'digitization_date',
- 'publishing_date', 'scientist', 'topic',
- 'summary', 'contributor', )
+ exclude = model.exclude
def clean_code(self):
return self.cleaned_data['code'] or None
import mimetypes
from django.contrib.auth.models import User
from django.utils.translation import ugettext_lazy as _
+from django.utils.translation import ugettext
from django.core.exceptions import ValidationError
from telemeta.models.core import *
from telemeta.models.enum import ContextKeyword
from django.conf import settings
from django.core.urlresolvers import reverse, reverse_lazy
from django.contrib.sites.models import Site
+from django.forms.models import model_to_dict
# Special code regex of collections for the branch
element_type = 'collection'
-
def is_valid_collection_code(value):
"Check if the collection code is well formed"
regex = '^' + collection_code_regex + '$'
# All
objects = MediaCollectionManager()
+ exclude = ['alt_ids', 'travail']
+
class Meta(MetaCore):
db_table = 'media_collections'
ordering = ['code']
def document_status(self):
if '_I_' in self.public_id:
- return _('Unpublished')
+ return ugettext('Unpublished')
elif '_E_' in self.public_id:
- return _('Published')
+ return ugettext('Published')
else:
return ''
def to_dict_with_more(self):
- metadata = self.to_dict()
+ metadata = model_to_dict(self, fields=[], exclude=self.exclude)
metadata['url'] = get_full_url(reverse('telemeta-collection-detail', kwargs={'public_id':self.pk}))
metadata['doc_status'] = self.document_status()
metadata['countries'] = ';'.join([location.name for location in self.main_countries()])
# Manager
objects = MediaItemManager()
+ exclude = ['copied_from_item', 'mimetype', 'url',
+ 'organization', 'depositor', 'rights',
+ 'recordist', 'digitalist', 'digitization_date',
+ 'publishing_date', 'scientist', 'topic',
+ 'summary', 'contributor', ]
+
def keywords(self):
return ContextKeyword.objects.filter(item_relations__item = self)
keywords.verbose_name = _('keywords')
size.verbose_name = _('item size')
def to_dict_with_more(self):
- metadata = self.to_dict()
+ metadata = model_to_dict(self, fields=[], exclude=self.exclude)
metadata['url'] = get_full_url(reverse('telemeta-item-detail', kwargs={'public_id':self.pk}))
metadata['last_modification_date'] = unicode(self.get_revision().time)
# metadata['computed_duration'] = unicode(self.computed_duration())
- metadata['computed_size'] = unicode(self.size())
+ metadata['file_size'] = unicode(self.size())
keywords = []
for keyword in self.keywords():