Commit 9e15e5dc8448e242bb21a253a505b67be7361276

Authored by fbormann
1 parent 6d39e7c5

Revert "just fixed some major UI issues"

This reverts commit a260d811e7b2cbdc2830810fc42f4f4f4a81ef27.
courses/context_processors.py
... ... @@ -8,9 +8,6 @@ def courses(request):
8 8 if request.user.is_staff:
9 9 context['courses_list'] = Course.objects.all()
10 10 else:
11   - #context['courses_list'] =
12   - context['courses_list'] = Course.objects.all()
13   -
14   - #context['courses_list'] = Course.objects.filter(professors__in = [request.user])
  11 + context['courses_list'] = Course.objects.filter(professors__in = [request.user])
15 12 return context
16 13 return context
... ...
courses/permissions.py
... ... @@ -6,10 +6,10 @@ def view_topic(role, user, topic):
6 6 if (role == SystemAdmin):
7 7 return True
8 8  
9   - if user in topic.subject.professors.all():
  9 + if (user in topic.subject.course.professors.all() and user in topic.subject.professors.all()):
10 10 return True
11 11  
12   - if user in topic.subject.students.all():
  12 + if (user in topic.subject.course.students.all() and user in topic.subject.students.all()):
13 13 return True
14 14  
15 15 return False
... ... @@ -29,10 +29,10 @@ def view_subject(role, user, subject):
29 29 if (role == SystemAdmin):
30 30 return True
31 31  
32   - if user in subject.professors.all():
  32 + if (user in subject.course.professors.all() and user in subject.professors.all()):
33 33 return True
34 34  
35   - if user in subject.students.all():
  35 + if (user in subject.course.students.all() and user in subject.students.all()):
36 36 return True
37 37  
38 38 return False
... ...
courses/templates/course/course_card.html
... ... @@ -35,14 +35,21 @@
35 35 <div class="panel-body">
36 36 <p><b>{% trans 'Course Name' %}: </b>{{course.name}}</p>
37 37 <p><b>{% trans 'Coordenator' %}: </b>{{course.coordenator}}</p>
38   -
  38 + <p><b>{% trans 'Professor' %}: </b>{{course.professors.all.0}}</p>
39 39 <p>
40 40 <b>{% trans 'Description' %}:</b>
41 41 <i>
42   - {{course.description | safe }}
  42 + {{course.content | safe }}
43 43 </i>
44 44 </p>
45   -
  45 + <div class="row">
  46 + <div class="col-xs-6 col-md-6 data_register_course">
  47 + <p><b>{% trans 'Init register' %}: </b>{{course.init_register_date}}</p>
  48 + </div>
  49 + <div class="col-xs-6 col-md-6 data_register_course">
  50 + <p><b>{% trans 'End register' %}: </b>{{course.end_register_date}}</p>
  51 + </div>
  52 + </div>
