/** * propagate changes */ public function propagate() { $updater = $this->getUpdater(); if (!$updater) { return; } $updater->propagate($this->backend->getId(), $this->getPrivateUri(), $this->getUserId()); }
/** * add information about support subscription types * @param array $data * @param IBackend $backend * @return $this */ private function setSubscriptionTypes(array &$data, IBackend $backend) { $data['subscriptions'] = $backend->getBackendAPI()->getSubscriptionTypes(); }
/** * @param IBackend $backend * @param ICalendar $calendar * @param ICalendar $cachedCalendar * @return ICalendar */ protected function resetUnsupportedProperties(IBackend $backend, ICalendar $calendar, ICalendar $cachedCalendar) { $backendAPI = $backend->getBackendAPI(); if (!$backendAPI->canStoreColor()) { $calendar->setColor($cachedCalendar->getColor()); } if (!$backendAPI->canStoreComponents()) { $calendar->setComponents($cachedCalendar->getComponents()); } if (!$backendAPI->canStoreDescription()) { $calendar->setDescription($cachedCalendar->getDescription()); } if (!$backendAPI->canStoreDisplayname()) { $calendar->setDisplayname($cachedCalendar->getDisplayname()); } if (!$backendAPI->canStoreEnabled()) { $calendar->setEnabled($cachedCalendar->getEnabled()); } if (!$backendAPI->canStoreOrder()) { $calendar->setOrder($cachedCalendar->getOrder()); } return $calendar; }