X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=app%2Fconfig%2Fconfig.yml;h=6a8078ccdf1c8195d63f8f96254c64da3f19f0fc;hb=80336f77fd6ef72dafe20b35b74d74d06592c06f;hp=2326246911d61c3e51f238bba0151ed82b37afc5;hpb=b91465c067c17eec0d8dfc22c84f58421579709c;p=github%2Fwallabag%2Fwallabag.git diff --git a/app/config/config.yml b/app/config/config.yml index 23262469..0c2b6a1d 100644 --- a/app/config/config.yml +++ b/app/config/config.yml @@ -2,91 +2,60 @@ imports: - { resource: parameters.yml } - { resource: security.yml } - { resource: services.yml } + - { resource: wallabag.yml } + +parameters: + # Allows to use the live reload feature for changes in assets + use_webpack_dev_server: false + craue_config.cache_adapter.class: Craue\ConfigBundle\CacheAdapter\SymfonyCacheComponentAdapter framework: #esi: ~ - translator: { fallback: "%locale%" } - secret: "%secret%" + translator: + enabled: true + fallback: "%locale%" + secret: "%secret%" router: - resource: "%kernel.root_dir%/config/routing.yml" + resource: "%kernel.project_dir%/app/config/routing.yml" strict_requirements: ~ - form: ~ + form: ~ csrf_protection: ~ - validation: { enable_annotations: true } + validation: + enable_annotations: true templating: engines: ['twig'] - #assets_version: SomeVersionScheme - default_locale: "%locale%" - trusted_hosts: ~ - trusted_proxies: ~ + default_locale: "%locale%" + trusted_hosts: ~ 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: ~ + handler_id: session.handler.native_file + save_path: "%kernel.project_dir%/var/sessions/%kernel.environment%" + fragments: ~ http_method_override: true assets: ~ -wallabag_core: - languages: - en: 'English' - fr: 'Français' - de: 'Deutsch' - -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%" + debug: "%kernel.debug%" strict_variables: "%kernel.debug%" - globals: - share_twitter: %share_twitter% - share_mail: %share_mail% - share_shaarli: %share_shaarli% - shaarli_url: %shaarli_url% - share_diaspora: %share_diaspora% - diaspora_url: %diaspora_url% - flattr: %flattr% - flattrable: 1 - flattred: 2 - carrot: %carrot% - show_printlink: %show_printlink% - export_epub: %export_epub% - export_mobi: %export_mobi% - export_pdf: %export_pdf% - version: %app.version% - twofactor_auth: %twofactor_auth% - warning_message: %warning_message% - paypal_url: "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9UBA65LG3FX9Y&lc=gb" form_themes: - "LexikFormFilterBundle:Form:form_div_layout.html.twig" - -# Assetic Configuration -assetic: - debug: "%kernel.debug%" - use_controller: false - bundles: [ ] - #java: /usr/bin/java - filters: - cssrewrite: ~ - #closure: - # jar: "%kernel.root_dir%/Resources/java/compiler.jar" - #yui_css: - # jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar" + exception_controller: wallabag_core.exception_controller:showAction # Doctrine Configuration doctrine: dbal: - driver: "%database_driver%" + driver: "%database_driver%" + driver_class: "%database_driver_class%" host: "%database_host%" port: "%database_port%" dbname: "%database_name%" user: "%database_user%" password: "%database_password%" - charset: UTF8 - path: "%database_path%" + charset: "%database_charset%" + path: "%database_path%" + unix_socket: "%database_socket%" + server_version: 5.6 orm: auto_generate_proxy_classes: "%kernel.debug%" @@ -103,7 +72,7 @@ stof_doctrine_extensions: sluggable: true doctrine_migrations: - dir_name: "%kernel.root_dir%/DoctrineMigrations" + dir_name: "%kernel.project_dir%/app/DoctrineMigrations" namespace: Application\Migrations table_name: migration_versions name: Application Migrations @@ -111,32 +80,58 @@ doctrine_migrations: # Swiftmailer Configuration swiftmailer: transport: "%mailer_transport%" - host: "%mailer_host%" - username: "%mailer_user%" - password: "%mailer_password%" - spool: { type: memory } + 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: + mime_types: + csv: + - 'text/csv' + - 'text/plain' + pdf: + - 'application/pdf' + epub: + - 'application/epub+zip' + mobi: + - 'application/x-mobipocket-ebook' view_response_listener: 'force' formats: xml: true - json : true + json: true + txt: true + csv: true + pdf: true + epub: true + mobi: true templating_formats: - html: true + html: false force_redirects: html: true failed_validation: HTTP_BAD_REQUEST default_engine: twig routing_loader: default_format: json + format_listener: + enabled: true + rules: + - { path: "^/api/entries/([0-9]+)/export.(.*)", priorities: ['epub', 'mobi', 'pdf', 'txt', 'csv'], fallback_format: json, prefer_extension: false } + - { path: "^/api", priorities: ['json', 'xml'], fallback_format: json, prefer_extension: false } + - { path: "^/annotations", priorities: ['json', 'xml'], fallback_format: json, prefer_extension: false } + # for an unknown reason, EACH REQUEST goes to FOS\RestBundle\EventListener\FormatListener + # so we need to add custom rule for custom api export but also for all other routes of the application... + - { path: '^/', priorities: ['text/html', '*/*'], fallback_format: html, prefer_extension: false } nelmio_api_doc: sandbox: enabled: false + cache: + enabled: true name: wallabag API documentation nelmio_cors: @@ -151,6 +146,11 @@ nelmio_cors: #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'] @@ -172,15 +172,18 @@ liip_theme: path_patterns: bundle_resource: - - %%bundle_path%%/Resources/views/themes/%%current_theme%%/%%template%% + - "%%bundle_path%%/Resources/views/themes/%%current_theme%%/%%template%%" fos_user: db_driver: orm - firewall_name: main + firewall_name: secured_area user_class: Wallabag\UserBundle\Entity\User registration: confirmation: - enabled: true + enabled: "%fosuser_confirmation%" + from_email: + address: "%from_email%" + sender_name: wallabag fos_oauth_server: db_driver: orm @@ -189,7 +192,9 @@ fos_oauth_server: refresh_token_class: Wallabag\ApiBundle\Entity\RefreshToken auth_code_class: Wallabag\ApiBundle\Entity\AuthCode service: - user_provider: fos_user.user_manager + user_provider: fos_user.user_provider.username_email + options: + refresh_token_lifetime: 1209600 scheb_two_factor: trusted_computer: @@ -198,12 +203,157 @@ scheb_two_factor: cookie_lifetime: 2592000 email: - enabled: %twofactor_auth% - sender_email: %twofactor_sender% + enabled: "%twofactor_auth%" + sender_email: "%twofactor_sender%" digits: 6 template: WallabagUserBundle:Authentication:form.html.twig mailer: wallabag_user.auth_code_mailer kphoen_rulerz: - executors: + targets: doctrine: true + +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_pinboard: + connection: default + exchange_options: + name: 'wallabag.import.pinboard' + type: topic + import_instapaper: + connection: default + exchange_options: + name: 'wallabag.import.instapaper' + 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 + import_firefox: + connection: default + exchange_options: + name: 'wallabag.import.firefox' + type: topic + import_chrome: + connection: default + exchange_options: + name: 'wallabag.import.chrome' + 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.amqp.pocket + qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"} + import_readability: + connection: default + exchange_options: + name: 'wallabag.import.readability' + type: topic + queue_options: + name: 'wallabag.import.readability' + callback: wallabag_import.consumer.amqp.readability + qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"} + import_instapaper: + connection: default + exchange_options: + name: 'wallabag.import.instapaper' + type: topic + queue_options: + name: 'wallabag.import.instapaper' + callback: wallabag_import.consumer.amqp.instapaper + qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"} + import_pinboard: + connection: default + exchange_options: + name: 'wallabag.import.pinboard' + type: topic + queue_options: + name: 'wallabag.import.pinboard' + callback: wallabag_import.consumer.amqp.pinboard + qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"} + 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.amqp.wallabag_v1 + qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"} + 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.amqp.wallabag_v2 + qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"} + import_firefox: + connection: default + exchange_options: + name: 'wallabag.import.firefox' + type: topic + queue_options: + name: 'wallabag.import.firefox' + callback: wallabag_import.consumer.amqp.firefox + qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"} + import_chrome: + connection: default + exchange_options: + name: 'wallabag.import.chrome' + type: topic + queue_options: + name: 'wallabag.import.chrome' + callback: wallabag_import.consumer.amqp.chrome + qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"} + +fos_js_routing: + routes_to_expose: + - homepage + - starred + - archive + - all + - tag + - config + - import + - developer + - howto + - fos_user_security_logout + - new + +jms_serializer: + handlers: + # to be removed if we switch to (default) ISO8601 datetime instead of ATOM + # see: https://github.com/schmittjoh/JMSSerializerBundle/pull/494 + datetime: + default_format: "Y-m-d\\TH:i:sO" # ATOM