def __init__(self, context, request): super(EventGenerationHelperView, self).__init__(context, request) if getattr(self.real_context, 'occurrence', False): self.dates = dates_for_display(self.real_context) self.real_context = self.real_context.base_event else: self.dates = dates_for_display(self.real_context)
def test_prep_display_wholeday_differentdays(self): tz = pytz.timezone("Europe/Vienna") event = createContentInContainer( self.portal, "plone.app.event.dx.event", id="event", start=tz.localize(datetime(2000, 10, 12, 0, 0, 0)), end=tz.localize(datetime(2000, 10, 13, 23, 59, 59)), whole_day=True, ) self.assertEqual( dates_for_display(event), { "start_date": u"Oct 12, 2000", "start_time": None, "start_iso": "2000-10-12", "end_date": u"Oct 13, 2000", "end_time": None, "end_iso": "2000-10-13", "same_day": False, "same_time": False, "whole_day": True, "open_end": False, }, )
def test_prep_display_wholeday_differentdays(self): event_id = self.portal.invokeFactory( 'plone.app.event.dx.event', id="event", start=datetime.datetime(2000, 10, 12, 6, 0, 0), end=datetime.datetime(2000, 10, 13, 18, 0, 0), timezone="Europe/Vienna", whole_day=True, open_end=False ) event = self.portal[event_id] self.assertEqual( dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': None, 'start_iso': '2000-10-12', 'end_date': u'Oct 13, 2000', 'end_time': None, 'end_iso': '2000-10-13', 'same_day': False, 'same_time': False, 'whole_day': True, 'open_end': False, } )
def __call__(self, occ): """Return a formatted date string. :param occ: An event or occurrence. :type occ: IEvent, IOccurrence or IEventAccessor based object :returns: Formatted date string for display. :rtype: string """ self.date_dict = dates_for_display(occ) return self.template(self)
def __call__(self, occ): """Return a formatted date string. :param occ: An event or occurrence. :type occ: IEvent, IOccurrence or IEventAccessor based object :returns: Formatted date string for display. :rtype: string """ self.date_dict = dates_for_display(occ) if self.date_dict is None: # Don't break for potential Events without start/end. return u"" return self.template(self)
def test_prep_display_with_time(self): event_id = self.portal.invokeFactory('plone.app.event.dx.event', id="event", start=datetime.datetime(2000, 10, 12, 6, 0, 0), end=datetime.datetime(2000, 10, 12, 18, 0, 0), timezone="Europe/Vienna") event = self.portal[event_id] self.assertEqual(dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': u'06:00 AM', 'start_iso': u'2000-10-12T06:00:00+02:00', 'end_date': u'Oct 12, 2000', 'end_time': u'06:00 PM', 'end_iso': u'2000-10-12T18:00:00+02:00', 'same_day': True, 'same_time': False, 'whole_day': False, 'open_end': False, })
def test_prep_display_with_time(self): event_id = self.portal.invokeFactory('Event', id="event", startDate='2000/10/12 06:00:00', endDate='2000/10/12 18:00:00', timezone="Europe/Vienna") event = self.portal[event_id] self.assertEqual(dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': u'06:00 AM', 'start_iso': u'2000-10-12T06:00:00+02:00', 'end_date': u'Oct 12, 2000', 'end_time': u'06:00 PM', 'end_iso': u'2000-10-12T18:00:00+02:00', 'same_day': True, 'same_time': False, 'whole_day': False, 'open_end': False, })
def test_prep_display_wholeday_differentdays(self): event_id = self.portal.invokeFactory('Event', id="event", startDate='2000/10/12 06:00:00', endDate='2000/10/13 18:00:00', timezone="Europe/Vienna", wholeDay=True) event = self.portal[event_id] self.assertEqual(dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': None, 'start_iso': u'2000-10-12', 'end_date': u'Oct 13, 2000', 'end_time': None, 'end_iso': u'2000-10-13', 'same_day': False, 'same_time': False, 'whole_day': True, 'open_end': False, })
def test_prep_display_wholeday_sameday(self): event_id = self.portal.invokeFactory('plone.app.event.dx.event', id="event", start=datetime.datetime(2000, 10, 12, 6, 0, 0), end=datetime.datetime(2000, 10, 12, 18, 0, 0), timezone="Europe/Vienna", whole_day=True) event = self.portal[event_id] self.assertEqual(dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': None, 'start_iso': u'2000-10-12T00:00:00+02:00', 'end_date': u'Oct 12, 2000', 'end_time': None, 'end_iso': u'2000-10-12T23:59:59+02:00', 'same_day': True, 'same_time': False, 'whole_day': True, 'url': 'http://nohost/plone/event' })
def test_prep_display_wholeday_sameday(self): event_id = self.portal.invokeFactory('Event', id="event", startDate='2000/10/12 06:00:00', endDate='2000/10/12 18:00:00', timezone="Europe/Vienna", wholeDay=True) event = self.portal[event_id] self.assertEqual(dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': None, 'start_iso': u'2000-10-12T00:00:00+02:00', 'end_date': u'Oct 12, 2000', 'end_time': None, 'end_iso': u'2000-10-12T23:59:59+02:00', 'same_day': True, 'same_time': False, 'whole_day': True, 'url': 'http://nohost/plone/event' })
def test_prep_display_with_time(self): tz = pytz.timezone("Europe/Vienna") event = createContentInContainer( self.portal, 'plone.app.event.dx.event', id="event", start=tz.localize(datetime(2000, 10, 12, 6, 0, 0)), end=tz.localize(datetime(2000, 10, 12, 18, 0, 0))) self.assertEqual( dates_for_display(event), { 'start_date': u'Oct 12, 2000', 'start_time': u'06:00 AM', 'start_iso': '2000-10-12T06:00:00+02:00', 'end_date': u'Oct 12, 2000', 'end_time': u'06:00 PM', 'end_iso': '2000-10-12T18:00:00+02:00', 'same_day': True, 'same_time': False, 'whole_day': False, 'open_end': False, })
def format_event_dates(context, start, end, whole_day=False): formated_dates = dates_for_display(context) if formated_dates['same_day'] and whole_day: return '%s' % formated_dates['start_date'] elif formated_dates['same_day'] and formated_dates['same_time']: return '%s %s' % (formated_dates['start_date'], formated_dates['start_time']) elif formated_dates['same_day']: return '%s %s - %s' % (formated_dates['start_date'], formated_dates['start_time'], formated_dates['end_time']) elif whole_day: return '%s - %s' % (formated_dates['start_date'], formated_dates['end_date']) else: return '%s %s - %s %s' % (formated_dates['start_date'], formated_dates['start_time'], formated_dates['end_time'], formated_dates['end_time'])
def test_prep_display_wholeday_differentdays(self): tz = pytz.timezone("Europe/Vienna") event = createContentInContainer( self.portal, 'plone.app.event.dx.event', id="event", start=tz.localize(datetime(2000, 10, 12, 0, 0, 0)), end=tz.localize(datetime(2000, 10, 13, 23, 59, 59)), whole_day=True) self.assertEqual( dates_for_display(event), { 'start_date': u'Oct 12, 2000', 'start_time': None, 'start_iso': '2000-10-12', 'end_date': u'Oct 13, 2000', 'end_time': None, 'end_iso': '2000-10-13', 'same_day': False, 'same_time': False, 'whole_day': True, 'open_end': False, })
def test_prep_display_with_time(self): event_id = self.portal.invokeFactory( 'plone.app.event.dx.event', id="event", start=datetime.datetime(2000, 10, 12, 6, 0, 0), end=datetime.datetime(2000, 10, 12, 18, 0, 0), timezone="Europe/Vienna" ) event = self.portal[event_id] self.assertEqual( dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': u'06:00 AM', 'start_iso': u'2000-10-12T06:00:00+02:00', 'end_date': u'Oct 12, 2000', 'end_time': u'06:00 PM', 'end_iso': u'2000-10-12T18:00:00+02:00', 'same_day': True, 'same_time': False, 'whole_day': False, 'open_end': False, } )
def test_prep_display_with_time(self): event_id = self.portal.invokeFactory( 'Event', id="event", startDate='2000/10/12 06:00:00', endDate='2000/10/12 18:00:00', timezone="Europe/Vienna" ) event = self.portal[event_id] self.assertEqual( dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': u'06:00 AM', 'start_iso': '2000-10-12T06:00:00+02:00', 'end_date': u'Oct 12, 2000', 'end_time': u'06:00 PM', 'end_iso': '2000-10-12T18:00:00+02:00', 'same_day': True, 'same_time': False, 'whole_day': False, 'open_end': False, } )
def test_prep_display_with_time(self): tz = pytz.timezone("Europe/Vienna") event = createContentInContainer( self.portal, 'plone.app.event.dx.event', id="event", start=tz.localize(datetime(2000, 10, 12, 6, 0, 0)), end=tz.localize(datetime(2000, 10, 12, 18, 0, 0)) ) self.assertEqual( dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': u'06:00 AM', 'start_iso': '2000-10-12T06:00:00+02:00', 'end_date': u'Oct 12, 2000', 'end_time': u'06:00 PM', 'end_iso': '2000-10-12T18:00:00+02:00', 'same_day': True, 'same_time': False, 'whole_day': False, 'open_end': False, } )
def test_prep_display_wholeday_differentdays(self): event_id = self.portal.invokeFactory( 'Event', id="event", startDate='2000/10/12 06:00:00', endDate='2000/10/13 18:00:00', timezone="Europe/Vienna", wholeDay=True ) event = self.portal[event_id] self.assertEqual( dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': None, 'start_iso': '2000-10-12', 'end_date': u'Oct 13, 2000', 'end_time': None, 'end_iso': '2000-10-13', 'same_day': False, 'same_time': False, 'whole_day': True, 'open_end': False, } )
def test_prep_display_wholeday_differentdays(self): tz = pytz.timezone("Europe/Vienna") event = createContentInContainer( self.portal, 'plone.app.event.dx.event', id="event", start=tz.localize(datetime(2000, 10, 12, 0, 0, 0)), end=tz.localize(datetime(2000, 10, 13, 23, 59, 59)), whole_day=True ) self.assertEqual( dates_for_display(event), {'start_date': u'Oct 12, 2000', 'start_time': None, 'start_iso': '2000-10-12', 'end_date': u'Oct 13, 2000', 'end_time': None, 'end_iso': '2000-10-13', 'same_day': False, 'same_time': False, 'whole_day': True, 'open_end': False, } )
def test_prep_display_with_time(self): tz = pytz.timezone("Europe/Vienna") event = createContentInContainer( self.portal, "plone.app.event.dx.event", id="event", start=tz.localize(datetime(2000, 10, 12, 6, 0, 0)), end=tz.localize(datetime(2000, 10, 12, 18, 0, 0)), ) self.assertEqual( dates_for_display(event), { "start_date": u"Oct 12, 2000", "start_time": u"06:00 AM", "start_iso": "2000-10-12T06:00:00+02:00", "end_date": u"Oct 12, 2000", "end_time": u"06:00 PM", "end_iso": "2000-10-12T18:00:00+02:00", "same_day": True, "same_time": False, "whole_day": False, "open_end": False, }, )