/**
* Create twig environment with the options specified in the curry cms configuration.
*
* @param Twig_LoaderInterface $loader
* @return Twig_Environment
*/
private static function createTwigEnvironment(Twig_LoaderInterface $loader)
{
$options = Curry_Core::$config->curry->template->options->toArray();
$twig = new Twig_Environment($loader, $options);
$twig->setParser(new Curry_Twig_Parser($twig));
$twig->addTokenParser(new Curry_Twig_TokenParser_Placeholder());
$twig->addTokenParser(new Curry_Twig_TokenParser_Ia());
$twig->addFunction('url', new Twig_Function_Function('url'));
$twig->addFunction('L', new Twig_Function_Function('L'));
$twig->addFunction('round', new Twig_Function_Function('round'));
$twig->addFilter('ldate', new Twig_Filter_Function('Curry_Twig_Template::ldate'));
$twig->addFilter('dump', new Twig_Filter_Function('var_dump'));
return $twig;
}