ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
Outbox.php
Go to the documentation of this file.
1 <?php
2 
3 namespace Sabre\CalDAV\Schedule;
4 
5 use Sabre\CalDAV;
6 use Sabre\DAV;
7 use Sabre\DAVACL;
8 
20 class Outbox extends DAV\Collection implements IOutbox {
21 
22  use DAVACL\ACLTrait;
23 
29  protected $principalUri;
30 
37 
38  $this->principalUri = $principalUri;
39 
40  }
41 
49  function getName() {
50 
51  return 'outbox';
52 
53  }
54 
60  function getChildren() {
61 
62  return [];
63 
64  }
65 
73  function getOwner() {
74 
75  return $this->principalUri;
76 
77  }
78 
91  function getACL() {
92 
93  return [
94  [
95  'privilege' => '{' . CalDAV\Plugin::NS_CALDAV . '}schedule-send',
96  'principal' => $this->getOwner(),
97  'protected' => true,
98  ],
99  [
100  'privilege' => '{DAV:}read',
101  'principal' => $this->getOwner(),
102  'protected' => true,
103  ],
104  [
105  'privilege' => '{' . CalDAV\Plugin::NS_CALDAV . '}schedule-send',
106  'principal' => $this->getOwner() . '/calendar-proxy-write',
107  'protected' => true,
108  ],
109  [
110  'privilege' => '{DAV:}read',
111  'principal' => $this->getOwner() . '/calendar-proxy-read',
112  'protected' => true,
113  ],
114  [
115  'privilege' => '{DAV:}read',
116  'principal' => $this->getOwner() . '/calendar-proxy-write',
117  'protected' => true,
118  ],
119  ];
120 
121  }
122 
123 }
getName()
Returns the name of the node.
Definition: Outbox.php:49
The CalDAV scheduling outbox.
Definition: Outbox.php:20
__construct($principalUri)
Constructor.
Definition: Outbox.php:36
getACL()
Returns a list of ACE&#39;s for this node.
Definition: Outbox.php:91
Collection class.
Definition: Collection.php:15
getOwner()
Returns the owner principal.
Definition: Outbox.php:73
getChildren()
Returns an array with all the child nodes.
Definition: Outbox.php:60
const NS_CALDAV
This is the official CalDAV namespace.
Definition: Plugin.php:33
Implement this interface to have a node be recognized as a CalDAV scheduling outbox.
Definition: IOutbox.php:13