Ejemplo n.º 1
0
session_cache_limiter(false);
session_start();
// Launch Whoops
$app->add(new WhoopsMiddleware());
// Load the translator
// replace en_US with the language that the user has selected, and stored in a cookie (aka: load cookie, get language, use language)
$translator = new \Symfony\Component\Translation\Translator("en_US", new \Symfony\Component\Translation\MessageSelector());
$translator->setFallbackLocales(array("en_US"));
$translator->addLoader("php", new \Symfony\Component\Translation\Loader\PhpFileLoader());
$languageFiles = glob(__DIR__ . "/lang/*.php");
foreach ($languageFiles as $langFile) {
    $translator->addResource("php", $langFile, str_replace(".php", "", basename($langFile)));
}
// Setup logging
$app->hook("slim.after.router", function ($msg = null) use($app) {
    $data = array("Request URL" => $app->request->getUrl() . $app->request->getPathInfo(), "Request referrer" => $app->request->getReferer(), "Client IP" => $app->request->getIp(), "User Agent" => $app->request->getUserAgent(), "Script Name" => $app->request->getScriptName());
    $app->Logging->log("info", "", $data);
});
// Prepare view
$app->view(new Twig());
$app->view->parserExtensions = array(new \Slim\Views\TwigExtension(), new \Symfony\Bridge\Twig\Extension\TranslationExtension($translator));
$app->view->parserOptions = $config['twig'];
// Load the lib/Model loader
if (file_exists(__DIR__ . "/src/Loader.php")) {
    require_once __DIR__ . "/src/Loader.php";
} else {
    throw new Exception("Loader.php could not be found");
}
// load the additional configs
$configFiles = glob(__DIR__ . "/config/*.php");
foreach ($configFiles as $configFile) {
    require_once $configFile;