/** * Hooks into the DataObject::populateDefaults() method */ public function populateDefaults() { if (empty($this->owner->ID) && $this->owner instanceof SiteConfig && self::$enable_siteconfig_generation) { // Use enable_siteconfig_generation to prevent infinite loop during object creation self::$enable_siteconfig_generation = false; $this->populateSiteConfigDefaults(); self::$enable_siteconfig_generation = true; } }