From facf99fba3e56e0d035bcec0d2ec8d8fd37e1607 Mon Sep 17 00:00:00 2001 From: yomguy Date: Fri, 13 Apr 2012 02:48:07 +0200 Subject: [PATCH] add tweeter to course view --- teleforma/htdocs/css/teleforma.css | 2 +- teleforma/models.py | 2 ++ .../templates/teleforma/course_detail.html | 33 ++++++++++++++++++- .../templates/teleforma/course_media.html | 8 ++--- teleforma/templates/teleforma/courses.html | 2 +- teleforma/views.py | 23 ++++++++----- 6 files changed, 52 insertions(+), 18 deletions(-) diff --git a/teleforma/htdocs/css/teleforma.css b/teleforma/htdocs/css/teleforma.css index ef2ab124..fb70960c 100644 --- a/teleforma/htdocs/css/teleforma.css +++ b/teleforma/htdocs/css/teleforma.css @@ -1508,7 +1508,7 @@ input,textarea{ #chatwindow { - height: 340px; + height: 36em; border-bottom: 1px solid; padding: 0.8em; overflow: auto; diff --git a/teleforma/models.py b/teleforma/models.py index c316d5c2..bb2550a8 100755 --- a/teleforma/models.py +++ b/teleforma/models.py @@ -134,6 +134,8 @@ class Professor(Model): user = ForeignKey(User, related_name='professor', verbose_name=_('user'), unique=True) courses = ManyToManyField('Course', related_name="professor", verbose_name=_('courses'), blank=True, null=True) + training = ForeignKey('Training', related_name='professor', + verbose_name=_('training'), blank=True, null=True) def __unicode__(self): return self.user.username diff --git a/teleforma/templates/teleforma/course_detail.html b/teleforma/templates/teleforma/course_detail.html index e19b41ef..71ebb48c 100644 --- a/teleforma/templates/teleforma/course_detail.html +++ b/teleforma/templates/teleforma/course_detail.html @@ -1,6 +1,17 @@ {% extends "teleforma/courses.html" %} {% load i18n %} +{% block extra_javascript %} + + + + +{% endblock extra_javascript %} + {% block courses %} {% for course in courses %}
  • {{ course.title}} {{ course.type }}
  • @@ -8,7 +19,7 @@ {% endblock courses %} {% block course %} -
    +
    {{ course.title }}{% if course.description %} - {{ course.description }}{% endif %} @@ -43,3 +54,23 @@
    {% endblock course %} + +{% block chat %} +{% if room %} +
    +
    +

    rss{% trans "Tweeter" %}

    + +
    +
    Loading...
    +
    {% csrf_token %} + + + +
    + +
    +
    +
    +{% endif %} +{% endblock chat %} \ No newline at end of file diff --git a/teleforma/templates/teleforma/course_media.html b/teleforma/templates/teleforma/course_media.html index 73d26e4e..f527b823 100644 --- a/teleforma/templates/teleforma/course_media.html +++ b/teleforma/templates/teleforma/course_media.html @@ -60,11 +60,10 @@ $(document).ready(function(){ {% block chat %} {% if room %} -
    -
    -

    rss{% trans "Chatter" %}

    +

    rss{% trans "Tweeter" %}

    +
    Loading...
    {% csrf_token %} @@ -76,8 +75,5 @@ $(document).ready(function(){
    -
    - - {% endif %} {% endblock chat %} diff --git a/teleforma/templates/teleforma/courses.html b/teleforma/templates/teleforma/courses.html index 3ca3bcdf..00b4a430 100644 --- a/teleforma/templates/teleforma/courses.html +++ b/teleforma/templates/teleforma/courses.html @@ -42,7 +42,7 @@ {% block course %} -
    +
    {% for course in object_list %}
    {{ course.title }} - {{ course.type }}{% if course.description %} - {{ course.description }}{% endif %} diff --git a/teleforma/views.py b/teleforma/views.py index 0f95d223..ef9865e0 100755 --- a/teleforma/views.py +++ b/teleforma/views.py @@ -80,6 +80,16 @@ def document_view(request, pk): response = HttpResponse(fsock, mimetype=mimetype) return response +def get_room(content_type, id, name): + rooms = jqchat.models.Room.objects.filter(content_type=content_type, object_id=id) + if not rooms: + room = jqchat.models.Room.objects.create(content_type=content_type, + object_id=id, + name=name[:20]) + else: + room = rooms[0] + return room + class CourseView(DetailView): @@ -90,6 +100,8 @@ class CourseView(DetailView): context['courses'] = get_courses(self.request.user) course = self.get_object() context['notes'] = course.notes.all().filter(author=self.request.user) + content_type = ContentType.objects.get(app_label="teleforma", model="course") + context['room'] = get_room(content_type, course.id, course.title) return context @method_decorator(login_required) @@ -127,15 +139,8 @@ class MediaView(DetailView): context['course'] = media.course context['item'] = media.item context['notes'] = media.notes.all().filter(author=self.request.user) - content_type = ContentType.objects.get(app_label="teleforma", model="course") - rooms = jqchat.models.Room.objects.filter(content_type=content_type, object_id=media.course.id) - if not rooms: - room = jqchat.models.Room.objects.create(content_type=content_type, - object_id=media.course.id, - name=media.course.title[:20]) - else: - room = rooms[0] - context['room'] = room + content_type = ContentType.objects.get(app_label="teleforma", model="media") + context['room'] = get_room(content_type, media.id, media.item.title) return context @method_decorator(login_required) -- 2.39.5