.
This commit is contained in:
+76
-67
@@ -173,37 +173,37 @@ class SeriesDelete(RevisionMixin, AuthorOrCheckerRequiredMixin, DeleteView):
|
||||
success_url = reverse_lazy("atlas:series_view")
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_author_or_atlas_checker
|
||||
def case_clone(request, pk):
|
||||
new_item = get_object_or_404(Case, pk=pk)
|
||||
new_item.pk = None # autogen a new pk (item_id)
|
||||
# new_item.name = "Copy of " + new_item.name #need to change uniques
|
||||
|
||||
form = CaseForm(request.POST or None, instance=new_item)
|
||||
|
||||
series_formset = SeriesFormSet()
|
||||
|
||||
if form.is_valid():
|
||||
form.instance.author.add(request.user.id)
|
||||
|
||||
# logger.debug(formset.is_valid())
|
||||
if series_formset.is_valid():
|
||||
response = super().form_valid(form)
|
||||
series_formset.instance = obj
|
||||
series_formset.save()
|
||||
|
||||
return response
|
||||
else:
|
||||
return super().form_invalid(form)
|
||||
|
||||
context = {
|
||||
"form": form,
|
||||
"series_formset": series_formset,
|
||||
# other context
|
||||
}
|
||||
|
||||
return render(request, "atlas/case_form.html", context)
|
||||
# @login_required
|
||||
# @user_is_author_or_atlas_checker
|
||||
# def case_clone(request, pk):
|
||||
# new_item = get_object_or_404(Case, pk=pk)
|
||||
# new_item.pk = None # autogen a new pk (item_id)
|
||||
# # new_item.name = "Copy of " + new_item.name #need to change uniques
|
||||
#
|
||||
# form = CaseForm(request.POST or None, instance=new_item)
|
||||
#
|
||||
# series_formset = SeriesFormSet()
|
||||
#
|
||||
# if form.is_valid():
|
||||
# form.instance.author.add(request.user.id)
|
||||
#
|
||||
# # logger.debug(formset.is_valid())
|
||||
# if series_formset.is_valid():
|
||||
# response = super().form_valid(form)
|
||||
# series_formset.instance = obj
|
||||
# series_formset.save()
|
||||
#
|
||||
# return response
|
||||
# else:
|
||||
# return super().form_invalid(form)
|
||||
#
|
||||
# context = {
|
||||
# "form": form,
|
||||
# "series_formset": series_formset,
|
||||
# # other context
|
||||
# }
|
||||
#
|
||||
# return render(request, "atlas/case_form.html", context)
|
||||
|
||||
|
||||
class SeriesCreate(RevisionMixin, LoginRequiredMixin, CreateView):
|
||||
@@ -306,9 +306,14 @@ class AtlasCreateBase(RevisionMixin, LoginRequiredMixin, CreateView):
|
||||
context["series_formset"] = SeriesFormSet(
|
||||
self.request.POST, self.request.FILES
|
||||
)
|
||||
context["casedifferential_formset"] = SeriesFormSet(
|
||||
self.request.POST, self.request.FILES
|
||||
)
|
||||
context["series_formset"].full_clean()
|
||||
context["casedifferential_formset"].full_clean()
|
||||
else:
|
||||
context["series_formset"] = SeriesFormSet()
|
||||
context["casedifferential_formset"] = SeriesFormSet()
|
||||
return context
|
||||
|
||||
def form_valid(self, form):
|
||||
@@ -323,10 +328,13 @@ class AtlasCreateBase(RevisionMixin, LoginRequiredMixin, CreateView):
|
||||
|
||||
context = self.get_context_data(form=form)
|
||||
series_formset = context["series_formset"]
|
||||
if series_formset.is_valid():
|
||||
casedifferential_formset = context["casedifferential_formset"]
|
||||
if series_formset.is_valid() and casedifferential_formset.is_valid():
|
||||
response = super().form_valid(form)
|
||||
series_formset.instance = self.object
|
||||
series_formset.save()
|
||||
casedifferential_formset.instance = self.object
|
||||
casedifferential_formset.save()
|
||||
# If the normal submit button is pressed we save as normal
|
||||
if "submit" in self.request.POST:
|
||||
return response
|
||||
@@ -361,40 +369,41 @@ class AtlasUpdate(
|
||||
# #initial = {'date_of_death': '05/01/2018'}
|
||||
# exclude = [ 'created_date', 'published_date' ]
|
||||
|
||||
def get_form_kwargs(self):
|
||||
kwargs = super(AtlasUpdate, self).get_form_kwargs()
|
||||
kwargs.update({"user": self.request.user})
|
||||
return kwargs
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = super(AtlasUpdate, self).get_context_data(**kwargs)
|
||||
if self.request.POST:
|
||||
context["series_formset"] = SeriesFormSet(
|
||||
self.request.POST, self.request.FILES, instance=self.object
|
||||
)
|
||||
context["series_formset"].full_clean()
|
||||
else:
|
||||
context["series_formset"] = SeriesFormSet(instance=self.object)
|
||||
return context
|
||||
|
||||
def form_valid(self, form):
|
||||
|
||||
self.object = form.save(commit=False)
|
||||
self.object.save()
|
||||
|
||||
form.instance.author.add(self.request.user.id)
|
||||
|
||||
context = self.get_context_data(form=form)
|
||||
series_formset = context["series_formset"]
|
||||
# logger.debug(formset.is_valid())
|
||||
if series_formset.is_valid():
|
||||
response = super().form_valid(form)
|
||||
series_formset.instance = self.object
|
||||
series_formset.save()
|
||||
|
||||
return response
|
||||
else:
|
||||
return super().form_invalid(form)
|
||||
# def get_form_kwargs(self):
|
||||
# kwargs = super(AtlasUpdate, self).get_form_kwargs()
|
||||
# kwargs.update({"user": self.request.user})
|
||||
# return kwargs
|
||||
#
|
||||
# def get_context_data(self, **kwargs):
|
||||
# context = super(AtlasUpdate, self).get_context_data(**kwargs)
|
||||
# if self.request.POST:
|
||||
# context["series_formset"] = SeriesFormSet(
|
||||
# self.request.POST, self.request.FILES, instance=self.object
|
||||
# )
|
||||
# context["series_formset"].full_clean()
|
||||
# else:
|
||||
# context["series_formset"] = SeriesFormSet(instance=self.object)
|
||||
# return context
|
||||
#
|
||||
# def form_valid(self, form):
|
||||
#
|
||||
# self.object = form.save(commit=False)
|
||||
# self.object.save()
|
||||
#
|
||||
# form.instance.author.add(self.request.user.id)
|
||||
#
|
||||
# context = self.get_context_data(form=form)
|
||||
# series_formset = context["series_formset"]
|
||||
# # logger.debug(formset.is_valid())
|
||||
# if series_formset.is_valid():
|
||||
# response = super().form_valid(form)
|
||||
# series_formset.instance = self.object
|
||||
# series_formset.save()
|
||||
#
|
||||
# return response
|
||||
# else:
|
||||
# return super().form_invalid(form)
|
||||
|
||||
|
||||
class AtlasClone(AtlasCreateBase):
|
||||
@@ -576,8 +585,8 @@ class ConditionAutocomplete(autocomplete.Select2QuerySetView):
|
||||
try:
|
||||
primary = qs.filter(name__icontains=self.q)
|
||||
|
||||
#synonyms = qs.filter(name__icontains=self.q, primary_name=False)
|
||||
#for s in synonyms:
|
||||
# synonyms = qs.filter(name__icontains=self.q, primary_name=False)
|
||||
# for s in synonyms:
|
||||
# primary.extend(s.synonym.filter(primary_name=True))
|
||||
|
||||
except FieldError:
|
||||
|
||||
Reference in New Issue
Block a user