mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2024-11-28 03:34:32 -06:00
248 lines
11 KiB
PHP
248 lines
11 KiB
PHP
<?php namespace FireflyIII\Providers;
|
|
|
|
use Illuminate\Support\ServiceProvider;
|
|
|
|
/**
|
|
* Class ConfigServiceProvider
|
|
*
|
|
* @package FireflyIII\Providers
|
|
*/
|
|
class ConfigServiceProvider extends ServiceProvider
|
|
{
|
|
|
|
/**
|
|
* Overwrite any vendor / package configuration.
|
|
*
|
|
* This service provider is intended to provide a convenient location for you
|
|
* to overwrite any "vendor" or package configuration that you may want to
|
|
* modify before the application handles the incoming request / command.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function register()
|
|
{
|
|
config(
|
|
[
|
|
'twigbridge' => [
|
|
|
|
'twig' => [
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Extension
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| File extension for Twig view files.
|
|
|
|
|
*/
|
|
'extension' => 'twig',
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Accepts all Twig environment configuration options
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| http://twig.sensiolabs.org/doc/api.html#environment-options
|
|
|
|
|
*/
|
|
'environment' => [
|
|
|
|
// When set to true, the generated templates have a __toString() method
|
|
// that you can use to display the generated nodes.
|
|
// default: false
|
|
'debug' => config('app.debug', false),
|
|
|
|
// The charset used by the templates.
|
|
// default: utf-8
|
|
'charset' => 'utf-8',
|
|
|
|
// The base template class to use for generated templates.
|
|
// default: TwigBridge\Twig\Template
|
|
'base_template_class' => 'TwigBridge\Twig\Template',
|
|
|
|
// An absolute path where to store the compiled templates, or false to disable caching. If null
|
|
// then the cache file path is used.
|
|
// default: cache file storage path
|
|
'cache' => null,
|
|
|
|
// When developing with Twig, it's useful to recompile the template
|
|
// whenever the source code changes. If you don't provide a value
|
|
// for the auto_reload option, it will be determined automatically based on the debug value.
|
|
'auto_reload' => true,
|
|
|
|
// If set to false, Twig will silently ignore invalid variables
|
|
// (variables and or attributes/methods that do not exist) and
|
|
// replace them with a null value. When set to true, Twig throws an exception instead.
|
|
// default: false
|
|
'strict_variables' => false,
|
|
|
|
// If set to true, auto-escaping will be enabled by default for all templates.
|
|
// default: true
|
|
'autoescape' => true,
|
|
|
|
// A flag that indicates which optimizations to apply
|
|
// (default to -1 -- all optimizations are enabled; set it to 0 to disable)
|
|
'optimizations' => -1,
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Global variables
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| These will always be passed in and can be accessed as Twig variables.
|
|
| NOTE: these will be overwritten if you pass data into the view with the same key.
|
|
|
|
|
*/
|
|
'globals' => [],
|
|
],
|
|
|
|
'extensions' => [
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Extensions
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Enabled extensions.
|
|
|
|
|
| `Twig_Extension_Debug` is enabled automatically if twig.debug is TRUE.
|
|
|
|
|
*/
|
|
'enabled' => [
|
|
'TwigBridge\Extension\Loader\Facades',
|
|
'TwigBridge\Extension\Loader\Filters',
|
|
'TwigBridge\Extension\Loader\Functions',
|
|
|
|
'TwigBridge\Extension\Laravel\Auth',
|
|
'TwigBridge\Extension\Laravel\Config',
|
|
'TwigBridge\Extension\Laravel\Dump',
|
|
'TwigBridge\Extension\Laravel\Input',
|
|
'TwigBridge\Extension\Laravel\Session',
|
|
'TwigBridge\Extension\Laravel\String',
|
|
'TwigBridge\Extension\Laravel\Translator',
|
|
'TwigBridge\Extension\Laravel\Url',
|
|
|
|
// 'TwigBridge\Extension\Laravel\Form',
|
|
// 'TwigBridge\Extension\Laravel\Html',
|
|
// 'TwigBridge\Extension\Laravel\Legacy\Facades',
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Facades
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Available facades. Access like `{{ Config.get('foo.bar') }}`.
|
|
|
|
|
| Each facade can take an optional array of options. To mark the whole facade
|
|
| as safe you can set the option `'is_safe' => true`. Setting the facade as
|
|
| safe means that any HTML returned will not be escaped.
|
|
|
|
|
| It is advisable to not set the whole facade as safe and instead mark the
|
|
| each appropriate method as safe for security reasons. You can do that with
|
|
| the following syntax:
|
|
|
|
|
| <code>
|
|
| 'Form' => [
|
|
| 'is_safe' => [
|
|
| 'open'
|
|
| ]
|
|
| ]
|
|
| </code>
|
|
|
|
|
| The values of the `is_safe` array must match the called method on the facade
|
|
| in order to be marked as safe.
|
|
|
|
|
*/
|
|
'facades' => [
|
|
'Breadcrumbs' => [
|
|
'is_safe' => [
|
|
'renderIfExists'
|
|
]
|
|
],
|
|
'Session',
|
|
'Route',
|
|
'Config',
|
|
'ExpandedForm' => [
|
|
'is_safe' => [
|
|
'date','text','select','balance','optionsList','checkbox'
|
|
]
|
|
],
|
|
'Form' => [
|
|
'is_safe' => [
|
|
'input','select','checkbox','model','open'
|
|
]
|
|
],
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Functions
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Available functions. Access like `{{ secure_url(...) }}`.
|
|
|
|
|
| Each function can take an optional array of options. These options are
|
|
| passed directly to `Twig_SimpleFunction`.
|
|
|
|
|
| So for example, to mark a function as safe you can do the following:
|
|
|
|
|
| <code>
|
|
| 'link_to' => [
|
|
| 'is_safe' => ['html']
|
|
| ]
|
|
| </code>
|
|
|
|
|
| The options array also takes a `callback` that allows you to name the
|
|
| function differently in your Twig templates than what it's actually called.
|
|
|
|
|
| <code>
|
|
| 'link' => [
|
|
| 'callback' => 'link_to'
|
|
| ]
|
|
| </code>
|
|
|
|
|
*/
|
|
'functions' => [
|
|
'elixir',
|
|
'head',
|
|
'last',
|
|
],
|
|
|
|
/*
|
|
|--------------------------------------------------------------------------
|
|
| Filters
|
|
|--------------------------------------------------------------------------
|
|
|
|
|
| Available filters. Access like `{{ variable|filter }}`.
|
|
|
|
|
| Each filter can take an optional array of options. These options are
|
|
| passed directly to `Twig_SimpleFilter`.
|
|
|
|
|
| So for example, to mark a filter as safe you can do the following:
|
|
|
|
|
| <code>
|
|
| 'studly_case' => [
|
|
| 'is_safe' => ['html']
|
|
| ]
|
|
| </code>
|
|
|
|
|
| The options array also takes a `callback` that allows you to name the
|
|
| filter differently in your Twig templates than what is actually called.
|
|
|
|
|
| <code>
|
|
| 'snake' => [
|
|
| 'callback' => 'snake_case'
|
|
| ]
|
|
| </code>
|
|
|
|
|
*/
|
|
'filters' => [],
|
|
],
|
|
]
|
|
]
|
|
);
|
|
}
|
|
|
|
}
|