parameters:
    # Adds a fallback DATABASE_URL if the env var is not set.
    # This allows you to run cache:warmup even if your
    # environment variables are not available yet.
    # You should not need to change this value.
    env(DATABASE_URL): ''
    env(DATABASE_VERSION): ~

doctrine:
    dbal:
        default_connection: default
        connections:
            default:
                # existing migrations will fail if the schema filter is activated
                #schema_filter: ~^(?!(bundle_migration_|kimai2_sessions))~
                url: '%env(DATABASE_URL)%'
                driver: 'pdo_mysql'
                # this setting prevents automatic database detection and finds a lot of false-negatives on doctrine:migrations:diff
                # for null columns with MariaDB. Each migration tries to convert EVERY nullable column.
                server_version: '%env(string:DATABASE_VERSION)%'
                charset: utf8mb4
                default_table_options:
                    charset: utf8mb4
                    collate: utf8mb4_unicode_ci

        types:
            datetime: App\Doctrine\UTCDateTimeType
    orm:
        auto_generate_proxy_classes: '%kernel.debug%'
        default_entity_manager: default
        entity_managers:
            default:
                connection: default
                naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
                auto_mapping: true
                mappings:
                    App:
                        type: annotation
                        dir: '%kernel.project_dir%/src/Entity'
                        prefix: 'App\Entity'
                        alias: Kimai
                dql:
                    datetime_functions:
                        addtime: DoctrineExtensions\Query\Mysql\AddTime
                        convert_tz: DoctrineExtensions\Query\Mysql\ConvertTz
                        date: DoctrineExtensions\Query\Mysql\Date
                        date_format: DoctrineExtensions\Query\Mysql\DateFormat
                        dateadd: DoctrineExtensions\Query\Mysql\DateAdd
                        datesub: DoctrineExtensions\Query\Mysql\DateSub
                        datediff: DoctrineExtensions\Query\Mysql\DateDiff
                        day: DoctrineExtensions\Query\Mysql\Day
                        dayname: DoctrineExtensions\Query\Mysql\DayName
                        dayofweek: DoctrineExtensions\Query\Mysql\DayOfWeek
                        dayofyear: DoctrineExtensions\Query\Mysql\DayOfYear
                        div: DoctrineExtensions\Query\Mysql\Div
                        from_unixtime: DoctrineExtensions\Query\Mysql\FromUnixtime
                        hour: DoctrineExtensions\Query\Mysql\Hour
                        last_day: DoctrineExtensions\Query\Mysql\LastDay
                        makedate: DoctrineExtensions\Query\Mysql\MakeDate
                        minute: DoctrineExtensions\Query\Mysql\Minute
                        now: DoctrineExtensions\Query\Mysql\Now
                        month: DoctrineExtensions\Query\Mysql\Month
                        monthname: DoctrineExtensions\Query\Mysql\MonthName
                        period_diff: DoctrineExtensions\Query\Mysql\PeriodDiff
                        second: DoctrineExtensions\Query\Mysql\Second
                        sectotime: DoctrineExtensions\Query\Mysql\SecToTime
                        strtodate: DoctrineExtensions\Query\Mysql\StrToDate
                        time: DoctrineExtensions\Query\Mysql\Time
                        timediff: DoctrineExtensions\Query\Mysql\TimeDiff
                        timestampadd: DoctrineExtensions\Query\Mysql\TimestampAdd
                        timestampdiff: DoctrineExtensions\Query\Mysql\TimestampDiff
                        timetosec: DoctrineExtensions\Query\Mysql\TimeToSec
                        truncate: DoctrineExtensions\Query\Mysql\Truncate
                        week: DoctrineExtensions\Query\Mysql\Week
                        weekday: DoctrineExtensions\Query\Mysql\WeekDay
                        year: DoctrineExtensions\Query\Mysql\Year
                        yearmonth: DoctrineExtensions\Query\Mysql\YearMonth
                        yearweek: DoctrineExtensions\Query\Mysql\YearWeek
                        unix_timestamp: DoctrineExtensions\Query\Mysql\UnixTimestamp
                        utc_timestamp: DoctrineExtensions\Query\Mysql\UtcTimestamp
                        extract: DoctrineExtensions\Query\Mysql\Extract

                    numeric_functions:
                        acos: DoctrineExtensions\Query\Mysql\Acos
                        asin: DoctrineExtensions\Query\Mysql\Asin
                        atan2: DoctrineExtensions\Query\Mysql\Atan2
                        atan: DoctrineExtensions\Query\Mysql\Atan
                        bit_count: DoctrineExtensions\Query\Mysql\BitCount
                        bit_xor: DoctrineExtensions\Query\Mysql\BitXor
                        ceil: DoctrineExtensions\Query\Mysql\Ceil
                        cos: DoctrineExtensions\Query\Mysql\Cos
                        cot: DoctrineExtensions\Query\Mysql\Cot
                        degrees: DoctrineExtensions\Query\Mysql\Degrees
                        exp: DoctrineExtensions\Query\Mysql\Exp
                        floor: DoctrineExtensions\Query\Mysql\Floor
                        json_contains: DoctrineExtensions\Query\Mysql\JsonContains
                        json_depth: DoctrineExtensions\Query\Mysql\JsonDepth
                        json_length: DoctrineExtensions\Query\Mysql\JsonLength
                        log: DoctrineExtensions\Query\Mysql\Log
                        log10: DoctrineExtensions\Query\Mysql\Log10
                        log2: DoctrineExtensions\Query\Mysql\Log2
                        pi: DoctrineExtensions\Query\Mysql\Pi
                        power: DoctrineExtensions\Query\Mysql\Power
                        quarter: DoctrineExtensions\Query\Mysql\Quarter
                        radians: DoctrineExtensions\Query\Mysql\Radians
                        rand: DoctrineExtensions\Query\Mysql\Rand
                        round: DoctrineExtensions\Query\Mysql\Round
                        stddev: DoctrineExtensions\Query\Mysql\StdDev
                        sin: DoctrineExtensions\Query\Mysql\Sin
                        std: DoctrineExtensions\Query\Mysql\Std
                        tan: DoctrineExtensions\Query\Mysql\Tan
                        variance: DoctrineExtensions\Query\Mysql\Variance

                    string_functions:
                        aes_decrypt: DoctrineExtensions\Query\Mysql\AesDecrypt
                        aes_encrypt: DoctrineExtensions\Query\Mysql\AesEncrypt
                        any_value: DoctrineExtensions\Query\Mysql\AnyValue
                        ascii: DoctrineExtensions\Query\Mysql\Ascii
                        binary: DoctrineExtensions\Query\Mysql\Binary
                        cast: DoctrineExtensions\Query\Mysql\Cast
                        char_length: DoctrineExtensions\Query\Mysql\CharLength
                        collate: DoctrineExtensions\Query\Mysql\Collate
                        concat_ws: DoctrineExtensions\Query\Mysql\ConcatWs
                        countif: DoctrineExtensions\Query\Mysql\CountIf
                        crc32: DoctrineExtensions\Query\Mysql\Crc32
                        degrees: DoctrineExtensions\Query\Mysql\Degrees
                        field: DoctrineExtensions\Query\Mysql\Field
                        find_in_set: DoctrineExtensions\Query\Mysql\FindInSet
                        format: DoctrineExtensions\Query\Mysql\Format
                        from_base64: DoctrineExtensions\Query\Mysql\FromBase64
                        greatest: DoctrineExtensions\Query\Mysql\Greatest
                        group_concat: DoctrineExtensions\Query\Mysql\GroupConcat
                        hex: DoctrineExtensions\Query\Mysql\Hex
                        ifelse: DoctrineExtensions\Query\Mysql\IfElse
                        ifnull: DoctrineExtensions\Query\Mysql\IfNull
                        inet_aton: DoctrineExtensions\Query\Mysql\InetAton
                        inet_ntoa: DoctrineExtensions\Query\Mysql\InetNtoa
                        inet6_aton: DoctrineExtensions\Query\Mysql\Inet6Aton
                        inet6_ntoa: DoctrineExtensions\Query\Mysql\Inet6Ntoa
                        instr: DoctrineExtensions\Query\Mysql\Instr
                        is_ipv4: DoctrineExtensions\Query\Mysql\IsIpv4
                        is_ipv4_compat: DoctrineExtensions\Query\Mysql\IsIpv4Compat
                        is_ipv4_mapped: DoctrineExtensions\Query\Mysql\IsIpv4Mapped
                        is_ipv6: DoctrineExtensions\Query\Mysql\IsIpv6
                        lag: DoctrineExtensions\Query\Mysql\Lag
                        lead: DoctrineExtensions\Query\Mysql\Lead
                        least: DoctrineExtensions\Query\Mysql\Least
                        lpad: DoctrineExtensions\Query\Mysql\Lpad
                        match: DoctrineExtensions\Query\Mysql\MatchAgainst
                        md5: DoctrineExtensions\Query\Mysql\Md5
                        nullif: DoctrineExtensions\Query\Mysql\NullIf
                        over: DoctrineExtensions\Query\Mysql\Over
                        radians: DoctrineExtensions\Query\Mysql\Radians
                        regexp: DoctrineExtensions\Query\Mysql\Regexp
                        replace: DoctrineExtensions\Query\Mysql\Replace
                        rpad: DoctrineExtensions\Query\Mysql\Rpad
                        sha1: DoctrineExtensions\Query\Mysql\Sha1
                        sha2: DoctrineExtensions\Query\Mysql\Sha2
                        soundex: DoctrineExtensions\Query\Mysql\Soundex
                        str_to_date: DoctrineExtensions\Query\Mysql\StrToDate
                        substring_index: DoctrineExtensions\Query\Mysql\SubstringIndex
                        unhex: DoctrineExtensions\Query\Mysql\Unhex
                        uuid_short: DoctrineExtensions\Query\Mysql\UuidShort
