ONGR Settings Bundle provides settings API and simple user interface for setting management. It's supported by ONGR development team.
As ONGR is created with systems using load balancers in mind, this bundle includes cookie based Sessionless authentication and cookie based Flash bag.
Using this bundle you can easily create, update and manage your sites' settings.
While using personal settings you can specify which settings can be seen for chosen visitors e.g.: handy for A/B testing.
General settings are for easily configurable setting management and output.
Functionality offered by this bundle can be separated into five parts:
SettingsBundle
requires minimal efforts to get it working. Firstly, install package using Composer:
composer require ongr-io/SettingsBundle 0.1.*
Then register it in AppKernel.php
:
class AppKernel extends Kernel
{
public function registerBundles()
{
return [
// ...
new Symfony\Bundle\SecurityBundle\SecurityBundle(),
new FOS\JsRoutingBundle\FOSJsRoutingBundle(),
new Tedivm\StashBundle\TedivmStashBundle(),
new ONGR\CookiesBundle\ONGRCookiesBundle(),
new ONGR\SettingsBundle\ONGRSettingsBundle(),
);
}
// ...
}
Add this to your main routing.yml
fos_js_routing:
resource: "@FOSJsRoutingBundle/Resources/config/routing/routing.xml"
ongr_settings_routing:
resource: "@ONGRSettingsBundle/Resources/config/routing.yml"
prefix: /settings_prefix
After this is completed, you shoud add a type mapping to your Elastic Search configuration. If You had defined mappings for your system, you should add:
- ONGRSettingsBundle
to your mapping section. More about Elastic Search mappings can be found (here)
Next Elastic Search types should be updated, by running a command in console:
app/console es:type:update --force
Systems using load balancers cannot use standard symfony authentication (which is based on sessions). This bundle is thus offering sessionless authentication functionality. You can read about how it works and how to enable it here.
- Sessionless authentication usage
- Personal settings usage
- General settings usage
- Flash bag usage
- Environment variables usage
This bundle depends on:
.. toctree:: :maxdepth: 1 :glob: *