mirror of
https://github.com/nottinghamtec/PyRIGS.git
synced 2026-01-17 05:22:16 +00:00
Basic diff between source -> HEAD or source -> dest.
This commit is contained in:
@@ -214,10 +214,10 @@ class EventRevisions(generic.ListView):
|
||||
|
||||
|
||||
thisEvent = get_object_or_404(models.Event, pk=self.kwargs['pk'])
|
||||
revisions = reversion.get_for_object(thisEvent)
|
||||
revisions = reversion.get_unique_for_object(thisEvent)
|
||||
items = []
|
||||
for revisionNo, thisRevision in enumerate(revisions):
|
||||
thisItem = {}
|
||||
thisItem = {'pk': thisRevision.pk}
|
||||
thisItem['revision'] = thisRevision.revision
|
||||
logger.info(thisRevision.revision.version_set.all())
|
||||
if revisionNo >= len(revisions)-1:
|
||||
@@ -233,14 +233,32 @@ class EventRevisions(generic.ListView):
|
||||
|
||||
return context
|
||||
|
||||
class EventRevision(generic.DetailView):
|
||||
class EventRevision(generic.TemplateView):
|
||||
model = reversion.revisions.Revision
|
||||
template_name = "RIGS/event_revision.html"
|
||||
template_name = "RIGS/event_detail.html"
|
||||
|
||||
def get_queryset(self):
|
||||
pk=self.kwargs['pk']
|
||||
thisVersion = get_object_or_404(reversion.models.Revision, pk=self.kwargs['pk'])
|
||||
#items = reversion.revisions.Version
|
||||
#thisVersion.
|
||||
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)
|
||||
|
||||
return self.model.objects.filter(pk=pk)
|
||||
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
|
||||
@@ -0,0 +1,13 @@
|
||||
{% extends 'base.html' %}
|
||||
|
||||
{% block title %}Versions{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
{% for field, change in diff.items %}
|
||||
{{ change }}<br>
|
||||
{% autoescape off %}
|
||||
{{ change }}
|
||||
{% endautoescape %}
|
||||
<br>
|
||||
{% endfor %}
|
||||
{% endblock %}
|
||||
@@ -26,7 +26,7 @@
|
||||
<tbody>
|
||||
{% for version in object_list %}
|
||||
<tr>
|
||||
<td>{{ version.revision.pk }}</td>
|
||||
<td>{{ version.pk }}</td>
|
||||
<td>{{ version.revision.date_created }}</td>
|
||||
<td>{{ version.revision.user.name }}</td>
|
||||
<td>{% for key, old, new in version.changes %}
|
||||
|
||||
@@ -79,12 +79,15 @@ urlpatterns = patterns('',
|
||||
url(r'^event/archive/$', login_required()(rigboard.EventArchive.as_view()),
|
||||
name='event_archive'),
|
||||
|
||||
url(r'^event_revisions/(?P<pk>\d+)/$',
|
||||
url(r'^event/(?P<pk>\d+)/version/$',
|
||||
permission_required_with_403('RIGS.view_event')(rigboard.EventRevisions.as_view()),
|
||||
name='event_revisions'),
|
||||
url(r'^event_revision/(?P<pk>\d+)/$',
|
||||
url(r'^event/(?P<pk>\d+)/version/(?P<source>\d+)/$',
|
||||
permission_required_with_403('RIGS.view_event')(rigboard.EventRevision.as_view()),
|
||||
name='event_revisions'),
|
||||
name='event_verions'),
|
||||
url(r'^event/(?P<pk>\d+)/version/(?P<source>\d+)/(?P<dest>\d+)$',
|
||||
permission_required_with_403('RIGS.view_event')(rigboard.EventRevision.as_view()),
|
||||
name='event_version'),
|
||||
|
||||
# Finance
|
||||
url(r'^invoice/$',
|
||||
|
||||
Reference in New Issue
Block a user