Commit 40d29a809c2a35989de95b70d55c3ca671e509a1
1 parent
372a5eb2
Exists in
master
and in
3 other branches
fixed minor issues with this release, but still have work to do on search subjects
Showing
7 changed files
with
42 additions
and
6 deletions
Show diff stats
amadeus/templates/base.html
@@ -84,7 +84,7 @@ | @@ -84,7 +84,7 @@ | ||
84 | </div> | 84 | </div> |
85 | <div class="navbar-collapse collapse navbar-responsive-collapse"> | 85 | <div class="navbar-collapse collapse navbar-responsive-collapse"> |
86 | <div class="col-md-7 col-md-offset-1 col-sm-6 col-sm-offset-1 col-lg-7 col-lg-offset-1 text-center"> | 86 | <div class="col-md-7 col-md-offset-1 col-sm-6 col-sm-offset-1 col-lg-7 col-lg-offset-1 text-center"> |
87 | - <form id="SearchForm" action="#" method="get" accept-charset="utf-8" class="navbar-form"> | 87 | + <form id="SearchForm" action="{% url 'subjects:search' %}" method="get" accept-charset="utf-8" class="navbar-form"> |
88 | <div class="input-group"> | 88 | <div class="input-group"> |
89 | <div class="form-group is-empty" > | 89 | <div class="form-group is-empty" > |
90 | <input type="text" class="form-control top-search" placeholder="{% trans 'Search for subjects and resources' %}" name="search"> | 90 | <input type="text" class="form-control top-search" placeholder="{% trans 'Search for subjects and resources' %}" name="search"> |
subjects/models.py
@@ -27,7 +27,7 @@ class Subject(models.Model): | @@ -27,7 +27,7 @@ class Subject(models.Model): | ||
27 | init_date = models.DateField(_('Begin of Subject Date')) | 27 | init_date = models.DateField(_('Begin of Subject Date')) |
28 | end_date = models.DateField(_('End of Subject Date')) | 28 | end_date = models.DateField(_('End of Subject Date')) |
29 | 29 | ||
30 | - tags = models.ManyToManyField(Tag, verbose_name='markers', blank=True, null=True) | 30 | + tags = models.ManyToManyField(Tag, verbose_name='tags', blank=True, null=True) |
31 | 31 | ||
32 | create_date = models.DateTimeField(_('Creation Date'), auto_now_add = True) | 32 | create_date = models.DateTimeField(_('Creation Date'), auto_now_add = True) |
33 | update_date = models.DateTimeField(_('Date of last update'), auto_now=True) | 33 | update_date = models.DateTimeField(_('Date of last update'), auto_now=True) |
subjects/templates/subjects/create.html
@@ -18,7 +18,7 @@ | @@ -18,7 +18,7 @@ | ||
18 | 18 | ||
19 | {% if subject %} | 19 | {% if subject %} |
20 | {% breadcrumb subject.category 'subjects:cat_view' subject.category.slug %} | 20 | {% breadcrumb subject.category 'subjects:cat_view' subject.category.slug %} |
21 | - {% breadcrumb subject 'subjects:view' subject.slug %} | 21 | + {% breadcrumb subject 'subjects:view' subject.name %} |
22 | 22 | ||
23 | {% trans 'Replicate: ' as bread %} | 23 | {% trans 'Replicate: ' as bread %} |
24 | 24 |
subjects/templates/subjects/subject_card.html
@@ -16,7 +16,9 @@ | @@ -16,7 +16,9 @@ | ||
16 | <i class="fa fa-ellipsis-v" aria-hidden="true"></i> | 16 | <i class="fa fa-ellipsis-v" aria-hidden="true"></i> |
17 | </a> | 17 | </a> |
18 | <ul class="dropdown-menu pull-right" aria-labelledby="moreActions"> | 18 | <ul class="dropdown-menu pull-right" aria-labelledby="moreActions"> |
19 | + {% if request.user not in subject.professor.all %} | ||
19 | <li><a href="{% url 'subjects:replicate' subject.slug %}"><i class="fa fa-files-o fa-fw" aria-hidden="true"></i>{% trans 'Replicate' %}</a></li> | 20 | <li><a href="{% url 'subjects:replicate' subject.slug %}"><i class="fa fa-files-o fa-fw" aria-hidden="true"></i>{% trans 'Replicate' %}</a></li> |
21 | + {% endif %} | ||
20 | <li><a href="{% url 'subjects:update' subject.slug %}"><i class="fa fa-pencil fa-fw" aria-hidden="true"></i>{% trans 'Edit' %}</a></li> | 22 | <li><a href="{% url 'subjects:update' subject.slug %}"><i class="fa fa-pencil fa-fw" aria-hidden="true"></i>{% trans 'Edit' %}</a></li> |
21 | <li><a href="{% url 'groups:index' subject.slug %}"><i class="fa fa-group fa-fw" aria-hidden="true"></i>{% trans 'Groups' %}</a></li> | 23 | <li><a href="{% url 'groups:index' subject.slug %}"><i class="fa fa-group fa-fw" aria-hidden="true"></i>{% trans 'Groups' %}</a></li> |
22 | <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> | 24 | <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> |
subjects/templates/subjects/subscribe.html
@@ -7,7 +7,7 @@ | @@ -7,7 +7,7 @@ | ||
7 | <!-- Modal Header --> | 7 | <!-- Modal Header --> |
8 | <div class="modal-header"> | 8 | <div class="modal-header"> |
9 | 9 | ||
10 | - <h4 class="modal-title" id="myModalLabel">{% trans "Delete Subject" %}</h4> | 10 | + <h4 class="modal-title" id="myModalLabel">{% trans "Subscribe To Subject" %}</h4> |
11 | </div> | 11 | </div> |
12 | <!-- Modal Body --> | 12 | <!-- Modal Body --> |
13 | <div class="modal-body"> | 13 | <div class="modal-body"> |
subjects/urls.py
@@ -12,5 +12,5 @@ urlpatterns = [ | @@ -12,5 +12,5 @@ urlpatterns = [ | ||
12 | url(r'^delete/(?P<slug>[\w_-]+)/$', views.SubjectDeleteView.as_view(), name='delete'), | 12 | url(r'^delete/(?P<slug>[\w_-]+)/$', views.SubjectDeleteView.as_view(), name='delete'), |
13 | url(r'^view/(?P<slug>[\w_-]+)/$', views.SubjectDetailView.as_view(), name='view'), | 13 | url(r'^view/(?P<slug>[\w_-]+)/$', views.SubjectDetailView.as_view(), name='view'), |
14 | url(r'^subscribe/(?P<slug>[\w_-]+)/$', views.SubjectSubscribeView.as_view(), name='subscribe'), | 14 | url(r'^subscribe/(?P<slug>[\w_-]+)/$', views.SubjectSubscribeView.as_view(), name='subscribe'), |
15 | - #url(r'^modal/(?P<subject_slug>[\w_-]+)/$', views.subscribe_subject(), name='subscribe'), | 15 | + url(r'^search/$', views.SubjectSearchView.as_view(), name='search'), |
16 | ] | 16 | ] |
17 | \ No newline at end of file | 17 | \ No newline at end of file |
subjects/views.py
@@ -38,6 +38,7 @@ class HomeView(LoginRequiredMixin, ListView): | @@ -38,6 +38,7 @@ class HomeView(LoginRequiredMixin, ListView): | ||
38 | paginate_by = 10 | 38 | paginate_by = 10 |
39 | total = 0 | 39 | total = 0 |
40 | 40 | ||
41 | + | ||
41 | def get_queryset(self): | 42 | def get_queryset(self): |
42 | if self.request.user.is_staff: | 43 | if self.request.user.is_staff: |
43 | subjects = Subject.objects.all().order_by("name") | 44 | subjects = Subject.objects.all().order_by("name") |
@@ -342,7 +343,40 @@ class SubjectSubscribeView(LoginRequiredMixin, TemplateView): | @@ -342,7 +343,40 @@ class SubjectSubscribeView(LoginRequiredMixin, TemplateView): | ||
342 | 343 | ||
343 | class SubjectSearchView(LoginRequiredMixin, ListView): | 344 | class SubjectSearchView(LoginRequiredMixin, ListView): |
344 | login_url = reverse_lazy("users:login") | 345 | login_url = reverse_lazy("users:login") |
345 | - redirect_field_name = 'next' | ||
346 | template_name = 'subjects/list.html' | 346 | template_name = 'subjects/list.html' |
347 | context_object_name = 'categories' | 347 | context_object_name = 'categories' |
348 | paginate_by = 10 | 348 | paginate_by = 10 |
349 | + | ||
350 | + def get_queryset(self): | ||
351 | + if self.request.user.is_staff: | ||
352 | + subjects = Subject.objects.all().order_by("name") | ||
353 | + else: | ||
354 | + pk = self.request.user.pk | ||
355 | + | ||
356 | + subjects = Subject.objects.filter(Q(students__pk=pk) | Q(professor__pk=pk) | Q(category__coordinators__pk=pk)).distinct() | ||
357 | + | ||
358 | + self.total = len(subjects) | ||
359 | + | ||
360 | + return subjects | ||
361 | + def post(self, request, *args, **kwargs): | ||
362 | + print("aqui") | ||
363 | + | ||
364 | + return HttpResponse("T") | ||
365 | + | ||
366 | + def get(self, request, *args, **kwargs): | ||
367 | + print("get") | ||
368 | + print(args) | ||
369 | + print(kwargs) | ||
370 | + return HttpResponse("t") | ||
371 | + | ||
372 | + | ||
373 | + def get_context_data(self, **kwargs): | ||
374 | + context = super(SubjectSearchView, self).get_context_data(**kwargs) | ||
375 | + print(kwargs) | ||
376 | + print("teste") | ||
377 | + tags = kwargs.get('tags').strip() | ||
378 | + print(tags) | ||
379 | + | ||
380 | + context['all'] = False | ||
381 | + context['title'] = _('My Subjects') | ||
382 | + return context |