Commit 97fc3606d47b9124c64acd64430d198164d19ed8

Authored by Gustavo
1 parent 4cdc5327

Verification for bulletin creation and adjustments to properly display the infor…

…mations of the bulletin
Showing 1 changed file with 24 additions and 12 deletions   Show diff stats
bulletin/views.py
... ... @@ -20,6 +20,7 @@ from topics.models import Topic
20 20 from django.conf import settings
21 21 import os
22 22 from os.path import join
  23 +from django.utils import timezone
23 24  
24 25 from pendencies.forms import PendenciesForm
25 26  
... ... @@ -159,21 +160,24 @@ class InsideView(LoginRequiredMixin, LogMixin, generic.DetailView):
159 160 meta_geral = Goals.objects.get(topic=topic)
160 161 metas = GoalItem.objects.filter(goal = meta_geral)
161 162 metas_pessoais = []
162   - '''
  163 + n_submeteu = False
163 164 for m in metas:
164   - if MyGoals.objects.filter(item = m).exists():
165   - metas_pessoais.append(MyGoals.objects.get(item = m))
166   - '''
  165 + if MyGoals.objects.filter(item = m, user = self.request.user).exists():
  166 + metas_pessoais.append(MyGoals.objects.get(item = m, user = self.request.user))
  167 + n_submeteu = False
  168 + else:
  169 + n_submeteu = True
167 170  
168 171 itens_da_meta = sorted(list(metas), key = lambda met: met.id)
169 172 metas_pessoais = sorted(list(metas_pessoais), key = lambda me: me.id)
170 173 lista_metas = [{'description':geral.description, 'desejada':geral.ref_value} for geral in itens_da_meta ]
171   - '''
172   - for x in range(0,len(metas_pessoais)):
173   - lista_metas[x]['estabelecida'] = metas_pessoais[x].value
174   - print(metas_pessoais)
175   - print(lista_metas)
176   - '''
  174 +
  175 + for x in range(len(lista_metas)):
  176 + if n_submeteu:
  177 + lista_metas[x]['estabelecida'] = lista_metas[x]['desejada']
  178 + else:
  179 + lista_metas[x]['estabelecida'] = metas_pessoais[x].value
  180 +
177 181 context['metas'] = lista_metas
178 182  
179 183 return context
... ... @@ -202,10 +206,18 @@ class CreateView(LoginRequiredMixin, LogMixin, generic.edit.CreateView):
202 206 caminho1 = request.META['HTTP_REFERER']
203 207 return redirect(caminho1)
204 208  
  209 + if existe_meta:
  210 + meta_geral = Goals.objects.get(topic=topic)
  211 + now = timezone.now()
  212 + if meta_geral.limit_submission_date > now:
  213 + messages.error(request,_("The deadline to submit the goals of the topic %s has not yet closed, so you can't create a Bulletin.") %(topic) )
  214 + caminho2 = request.META['HTTP_REFERER']
  215 + return redirect(caminho2)
  216 +
205 217 if existe_boletim:
206 218 messages.error(request,_("The topic %s already has a Bulletin, so you can't create another.") %(topic) )
207   - caminho2 = request.META['HTTP_REFERER']
208   - return redirect(caminho2)
  219 + caminho3 = request.META['HTTP_REFERER']
  220 + return redirect(caminho3)
209 221  
210 222 if not has_subject_permissions(request.user, topic.subject):
211 223 return redirect(reverse_lazy('subjects:home'))
... ...