public function getConfig($config)
{
// Parameter defaults to ensure they exist
$parameters = ['database_driver' => null, 'database_host' => null, 'database_port' => null, 'database_name' => null, 'database_password' => null, 'mailer_transport' => null, 'mailer_host' => null, 'mailer_port' => null, 'mailer_encryption' => null, 'mailer_user' => null, 'mailer_password' => null, 'mailer_auth_mode' => null, 'authentication_provider' => 'PartKeepr.Auth.HTTPBasicAuthenticationProvider', 'locale' => 'en', 'secret' => $this->generateSecret(), 'fr3d_ldap.driver.host' => '127.0.0.1', 'fr3d_ldap.driver.port' => 389, 'fr3d_ldap.driver.username' => null, 'fr3d_ldap.driver.password' => null, 'fr3d_ldap.driver.bindRequiresDn' => false, 'fr3d_ldap.driver.baseDn' => '', 'fr3d_ldap.driver.accountFilterFormat' => null, 'fr3d_ldap.driver.optReferrals' => null, 'fr3d_ldap.driver.useSsl' => null, 'fr3d_ldap.driver.useStartTls' => null, 'fr3d_ldap.driver.accountCanonicalForm' => null, 'fr3d_ldap.driver.accountDomainName' => null, 'fr3d_ldap.driver.accountDomainNameShort' => null, 'fr3d_ldap.user.enabled' => false, 'fr3d_ldap.user.baseDn' => 'dc=example,dc=com', 'fr3d_ldap.user.filter' => null, 'fr3d_ldap.user.attribute.username' => 'samaccountname', 'fr3d_ldap.user.attribute.email' => 'email', 'partkeepr.filesystem.data_directory' => '%kernel.root_dir%/../data/', 'partkeepr.cronjob.check' => true, 'partkeepr.filesystem.quota' => false, 'partkeepr.auth.max_users' => 'unlimited', 'partkeepr.category.path_separator' => ' ➤ ', 'partkeepr.maintenance' => false, 'partkeepr.maintenance.title' => '', 'partkeepr.maintenance.message' => '', 'cache.dunglas' => false, 'cache.doctrine' => 'array', 'partkeepr.parts.limit' => false, 'partkeepr.users.limit' => false, 'partkeepr.parts.internalpartnumberunique' => false];
if (function_exists('apc_fetch')) {
$parameters['cache.dunglas'] = 'api.mapping.cache.apc';
$parameters['cache.doctrine'] = 'apc';
}
$this->applyIf($parameters, $config);
$parameters = array_merge($parameters, $config);
if ($parameters['fr3d_ldap.user.attribute.username'] === null) {
$parameters['fr3d_ldap.user.attribute.username'] = 'samaccountname';
}
if ($parameters['fr3d_ldap.user.attribute.email'] === null) {
$parameters['fr3d_ldap.user.attribute.email'] = 'email';
}
array_walk_recursive($parameters, function (&$item) {
$item = var_export($item, true);
});
ksort($parameters);
return $this->twig->render('PartKeeprSetupBundle::parameters.php.twig', ['parameters' => $parameters]);
}