imports:
    - { resource: parameters.yml }
    - { resource: security.yml }
    - { resource: services.yml }

framework:
    #esi:             ~
    translator:
        enabled: true
        fallback: "%locale%"
    secret: "%secret%"
    router:
        resource: "%kernel.root_dir%/config/routing.yml"
        strict_requirements: ~
    form: ~
    csrf_protection: ~
    validation:
        enable_annotations: true
    templating:
        engines: ['twig']
    default_locale: "%locale%"
    trusted_hosts: ~
    trusted_proxies: ~
    session:
        # handler_id set to null will use default session handler from php.ini
        handler_id: session.handler.native_file
        save_path: "%kernel.root_dir%/../var/sessions/%kernel.environment%"
    fragments: ~
    http_method_override: true
    assets: ~

wallabag_core:
    version: 2.0.7
    paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb"
    languages:
        en: 'English'
        fr: 'Français'
        de: 'Deutsch'
        tr: 'Türkçe'
        fa: 'فارسی'
        ro: 'Română'
        pl: 'Polish'
        da: 'Dansk'
        es: 'Español'
        oc: 'Occitan'
        it: 'Italiano'
    items_on_page: 12
    theme: material
    language: en
    rss_limit: 50
    reading_speed: 1
    cache_lifetime: 10

wallabag_user:
    registration_enabled: "%fosuser_registration%"

wallabag_import:
    allow_mimetypes: ['application/octet-stream', 'application/json', 'text/plain']
    resource_dir: "%kernel.root_dir%/../web/uploads/import"

# Twig Configuration
twig:
    debug: "%kernel.debug%"
    strict_variables: "%kernel.debug%"
    form_themes:
        - "LexikFormFilterBundle:Form:form_div_layout.html.twig"

# Doctrine Configuration
doctrine:
    dbal:
        driver: "%database_driver%"
        host: "%database_host%"
        port: "%database_port%"
        dbname: "%database_name%"
        user: "%database_user%"
        password: "%database_password%"
        charset: UTF8
        path: "%database_path%"
        server_version: 5.6

    orm:
        auto_generate_proxy_classes: "%kernel.debug%"
        entity_managers:
            default:
                auto_mapping: true

stof_doctrine_extensions:
    default_locale: "%locale%"
    translation_fallback: true
    orm:
        default:
            tree: true
            sluggable: true

doctrine_migrations:
    dir_name: "%kernel.root_dir%/DoctrineMigrations"
    namespace: Application\Migrations
    table_name: migration_versions
    name: Application Migrations

# Swiftmailer Configuration
swiftmailer:
    transport: "%mailer_transport%"
    host: "%mailer_host%"
    username: "%mailer_user%"
    password: "%mailer_password%"
    spool:
        type: memory

fos_rest:
    param_fetcher_listener: true
    body_listener: true
    format_listener: true
    view:
        view_response_listener: 'force'
        formats:
            xml: true
            json : true
        templating_formats:
            html: true
        force_redirects:
            html: true
        failed_validation: HTTP_BAD_REQUEST
        default_engine: twig
    routing_loader:
        default_format: json

nelmio_api_doc:
    sandbox:
        enabled: false
    name: wallabag API documentation

nelmio_cors:
    defaults:
        allow_credentials: false
        allow_origin: []
        allow_headers: []
        allow_methods: []
        expose_headers: []
        max_age: 0
        hosts: []
        #origin_regex: false
    paths:
        '^/api/':
            allow_origin: ['*']
            allow_headers: ['X-Custom-Auth']
            allow_methods: ['POST', 'PUT', 'PATCH','GET', 'DELETE']
            max_age: 3600
        '^/oauth/':
            allow_origin: ['*']
            allow_headers: ['X-Custom-Auth']
            allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
            max_age: 3600
        '^/':
            #origin_regex: true
            allow_origin: ['^http://localhost:[0-9]+']
            allow_headers: ['X-Custom-Auth']
            allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
            max_age: 3600
            hosts: ['^api\.']

liip_theme:
    load_controllers: false
    themes:
        - baggy
        - material
    autodetect_theme: wallabag_core.helper.detect_active_theme

    path_patterns:
        bundle_resource:
            - "%%bundle_path%%/Resources/views/themes/%%current_theme%%/%%template%%"

fos_user:
    db_driver: orm
    firewall_name: secured_area
    user_class: Wallabag\UserBundle\Entity\User
    registration:
        confirmation:
            enabled: "%fosuser_confirmation%"
    from_email:
        address:        "%from_email%"
        sender_name:    wallabag
fos_oauth_server:
    db_driver:           orm
    client_class:        Wallabag\ApiBundle\Entity\Client
    access_token_class:  Wallabag\ApiBundle\Entity\AccessToken
    refresh_token_class: Wallabag\ApiBundle\Entity\RefreshToken
    auth_code_class:     Wallabag\ApiBundle\Entity\AuthCode
    service:
        user_provider: fos_user.user_manager

scheb_two_factor:
    trusted_computer:
        enabled: true
        cookie_name: wllbg_trusted_computer
        cookie_lifetime: 2592000

    email:
        enabled: "%twofactor_auth%"
        sender_email: "%twofactor_sender%"
        digits: 6
        template: WallabagUserBundle:Authentication:form.html.twig
        mailer: wallabag_user.auth_code_mailer

kphoen_rulerz:
    executors:
        doctrine: true

lexik_maintenance:
    authorized:
        ips: ['127.0.0.1']
    driver:
        ttl: 3600
        class: 'Lexik\Bundle\MaintenanceBundle\Drivers\DatabaseDriver'
    response:
        code: 503
        status: "wallabag Service Temporarily Unavailable"

old_sound_rabbit_mq:
    connections:
        default:
            host:     "%rabbitmq_host%"
            port:     "%rabbitmq_port%"
            user:     "%rabbitmq_user%"
            password: "%rabbitmq_password%"
            vhost:    /
            lazy:     true
    producers:
        import_pocket:
            connection: default
            exchange_options:
                name: 'wallabag.import.pocket'
                type: topic
        import_readability:
            connection: default
            exchange_options:
                name: 'wallabag.import.readability'
                type: topic
        import_wallabag_v1:
            connection: default
            exchange_options:
                name: 'wallabag.import.wallabag_v1'
                type: topic
        import_wallabag_v2:
            connection: default
            exchange_options:
                name: 'wallabag.import.wallabag_v2'
                type: topic
    consumers:
        import_pocket:
            connection: default
            exchange_options:
                name: 'wallabag.import.pocket'
                type: topic
            queue_options:
                name: 'wallabag.import.pocket'
            callback: wallabag_import.consumer.ampq.pocket
        import_readability:
            connection: default
            exchange_options:
                name: 'wallabag.import.readability'
                type: topic
            queue_options:
                name: 'wallabag.import.readability'
            callback: wallabag_import.consumer.ampq.readability
        import_wallabag_v1:
            connection: default
            exchange_options:
                name: 'wallabag.import.wallabag_v1'
                type: topic
            queue_options:
                name: 'wallabag.import.wallabag_v1'
            callback: wallabag_import.consumer.ampq.wallabag_v1
        import_wallabag_v2:
            connection: default
            exchange_options:
                name: 'wallabag.import.wallabag_v2'
                type: topic
            queue_options:
                name: 'wallabag.import.wallabag_v2'
            callback: wallabag_import.consumer.ampq.wallabag_v2