forked from CGM_Public/pretix_original
Cloning events: Copy *relative* admission time
This commit is contained in:
@@ -559,7 +559,8 @@ class Event(EventMixin, LoggedModel):
|
||||
|
||||
self.plugins = other.plugins
|
||||
self.is_public = other.is_public
|
||||
self.date_admission = other.date_admission
|
||||
if other.date_admission:
|
||||
self.date_admission = self.date_from + (other.date_admission - other.date_from)
|
||||
self.testmode = other.testmode
|
||||
self.save()
|
||||
self.log_action('pretix.object.cloned', data={'source': other.slug, 'source_id': other.pk})
|
||||
|
||||
@@ -1888,7 +1888,8 @@ class EventTest(TestCase):
|
||||
def test_copy(self):
|
||||
event1 = Event.objects.create(
|
||||
organizer=self.organizer, name='Download', slug='ab1234',
|
||||
date_from=datetime.datetime(2013, 12, 26, tzinfo=datetime.timezone.utc),
|
||||
date_from=datetime.datetime(2013, 12, 26, 9, 0, 0, tzinfo=datetime.timezone.utc),
|
||||
date_admission=datetime.datetime(2013, 12, 26, 8, 0, 0, tzinfo=datetime.timezone.utc),
|
||||
is_public=True,
|
||||
)
|
||||
tr7 = event1.tax_rules.create(rate=Decimal('7.00'))
|
||||
@@ -1919,7 +1920,7 @@ class EventTest(TestCase):
|
||||
|
||||
event2 = Event.objects.create(
|
||||
organizer=self.organizer, name='Download', slug='ab54321',
|
||||
date_from=datetime.datetime(2013, 12, 26, tzinfo=datetime.timezone.utc)
|
||||
date_from=datetime.datetime(2013, 12, 27, 9, 0, 0, tzinfo=datetime.timezone.utc),
|
||||
)
|
||||
event2.copy_data_from(event1)
|
||||
|
||||
@@ -1927,6 +1928,8 @@ class EventTest(TestCase):
|
||||
a.refresh_from_db()
|
||||
assert a.event == event1
|
||||
|
||||
assert event2.date_admission == datetime.datetime(2013, 12, 27, 8, 0, 0, tzinfo=datetime.timezone.utc)
|
||||
|
||||
trnew = event2.tax_rules.first()
|
||||
assert trnew.rate == tr7.rate
|
||||
c1new = event2.categories.get(name='Tickets')
|
||||
|
||||
Reference in New Issue
Block a user