code: def status(self):
          
          myNow = timezone.localtime(timezone=self.tz)
          daysDelta = dt.timedelta(days=self.num_days - 1)
          # NB: postponements can be created after the until date
          #     so ignore that
          todayStart = getAwareDatetime(myNow.date(), dt.time.min, self.tz)
          eventStart, event = self.__afterOrPostponedTo(todayStart - daysDelta)
          if eventStart is None:
              return "finished"
          eventFinish = getAwareDatetime(eventStart.date() + daysDelta,
                                         event.time_to, self.tz)
          if event.time_from is None:
              eventStart += _1day
          if eventStart < myNow < eventFinish:
              # if there are two occurences on the same day then we may miss
              # that one of them has started
              return "started"
          if (self.repeat.until and eventFinish < myNow and
              self.__afterOrPostponedTo(myNow)[0] is None):
              # only just wound up, the last occurence was earlier today
              return "finished"
docs: The current status of the event (started, finished or pending).