From b20edad32559b23c9c0eb988280b823b9efbeb5e Mon Sep 17 00:00:00 2001 From: Guillaume Pellerin Date: Thu, 11 Jul 2013 15:30:04 +0200 Subject: [PATCH] fix stream slug --- .../teleforma-export-stream-m-slugs.py | 53 +++++++++++++++++++ teleforma/models/core.py | 8 +-- teleforma/views/core.py | 2 +- 3 files changed, 55 insertions(+), 8 deletions(-) create mode 100644 teleforma/management/commands/teleforma-export-stream-m-slugs.py diff --git a/teleforma/management/commands/teleforma-export-stream-m-slugs.py b/teleforma/management/commands/teleforma-export-stream-m-slugs.py new file mode 100644 index 00000000..c2dc14da --- /dev/null +++ b/teleforma/management/commands/teleforma-export-stream-m-slugs.py @@ -0,0 +1,53 @@ +from optparse import make_option +from django.conf import settings +from django.core.management.base import BaseCommand, CommandError +from django.contrib.auth.models import User +from django.template.defaultfilters import slugify +from telemeta.models import * +from telemeta.util.unaccent import unaccent +from teleforma.models import * +import logging +import json + +class Command(BaseCommand): + help = "Export course slugs to a Stream-M server conf file" + args = "password, path" + admin_email = 'webmaster@parisson.com' + ext = 'webm' + data = """ +# server.bindAddress +# example: 127.0.0.1, 192.168.1.1 +# localhost. www.example.com also work +#server.bindAddress = 192.168.0.12 + +# server.port +# listening port +server.port=8080 + +streams.safe=true +streams.safe.password=source2parisson +streams.safe.limit=100 +""" + + def export(self): + courses = Course.objects.all() + types = CourseType.objects.all() + for course in courses: + for type in types: + slug = course.slug + '-' + type.name.lower() + slug = course.department.name.lower() + '-' + slug + self.data += '\nstreams.' + slug + '=true\n' + self.data += 'streams.' + slug + '.password=' + self.passwd + '\n' + self.data += 'streams.' + slug + '.limit=1000\n' + + def handle(self, *args, **options): + self.passwd = args[0] + file = args[1] + self.export() + f = open(file, 'w') + f.write(self.data) + f.close() + + + + diff --git a/teleforma/models/core.py b/teleforma/models/core.py index 18a7ecc2..a3edc569 100644 --- a/teleforma/models/core.py +++ b/teleforma/models/core.py @@ -384,13 +384,7 @@ class LiveStream(Model): @property def slug(self): - if self.conference: - slug = '-'.join([self.conference.course.slug, - self.conference.course_type.name.lower()]) - else: - slug = self.element_type - - return slug + return self.conference.slug @property def mount_point(self): diff --git a/teleforma/views/core.py b/teleforma/views/core.py index d806b086..3782c2f5 100644 --- a/teleforma/views/core.py +++ b/teleforma/views/core.py @@ -490,7 +490,7 @@ class ConferenceRecordView(FormView): return context def get_success_url(self): - return reverse('teleforma-conference-detail', kwargs={'period_id': self.context['period'].id, + return reverse('teleforma-conference-detail', kwargs={'period_id': self.conference.period.id, 'pk':self.conference.id}) def form_valid(self, form): -- 2.39.5