46 53 </div>
47 54 </div>
48 55 </div>
... ...
courses/templates/course/index.html
... ... @@ -52,9 +52,9 @@
52 52 </div>
53 53 <div id="{{category.slug}}" class="panel-collapse collapse">
54 54 {% for course in category.course_category %}
55   -
56   - {% include "course/course_card.html" %}
57   -
  55 + {# {% if user in course.students.all or user in course.professors.all or user|has_role:'system_admin' %}#}
  56 + {% include "course/course_card.html" %}
  57 + {# {% endif %}#}
58 58 {% endfor %}
59 59 </div>
60 60 </div>
... ...
courses/templates/course/view.html
... ... @@ -48,13 +48,21 @@
48 48 </div>
49 49 <div class="panel-body">
50 50 <p><b>{% trans 'Coordinator' %}: </b>{{course.coordenator}}</p>
  51 + <p><b>{% trans 'Teacher' %}: </b>{{course.professors.all.0}}</p>
51 52 <p>
52 53 <b>{% trans 'Description' %}:</b>
53 54 <i>
54   - {{ course.description |safe }}
  55 + {{ course.objectivies |safe }}
55 56 </i>
56 57 </p>
57   -
  58 + <div class="row">
  59 + <div class="col-xs-6 col-md-6 data_register_course">
  60 + <p><b>{% trans 'Begin of Course Date' %}: </b>{{course.init_date}}</p>
  61 + </div>
  62 + <div class="col-xs-6 col-md-6 data_register_course">
  63 + <p><b>{% trans 'End of Course Date' %}: </b>{{course.end_date}}</p>
  64 + </div>
  65 + </div>
58 66 </div>
59 67 </div>
60 68  
... ...
courses/templatetags/course_value_field.py
... ... @@ -11,12 +11,28 @@ def value_field(course, field):
11 11 value = ""
12 12 if field == 'name':
13 13 value = course.name
  14 + elif field == 'objectivies':
  15 + value = course.objectivies
14 16 elif field == 'content':
15 17 value = course.content
  18 + elif field == 'max_students':
  19 + value = course.max_students
  20 + elif field == 'init_register_date':
  21 + value = course.init_register_date
  22 + elif field == 'end_register_date':
  23 + value = course.end_register_date
  24 + elif field == 'init_date':
  25 + value = course.init_date
  26 + elif field == 'end_date':
  27 + value = course.end_date
16 28 elif field == 'coordenator':
17 29 value = course.coordenator
18 30 elif field == 'category':
19 31 value = course.category
  32 + elif field == 'professors':
  33 + value = course.professors.all()
  34 + elif field == 'students':
  35 + value = course.students.all()
20 36 elif field == 'public':
21 37 value = course.public
22 38  
... ...
courses/templatetags/custom_filters.py
... ... @@ -8,8 +8,9 @@ def hide_subscribe_view_btn(user, subject):
8 8 if not user is None:
9 9 if user.is_authenticated:
10 10 if has_role(user, 'student') and not user.is_staff:
11   - if user in subject.students.all():
12   - return True
  11 + if user in subject.course.students.all():
  12 + if not user in subject.students.all():
  13 + return True
13 14 else:
14 15 return True
15 16  
... ... @@ -20,7 +21,7 @@ def show_subject_subscribe(user, subject):
20 21 if not user is None:
21 22 if user.is_authenticated:
22 23 if has_role(user, 'student') and not user.is_staff:
23   - if not user in subject.students.all() and subject.show_subscribe:
  24 + if not user in subject.students.all() and user in subject.course.students.all() and subject.show_subscribe:
24 25 return True
25 26  
26 27 return False
... ...
courses/views.py
... ... @@ -91,9 +91,13 @@ class IndexView(LoginRequiredMixin, NotificationMixin, generic.ListView):
91 91 list_courses = None
92 92 if has_role(self.request.user,'system_admin'):
93 93 list_courses = self.get_queryset().order_by('name')
94   - else:
95   - list_courses = self.get_queryset().all()
96   -
  94 + # categorys_courses = CourseCategory.objects.all()
  95 + elif has_role(self.request.user,'professor'):
  96 + list_courses = self.get_queryset().filter(professors__in = [self.request.user])
  97 + # categorys_courses = CourseCategory.objects.filter(course_category__professors__name = self.request.user.name).distinct()
  98 + elif has_role(self.request.user, 'student'):
  99 + list_courses = self.get_queryset().filter(students__in = [self.request.user])
  100 +
97 101 context['categorys_courses'] = course_category(list_courses)
98 102 return context
99 103  
... ... @@ -357,6 +361,10 @@ class CourseView(LogMixin, NotificationMixin, generic.DetailView):
357 361  
358 362 if has_role(self.request.user,'system_admin'):
359 363 courses = Course.objects.all()
  364 + elif has_role(self.request.user,'professor'):
  365 + courses = self.request.user.courses_professors.all()
  366 + elif has_role(self.request.user, 'student'):
  367 + courses = self.request.user.courses_student.all()
360 368 else:
361 369 courses = Course.objects.filter(public = True)
362 370  
... ... @@ -672,7 +680,7 @@ class CreateTopicView(LoginRequiredMixin, HasRoleMixin, LogMixin, NotificationMi
672 680 action = super(CreateTopicView, self).createorRetrieveAction("create Topic")
673 681 super(CreateTopicView, self).createNotification("Topic "+ self.object.name + " was created",
674 682 resource_name=self.object.name, resource_link= reverse('course:view_topic',args=[self.object.slug]),
675   - actor=self.request.user, users = self.object.subject.students.all() )
  683 + actor=self.request.user, users = self.object.subject.course.students.all() )
676 684  
677 685 self.log_context['topic_id'] = self.object.id
678 686 self.log_context['topic_name'] = self.object.name
... ... @@ -776,7 +784,7 @@ class CreateSubjectView(LoginRequiredMixin, HasRoleMixin, LogMixin, Notification
776 784 self.object.professors.add(self.request.user)
777 785 if self.object.visible:
778 786 super(CreateSubjectView, self).createNotification( " created subject " + self.object.name, resource_name=self.object.name,
779   - resource_slug = self.object.slug, actor=self.request.user,
  787 + resource_slug = self.object.slug, actor=self.request.user, users= self.object.course.students.all(),
780 788 resource_link = reverse('course:view_subject', args=[self.object.slug]))
781 789  
782 790 self.log_context['subject_id'] = self.object.id
... ... @@ -889,7 +897,7 @@ class DeleteSubjectView(LoginRequiredMixin, HasRoleMixin, LogMixin, generic.Dele
889 897 def subscribe_subject(request, slug):
890 898 subject = get_object_or_404(Subject, slug = slug)
891 899  
892   - if request.user not in subject.students.all():
  900 + if request.user in subject.course.students.all():
893 901 subject.students.add(request.user)
894 902  
895 903 if request.user in subject.students.all():
... ... @@ -1016,7 +1024,7 @@ class ReplicateTopicView (LoginRequiredMixin, HasRoleMixin, LogMixin, Notificati
1016 1024 action = super(ReplicateTopicView, self).createorRetrieveAction("create Topic")
1017 1025 super(ReplicateTopicView, self).createNotification("Topic "+ self.object.name + " was created",
1018 1026 resource_name=self.object.name, resource_link= reverse('course:view_topic',args=[self.object.slug]),
1019   - actor=self.request.user, users = self.object.subject.students.all() )
  1027 + actor=self.request.user, users = self.object.subject.course.students.all() )
1020 1028  
1021 1029 self.log_context['topic_id'] = self.object.id
1022 1030 self.log_context['topic_name'] = self.object.name
... ... @@ -1070,7 +1078,7 @@ class ReplicateSubjectView(LoginRequiredMixin, HasRoleMixin, LogMixin, Notificat
1070 1078 self.object.professors.add(self.request.user)
1071 1079 if self.object.visible:
1072 1080 super(ReplicateSubjectView, self).createNotification( " created subject " + self.object.name, resource_name=self.object.name,
1073   - resource_slug = self.object.slug, actor=self.request.user, users= self.object.students.all(),
  1081 + resource_slug = self.object.slug, actor=self.request.user, users= self.object.course.students.all(),
1074 1082 resource_link = reverse('course:view_subject', args=[self.object.slug]))
1075 1083  
1076 1084 self.log_context['subject_id'] = self.object.id
... ...