EMAIL_HOST = your default SMTP server
DEFAULT_FROM_EMAIL = the default sending email address
+ TELEMETA_OAI_HOST = the default host name to provide dublin core identifier through the OAI data provider
+ TELEMETA_OAI_REPOSITORY_NAME = the description of the OAI data provider
+
Just paste the lines below::
LOGIN_URL = '/login'
dc_id, dc = self.parse_dc(dc)
if dc_id == None:
raise Exception("DataSource.get_record() didn't provide an 'identifier' dublin core element")
- elif dc_id != id:
- raise Exception("DataSource.get_record() returned an 'identifier' dublin core element "
- "which is different from the requested identifier")
+# elif dc_id != id:
+# raise Exception("DataSource.get_record() returned an 'identifier' dublin core element "
+# "which is different from the requested identifier")
self.set_attributes(self.request, {'identifier': id, 'metadataPrefix': 'oai_dc'})
container = self.root.appendChild(self.doc.createElement(self.verb))
def __init__(self, start, end=None, refinement=None):
value = ''
if start:
- value = str(start)
- if end and start != end:
- value = 'start=' + value + '; end=' + unicode(end) + ';'
+ value = unicode(start)
+ elif end:
+ value = unicode(end)
+ else:
+ value = ''
super(Date, self).__init__('date', value, refinement)
def media_access_rights(media):
return 'private'
def media_identifier(media):
- if media.code:
- return media.element_type + ':' + media.code
- elif media.old_code:
- return media.element_type + ':' + media.old_code
- return None
+ return 'http://' + settings.TELEMETA_OAI_HOST + '/' + media.element_type + 's/' + unicode(media.id)
def express_collection(collection):
"Express a collection as a Dublin Core resource"
super(MediaItemPerformanceForm, self).__init__(*args, **kwds)
self.fields['instrument'].queryset = Instrument.objects.order_by('name')
self.fields['alias'].queryset = InstrumentAlias.objects.order_by('name')
+
+class MediaItemAnalysis(ModelCore):
+ "Item analysis result computed by TimeSide"
+
+ element_type = 'analysis'
+ item = ForeignKey('MediaItem', related_name="analysis", verbose_name=_('item'))
+ analyzer_id = CharField(_('id'), required=True)
+ analyzer_name = CharField(_('name'))
+ analyzer_value = CharField(_('value'))
+ analyzer_unit = CharField(_('unit'))
+
+ class Meta(MetaCore):
+ db_table = 'media_analysis'
+
class MediaPart(MediaResource):
"Describe an item part"
return self.title
class Playlist(ModelCore):
- "Item or collection playlist"
+ "Item, collection or marker playlist"
element_type = 'playlist'
public_id = CharField(_('public_id'), required=True)
author = ForeignKey(User, related_name="playlists", db_column="author")
url = 'http://' + request.META['HTTP_HOST'] + request.path
datasource = TelemetaOAIDataSource()
admin = settings.ADMINS[0][1]
- provider = oai.DataProvider(datasource, "Telemeta", url, admin)
+ provider = oai.DataProvider(datasource, settings.TELEMETA_OAI_REPOSITORY_NAME, url, admin)
args = request.GET.copy()
args.update(request.POST)
return HttpResponse(provider.handle(args), mimetype='text/xml')