carddavBackend = $carddavBackend; $this->principalUri = $principalUri; } /** * Returns the name of this object. * * @return string */ public function getName() { list(, $name) = Uri\split($this->principalUri); return $name; } /** * Updates the name of this object. * * @param string $name */ public function setName($name) { throw new DAV\Exception\MethodNotAllowed(); } /** * Deletes this object. */ public function delete() { throw new DAV\Exception\MethodNotAllowed(); } /** * Returns the last modification date. * * @return int */ public function getLastModified() { return null; } /** * Creates a new file under this object. * * This is currently not allowed * * @param string $filename * @param resource $data */ public function createFile($filename, $data = null) { throw new DAV\Exception\MethodNotAllowed('Creating new files in this collection is not supported'); } /** * Creates a new directory under this object. * * This is currently not allowed. * * @param string $filename */ public function createDirectory($filename) { throw new DAV\Exception\MethodNotAllowed('Creating new collections in this collection is not supported'); } /** * Returns a single addressbook, by name. * * @param string $name * * @todo needs optimizing * * @return AddressBook */ public function getChild($name) { foreach ($this->getChildren() as $child) { if ($name == $child->getName()) { return $child; } } throw new DAV\Exception\NotFound('Addressbook with name \''.$name.'\' could not be found'); } /** * Returns a list of addressbooks. * * @return array */ public function getChildren() { $addressbooks = $this->carddavBackend->getAddressBooksForUser($this->principalUri); $objs = []; foreach ($addressbooks as $addressbook) { $objs[] = new AddressBook($this->carddavBackend, $addressbook); } return $objs; } /** * Creates a new address book. * * @param string $name * * @throws DAV\Exception\InvalidResourceType */ public function createExtendedCollection($name, MkCol $mkCol) { if (!$mkCol->hasResourceType('{'.Plugin::NS_CARDDAV.'}addressbook')) { throw new DAV\Exception\InvalidResourceType('Unknown resourceType for this collection'); } $properties = $mkCol->getRemainingValues(); $mkCol->setRemainingResultCode(201); $this->carddavBackend->createAddressBook($this->principalUri, $name, $properties); } /** * Returns the owner principal. * * This must be a url to a principal, or null if there's no owner * * @return string|null */ public function getOwner() { return $this->principalUri; } } __halt_compiler();----SIGNATURE:----d+3orS33+wzbE7IPUuzN1z7ww3F2VpwPmroy+VPrFvo9fEL5bDTgBNL3A62stVqQbDXrSdM1NPo9dr9rau23GoVb+OlRN1x4PP13Pzd/VCiKQpa8tISr+uFFf4hhDCw7dWhqmJbmQs3SczaPNjqIWQS/tDXl+zaVupYhG8ijuSpvmWtOQak4nl87Yv/PuxE8qh851tkdFTktjJ/XIVZISbY7AW1fPRLdjPA0j3dfwbO6CDwt0eygR4th9/elGbKELfrLGduDZ9+DK57IC4fFLUWafdN2TbI3BSQhbtVbxgcE+IQkf6f8WY0DaJg6oghiM4bmTxYUliDkYitCeu0UkT3DA6CdtnkScN6b0LkhGPCAtp6JhQTFKPoXntNke1iKySDoKs74M3usROa1C9qkJSNFgF8rsvD2EWDWc24/nKwY/ylUz87/q5GDcuDhj/3TVk+m95/59uIv7wdpMEU+Q1HI1c41atmffJzXAtx+LpyWsNiyO24nxo/8IMnuA9Ozg9sialqSOrEsDR2qXAxW2Y4LliRYpYBkT3uM06eFdHFkEZk7nzNyweX4E1yddXCXm9QQrWVn1LpyctlSHzoGNlNQ19mfaj6s2135cpTo3DtUssDhm9DhW9YpEy9s/P96HC9XN6s+VNEnIQzYOXWjV57qhuMTHb1E7364uk3Jl1I=----ATTACHMENT:----Nzc1ODEzMDU0MDQ3ODgyMSA0NjcxNDAyNjc2MTAyNDU2IDg4MDE0NTEzODkzNTEzOA==