Commit 85fe3d3f89c796c0fac90636be6ae09da013aec2
1 parent
ed90db29
Exists in
master
and in
3 other branches
Adding user filter to notification badges
Showing
6 changed files
with
26 additions
and
16 deletions
Show diff stats
amadeus/context_processors.py
@@ -15,7 +15,10 @@ def theme(request): | @@ -15,7 +15,10 @@ def theme(request): | ||
15 | def notifies(request): | 15 | def notifies(request): |
16 | context = {} | 16 | context = {} |
17 | 17 | ||
18 | - notifications = Notification.objects.filter(creation_date = datetime.now()).count() | 18 | + notifications = 0 |
19 | + | ||
20 | + if request.user.is_authenticated: | ||
21 | + notifications = Notification.objects.filter(creation_date = datetime.now(), viewed = False, user = request.user).count() | ||
19 | 22 | ||
20 | context['notifications_count'] = notifications | 23 | context['notifications_count'] = notifications |
21 | 24 |
categories/templatetags/category_counters.py
@@ -6,9 +6,9 @@ from notifications.models import Notification | @@ -6,9 +6,9 @@ from notifications.models import Notification | ||
6 | register = template.Library() | 6 | register = template.Library() |
7 | 7 | ||
8 | @register.inclusion_tag('subjects/badge.html') | 8 | @register.inclusion_tag('subjects/badge.html') |
9 | -def notifies_cat_number(category): | 9 | +def notifies_cat_number(category, user): |
10 | context = {} | 10 | context = {} |
11 | 11 | ||
12 | - context['number'] = Notification.objects.filter(task__resource__topic__subject__category = category, creation_date = datetime.now()).count() | 12 | + context['number'] = Notification.objects.filter(task__resource__topic__subject__category = category, creation_date = datetime.now(), viewed = False, user = user).count() |
13 | 13 | ||
14 | return context | 14 | return context |
15 | \ No newline at end of file | 15 | \ No newline at end of file |
subjects/templates/subjects/list.html
@@ -83,7 +83,7 @@ | @@ -83,7 +83,7 @@ | ||
83 | <a href="" class="pull-right action_icon"><i class="fa fa-bar-chart" aria-hidden="true"></i></a> | 83 | <a href="" class="pull-right action_icon"><i class="fa fa-bar-chart" aria-hidden="true"></i></a> |
84 | <a href="" class="pull-right action_icon"> | 84 | <a href="" class="pull-right action_icon"> |
85 | <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | 85 | <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> |
86 | - {% notifies_cat_number category %} | 86 | + {% notifies_cat_number category request.user %} |
87 | </a> | 87 | </a> |
88 | <a href="" class="pull-right action_icon"><i class="fa fa-envelope-o" aria-hidden="true"></i></a> | 88 | <a href="" class="pull-right action_icon"><i class="fa fa-envelope-o" aria-hidden="true"></i></a> |
89 | <a href="" class="pull-right action_icon"><i class="fa fa-list" aria-hidden="true"></i></a> | 89 | <a href="" class="pull-right action_icon"><i class="fa fa-list" aria-hidden="true"></i></a> |
@@ -147,10 +147,14 @@ | @@ -147,10 +147,14 @@ | ||
147 | <li><a href="javascript:delete_course.get('{% url 'categories:delete' category.slug %}?view=index','#category','#modal_course')"><i class="fa fa-trash fa-fw" aria-hidden="true"></i> {% trans 'Remove' %}</a></li> | 147 | <li><a href="javascript:delete_course.get('{% url 'categories:delete' category.slug %}?view=index','#category','#modal_course')"><i class="fa fa-trash fa-fw" aria-hidden="true"></i> {% trans 'Remove' %}</a></li> |
148 | </ul> | 148 | </ul> |
149 | {% endif %} | 149 | {% endif %} |
150 | - <a href=""><i class="fa fa-bar-chart" aria-hidden="true"></i></a> | ||
151 | - <a href=""><i class="fa fa-exclamation-triangle" aria-hidden="true"></i></a> | ||
152 | - <a href=""><i class="fa fa-envelope-o" aria-hidden="true"></i></a> | ||
153 | - <a href="" ><i class="fa fa-list" aria-hidden="true"></i></a> | 150 | + |
151 | + <a href="" class="pull-right action_icon"><i class="fa fa-bar-chart" aria-hidden="true"></i></a> | ||
152 | + <a href="" class="pull-right action_icon"> | ||
153 | + <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | ||
154 | + {% notifies_cat_number category request.user %} | ||
155 | + </a> | ||
156 | + <a href="" class="pull-right action_icon"><i class="fa fa-envelope-o" aria-hidden="true"></i></a> | ||
157 | + <a href="" class="pull-right action_icon"><i class="fa fa-list" aria-hidden="true"></i></a> | ||
154 | </div> | 158 | </div> |
155 | </div> | 159 | </div> |
156 | </div> | 160 | </div> |
subjects/templates/subjects/subject_card.html
@@ -39,7 +39,7 @@ | @@ -39,7 +39,7 @@ | ||
39 | <a href="" class="pull-right action_icon"><i class="fa fa-bar-chart" aria-hidden="true"></i></a> | 39 | <a href="" class="pull-right action_icon"><i class="fa fa-bar-chart" aria-hidden="true"></i></a> |
40 | <a href="" class="pull-right action_icon"> | 40 | <a href="" class="pull-right action_icon"> |
41 | <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | 41 | <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> |
42 | - {% notifies_number subject %} | 42 | + {% notifies_number subject request.user %} |
43 | </a> | 43 | </a> |
44 | <a href="" class="pull-right action_icon"><i class="fa fa-envelope-o" aria-hidden="true"></i></a> | 44 | <a href="" class="pull-right action_icon"><i class="fa fa-envelope-o" aria-hidden="true"></i></a> |
45 | <a href="" class="pull-right action_icon"><i class="fa fa-list" aria-hidden="true"></i></a> | 45 | <a href="" class="pull-right action_icon"><i class="fa fa-list" aria-hidden="true"></i></a> |
subjects/templates/subjects/view.html
1 | {% extends 'categories/home.html' %} | 1 | {% extends 'categories/home.html' %} |
2 | 2 | ||
3 | -{% load static i18n pagination permissions_tags %} | 3 | +{% load static i18n pagination permissions_tags subject_counter %} |
4 | {% load django_bootstrap_breadcrumbs %} | 4 | {% load django_bootstrap_breadcrumbs %} |
5 | 5 | ||
6 | {% block javascript%} | 6 | {% block javascript%} |
@@ -55,10 +55,13 @@ | @@ -55,10 +55,13 @@ | ||
55 | <li><a href="javascript:delete_subject.get('{% url 'subjects:delete' subject.slug %}?view=index','#subject','#modal_subject')"><i class="fa fa-trash fa-fw" aria-hidden="true"></i> {% trans 'Remove' %}</a></li> | 55 | <li><a href="javascript:delete_subject.get('{% url 'subjects:delete' subject.slug %}?view=index','#subject','#modal_subject')"><i class="fa fa-trash fa-fw" aria-hidden="true"></i> {% trans 'Remove' %}</a></li> |
56 | </ul> | 56 | </ul> |
57 | {% endif %} | 57 | {% endif %} |
58 | - <a href=""><i class="fa fa-bar-chart" aria-hidden="true"></i></a> | ||
59 | - <a href=""><i class="fa fa-exclamation-triangle" aria-hidden="true"></i></a> | ||
60 | - <a href=""><i class="fa fa-envelope-o" aria-hidden="true"></i></a> | ||
61 | - <a href="" ><i class="fa fa-list" aria-hidden="true"></i></a> | 58 | + <a href="" class="pull-right action_icon"><i class="fa fa-bar-chart" aria-hidden="true"></i></a> |
59 | + <a href="" class="pull-right action_icon"> | ||
60 | + <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> | ||
61 | + {% notifies_number subject request.user %} | ||
62 | + </a> | ||
63 | + <a href="" class="pull-right action_icon"><i class="fa fa-envelope-o" aria-hidden="true"></i></a> | ||
64 | + <a href="" class="pull-right action_icon"><i class="fa fa-list" aria-hidden="true"></i></a> | ||
62 | </div> | 65 | </div> |
63 | </div> | 66 | </div> |
64 | </div> | 67 | </div> |
subjects/templatetags/subject_counter.py
@@ -20,10 +20,10 @@ def subject_count(category, user): | @@ -20,10 +20,10 @@ def subject_count(category, user): | ||
20 | return total | 20 | return total |
21 | 21 | ||
22 | @register.inclusion_tag('subjects/badge.html') | 22 | @register.inclusion_tag('subjects/badge.html') |
23 | -def notifies_number(subject): | 23 | +def notifies_number(subject, user): |
24 | context = {} | 24 | context = {} |
25 | 25 | ||
26 | - context['number'] = Notification.objects.filter(task__resource__topic__subject = subject, creation_date = datetime.datetime.now()).count() | 26 | + context['number'] = Notification.objects.filter(task__resource__topic__subject = subject, creation_date = datetime.datetime.now(), viewed = False, user = user).count() |
27 | 27 | ||
28 | return context | 28 | return context |
29 | 29 |