@@ -79,7 +76,74 @@
{% endfor %}
+ {% endif %}
+
+{% if allotted_courses %}
+
Course(s) Allotted
+
+ {% for course in allotted_courses %}
+
+
+
+
+
+ Course
+ {% if course.active %}
+ Active
+ {% else %}
+ Closed
+ {% endif %}
+
+
{{ course.name }}
+
+
+
+
Course Creator
+ {{course.creator}}
+
Teacher(s) Added to {{ course }}
+ {% if course.get_teachers %}
+
+ {% else %}
+
No Teacher(s) Added
+ {% endif %}
+
+
+
+
+
+
+
Quiz(zes)
+ {% if course.get_quizzes %}
+ {% for quiz in course.get_quizzes %}
+
{{ quiz.description }}
+ {% endfor %}
+ {% else %}
+
No quiz
+ {% endif %}
+
+
+
+
+
+ {% endfor %}
+{% endif %}
+ {% if courses or allotted_courses %}
-{% endif %}
+{% endif %}
{% endblock %}
diff --git a/yaksh/urls.py b/yaksh/urls.py
index cd97dd4..d14ed1d 100644
--- a/yaksh/urls.py
+++ b/yaksh/urls.py
@@ -97,7 +97,6 @@ urlpatterns += [
views.reject, {'was_enrolled': True}),
url(r'^manage/searchteacher/(?P
\d+)/$', views.search_teacher),
url(r'^manage/addteacher/(?P\d+)/$', views.add_teacher, name='add_teacher'),
- url(r'^manage/allotted_course/$', views.allotted_courses),
url(r'^manage/remove_teachers/(?P\d+)/$', views.remove_teachers, name='remove_teacher'),
url(r'^manage/download_questions/$', views.show_all_questions),
url(r'^manage/upload_questions/$', views.show_all_questions),
diff --git a/yaksh/views.py b/yaksh/views.py
index e1ec44e..a2f6f9a 100644
--- a/yaksh/views.py
+++ b/yaksh/views.py
@@ -664,8 +664,10 @@ def courses(request):
if not is_moderator(user):
raise Http404('You are not allowed to view this page')
courses = Course.objects.filter(creator=user, is_trial=False)
- return my_render_to_response('yaksh/courses.html', {'courses': courses},
- context_instance=ci)
+ allotted_courses = Course.objects.filter(teachers=user, is_trial=False)
+ context = {'courses': courses, "allotted_courses": allotted_courses}
+ return my_render_to_response('yaksh/courses.html', context,
+ context_instance=ci)
@login_required
@@ -1164,7 +1166,7 @@ def search_teacher(request, course_id):
raise Http404('You are not allowed to view this page!')
context = {}
- course = get_object_or_404(Course, creator=user, pk=course_id)
+ course = get_object_or_404(Course, Q(creator=user)|Q(teachers=user), pk=course_id)
context['course'] = course
if request.method == 'POST':
@@ -1196,16 +1198,20 @@ def add_teacher(request, course_id):
raise Http404('You are not allowed to view this page!')
context = {}
- course = get_object_or_404(Course, creator=user, pk=course_id)
+ course = get_object_or_404(Course, Q(creator=user)|Q(teachers=user), pk=course_id)
context['course'] = course
if request.method == 'POST':
teacher_ids = request.POST.getlist('check')
teachers = User.objects.filter(id__in=teacher_ids)
- add_to_group(teachers)
- course.add_teachers(*teachers)
- context['status'] = True
- context['teachers_added'] = teachers
+ if not course.creator in teachers:
+ add_to_group(teachers)
+ course.add_teachers(*teachers)
+ context['status'] = True
+ context['teachers_added'] = teachers
+ else:
+ context["message"] = "You cannot add course creator as teacher."
+
return my_render_to_response('yaksh/addteacher.html', context,
context_instance=ci)
else:
@@ -1213,19 +1219,6 @@ def add_teacher(request, course_id):
context_instance=ci)
-@login_required
-def allotted_courses(request):
- """ show courses allotted to a user """
-
- user = request.user
- ci = RequestContext(request)
- if not is_moderator(user):
- raise Http404('You are not allowed to view this page!')
-
- courses = Course.objects.filter(teachers=user)
- return my_render_to_response('yaksh/courses.html', {'courses': courses},
- context_instance=ci)
-
@login_required
def remove_teachers(request, course_id):
--
cgit