Add event history view

This commit is contained in:
Tom Price
2015-05-18 15:21:44 +01:00
parent 0898e91fcb
commit ab558c1ccc
5 changed files with 10 additions and 43 deletions

View File

@@ -296,34 +296,3 @@ class EventRevisions(generic.ListView):
}
return context
class EventDiff(generic.TemplateView):
model = reversion.revisions.Revision
template_name = "RIGS/event_detail.html"
def get_context_data(self, pk, source, dest=None):
model = get_object_or_404(models.Event, pk=pk)
revisions = reversion.get_for_object(model)
source = revisions.get(pk=source)
if dest:
dest = revisions.get(pk=dest)
else:
dest = reversion.get_for_date(model, datetime.datetime.today())
diff = {
'pk': pk, # need this for the edit button to work
}
for field in source.field_dict:
html = generate_patch_html(source, dest, field, cleanup="semantic")
# tidy up
html = html.replace("¶", "")
diff[field] = html
context = {
'object': diff,
'event': diff
}
return context

View File

@@ -225,8 +225,10 @@
{% endif %}
{% endif %}
</div>
<div>Last edited at {{ object.last_edited_at|date:"SHORT_DATETIME_FORMAT" }}
by {{ object.last_edited_by.name }}.
<div>
<a href="{% url 'event_history' object.pk %}">
Lasted edited at {{ object.last_edited_at|date:"SHORT_DATE_FORMAT" }} by {{ object.last_edited_by.name }}
</a>
</div>
</div>
{% endif %}
@@ -238,7 +240,9 @@
{% block footer %}
<div class="row">
<div class="col-sm-10 align-left">
Lasted edited at {{ object.last_edited_at|date:"SHORT_DATE_FORMAT" }} by {{ object.last_edited_by.name }}
<a href="{% url 'event_history' object.pk %}">
Lasted edited at {{ object.last_edited_at|date:"SHORT_DATE_FORMAT" }} by {{ object.last_edited_by.name }}
</a>
</div>
<div class="col-sm-2">
<div class="pull-right">

View File

@@ -26,7 +26,7 @@
<tbody>
{% for version in object_list %}
<tr>
<td>{{ version.revision.pk }}</td>
<td>{{ version.pk }}|{{ version.revision.pk }}</td>
<td>{{ version.revision.date_created }}</td>
<td>{{ version.revision.user.name }}</td>
<td>{% for key, old, new in version.changes %}

View File

@@ -80,15 +80,9 @@ urlpatterns = patterns('',
url(r'^event/archive/$', login_required()(rigboard.EventArchive.as_view()),
name='event_archive'),
url(r'^event/(?P<pk>\d+)/version/$',
url(r'^event/(?P<pk>\d+)/history/$',
permission_required_with_403('RIGS.view_event')(rigboard.EventRevisions.as_view()),
name='event_revisions'),
url(r'^event/(?P<pk>\d+)/version/(?P<source>\d+)/$',
permission_required_with_403('RIGS.view_event')(rigboard.EventDiff.as_view()),
name='event_diff'),
url(r'^event/(?P<pk>\d+)/version/(?P<source>\d+)/(?P<dest>\d+)$',
permission_required_with_403('RIGS.view_event')(rigboard.EventDiff.as_view()),
name='event_diff'),
name='event_history'),
# Finance
url(r'^invoice/$',

Binary file not shown.