/** * Get the up to date model * * @param array $inherits An optional selection of inheritance paths * * @return array The up to date model */ static function getModel($inherits = array()) { if (empty(self::$model)) { if (($model = SHM::get("config-model")) && !self::_isModelCacheDirty($model["hash"])) { self::$model = $model["content"]; } else { self::buildTree(); SHM::put("config-model", array("date" => strftime(CMbDT::ISO_DATETIME), "hash" => self::_getHash(self::$model_raw), "content" => self::$model)); } } if (!empty($inherits)) { if (!is_array($inherits)) { $inherits = array($inherits); } $subset = array(); foreach ($inherits as $_inherit) { $subset[$_inherit] = self::$model[$_inherit]; } return $subset; } return self::$model; }