'django.core.context_processors.static',
)
-TELEMETA_ORGANIZATION = 'Pré-Barreau - CRFPA'
+TELEMETA_ORGANIZATION = 'Pre-Barreau - CRFPA'
TELEMETA_SUBJECTS = ('test', 'telemeta', 'sandbox')
TELEMETA_DESCRIPTION = "Telemeta TEST sandbox"
TELEMETA_GMAP_KEY = 'ABQIAAAArg7eSfnfTkBRma8glnGrlxRVbMrhnNNvToCbZQtWdaMbZTA_3RRGObu5PDoiBImgalVnnLU2yN4RMA'
self.professor.user.last_name,
str(self.date_begin)])
+ @property
+ def slug(self):
+ slug = '-'.join([self.course.department.slug,
+ self.course.slug,
+ self.course_type.name.lower()])
+ return slug
+
def __unicode__(self):
return self.description
.default {
color: green;
}
+
+.conference_form {
+ font-size: 1em;
+ }
+
+.conference_form select {
+ font-size: 1.2em;
+ height: 2em;
+ }
+
+.conference_form textarea {
+ font-size: 1.2em;
+ }
{% extends "teleforma/course_media.html" %}
{% load telemeta_utils %}
+{% load teleforma_tags %}
{% load i18n %}
{% block module-action %}
{% if "telecaster"|installed %}
<script src="{{ STATIC_URL }}teleforma/js/application.js" type="text/javascript"></script>
+{% if 'telecaster'|installed %}
+<script src="{{ STATIC_URL }}telecaster/js/application.js" type="text/javascript"></script>
+{% endif %}
<script type="text/javascript">
var conferenceUtils = {
<dt>{% trans "Title" %}</dt><dd>{{ conference.course.title }}</dd>
<dt>{% trans "Session" %}</dt><dd>{{ conference.session }}</dd>
<dt>{% trans "Professor" %}</dt><dd><a href="{% url telemeta-profile-detail conference.professor.user.username %}" target="_blank">{{ conference.professor }}</a></dd>
+<dt>{% trans "Room" %}</dt><dd>{{ conference.room }}</dd>
<dt>{% trans "Begin" %}</dt><dd>{{ conference.date_begin }}</dd>
-<dt>{% trans "End" %}</dt><dd>{{ conference.date_end }}</dd>
-<dt>{% trans "Live" %}</dt><dd>{{ conference.streaming }}</dd>
+<dt>{% trans "End" %}</dt><dd>{{ conference.date_end|yes_no }}</dd>
+<dt>{% trans "Live" %}</dt><dd>{{ conference.streaming|yes_no }}</dd>
</dl>
</div>
{% endblock general_info %}
{% endblock course %}
{% block chat %}
-{% if room %}
<div id="module-set" style="width: 22%">
+
+{% if 'telecaster'|installed %}
+<div class="module">
+ <h3><img src="{{STATIC_URL}}teleforma/images/status.png" alt="status" style="vertical-align:middle" /> {% trans "Status" %}</h3>
+ <div id="server_status_table_wrapper" class="status"></div>
+</div>
+{% endif %}
+
+{% if room %}
{% with "Local tweeter" as title %}
{% include "teleforma/inc/chat_room.html" %}
{% endwith %}
+{% endif %}
+
</div>
+
+{% if 'telecaster'|installed %}
+<script type="text/javascript">
+server_status_callback();
+</script>
{% endif %}
+
{% endblock chat %}
<div class="course_content" id="media_infos">
<form enctype="multipart/form-data" id="_StationForm" method="post" action="" name="formulaire">{% csrf_token %}
-<table class="form">
+<table class="conference_form">
<tr><td colspan="2">{% for error in form.non_field_errors %}<li class="error">{{ error }}</li>{% endfor %}</td></tr>
{% for field in form %}
<tr>
# Create your views here.
import mimetypes
+import datetime
from jsonrpc import jsonrpc_method
@jsonrpc_method('teleforma.conference_stop')
def stop(request, id):
conference = Conference.objects.get(id=id)
+ conference.date_end = datetime.datetime.now()
+ conference.save()
for stream in conference.livestream.all():
- stream.streaming = False
- stream.save()
- for station in conference.livestream.all():
- station.started = False
- station.save()
- conference.delete()
+ stream.delete()
+ for station in conference.station.all():
+ station.stop()
+ station.delete()
@method_decorator(login_required)
def dispatch(self, *args, **kwargs):
def form_valid(self, form):
form.save()
self.conference = form.instance
+ self.conference.date_begin = datetime.datetime.now()
+ self.conference.save()
station = Station(conference=self.conference)
-# station.start()
+ station.setup(settings.TELECASTER_CONF)
+ station.start()
station.save()
server, c= StreamingServer.objects.get_or_create(host='localhost')
stream = LiveStream(conference=self.conference, server=server,