element_type = 'marker'
item_id = CharField(_('item_id'), required=True)
public_id = CharField(_('public_id'), required=True)
- time = CharField(_('time'), required=True)
+ time = FloatField(_('time'), required=True)
description = TextField(_('description'))
author = CharField(_('author'))
return redirect('telemeta-home')
@jsonrpc_method('telemeta.add_marker')
- def add_marker(request, item_id, public_id, time, description):
- # FIXME: get current logged author
- author = 'test'
-# item = MediaItem.objects.get(public_id=item_id)
- marker = MediaItemMarker(item_id=item_id)
- marker.public_id = public_id
- marker.time = time
- marker.description = description
- marker.author= author
- marker.save()
+ def add_marker(request, marker):
+ # marker must be a dict
+ if isinstance(marker, dict):
+ m = MediaItemMarker(item_id=marker['item_id'])
+ m.public_id = marker['public_id']
+ m.time = float(marker['time'])
+ m.description = marker['description']
+ # FIXME: get current logged author
+ # marker.author = marker['author']
+ author = 'test'
+ m.author = author
+ m.save()
+ else:
+ return 'Error : Bad marker dictionnary'
@jsonrpc_method('telemeta.del_marker')
def del_marker(request, public_id):
for marker in markers:
dict = {}
dict['public_id'] = marker.public_id
- dict['time'] = marker.time
+ dict['time'] = str(marker.time)
dict['description'] = marker.description
dict['author'] = marker.author
list.append(dict)