diff options
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/utils.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py index fa24b3dcb..ed183e4d1 100644 --- a/ishtar_common/utils.py +++ b/ishtar_common/utils.py @@ -811,9 +811,10 @@ def _post_save_geo(sender, **kwargs): new_point = GEOSGeometry( "POINT({} {})".format(instance.x, instance.y), srid=csrs.srid ) - proj_point = instance.point_2d.transform(csrs.srid, clone=True) - if new_point.distance(proj_point) < 0.01: - instance.x, instance.y = None, None + if instance.point_2d: + proj_point = instance.point_2d.transform(csrs.srid, clone=True) + if new_point.distance(proj_point) < 0.01: + instance.x, instance.y = None, None instance.point, instance.point_2d = None, None instance.point_source = None @@ -2042,6 +2043,12 @@ def duplicate_item(item, user=None, data=None): for k in data: setattr(new, k, data[k]) new.save() + if hasattr(user, "user_ptr"): + if hasattr(new, "history_creator"): + new.history_creator = user.user_ptr + if hasattr(new, "history_modifier"): + new.history_modifier = user.user_ptr + new.save() # m2m fields m2m = [ |