def admin_team_delete(request): id_team = request.POST.get('id_team', None) if id_team is not None: """Return id team delete""" team = get_object_or_404(Team, pk=id_team) """Return team None ( Default )""" team_none = Team.objects.get(name='None') """Return team leader""" team_leader = return_leader_of_team(team) """Set team leader -> team_none""" team_leader.team = team_none team_leader.position = Position.objects.get(name='None') team_leader.save() """Return list member of team""" list_member = return_list_member_of_team(team) """Set list member -> team_none""" set_team_list_user(list_member, team_none) """Delete team""" team.delete() return HttpResponseRedirect(reverse('admin:admin_team_index')) else: return HttpResponseRedirect(reverse('admin:admin_team_index'))
def form_valid(self, form): team = form.save(commit=False) """Get user id new leader""" id_new_leader = self.request.POST.get('id_leader', '') """Return old leader of team""" leader_team = return_leader_of_team(self.object) try: if id_new_leader != leader_team.id: """Set new leader of team""" team.leader = User.objects.get(id=id_new_leader) """Get Profile old leader team""" profile_leader_team = Profile.objects.get(user=User.objects.get(id=leader_team.id)) """Get Profile new leader team""" profile_id_new_leader = Profile.objects.get(user=User.objects.get(id=id_new_leader)) """Set Position old leader team""" profile_leader_team.position = Position.objects.get(id=2) # Developer """Set Position new leader team""" profile_id_new_leader.position = Position.objects.get(id=3) # Leader """Set new team of user""" profile_id_new_leader.team = self.object profile_leader_team.save(()) profile_id_new_leader.save(()) team.save() form.save() except: pass return super().form_valid(form)