/** * @param array $configuration * @throws InvalidConfigurationException */ public function loadSettings(array $configuration) { $keys_default = array("mvc", "site_path", "tmp_path", "log_path"); if (!Util::checkIfKeysExists($configuration, $keys_default)) { throw new InvalidConfigurationException("Invalid configuration"); } unset($keys_default); $route = isset($configuration['route']) ? $configuration['route'] : []; $mvc = $configuration['mvc']; unset($configuration['route'], $configuration['mvc']); $this->container = $configuration; $this->loadMVCSettings($mvc); $this->loadRouteSettings($route); $this->setSitePath($this->container["site_path"]); $this->setTmpPath($this->container["tmp_path"]); $this->setLogPath($this->container["log_path"]); if (isset($configuration["conf"])) { Conf::loadContainer($configuration['conf']); unset($configuration["conf"]); } }