Пример #1
0
    def has_hour(self, date):
        return date_speller(self, date)['hour'] or date_speller(self, date)['minute']

# View class
# The view will automatically use a similarly named template in
# templates called contractview.pt .
# Template filenames should be all lower case.
# The view will render when you request a content object with this
# interface with "/@@view" appended unless specified otherwise
# using grok.name below.
# This will make this view the default view for your content-type
Пример #2
0
    def get_formatted_date(self):
        date_formated = u''
        event = self.real_context
        date_spel_start = date_speller(event, self.dates.get('start_iso'))
        date_spel_end = date_speller(event, self.dates.get('end_iso'))
        # day and month
        if self.dates.get('same_day'):
            date_formated = u'{0} {1} {2}'.format(
                date_spel_start.get('day'),
                date_spel_start.get('month'),
                date_spel_start.get('year'))
        elif self.is_same_month(date_spel_start, date_spel_end):
            date_formated = u'{0} au {1} {2} {3}'.format(
                date_spel_start.get('day'),
                date_spel_end.get('day'),
                date_spel_start.get('month'),
                date_spel_start.get('year'))
        else:
            date_formated += u'{0} {1} {2} au {3} {4} {5}'.format(
                date_spel_start.get('day'),
                date_spel_start.get('month'),
                date_spel_start.get('year'),
                date_spel_end.get('day'),
                date_spel_end.get('month'),
                date_spel_start.get('year'))

        # hour
        if not self.dates.get('whole_day'):
            if self.dates.get('open_end'):
                date_formated += _(u' à ')
                date_formated += u'{0}:{1}'.format(
                    date_spel_start.get('hour'),
                    date_spel_start.get('minute2'))
            else:
                date_formated += _(u' de ')
                date_formated += u'{0}:{1}'.format(
                    date_spel_start.get('hour'),
                    date_spel_start.get('minute2'))
                date_formated += _(u' à ')
                date_formated += u'{0}:{1}'.format(
                    date_spel_end.get('hour'),
                    date_spel_end.get('minute2')
                )
        return date_formated
Пример #3
0
    def test_date_speller(self):
        DT = DateTime(2015, 6, 6, 1, 2, 3)
        date_spelled = date_speller(self.portal, DT)
        self.assertEqual(date_spelled['year'], 2015)
        self.assertEqual(date_spelled['month'], 6)
        self.assertEqual(date_spelled['month2'], '06')
        self.assertEqual(date_spelled['day'], 6)
        self.assertEqual(date_spelled['day2'], '06')
        self.assertEqual(date_spelled['hour'], 1)
        self.assertEqual(date_spelled['hour2'], '01')
        self.assertEqual(date_spelled['minute'], 2)
        self.assertEqual(date_spelled['minute2'], '02')
        self.assertEqual(date_spelled['second'], 3)
        self.assertEqual(date_spelled['second2'], '03')
        self.assertEqual(date_spelled['week'], 23)

        # locale specific
        # TODO: test better.
        self.assertTrue(isinstance(date_spelled['wkday'], int))
        self.assertTrue(isinstance(date_spelled['month_name'], basestring))
        self.assertTrue(isinstance(date_spelled['month_abbr'], basestring))
        self.assertTrue(isinstance(date_spelled['wkday_name'], basestring))
        self.assertTrue(isinstance(date_spelled['wkday_abbr'], basestring))
Пример #4
0
    def test_date_speller(self):
        DT = DateTime(2015, 6, 6, 1, 2, 3)
        date_spelled = date_speller(self.portal, DT)
        self.assertEqual(date_spelled["year"], 2015)
        self.assertEqual(date_spelled["month"], 6)
        self.assertEqual(date_spelled["month2"], "06")
        self.assertEqual(date_spelled["day"], 6)
        self.assertEqual(date_spelled["day2"], "06")
        self.assertEqual(date_spelled["hour"], 1)
        self.assertEqual(date_spelled["hour2"], "01")
        self.assertEqual(date_spelled["minute"], 2)
        self.assertEqual(date_spelled["minute2"], "02")
        self.assertEqual(date_spelled["second"], 3)
        self.assertEqual(date_spelled["second2"], "03")
        self.assertEqual(date_spelled["week"], 23)

        # locale specific
        # TODO: test better.
        self.assertTrue(isinstance(date_spelled["wkday"], int))
        self.assertTrue(isinstance(date_spelled["month_name"], basestring))
        self.assertTrue(isinstance(date_spelled["month_abbr"], basestring))
        self.assertTrue(isinstance(date_spelled["wkday_name"], basestring))
        self.assertTrue(isinstance(date_spelled["wkday_abbr"], basestring))
