revisions = format_revisions(Revision.objects.order_by('-date_created')[:10])
children = []
for rev in revisions:
+ if rev['objet'] is None:
+ continue
+ titre = u"[%s %s] %s %s" % (rev['user'], rev['date_created'],
+ rev['objet'], rev['comment'])
children.append({
- 'title': u"%s: %s %s (%s)" % (rev['date_created'],
- rev['type'], rev['objet'], rev['comment']),
- 'url': rev['url'],
+ 'title': titre,
+ 'url': rev['history_url'],
'external': False,
})
self.children.append(modules.LinkList(
results = []
for rev in qs:
+
+ # Dans une révision, on loop dans les versions associées, pour trouver
+ # un modèle qui dispose d'une admin (à priori, le parent) dans le cas
+ # des objets composés
for v in rev.version_set.all():
+
try:
- url = reverse('%s_apercu' % v.content_type.model,
+ change_url = reverse('admin:rh_%s_change' % v.content_type.model,
+ args=(v.object.id, ))
+ history_url = reverse('admin:rh_%s_history' % v.content_type.model,
args=(v.object.id, ))
type = v.content_type
objet = v.object
break
except:
- url = None
+ change_url = None
+ history_url = None
type = None
objet = None
-
+
results.append({
'date_created': rev.date_created,
'user': rev.user,
'comment': rev.comment,
- 'url': url,
+ 'change_url': change_url,
+ 'history_url': history_url,
'type': type,
'objet': objet,
{% for revision in revisions %}
<tr class="{% cycle 'row1' 'row2' %}">
<td>{{ revision.date_created }}</td>
- <td>{{ revision.user }}</td>
- <td>{% if revision.type %}{{ revision.type }}{% endif %}</td>
- <td>{% if revision.url %}<a href="{{ revision.url }}"
- onclick="return showAddAnotherPopup(this);">
- {{ revision.objet }}<a>{% endif %}</td>
+ <td>{{ revision.user|default:"" }}</td>
+ <td>{{ revision.type|default:"" }}</td>
+ <td>{% if revision.objet %}<a href="{{ revision.change_url }}">{{ revision.objet }}</a>{% endif %}</td>
+ <td>{% if revision.history_url %}<a href="{{ revision.history_url }}">historique{% endif %}</a></td>
<td>{{ revision.comment }}</td>
</tr>
{% endfor %}
results = format_revisions(page_revisions.object_list)
c = {
- 'headers': ('Date', 'Auteur', 'Type', 'Objet', 'Commentaire', ),
+ 'headers': ('Date', 'Auteur', 'Type', 'Objet', 'Historique', 'Commentaire', ),
'revisions': results,
'page': page_revisions,
}