diff --git a/tabellio/agenda/folder_templates/view.pt b/tabellio/agenda/folder_templates/view.pt index 165f1fd..7644ad7 100644 --- a/tabellio/agenda/folder_templates/view.pt +++ b/tabellio/agenda/folder_templates/view.pt @@ -226,15 +226,22 @@ jq('#tabellio-agenda tbody a').click( class event/klass">

-
- Streaming - + Streaming + Compte-rendu intégral
- + diff --git a/tabellio/agenda/parlevent.py b/tabellio/agenda/parlevent.py index 3d666cc..1039fc1 100644 --- a/tabellio/agenda/parlevent.py +++ b/tabellio/agenda/parlevent.py @@ -10,6 +10,9 @@ from plone.formwidget.contenttree import ObjPathSourceBinder from themis.fields import LegisSession from plone.app.textfield import RichText +from plone.registry.interfaces import IRegistry +from tabellio.config.interfaces import ITabellioSettings + from tabellio.agenda.interfaces import MessageFactory as _ from event import IBaseEvent, BaseEvent, EventBaseView @@ -28,6 +31,29 @@ class ParlEvent(BaseEvent): def klass(self): return 'parlementary-event' + def get_stream_url(self): + # this brings some knowledge about the view into the object, this is + # not ideal. + settings = component.getUtility(IRegistry).forInterface(ITabellioSettings, False) + if settings.audiofiles_path: + if os.path.exists(os.path.join(settings.audiofiles_path, self.get_stream_name())): + if settings.embedded_audio_player_url: + return settings.embedded_audio_player_url + '?' + self.get_stream_name() + else: + return self.absolute_url() + '/ecouter.m3u' + if not self.is_now(): + return None + + if settings.embedded_audio_player_url: + return settings.embedded_audio_player_url + else: + return self.absolute_url() + '/ecouter.m3u' + + def get_stream_name(self): + filename = '%04d%02d%02d%02d-SEAN.mp3' % ( + self.start.year, self.start.month, + self.start.day, self.start.hour) + return filename class ParlEventBaseView(EventBaseView): def next_event_url(self):