mirror of
https://github.com/kevinpapst/kimai2.git
synced 2024-12-22 04:08:29 +00:00
219 lines
11 KiB
YAML
219 lines
11 KiB
YAML
parameters:
|
|
locale: en
|
|
# can be regenerated with: bin/console kimai:reset:locales
|
|
kimai_locales: ['ar', 'ca', 'cs', 'da', 'de', 'de_CH', 'el', 'en', 'eo', 'es', 'eu', 'fa', 'fi', 'fo', 'fr', 'he', 'hr', 'hu', 'id', 'it', 'ja', 'ko', 'nb_NO', 'nl', 'pa', 'pl', 'pt', 'pt_BR', 'ro', 'ru', 'sk', 'sl', 'sv', 'tr', 'uk', 'vi', 'zh_CN', 'zh_Hant', 'zh_Hant_TW', 'ca_AD', 'ca_ES', 'ca_FR', 'ca_IT', 'cs_CZ', 'da_DK', 'da_GL', 'de_AT', 'de_BE', 'de_CH', 'de_DE', 'de_IT', 'de_LI', 'de_LU', 'el_CY', 'el_GR', 'en_AE', 'en_AG', 'en_AI', 'en_AS', 'en_AT', 'en_AU', 'en_BB', 'en_BE', 'en_BI', 'en_BM', 'en_BS', 'en_BW', 'en_BZ', 'en_CA', 'en_CC', 'en_CH', 'en_CK', 'en_CM', 'en_CX', 'en_CY', 'en_DE', 'en_DG', 'en_DK', 'en_DM', 'en_ER', 'en_FI', 'en_FJ', 'en_FK', 'en_FM', 'en_GB', 'en_GD', 'en_GG', 'en_GH', 'en_GI', 'en_GM', 'en_GU', 'en_GY', 'en_HK', 'en_ID', 'en_IE', 'en_IL', 'en_IM', 'en_IN', 'en_IO', 'en_JE', 'en_JM', 'en_KE', 'en_KI', 'en_KN', 'en_KY', 'en_LC', 'en_LR', 'en_LS', 'en_MG', 'en_MH', 'en_MO', 'en_MP', 'en_MS', 'en_MT', 'en_MU', 'en_MV', 'en_MW', 'en_MY', 'en_NA', 'en_NF', 'en_NG', 'en_NH', 'en_NL', 'en_NR', 'en_NU', 'en_NZ', 'en_PG', 'en_PH', 'en_PK', 'en_PN', 'en_PR', 'en_PW', 'en_RH', 'en_RW', 'en_SB', 'en_SC', 'en_SD', 'en_SE', 'en_SG', 'en_SH', 'en_SI', 'en_SL', 'en_SS', 'en_SX', 'en_SZ', 'en_TC', 'en_TK', 'en_TO', 'en_TT', 'en_TV', 'en_TZ', 'en_UG', 'en_UM', 'en_US', 'en_VC', 'en_VG', 'en_VI', 'en_VU', 'en_WS', 'en_ZA', 'en_ZM', 'en_ZW', 'es_AR', 'es_BO', 'es_BR', 'es_BZ', 'es_CL', 'es_CO', 'es_CR', 'es_CU', 'es_DO', 'es_EA', 'es_EC', 'es_ES', 'es_GQ', 'es_GT', 'es_HN', 'es_IC', 'es_MX', 'es_NI', 'es_PA', 'es_PE', 'es_PH', 'es_PR', 'es_PY', 'es_SV', 'es_US', 'es_UY', 'es_VE', 'eu_ES', 'fa_AF', 'fa_IR', 'fi_FI', 'fo_DK', 'fo_FO', 'fr_BE', 'fr_BF', 'fr_BI', 'fr_BJ', 'fr_BL', 'fr_CA', 'fr_CD', 'fr_CF', 'fr_CG', 'fr_CH', 'fr_CI', 'fr_CM', 'fr_DJ', 'fr_DZ', 'fr_FR', 'fr_GA', 'fr_GF', 'fr_GN', 'fr_GP', 'fr_GQ', 'fr_HT', 'fr_KM', 'fr_LU', 'fr_MA', 'fr_MC', 'fr_MF', 'fr_MG', 'fr_ML', 'fr_MQ', 'fr_MR', 'fr_MU', 'fr_NC', 'fr_NE', 'fr_PF', 'fr_PM', 'fr_RE', 'fr_RW', 'fr_SC', 'fr_SN', 'fr_SY', 'fr_TD', 'fr_TG', 'fr_TN', 'fr_VU', 'fr_WF', 'fr_YT', 'he_IL', 'hr_BA', 'hr_HR', 'hu_HU', 'it_CH', 'it_IT', 'it_SM', 'it_VA', 'ja_JP', 'ko_CN', 'ko_KP', 'ko_KR', 'nl_AW', 'nl_BE', 'nl_BQ', 'nl_CW', 'nl_NL', 'nl_SR', 'nl_SX', 'pl_PL', 'pt_AO', 'pt_BR', 'pt_CH', 'pt_CV', 'pt_GQ', 'pt_GW', 'pt_LU', 'pt_MO', 'pt_MZ', 'pt_PT', 'pt_ST', 'pt_TL', 'ro_MD', 'ro_RO', 'ru_BY', 'ru_KG', 'ru_KZ', 'ru_MD', 'ru_RU', 'ru_UA', 'sk_SK', 'sv_AX', 'sv_FI', 'sv_SE', 'tr_CY', 'tr_TR', 'uk_UA', 'vi_VN']
|
|
|
|
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.
|
|
public: false # Allows optimizing the container by removing unused services; this also means
|
|
# fetching services directly from the container via $container->get() won't work.
|
|
# The best practice is to be explicit about your dependencies anyway.
|
|
bind:
|
|
$projectDirectory: '%kernel.project_dir%'
|
|
$kernelEnvironment: '%kernel.environment%'
|
|
|
|
# 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/API/Model/'
|
|
- '../src/DependencyInjection/'
|
|
- '../src/Doctrine/Extensions/'
|
|
- '../src/Entity/'
|
|
- '../src/Event/'
|
|
- '../src/Form/Model/'
|
|
- '../src/Model/'
|
|
- '../src/Repository/Loader/'
|
|
- '../src/Repository/Paginator/'
|
|
- '../src/Repository/Query/'
|
|
- '../src/Repository/Result/'
|
|
- '../src/WorkingTime/Calculator/'
|
|
- '../src/Kernel.php'
|
|
- '../src/Constants.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']
|
|
|
|
# ================================================================================
|
|
# APPLICATION CORE
|
|
# ================================================================================
|
|
|
|
security.user.provider.chain:
|
|
class: App\Security\KimaiUserProvider
|
|
|
|
App\Configuration\MailConfiguration:
|
|
arguments: ['%env(MAILER_FROM)%']
|
|
|
|
App\Configuration\LocaleService:
|
|
arguments: ['%kimai.languages%']
|
|
|
|
App\Configuration\SystemConfiguration:
|
|
arguments:
|
|
$settings: '%kimai.config%'
|
|
|
|
App\Pdf\MPdfConverter:
|
|
arguments:
|
|
$cacheDirectory: '%kernel.cache_dir%'
|
|
|
|
App\Utils\FileHelper:
|
|
arguments:
|
|
$dataDir: '%kimai.data_dir%'
|
|
|
|
App\API\Serializer\ValidationFailedExceptionErrorHandler:
|
|
arguments: ['@translator.default', '@fos_rest.serializer.flatten_exception_handler']
|
|
|
|
App\Command\ExportCreateCommand:
|
|
arguments:
|
|
$mailer: '@App\Mail\KimaiMailer'
|
|
|
|
# ================================================================================
|
|
# TIMESHEET RECORD CALCULATOR
|
|
# ================================================================================
|
|
|
|
App\Timesheet\RoundingService:
|
|
arguments:
|
|
# this is currently required, as local.yaml allows to configure several rules,
|
|
# while the database system only allows one rounding rule
|
|
$rules: '%kimai.timesheet.rounding%'
|
|
|
|
App\Timesheet\RateService:
|
|
arguments: ['%kimai.timesheet.rates%']
|
|
|
|
# ================================================================================
|
|
# SECURITY & VOTER
|
|
# ================================================================================
|
|
|
|
App\Security\RoleService:
|
|
arguments:
|
|
$roles: '%kimai.permission_roles%'
|
|
|
|
App\Security\RolePermissionManager:
|
|
arguments:
|
|
$permissions: '%kimai.permissions%'
|
|
$permissionNames: '%kimai.permission_names%'
|
|
|
|
# ================================================================================
|
|
# SAML Services
|
|
# ================================================================================
|
|
App\Saml\SamlProvider:
|
|
arguments:
|
|
$userProvider: '@security.user.provider.concrete.kimai_internal'
|
|
$configuration: '@App\Configuration\SamlConfigurationInterface'
|
|
|
|
# ================================================================================
|
|
# REPOSITORIES
|
|
# ================================================================================
|
|
|
|
App\Repository\TimesheetRepository:
|
|
class: App\Repository\TimesheetRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Timesheet']
|
|
|
|
App\Repository\UserRepository:
|
|
class: App\Repository\UserRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\User']
|
|
|
|
App\Repository\TeamRepository:
|
|
class: App\Repository\TeamRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Team']
|
|
|
|
App\Repository\ActivityRepository:
|
|
class: App\Repository\ActivityRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Activity']
|
|
|
|
App\Repository\ProjectRepository:
|
|
class: App\Repository\ProjectRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Project']
|
|
|
|
App\Repository\TagRepository:
|
|
class: App\Repository\TagRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Tag']
|
|
|
|
App\Repository\CustomerRepository:
|
|
class: App\Repository\CustomerRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Customer']
|
|
|
|
App\Repository\InvoiceTemplateRepository:
|
|
class: App\Repository\InvoiceTemplateRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\InvoiceTemplate']
|
|
|
|
App\Repository\ConfigurationRepository:
|
|
class: App\Repository\ConfigurationRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Configuration']
|
|
|
|
App\Repository\RoleRepository:
|
|
class: App\Repository\RoleRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Role']
|
|
|
|
App\Repository\RolePermissionRepository:
|
|
class: App\Repository\RolePermissionRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\RolePermission']
|
|
|
|
App\Repository\InvoiceDocumentRepository:
|
|
class: App\Repository\InvoiceDocumentRepository
|
|
arguments: ['%kimai.invoice.documents%']
|
|
|
|
App\Repository\CustomerRateRepository:
|
|
class: App\Repository\CustomerRateRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\CustomerRate']
|
|
|
|
App\Repository\ActivityRateRepository:
|
|
class: App\Repository\ActivityRateRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\ActivityRate']
|
|
|
|
App\Repository\ProjectRateRepository:
|
|
class: App\Repository\ProjectRateRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\ProjectRate']
|
|
|
|
App\Repository\InvoiceRepository:
|
|
class: App\Repository\InvoiceRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Invoice']
|
|
|
|
App\Repository\BookmarkRepository:
|
|
class: App\Repository\BookmarkRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\Bookmark']
|
|
|
|
App\Repository\WorkingTimeRepository:
|
|
class: App\Repository\WorkingTimeRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\WorkingTime']
|
|
|
|
App\Repository\AccessTokenRepository:
|
|
class: App\Repository\AccessTokenRepository
|
|
factory: ['@doctrine.orm.entity_manager', getRepository]
|
|
arguments: ['App\Entity\AccessToken']
|
|
|
|
monolog.formatter.kimai:
|
|
class: Monolog\Formatter\LineFormatter
|
|
arguments:
|
|
- "[%%datetime%%] [%%extra.channel%%] %%level_name%%: %%message%% %%context%% %%extra%%\n"
|
|
- "Y-m-d H:i:s"
|
|
|
|
monolog.formatter.deprecation:
|
|
class: Monolog\Formatter\LineFormatter
|
|
arguments:
|
|
- "[%%datetime%%] %%message%% %%context%%\n"
|
|
- "Y-m-d H:i:s"
|