Part-DB.Part-DB-server/config/services.yaml
Jan Böhmer b5bc096972 Allow to to disable the saving of changed or deleted data.
Also it is possible to only save the information which fields were changed, not the data in it.
2020-02-23 21:04:16 +01:00

166 lines
No EOL
6.7 KiB
YAML

# This file is the entry point to configure your own services.
# Files in the packages/ subdirectory configure your dependencies.
# Put parameters here that don't need to change on each machine where the app is deployed
# https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration
parameters:
locale: 'en' # Set the default language to use her
timezone: 'Europe/Berlin'
partdb_title: 'Part-DB' # The title shown inside of Part-DB (e.g. in the navbar and on homepage)
banner: '%env(trim:string:BANNER)%' # The info text shown in the homepage, if empty config/banner.md is used
use_gravatar: true # Set to false, if no Gravatar images should be used for user profiles.
default_currency: 'EUR' # The currency that should be used
media_directory: 'public/media/' # The folder where uploaded attachment files are saved
secure_media_directory: 'uploads/' # The folder where secured attachment files are saved (must not be in public/)
global_theme: '' # The theme to use globally (see public/build/themes/ for choices). Set to '' for default bootstrap theme
# Allow users to download attachments to server. Warning: This can be dangerous, because via that feature attackers maybe can access ressources on your intranet!
allow_attachments_downloads: false
demo_mode: '%env(bool:DEMO_MODE)%' # If set to true, all potentially dangerous things are disabled (like changing passwords of the own user)
sender_email: 'noreply@partdb.changeme' # The email address from which all emails are sent from
sender_name: 'Part-DB Mailer' # The name that will be used for all mails sent by Part-DB
allow_email_pw_reset: '%env(validMailDSN:MAILER_DSN)%' # Config if users are able, to reset their password by email. By default this enabled, when a mail server is configured.
locale_menu: ['en', 'de', 'fr', 'ru'] # The languages that are shown in user drop down menu
# If this option is activated, IP addresses are anonymized to be GPDR compliant
gpdr_compliance: true
services:
# default configuration for services in *this* file
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
bind:
bool $demo_mode: '%demo_mode%'
bool $gpdr_compliance : '%gpdr_compliance%'
# makes classes in src/ available to be used as services
# this creates a service per class whose id is the fully-qualified class name
App\:
resource: '../src/*'
exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}'
# controllers are imported separately to make sure services can be injected
# as action arguments even if you don't extend any base controller class
App\Controller\:
resource: '../src/Controller'
tags: ['controller.service_arguments']
App\EventSubscriber\MailFromListener:
tags: ['kernel.event_subscriber']
arguments:
$email: '%sender_email%'
$name: '%sender_name%'
App\Services\LogSystem\EventLogger:
arguments:
# By default only log events which has minimum info level (debug levels are not logged)
# 7 is lowest level (debug), 0 highest (emergency
$minimum_log_level: 6
# Event classes specified here are not saved to DB
$blacklist: []
# Only the event classes specified here are saved to DB (set to []) to log all events
$whitelist: []
Liip\ImagineBundle\Service\FilterService:
alias: 'liip_imagine.service.filter'
app.doctrine.elementListener:
class: App\Security\EntityListeners\ElementPermissionListener
public: false
autowire: true
tags:
- { name: "doctrine.orm.entity_listener" }
App\EventSubscriber\EventLoggerSubscriber:
arguments:
$save_changed_fields: '%env(bool:HISTORY_SAVE_CHANGED_FIELDS)%'
$save_changed_data: '%env(bool:HISTORY_SAVE_CHANGED_DATA)%'
$save_removed_data: '%env(bool:HISTORY_SAVE_REMOVED_DATA)%'
tags:
- { name: 'doctrine.event_subscriber' }
App\EventSubscriber\MigrationListener:
tags:
- { name: 'doctrine.event_subscriber' }
tree_invalidation_listener:
class: App\EntityListeners\TreeCacheInvalidationListener
tags:
- { name: doctrine.orm.entity_listener }
attachment_delete_listener:
class: App\EntityListeners\AttachmentDeleteListener
tags:
- name: doctrine.orm.entity_listener
# Dont use JSONSerializable Interface,
serializer.normalizer.json_serializable:
class: Symfony\Component\Serializer\Normalizer\JsonSerializableNormalizer
tags:
- {name: serializer.normalizer, priority: -9000}
App\Controller\RedirectController:
arguments:
$default_locale: '%locale%'
$enforce_index_php: '%env(bool:NO_URL_REWRITE_AVAILABLE)%'
App\Command\UpdateExchangeRatesCommand:
arguments:
$base_current: '%default_currency%'
App\Form\Type\CurrencyEntityType:
arguments:
$base_currency: '%default_currency%'
App\Services\PricedetailHelper:
arguments:
$base_currency: '%default_currency%'
App\Services\MoneyFormatter:
arguments:
$base_currency: '%default_currency%'
App\Form\AttachmentFormType:
arguments:
$allow_attachments_downloads: '%allow_attachments_downloads%'
App\Services\Attachments\AttachmentSubmitHandler:
arguments:
$allow_attachments_downloads: '%allow_attachments_downloads%'
$mimeTypes: '@mime_types'
App\Form\UserSettingsType:
arguments:
$demo_mode: '%demo_mode%'
App\EventSubscriber\TimezoneListener:
arguments:
$timezone: '%timezone%'
App\Controller\SecurityController:
arguments:
$allow_email_pw_reset: '%allow_email_pw_reset%'
App\Services\Attachments\AttachmentPathResolver:
arguments:
$project_dir: '%kernel.project_dir%'
$media_path: '%media_directory%'
$secure_path: '%secure_media_directory%'
$footprints_path: 'public/img/footprints'
$models_path: null
App\Services\Attachments\FileTypeFilterTools:
arguments:
$mimeTypes: '@mime_types'
App\Services\TFA\BackupCodeGenerator:
arguments:
$code_length: 8
$code_count: 15
App\Services\TranslationExtractor\PermissionExtractor:
tags:
- { name: 'translation.extractor', alias: 'permissionExtractor'}