Exemplo n.º 1
0
 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)
Exemplo n.º 2
0
 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)
Exemplo n.º 3
0
 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,
         },
     )
Exemplo n.º 4
0
 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,
          }
     )
Exemplo n.º 5
0
    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,
             })
Exemplo n.º 10
0
 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'
             })
Exemplo n.º 11
0
 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'
             })
Exemplo n.º 12
0
 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,
         })
Exemplo n.º 13
0
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'])
Exemplo n.º 14
0
 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,
         })
Exemplo n.º 15
0
 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,
          }
     )
Exemplo n.º 16
0
 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,
          }
     )
Exemplo n.º 17
0
 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,
          }
     )
Exemplo n.º 18
0
 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,
          }
     )
Exemplo n.º 19
0
 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,
          }
     )
Exemplo n.º 20
0
 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,
         },
     )