imip-agent

Changeset

751:67dfe17b2f9d
2015-09-18 Paul Boddie raw files shortlog changelog graph Updated request access to support request types.
imipweb/calendar.py (file) imipweb/event.py (file) imipweb/resource.py (file)
     1.1 --- a/imipweb/calendar.py	Fri Sep 18 20:05:42 2015 +0200
     1.2 +++ b/imipweb/calendar.py	Fri Sep 18 23:44:36 2015 +0200
     1.3 @@ -176,8 +176,8 @@
     1.4  
     1.5              page.ul()
     1.6  
     1.7 -            for uid, recurrenceid in requests:
     1.8 -                obj = self.get_stored_object(uid, recurrenceid)
     1.9 +            for uid, recurrenceid, request_type in requests:
    1.10 +                obj = self._get_object(uid, recurrenceid)
    1.11                  if obj:
    1.12                      page.li()
    1.13                      page.a(obj.get_value("SUMMARY"), href="#request-%s-%s" % (uid, recurrenceid or ""))
    1.14 @@ -705,7 +705,7 @@
    1.15                              # Only link to events if they are not being
    1.16                              # updated by requests.
    1.17  
    1.18 -                            if not p.summary or (p.uid, p.recurrenceid) in self._get_requests() and group_type != "request":
    1.19 +                            if not p.summary or self._have_request(p.uid, p.recurrenceid) and group_type != "request":
    1.20                                  page.span(p.summary or "(Participant is busy)")
    1.21                              else:
    1.22                                  page.a(p.summary, href=self.link_to(p.uid, p.recurrenceid))
     2.1 --- a/imipweb/event.py	Fri Sep 18 20:05:42 2015 +0200
     2.2 +++ b/imipweb/event.py	Fri Sep 18 23:44:36 2015 +0200
     2.3 @@ -430,7 +430,7 @@
     2.4  
     2.5          attendees = self.get_current_attendees(obj)
     2.6          is_attendee = self.user in attendees
     2.7 -        is_request = (obj.get_uid(), obj.get_recurrenceid()) in self._get_requests()
     2.8 +        is_request = self._have_request(obj.get_uid(), obj.get_recurrenceid())
     2.9  
    2.10          # Show appropriate options depending on the role of the user.
    2.11  
     3.1 --- a/imipweb/resource.py	Fri Sep 18 20:05:42 2015 +0200
     3.2 +++ b/imipweb/resource.py	Fri Sep 18 23:44:36 2015 +0200
     3.3 @@ -127,13 +127,17 @@
     3.4              self.requests = self.store.get_requests(self.user)
     3.5          return self.requests
     3.6  
     3.7 +    def _have_request(self, uid, recurrenceid=None):
     3.8 +        requests = self._get_requests()
     3.9 +        return self.store.have_request(requests, uid, recurrenceid)
    3.10 +
    3.11      def _get_request_summary(self):
    3.12  
    3.13          "Return a list of periods comprising the request summary."
    3.14  
    3.15          summary = []
    3.16  
    3.17 -        for uid, recurrenceid in self._get_requests():
    3.18 +        for uid, recurrenceid, request_type in self._get_requests():
    3.19              obj = self.get_stored_object(uid, recurrenceid)
    3.20              if obj:
    3.21                  recurrenceids = self._get_active_recurrences(uid)