<h3><a href="{% url teleforma-home %}"><img src="/static/telemeta/images/module_playlist.png" alt="playlists" style="vertical-align:middle" />{% trans "My courses" %}</a></h3>
<div style="background: white;">
<ul>
- {% with user|user_courses as courses %}
- {% for c in courses %}
- {% with c.course as course %}
+ {% for course in courses %}
<li><a href="{% url teleforma-exam-scripts-scores-course period.id course.id %}">{{ course.title}} {{ course.type }}</a></li>
- {% endwith %}
{% endfor %}
- {% endwith %}
</ul>
</div>
</div>
"""
Get the list of pk of courses current user is allowed to access
"""
- return [c['course'].id for c in get_courses(self.request.user) if c['course'].has_exam_scripts]
+ courses = [ c['course'] for c in get_courses(self.request.user) ]
+ courses = [ c for c in courses if c.has_exam_scripts ]
+ courses = [ c for c in courses if c.is_for_period(self.period) ]
+ return [ c.id for c in courses ]
def get_context_data(self, **kwargs):
context = super(ScriptMixinView, self).get_context_data(**kwargs)
self.period = Period.objects.get(id=self.kwargs['period_id'])
context['period'] = self.period
+ course_pk_list = self.get_course_pk_list()
+ context['courses'] = Course.objects.filter(pk__in=course_pk_list)
context['script_service_url'] = getattr(settings, 'TELEFORMA_EXAM_SCRIPT_SERVICE_URL')
self.nb_script = self.period.nb_script or settings.TELEFORMA_EXAM_MAX_SESSIONS
if getattr(settings, 'TELEFORMA_EXAM_SCRIPT_UPLOAD', True) and self.period.date_exam_end:
def get_context_data(self, **kwargs):
context = super(ScriptCreateView, self).get_context_data(**kwargs)
context['create_fields'] = ['course', 'session', 'type', 'file' ]
- course_pk_list = self.get_course_pk_list()
- context['form'].fields['course'].queryset = Course.objects.filter(pk__in=course_pk_list)
+ context['form'].fields['course'].queryset = context['courses']
return context
@method_decorator(login_required)