fclose($handle); $configArray = ep6\JSONHandler::parseJSON($configuration); if (ep6\InputValidator::isEmptyArray($configArray)) { ep6\Logger::warning("ep6\\ConfigLoader\nConfiguration file has no valid JSON."); break; } # handle logging if (!ep6\InputValidator::isEmptyArrayKey($configArray, "logging")) { if (!ep6\InputValidator::isEmptyArrayKey($configArray["logging"], "level")) { ep6\Logger::setLogLevel($configArray["logging"]["level"]); } if (!ep6\InputValidator::isEmptyArrayKey($configArray["logging"], "output")) { ep6\Logger::setOutput($configArray["logging"]["output"]); } if (!ep6\InputValidator::isEmptyArrayKey($configArray["logging"], "outputfile")) { ep6\Logger::setOutputFile($configArray["logging"]["outputfile"]); } } # handle formatting if (!ep6\InputValidator::isEmptyArrayKey($configArray, "formatting")) { foreach ($configArray["formatting"] as $formatKey => $formatSetting) { $formatName = $formatKey . "Formatter"; ${$formatName} = new ep6\Formatter(); if (!ep6\InputValidator::isEmptyArrayKey($formatSetting, "id")) { ${$formatName}->setID($formatSetting["id"]); } if (!ep6\InputValidator::isEmptyArrayKey($formatSetting, "classes") && !ep6\InputValidator::isEmptyArray($formatSetting["classes"])) { foreach ($formatSetting["classes"] as $className) { ${$formatName}->setClass($className); } }