Пример #5
0
    def header_string(self):
        start, end = self._start_end
        start_dict = start and date_speller(self.context, start) or None
        end_dict = end and date_speller(self.context, end) or None

        mode = self.mode
        main_msgid = None
        sub_msgid = None
        if mode == 'all':
            main_msgid = _(u"all_events", default=u"All events")

        elif mode == 'past':
            main_msgid = _(u"past_events", default=u"Past events")

        elif mode == 'future':
            main_msgid = _(u"future_events", default=u"Future events")

        elif mode == 'now':
            main_msgid = _(u"todays_upcoming_events",
                           default=u"Todays upcoming events")

        elif mode == 'today':
            main_msgid = _(u"todays_events", default=u"Todays events")

        elif mode == '7days':
            main_msgid = _(u"7days_events", default=u"Events in next 7 days.")
            sub_msgid = _(u"events_from_until",
                      default=u"${from} until ${until}.",
                      mapping={
                          'from': "%s, %s. %s %s" % (
                                start_dict['wkday'],
                                start.day,
                                start_dict['month'],
                                start.year),
                          'until': "%s, %s. %s %s" % (
                                end_dict['wkday'],
                                end.day,
                                end_dict['month'],
                                end.year),
                        }
                    )

        elif mode == 'day':
            main_msgid = _(u"events_on_day",
                      default=u"Events on ${day}",
                      mapping={
                          'day': "%s, %s. %s %s" % (
                                start_dict['wkday'],
                                start.day,
                                start_dict['month'],
                                start.year),
                        }
                    )

        elif mode == 'week':
            main_msgid = _(u"events_in_week",
                           default=u"Events in week ${weeknumber}",
                           mapping={'weeknumber': start.isocalendar()[1]})
            sub_msgid = _(u"events_from_until",
                      default=u"${from} until ${until}.",
                      mapping={
                          'from': "%s, %s. %s %s" % (
                                start_dict['wkday'],
                                start.day,
                                start_dict['month'],
                                start.year),
                          'until': "%s, %s. %s %s" % (
                                end_dict['wkday'],
                                end.day,
                                end_dict['month'],
                                end.year),
                        }
                    )

        elif mode == 'month':
            main_msgid = _(u"events_in_month",
                      default=u"Events in ${month} ${year}",
                      mapping={
                          'month': start_dict['month'],
                          'year': start.year,
                        }
                    )

        trans = self.context.translate
        return {'main': main_msgid and trans(main_msgid) or '',
                'sub': sub_msgid and trans(sub_msgid) or ''}
Пример #6
0
 def date_speller(self, date):
     return date_speller(self.context, date)
Пример #7
0
 def date_speller(self, date):
     return date_speller(self.context, date)
Пример #8
0
    def header_string(self):
        start, end = self._start_end
        start_dict = start and date_speller(self.context, start) or None
        end_dict = end and date_speller(self.context, end) or None

        mode = self.mode
        main_msgid = None
        sub_msgid = None
        if mode == 'all':
            main_msgid = _(u"all_events", default=u"All events")

        elif mode == 'past':
            main_msgid = _(u"past_events", default=u"Past events")

        elif mode == 'future':
            main_msgid = _(u"future_events", default=u"Future events")

        elif mode == 'now':
            main_msgid = _(u"todays_upcoming_events",
                           default=u"Todays upcoming events")

        elif mode == 'today':
            main_msgid = _(u"todays_events", default=u"Todays events")

        elif mode == '7days':
            main_msgid = _(u"7days_events", default=u"Events in next 7 days.")
            sub_msgid = _(
                u"events_from_until",
                default=u"${from} until ${until}.",
                mapping={
                    'from':
                    "%s, %s. %s %s" % (start_dict['wkday'], start.day,
                                       start_dict['month'], start.year),
                    'until':
                    "%s, %s. %s %s" %
                    (end_dict['wkday'], end.day, end_dict['month'], end.year),
                })

        elif mode == 'day':
            main_msgid = _(u"events_on_day",
                           default=u"Events on ${day}",
                           mapping={
                               'day':
                               "%s, %s. %s %s" %
                               (start_dict['wkday'], start.day,
                                start_dict['month'], start.year),
                           })

        elif mode == 'week':
            main_msgid = _(u"events_in_week",
                           default=u"Events in week ${weeknumber}",
                           mapping={'weeknumber': start.isocalendar()[1]})
            sub_msgid = _(
                u"events_from_until",
                default=u"${from} until ${until}.",
                mapping={
                    'from':
                    "%s, %s. %s %s" % (start_dict['wkday'], start.day,
                                       start_dict['month'], start.year),
                    'until':
                    "%s, %s. %s %s" %
                    (end_dict['wkday'], end.day, end_dict['month'], end.year),
                })

        elif mode == 'month':
            main_msgid = _(u"events_in_month",
                           default=u"Events in ${month} ${year}",
                           mapping={
                               'month': start_dict['month'],
                               'year': start.year,
                           })

        trans = self.context.translate
        return {
            'main': main_msgid and trans(main_msgid) or '',
            'sub': sub_msgid and trans(sub_msgid) or ''
        }