def addSoutenance(request): try: # Vérification des permissions de l'utilisateur user = User.objects.get(username=request.user.username) except: return HttpResponseRedirect('/oups/') permissions = user.get_all_permissions() if ("planning.add_soutenance" in permissions): if request.method == 'POST': # Si une requête POST a été passée form = SoutenanceForm(request.POST) # On récupère les données if form.is_valid(): # Si les données reçues sont valides form.save() try: request.POST['ajax'] return HttpResponse( serializers.serialize( "json", Soutenance.objects.filter(stage= Stage.objects.get(pk=request.POST['stage'])), indent = 2, use_natural_keys=True ), mimetype="application/json") except: return HttpResponseRedirect('/planning/') else: # Si les données reçues sont invalides con = { 'actionAFaire' : 'Ajouter', 'form' : form} return render(request,'planning/forms.html', con) else: # Pas de requête POST form = SoutenanceForm() # On crée un formulaire vide con = { 'actionAFaire' : 'Ajouter', 'form' : form} return render(request,'planning/forms.html', con) else: return HttpResponseRedirect('/oups/')
def editSoutenance(request, pk): try: # Vérification des permissions de l'utilisateur user = User.objects.get(username=request.user.username) except: return HttpResponseRedirect('/oups/') permissions = user.get_all_permissions() if ("planning.change_soutenance" in permissions): if request.method == 'POST': # S'il s'agit d'une requête POST form = SoutenanceForm(request.POST, instance=Soutenance.objects.get(pk=pk)) if form.is_valid(): # Nous vérifions que les données envoyées sont valides form.save() return HttpResponseRedirect('/planning/' + pk) else: # Si ce n'est pas du POST, c'est probablement une requête GET print("Error") return render(request, 'planning/forms.html', { 'actionAFaire' : 'Modifier', 'form' : SoutenanceForm(instance=Soutenance.objects.get(pk=pk))}) else: return HttpResponseRedirect('/oups/')