On garde l'ordre au moment d'intégrer des champs dans un dupliqué
Fix #317
This commit is contained in:
parent
d6b8ae1ca6
commit
2ace02a5b7
@ -574,9 +574,10 @@ class MergeDuplicates(Form):
|
|||||||
|
|
||||||
|
|
||||||
if self.event:
|
if self.event:
|
||||||
choices = [("event_" + str(self.event.pk), _("Value of the selected version"))] + \
|
choices = [
|
||||||
[
|
("event_" + str(e.pk), _("Value of version {}").format(e.pk)) if e != self.event else
|
||||||
("event_" + str(e.pk), _("Value of version {}").format(e.pk)) for e in self.events if e != self.event
|
("event_" + str(e.pk), _("Value of the selected version"))
|
||||||
|
for e in self.events
|
||||||
]
|
]
|
||||||
else:
|
else:
|
||||||
choices = [
|
choices = [
|
||||||
@ -603,20 +604,30 @@ class MergeDuplicates(Form):
|
|||||||
result += (
|
result += (
|
||||||
'<li><a href="' + e.get_absolute_url() + '">' + e.title + "</a></li>"
|
'<li><a href="' + e.get_absolute_url() + '">' + e.title + "</a></li>"
|
||||||
)
|
)
|
||||||
result += (
|
for step in e.chronology_dates():
|
||||||
"<li>Création : " + localize(e.created_date) + "</li>"
|
if step["data"] == "created_date":
|
||||||
)
|
result += '<li><em>Création</em> le ' + localize(step["timestamp"]) + ' par ' + str(step["user"]) + '</li>'
|
||||||
result += (
|
if step["data"] == "modified_date":
|
||||||
"<li>Dernière modification : "
|
result += '<li><em>Dernière modification</em> le ' + localize(step["timestamp"])
|
||||||
+ localize(e.modified_date)
|
if e.modified_by_user:
|
||||||
+ "</li>"
|
result += ' par ' + e.modified_by_user.username
|
||||||
)
|
else:
|
||||||
if e.imported_date:
|
result += ' par import récurrent'
|
||||||
result += (
|
result += '</li>'
|
||||||
"<li>Dernière importation : "
|
|
||||||
+ localize(e.imported_date)
|
if step["data"] == "moderated_date":
|
||||||
+ "</li>"
|
result += '<li><em>Dernière modération</em> le ' + localize(step["timestamp"])
|
||||||
)
|
if e.moderated_by_user:
|
||||||
|
result += ' par ' + e.moderated_by_user.username
|
||||||
|
result += '</li>'
|
||||||
|
if step["data"] == "imported_date":
|
||||||
|
result += '<li><em>Dernière importation</em> le ' + localize(step["timestamp"])
|
||||||
|
if e.imported_by_user:
|
||||||
|
result += ' par ' + e.imported_by_user.username
|
||||||
|
else:
|
||||||
|
result += ' par import récurrent'
|
||||||
|
result += '</li>'
|
||||||
|
|
||||||
result += "</ul>"
|
result += "</ul>"
|
||||||
result += "</div>"
|
result += "</div>"
|
||||||
result += "</div>"
|
result += "</div>"
|
||||||
|
@ -432,6 +432,12 @@ class DuplicatedEvents(models.Model):
|
|||||||
msgs.append(m)
|
msgs.append(m)
|
||||||
return msgs
|
return msgs
|
||||||
|
|
||||||
|
def get_event_index(self, event):
|
||||||
|
for i, e in enumerate(self.get_duplicated()):
|
||||||
|
if e.pk == event.pk:
|
||||||
|
return i
|
||||||
|
return -1
|
||||||
|
|
||||||
|
|
||||||
class ReferenceLocation(models.Model):
|
class ReferenceLocation(models.Model):
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
<article>
|
<article>
|
||||||
<header>
|
<header>
|
||||||
<h1>Mise à jour par sélection de champs</h1>
|
<h1>Mise à jour par sélection de champs</h1>
|
||||||
<p>Vous allez mettre à jour la version <span class="badge-small">A</span> en sélectionnant
|
<p>Vous allez mettre à jour la version <span class="badge-small">{{ event_id|int_to_abc }}</span> en sélectionnant
|
||||||
pour chaque champ les valeurs des autres versions.</p>
|
pour chaque champ les valeurs des autres versions.</p>
|
||||||
<p>La version ainsi créée mise à jour deviendra la version représentative.</p>
|
<p>La version ainsi créée mise à jour deviendra la version représentative.</p>
|
||||||
|
|
||||||
|
@ -1519,7 +1519,7 @@ def update_duplicate_event(request, pk, epk):
|
|||||||
return render(
|
return render(
|
||||||
request,
|
request,
|
||||||
"agenda_culturel/update_duplicate.html",
|
"agenda_culturel/update_duplicate.html",
|
||||||
context={"form": form, "object": edup, "event": event},
|
context={"form": form, "object": edup, "event_id": edup.get_event_index(event)},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@ -1648,7 +1648,7 @@ def fix_duplicate(request, pk):
|
|||||||
else:
|
else:
|
||||||
form = FixDuplicates(edup=edup)
|
form = FixDuplicates(edup=edup)
|
||||||
elif form.is_action_update():
|
elif form.is_action_update():
|
||||||
# otherwise, a new event will be created using a merging process
|
# otherwise, an event will be updated using other elements
|
||||||
event = form.get_selected_event(edup)
|
event = form.get_selected_event(edup)
|
||||||
if event is None:
|
if event is None:
|
||||||
messages.error(request, _("The selected item is no longer included in the list of duplicates. Someone else has probably modified the list in the meantime."))
|
messages.error(request, _("The selected item is no longer included in the list of duplicates. Someone else has probably modified the list in the meantime."))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user