/** * Reloads settings for a given element * @param CmsElement $cmsElement The element which settings should be reloaded * @param CmsPage $cmsPage The CmsPage in which context the settings for the element should be loaded */ public function reloadSettings(CmsElement $cmsElement, CmsPage $cmsPage) { if ($cmsElement instanceof CmsElementSettingsLoadable === false) { return; } /** @var CmsElementSettingsLoadable $cmsElement */ $cmsElement->resetSettingsFound(); /** @var CmsElementSettingsLoadable $cmsElement */ $settings = $cmsElement->getSettingsForElements($this->db, array($cmsElement->getID()), PageModel::getPageIdsRecursive($cmsPage)); foreach ($settings as $settingEntries) { /** @var CmsElement */ $settingsEntry = $this->combineSettings($settingEntries); $cmsElement->setSettings($settingsEntry); } }