diff --git a/src/c3nav/editor/models/changedobject.py b/src/c3nav/editor/models/changedobject.py index 3774ad61..42547d20 100644 --- a/src/c3nav/editor/models/changedobject.py +++ b/src/c3nav/editor/models/changedobject.py @@ -146,7 +146,7 @@ class ChangedObject(models.Model): setattr(instance, field.name, field.to_python(value)) elif field.many_to_one or field.one_to_one: if is_created_pk(value): - obj = self.changeset.get_created_object(field.related_model, value) + obj = self.changeset.get_created_object(field.related_model, value, allow_deleted=True) setattr(instance, field.get_cache_name(), obj) else: try: @@ -258,7 +258,7 @@ class ChangedObject(models.Model): return (self.updated_fields or self._m2m_added_cache or self._m2m_removed_cache or self.is_created or (not self.is_created and self.deleted)) - def save(self, *args, **kwargs): + def save(self, *args, standalone=False, **kwargs): if self.changeset.proposed is not None or self.changeset.applied is not None: raise TypeError('can not add change object to uneditable changeset.') self.m2m_added = {name: tuple(values) for name, values in self._m2m_added_cache.items()} @@ -266,12 +266,12 @@ class ChangedObject(models.Model): if not self.does_something: self.stale = True if not self.stale: - if self.changeset.pk is None: + if not standalone and self.changeset.pk is None: self.changeset.save() self.changeset = self.changeset else: self.existing_object_pk = None - if not self.changeset.fill_changes_cache(): + if not standalone and not self.changeset.fill_changes_cache(): self.update_changeset_cache() if not self.stale or self.pk is not None: super().save(*args, **kwargs) diff --git a/src/c3nav/editor/static/editor/css/editor.css b/src/c3nav/editor/static/editor/css/editor.css index 9f5c9da3..5953e7d7 100644 --- a/src/c3nav/editor/static/editor/css/editor.css +++ b/src/c3nav/editor/static/editor/css/editor.css @@ -92,10 +92,6 @@ a.list-group-item .badge { .itemtable td:first-child { padding-left:0; } -.itemtable td:last-child { - padding-right:0; - text-align:right; -} .itemtable tr.highlight td { background-color:#FFFFDD; } @@ -157,34 +153,6 @@ form button.invisiblesubmit { width:23px; padding-right:0; } -.change-group tr td:last-child { - white-space:nowrap; - text-align:right; -} -.change-group tr td .glyphicon { - top:2px; -} -.change-group tr td .tooltip { - font-size:14px; - margin-top: -1px; -} -.change-group tr td:last-child .btn { - margin-top: -6px; - margin-bottom: -2px; - margin-left: 5px; - margin-right: -5px; -} -.change-group .glyphicon-share-alt { - transform: scale(-1, 1); - -webkit-transform: scale(-1, 1); -} -.change-group tr td:last-child>i:last-child { - margin-right: -2px; -} -.change-group tr td:last-child>i { - margin-left: 7px; - margin-right: -2px; -} /* Styles inside leaflet */ .leaflet-container { diff --git a/src/c3nav/editor/templates/editor/changeset.html b/src/c3nav/editor/templates/editor/changeset.html index 2d73279b..222efa03 100644 --- a/src/c3nav/editor/templates/editor/changeset.html +++ b/src/c3nav/editor/templates/editor/changeset.html @@ -24,11 +24,15 @@
+ | {% if obj.edit_url %} {% trans 'Edit' %} + {% elif obj.deleted and can_edit %} + {% endif %} {% if obj.title %} {{ obj.title }} ({{ obj.desc }}) @@ -42,22 +46,10 @@ {% for change in obj.changes %} | |||
---|---|---|---|---|
- | + | {% if change.value %}{% else %}{% endif %}{{ change.title }}{% if change.value %}:{% else %}{% endif %} {{ change.value }} | -- {% if change.apply_problem %} - - {% elif change.has_no_effect %} - - {% endif %} - {% if change.can_restore %} - - {% endif %} - |