mirror of
https://github.com/symfony/recipes-contrib.git
synced 2026-09-12 07:36:34 +03:00
Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
735054447c |
@@ -1,10 +0,0 @@
|
|||||||
; top-most EditorConfig file
|
|
||||||
root = true
|
|
||||||
|
|
||||||
; Unix-style newlines
|
|
||||||
[*]
|
|
||||||
end_of_line = LF
|
|
||||||
|
|
||||||
[*.json]
|
|
||||||
indent_style = space
|
|
||||||
indent_size = 4
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
| Q | A
|
|
||||||
| ------------- | ---
|
|
||||||
| License | MIT
|
|
||||||
| Packagist | <!-- Link to package on packagist -->
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Please, carefully read the Contributing section in the README
|
|
||||||
before submitting a pull request.
|
|
||||||
-->
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
name: Cleanup Flex testing endpoint
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request_target:
|
|
||||||
types: [ closed ]
|
|
||||||
|
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
call-flex-cleanup:
|
|
||||||
uses: symfony/recipes/.github/workflows/callable-flex-cleanup.yml@main
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
name: Update Flex Archives
|
|
||||||
|
|
||||||
on: [workflow_dispatch]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
call-flex-update:
|
|
||||||
uses: symfony/recipes/.github/workflows/callable-flex-update-archived.yml@main
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
name: Update Flex endpoint
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
|
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
call-flex-update:
|
|
||||||
uses: symfony/recipes/.github/workflows/callable-flex-update.yml@main
|
|
||||||
with:
|
|
||||||
contrib: true
|
|
||||||
secrets:
|
|
||||||
token: ${{ secrets.BOT_TOKEN }}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
name: Q&A
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request_target:
|
|
||||||
|
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: bash
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
call-qa:
|
|
||||||
uses: symfony/recipes/.github/workflows/callable-qa.yml@main
|
|
||||||
with:
|
|
||||||
contrib: true
|
|
||||||
find_yaml: -not -wholename 'codeception/codeception/*/tests/*' -not -wholename 'codeception/codeception/*/codeception.yml'
|
|
||||||
secrets:
|
|
||||||
token: ${{ secrets.BOT_TOKEN }}
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
hosting:
|
|
||||||
tier: '%env(HOSTING_TIER)%'
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Torr\\Hosting\\HostingBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"HOSTING_TIER": "development"
|
|
||||||
},
|
|
||||||
"gitignore": [
|
|
||||||
"/.build-info.json"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
hosting:
|
|
||||||
tier: '%env(HOSTING_TIER)%'
|
|
||||||
installation: "%env(HOSTING_INSTALLATION)%"
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
hosting:
|
|
||||||
resource: '@HostingBundle/config/routes.yaml'
|
|
||||||
prefix: /hosting
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Torr\\Hosting\\HostingBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"HOSTING_TIER": "development",
|
|
||||||
"HOSTING_INSTALLATION": ""
|
|
||||||
},
|
|
||||||
"gitignore": [
|
|
||||||
"/.build-info.json"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
storyblok:
|
|
||||||
space_id: "%env(int:STORYBLOK_SPACE_ID)%"
|
|
||||||
management_token: "%env(STORYBLOK_MANAGEMENT_TOKEN)%"
|
|
||||||
content_token: "%env(STORYBLOK_CONTENT_TOKEN)%"
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Torr\\Storyblok\\TorrStoryblokBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"STORYBLOK_SPACE_ID": "",
|
|
||||||
"STORYBLOK_MANAGEMENT_TOKEN": "",
|
|
||||||
"STORYBLOK_CONTENT_TOKEN": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
storyblok:
|
|
||||||
space_id: "%env(int:STORYBLOK_SPACE_ID)%"
|
|
||||||
management_token: "%env(STORYBLOK_MANAGEMENT_TOKEN)%"
|
|
||||||
content_token: "%env(STORYBLOK_CONTENT_TOKEN)%"
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
storyblok:
|
|
||||||
prefix: /storyblok/
|
|
||||||
resource: '@TorrStoryblokBundle/config/routes.yaml'
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Torr\\Storyblok\\TorrStoryblokBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"STORYBLOK_SPACE_ID": "",
|
|
||||||
"STORYBLOK_MANAGEMENT_TOKEN": "",
|
|
||||||
"STORYBLOK_CONTENT_TOKEN": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
task_manager:
|
|
||||||
queues:
|
|
||||||
# queues sorted by priority. Highest priority at the top
|
|
||||||
- app_very_urgent
|
|
||||||
- app_urgent
|
|
||||||
- app
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Torr\\TaskManager\\TaskManagerBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
Copyright (c) 2017-present Fabien Potencier
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is furnished
|
|
||||||
to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all
|
|
||||||
copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
THE SOFTWARE.
|
|
||||||
-77
@@ -1,77 +0,0 @@
|
|||||||
Symfony Recipes (Contrib)
|
|
||||||
=========================
|
|
||||||
|
|
||||||
Symfony recipes allow the automation of Composer packages configuration via the
|
|
||||||
`Symfony Flex`_ Composer plugin.
|
|
||||||
|
|
||||||
This repository hosts contributed recipes for Composer packages that are not
|
|
||||||
part of the "official" `Symfony recipes`_. To enable recipes defined in this
|
|
||||||
repository for your project, run the following command:
|
|
||||||
|
|
||||||
.. code-block:: bash
|
|
||||||
|
|
||||||
composer config extra.symfony.allow-contrib true
|
|
||||||
|
|
||||||
See `RECIPES.md`_ for a full list of recipes that live in this repository.
|
|
||||||
|
|
||||||
Contributing
|
|
||||||
------------
|
|
||||||
|
|
||||||
For more information about contributing a recipe, read the `documentation`_ on
|
|
||||||
the main repository and the Best Practices below.
|
|
||||||
|
|
||||||
Unlike for official recipes, the pull requests for new contrib recipes are
|
|
||||||
managed by the community. Pull requests are reviewed by the Symfony Bot and
|
|
||||||
automatically merged when the following conditions are met (in that order):
|
|
||||||
|
|
||||||
* The pull request title does not contain "WIP";
|
|
||||||
|
|
||||||
* The Symfony Bot approved the pull request and reported no validation errors;
|
|
||||||
|
|
||||||
* Someone (not the Symfony bot nor the pull request author) approved the pull
|
|
||||||
request;
|
|
||||||
|
|
||||||
* The pull request author or the reviewer is a Symfony Core Merger.
|
|
||||||
|
|
||||||
Best Practices
|
|
||||||
--------------
|
|
||||||
|
|
||||||
Default Bundle Config
|
|
||||||
#####################
|
|
||||||
|
|
||||||
A recipe for a bundle should not contain all the configuration the bundle has to
|
|
||||||
offer. A good recipe only contains a suggestion config for an application. That
|
|
||||||
is config that needs to be configured but no real default value exists.
|
|
||||||
|
|
||||||
**Example:** The "items per page" in a paginator bundle or API credentials for an API
|
|
||||||
client bundle.
|
|
||||||
|
|
||||||
If environment variables are used, they must be provided to the bundle's config.
|
|
||||||
|
|
||||||
A bundle without config or routes do not need a recipe. Flex is smart enough to
|
|
||||||
install that bundle anyways.
|
|
||||||
|
|
||||||
Modify Other Bundle's config
|
|
||||||
############################
|
|
||||||
|
|
||||||
The general rule is that no recipe should modify other bundle's configuration. There
|
|
||||||
is however one exception. A recipe is allowed to append to a "config collection".
|
|
||||||
|
|
||||||
**Example:** Add a new connection to DoctrineBundle or add a new cache adapter to Symfony
|
|
||||||
Framework bundle.
|
|
||||||
|
|
||||||
Maintainability
|
|
||||||
###############
|
|
||||||
|
|
||||||
The symfony/recipes-contrib repository should contain the config for packages. Using
|
|
||||||
"``copy-from-package`` Configurator" for routes and config is not allowed. That would
|
|
||||||
make the recipes impossible to maintain and to assure their quality.
|
|
||||||
|
|
||||||
Recipes is also not a replacement for ``composer create-project``. That means it is
|
|
||||||
not intended to be used as "bootstrap full application" and copy a lot of PHP code,
|
|
||||||
front-end assets etc. Recipes are for quick installation of packages.
|
|
||||||
|
|
||||||
.. _`Symfony Flex`: https://github.com/symfony/flex
|
|
||||||
.. _`Symfony recipes`: https://github.com/symfony/recipes
|
|
||||||
.. _`documentation`: https://github.com/symfony/recipes
|
|
||||||
.. _`RECIPES.md`: https://github.com/symfony/recipes-contrib/blob/flex/main/RECIPES.md
|
|
||||||
-5
@@ -1,5 +0,0 @@
|
|||||||
abel_keycloak_bearer_only_adapter:
|
|
||||||
issuer: '%env(OAUTH_KEYCLOAK_ISSUER)%'
|
|
||||||
realm: '%env(OAUTH_KEYCLOAK_REALM)%'
|
|
||||||
client_id: '%env(OAUTH_KEYCLOAK_CLIENT_ID)%'
|
|
||||||
client_secret: '%env(OAUTH_KEYCLOAK_CLIENT_SECRET)%'
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"ABEL\\Bundle\\keycloakBearerOnlyAdapterBundle\\ABELkeycloakBearerOnlyAdapterBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"OAUTH_KEYCLOAK_ISSUER": "...",
|
|
||||||
"OAUTH_KEYCLOAK_REALM": "...",
|
|
||||||
"OAUTH_KEYCLOAK_CLIENT_ID": "...",
|
|
||||||
"OAUTH_KEYCLOAK_CLIENT_SECRET": "..."
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
meteion:
|
|
||||||
dbal_connection: 'default'
|
|
||||||
rawexd_path: '%env(METEION_RAWEXD_PATH)%'
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"MeteionBundle\\MeteionBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"METEION_RAWEXD_PATH": "/path/to/rawexd"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
sentinelle:
|
|
||||||
# Dry-run: Sentinelle detects, logs and alerts, but blocks NOTHING.
|
|
||||||
# Nobody wires automatic blocking into a production site without knowing
|
|
||||||
# what it will shut out. Watch the dashboard for a few days, ask yourself
|
|
||||||
# "would I have wanted to block that one?", then switch it off.
|
|
||||||
dry_run: true
|
|
||||||
alert:
|
|
||||||
recipient: '%env(SENTINELLE_ALERT_EMAIL)%'
|
|
||||||
access:
|
|
||||||
role: ROLE_ADMIN
|
|
||||||
never_block:
|
|
||||||
# At minimum your own outbound address. Private ranges are protected
|
|
||||||
# by default, but yours is not: one wrong move locks you out.
|
|
||||||
ips: '%env(default::SENTINELLE_ALLOWLIST)%'
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
sentinelle:
|
|
||||||
resource: '@SentinelleBundle/config/routes.php'
|
|
||||||
type: php
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Acencyril\\SentinelleBundle\\SentinelleBundle": [
|
|
||||||
"all"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"#1": "Where security alerts are sent.",
|
|
||||||
"SENTINELLE_ALERT_EMAIL": "admin@example.com",
|
|
||||||
"#2": "IPs or CIDRs, comma separated, that must never be blocked.",
|
|
||||||
"#3": "PUT YOUR OWN OUTBOUND ADDRESS HERE before going live:",
|
|
||||||
"#4": "without it, an automatic block can lock you out of your own site.",
|
|
||||||
"SENTINELLE_ALLOWLIST": ""
|
|
||||||
},
|
|
||||||
"post-install-output": [
|
|
||||||
" <bg=blue;fg=white>Sentinelle is installed.</> Three things before going live:",
|
|
||||||
"",
|
|
||||||
" * Set <comment>SENTINELLE_ALLOWLIST</comment> in your <comment>.env</comment> — at minimum your own",
|
|
||||||
" outbound address. Without it, an automatic block can lock you out of",
|
|
||||||
" your own site.",
|
|
||||||
"",
|
|
||||||
" * Create the schema:",
|
|
||||||
" <comment>php bin/console doctrine:migrations:diff</comment>",
|
|
||||||
" <comment>php bin/console doctrine:migrations:migrate</comment>",
|
|
||||||
"",
|
|
||||||
" * Check it can do its job:",
|
|
||||||
" <comment>php bin/console sentinelle:check</comment>",
|
|
||||||
"",
|
|
||||||
" Sentinelle starts in <comment>dry-run</comment>: it detects, logs and alerts, but blocks",
|
|
||||||
" nothing. Watch <comment>/admin/activity</comment> for a few days, then set",
|
|
||||||
" <comment>sentinelle.dry_run</comment> to <comment>false</comment>.",
|
|
||||||
"",
|
|
||||||
" And schedule the purge, without which strike counters never reset:",
|
|
||||||
" <comment>0 4 * * * php bin/console sentinelle:purge</comment>",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
# Read the documentation: https://github.com/acseo/TypesenseBundle/blob/master/README.md
|
|
||||||
acseo_typesense:
|
|
||||||
typesense:
|
|
||||||
url: '%typesense_url%'
|
|
||||||
key: '%typesense_key%'
|
|
||||||
# Optional : add prefix to all collection names in Typesense
|
|
||||||
#collection_prefix: 'app_'
|
|
||||||
# Collection settings
|
|
||||||
collections: null
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"ACSEO\\TypesenseBundle\\ACSEOTypesenseBundle": ["all"]
|
|
||||||
},
|
|
||||||
"container": {
|
|
||||||
"typesense_url": "%env(TYPESENSE_URL)%",
|
|
||||||
"typesense_key": "%env(TYPESENSE_KEY)%"
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"TYPESENSE_URL": "http://localhost:8108",
|
|
||||||
"TYPESENSE_KEY": "123"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
ihsan_ratchet:
|
|
||||||
web_socket_port: "%env(WEB_SOCKET_PORT)%"
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Ihsan\\RatchetBundle\\IhsanRatchetBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"WEB_SOCKET_PORT": "7777"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
adback_api_client:
|
|
||||||
access_token: "%env(ADBACK_API_CLIENT_ACCESS_TOKEN)%"
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Adback\\ApiClientBundle\\AdbackApiClientBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"ADBACK_API_CLIENT_ACCESS_TOKEN": "adback-access-token"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
-4
@@ -1,4 +0,0 @@
|
|||||||
adlarge_fixtures_documentation:
|
|
||||||
title: 'Fixtures documentation'
|
|
||||||
reloadCommands:
|
|
||||||
- php bin/console doctrine:fixtures:load
|
|
||||||
-2
@@ -1,2 +0,0 @@
|
|||||||
AdlargeFixturesDocumentation:
|
|
||||||
resource: '@AdlargeFixturesDocumentationBundle/Resources/config/routing.yml'
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Adlarge\\FixturesDocumentationBundle\\AdlargeFixturesDocumentationBundle": ["dev"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
when@dev:
|
|
||||||
hexagonal_maker:
|
|
||||||
application_path: 'Application'
|
|
||||||
domain_path: 'Domain'
|
|
||||||
infrastructure_path: 'Infrastructure'
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"AdrienLbt\\HexagonalMakerBundle\\HexagonalMakerBundle": ["dev"]
|
|
||||||
},
|
|
||||||
"composer-scripts": {
|
|
||||||
"make:hexagonal:autoload": "symfony-cmd"
|
|
||||||
},
|
|
||||||
"post-install-output": [
|
|
||||||
"🎉 Le bundle Hexagonal Maker has been installed."
|
|
||||||
],
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
captcha_bundle:
|
|
||||||
width: 120
|
|
||||||
height: 40
|
|
||||||
length: 6
|
|
||||||
lines: 8
|
|
||||||
characters: 'ABCDEFGHJKLMNPQRSTUVWXYZ23456789'
|
|
||||||
case_sensitive: true
|
|
||||||
|
|
||||||
# Uncomment to render the twig block for captcha
|
|
||||||
#twig:
|
|
||||||
# form_themes:
|
|
||||||
# - '@AgilelabFrCaptcha/form/agilelab_fr_captcha.html.twig'
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
agilelab_fr_captcha_bundle.routes:
|
|
||||||
resource: '@AgilelabFrCaptchaBundle/config/routes.yaml'
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"AgilelabFr\\CaptchaBundle\\AgilelabFrCaptchaBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,151 +0,0 @@
|
|||||||
# Doctrine Doctor - Runtime Analysis for Doctrine ORM
|
|
||||||
# Full documentation: https://github.com/ahmed-bhs/doctrine-doctor/blob/main/docs/CONFIGURATION.md
|
|
||||||
|
|
||||||
doctrine_doctor:
|
|
||||||
# Enable Doctrine Doctor (automatically enabled in dev/test environments)
|
|
||||||
enabled: '%kernel.debug%'
|
|
||||||
|
|
||||||
# # Web Profiler integration
|
|
||||||
# profiler:
|
|
||||||
# show_in_toolbar: true
|
|
||||||
# show_debug_info: false
|
|
||||||
#
|
|
||||||
# # Performance Analyzers (all enabled by default with production-ready thresholds)
|
|
||||||
# analyzers:
|
|
||||||
# # Detect N+1 query problems (most common performance issue)
|
|
||||||
# n_plus_one:
|
|
||||||
# enabled: true
|
|
||||||
# threshold: 5 # Trigger when 5+ similar queries are detected
|
|
||||||
#
|
|
||||||
# # Detect slow queries
|
|
||||||
# slow_query:
|
|
||||||
# enabled: true
|
|
||||||
# threshold: 100 # milliseconds
|
|
||||||
#
|
|
||||||
# # Detect missing database indexes
|
|
||||||
# missing_index:
|
|
||||||
# enabled: true
|
|
||||||
# slow_query_threshold: 50 # Only EXPLAIN queries slower than 50ms
|
|
||||||
# explain_queries: true
|
|
||||||
# min_rows_scanned: 1000 # Suggest index when 1000+ rows scanned
|
|
||||||
#
|
|
||||||
# # Analyze hydration performance
|
|
||||||
# hydration:
|
|
||||||
# enabled: true
|
|
||||||
# row_threshold: 99 # Warning when hydrating 100+ objects
|
|
||||||
# critical_threshold: 999 # Critical when hydrating 1000+ objects
|
|
||||||
#
|
|
||||||
# # Detect excessive JOINs
|
|
||||||
# eager_loading:
|
|
||||||
# enabled: true
|
|
||||||
# join_threshold: 4 # Warning with 4+ JOINs
|
|
||||||
# critical_join_threshold: 7 # Critical with 7+ JOINs
|
|
||||||
#
|
|
||||||
# # Detect findAll() without limits
|
|
||||||
# find_all:
|
|
||||||
# enabled: true
|
|
||||||
# threshold: 99 # Warning when findAll() returns 100+ rows
|
|
||||||
#
|
|
||||||
# # Detect batch operations without EntityManager::clear()
|
|
||||||
# entity_manager_clear:
|
|
||||||
# enabled: true
|
|
||||||
# batch_size_threshold: 20 # Suggest clear() after 20+ operations
|
|
||||||
#
|
|
||||||
# # Suggest getReference() for simple ID lookups
|
|
||||||
# get_reference:
|
|
||||||
# enabled: true
|
|
||||||
# threshold: 2 # Suggest after 2+ simple SELECT by ID
|
|
||||||
#
|
|
||||||
# # Detect flush() in loops (anti-pattern)
|
|
||||||
# flush_in_loop:
|
|
||||||
# enabled: true
|
|
||||||
# flush_count_threshold: 5 # Trigger after 5+ flush calls
|
|
||||||
# time_window_ms: 1000 # Within 1 second window
|
|
||||||
#
|
|
||||||
# # Detect lazy loading in loops
|
|
||||||
# lazy_loading:
|
|
||||||
# enabled: true
|
|
||||||
# threshold: 10 # Trigger with 10+ lazy load queries
|
|
||||||
#
|
|
||||||
# # Suggest bulk operations for mass updates/deletes
|
|
||||||
# bulk_operation:
|
|
||||||
# enabled: true
|
|
||||||
# threshold: 20 # Suggest DQL UPDATE/DELETE for 20+ operations
|
|
||||||
#
|
|
||||||
# # Optimize JOIN usage
|
|
||||||
# join_optimization:
|
|
||||||
# enabled: true
|
|
||||||
# max_joins_recommended: 5 # Warning threshold
|
|
||||||
# max_joins_critical: 8 # Critical threshold
|
|
||||||
#
|
|
||||||
# # Suggest partial objects when loading full entities unnecessarily
|
|
||||||
# partial_object:
|
|
||||||
# enabled: true
|
|
||||||
# threshold: 5 # Trigger after 5+ queries
|
|
||||||
#
|
|
||||||
# # Suggest DTO hydration for aggregation queries
|
|
||||||
# dto_hydration:
|
|
||||||
# enabled: true
|
|
||||||
#
|
|
||||||
# # Security Analyzers
|
|
||||||
# dql_injection:
|
|
||||||
# enabled: true # Detect DQL/SQL injection vulnerabilities
|
|
||||||
#
|
|
||||||
# sql_injection_raw_queries:
|
|
||||||
# enabled: true # Detect SQL injection in raw queries
|
|
||||||
#
|
|
||||||
# sensitive_data_exposure:
|
|
||||||
# enabled: true # Detect sensitive data in serialization
|
|
||||||
#
|
|
||||||
# insecure_random:
|
|
||||||
# enabled: true # Detect insecure random generators
|
|
||||||
#
|
|
||||||
# # Code Quality Analyzers
|
|
||||||
# collection_initialization:
|
|
||||||
# enabled: true # Detect uninitialized collections
|
|
||||||
#
|
|
||||||
# cascade_configuration:
|
|
||||||
# enabled: true # Analyze cascade configurations
|
|
||||||
#
|
|
||||||
# cascade_all:
|
|
||||||
# enabled: true # Detect dangerous cascade="all"
|
|
||||||
#
|
|
||||||
# cascade_persist_independent:
|
|
||||||
# enabled: true # Detect cascade="persist" risks
|
|
||||||
#
|
|
||||||
# missing_orphan_removal:
|
|
||||||
# enabled: true # Detect missing orphanRemoval
|
|
||||||
#
|
|
||||||
# cascade_remove_independent:
|
|
||||||
# enabled: true # Detect cascade="remove" risks
|
|
||||||
#
|
|
||||||
# bidirectional_consistency:
|
|
||||||
# enabled: true # Check bidirectional associations
|
|
||||||
#
|
|
||||||
# orphan_removal_no_cascade:
|
|
||||||
# enabled: true # Detect orphanRemoval without cascade
|
|
||||||
#
|
|
||||||
# ondelete_mismatch:
|
|
||||||
# enabled: true # Check ORM vs DB cascade consistency
|
|
||||||
#
|
|
||||||
# foreign_key_mapping:
|
|
||||||
# enabled: true # Detect FKs as primitives instead of relations
|
|
||||||
#
|
|
||||||
# # Configuration Analyzers
|
|
||||||
# strict_mode:
|
|
||||||
# enabled: true # Check MySQL/MariaDB strict mode
|
|
||||||
#
|
|
||||||
# charset:
|
|
||||||
# enabled: true # Check database charset (utf8mb4 recommended)
|
|
||||||
#
|
|
||||||
# innodb_engine:
|
|
||||||
# enabled: true # Check if InnoDB is used
|
|
||||||
#
|
|
||||||
# connection_pooling:
|
|
||||||
# enabled: true # Analyze connection pool config
|
|
||||||
#
|
|
||||||
# doctrine_cache:
|
|
||||||
# enabled: true # Detect ArrayCache in production
|
|
||||||
#
|
|
||||||
# naming_convention:
|
|
||||||
# enabled: true # Check snake_case naming
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"AhmedBhs\\DoctrineDoctor\\DoctrineDoctorBundle": ["dev", "test"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
<fg=blue;options=bold>Doctrine Doctor</> has been successfully installed!
|
|
||||||
|
|
||||||
Runtime analysis for Doctrine ORM - integrated into the Symfony Web Profiler.
|
|
||||||
|
|
||||||
<options=bold>Next steps:</>
|
|
||||||
1. Browse your application to trigger database queries
|
|
||||||
2. Open the Web Profiler and click the <comment>Doctrine Doctor</> panel
|
|
||||||
|
|
||||||
Customize analyzer thresholds in <comment>%CONFIG_DIR%/packages/doctrine_doctor.yaml</>
|
|
||||||
|
|
||||||
Documentation: https://github.com/ahmed-bhs/doctrine-doctor
|
|
||||||
|
|
||||||
Happy debugging! 🚀
|
|
||||||
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
ajardin_blizzard_sdk:
|
|
||||||
blizzard:
|
|
||||||
client_id: '%env(BLIZZARD_CLIENT_ID)%'
|
|
||||||
client_secret: '%env(BLIZZARD_CLIENT_SECRET)%'
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Ajardin\\BlizzardSdkBundle\\AjardinBlizzardSdkBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"#1": "Generate your own API credentials through the Blizzard Developer Portal.",
|
|
||||||
"#2": "https://develop.battle.net/access/clients",
|
|
||||||
"BLIZZARD_CLIENT_ID": "",
|
|
||||||
"BLIZZARD_CLIENT_SECRET": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,55 +0,0 @@
|
|||||||
#!/usr/bin/env php
|
|
||||||
<?php
|
|
||||||
|
|
||||||
require __DIR__ . '/../vendor/autoload.php';
|
|
||||||
|
|
||||||
use Symfony\Component\Filesystem\Filesystem;
|
|
||||||
|
|
||||||
const SOURCE_DIRECTORY = 'vendor/ajardin/docker-symfony';
|
|
||||||
const TARGET_DIRECTORY = 'docker';
|
|
||||||
|
|
||||||
$filesystem = new Filesystem();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create the Docker directory at the project root
|
|
||||||
*/
|
|
||||||
if ($filesystem->exists(TARGET_DIRECTORY) === false) {
|
|
||||||
$filesystem->mkdir(TARGET_DIRECTORY);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Mirror the vendor directory with the directory created at the project root
|
|
||||||
*/
|
|
||||||
if ($filesystem->exists(SOURCE_DIRECTORY) === true) {
|
|
||||||
$filesystem->mirror(SOURCE_DIRECTORY, TARGET_DIRECTORY, null, ['override' => true]);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Define the default environment variables
|
|
||||||
*/
|
|
||||||
if ($filesystem->exists(TARGET_DIRECTORY . '/.env') === false) {
|
|
||||||
$filesystem->copy(
|
|
||||||
TARGET_DIRECTORY . '/.env.dist',
|
|
||||||
TARGET_DIRECTORY . '/.env'
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Define the default Nginx configuration
|
|
||||||
*/
|
|
||||||
if ($filesystem->exists(TARGET_DIRECTORY . '/nginx/conf.d/custom.conf') === false) {
|
|
||||||
$filesystem->copy(
|
|
||||||
TARGET_DIRECTORY . '/nginx/conf.d/symfony.conf.dist',
|
|
||||||
TARGET_DIRECTORY . '/nginx/conf.d/custom.conf'
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Copy the default Makefile at the project root
|
|
||||||
*/
|
|
||||||
if ($filesystem->exists('Makefile') === false) {
|
|
||||||
$filesystem->copy(
|
|
||||||
TARGET_DIRECTORY . '/Makefile.sample',
|
|
||||||
'Makefile'
|
|
||||||
);
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
"composer-scripts": {
|
|
||||||
"bin/docker-upgrade": "php-script"
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"bin/": "%BIN_DIR%/"
|
|
||||||
},
|
|
||||||
"gitignore": [
|
|
||||||
"/%BIN_DIR%/docker-upgrade",
|
|
||||||
"/docker/"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
* Edit the <fg=green>docker/.env</> file to configure your own settings.
|
|
||||||
|
|
||||||
* Edit the <fg=green>docker/nginx/conf.d/custom.conf</> file to configure your own virtual host.
|
|
||||||
|
|
||||||
* To manage the Docker environment from the project directory:
|
|
||||||
- If you already have a Makefile in your project, copy the content of the <fg=green>docker/Makefile.sample</> file at the top of it.
|
|
||||||
- If you do not already have a Makefile, the <fg=green>docker/Makefile.sample</> file will be installed in your project.
|
|
||||||
|
|
||||||
* Run <fg=green>make</> to display the list of available commands.
|
|
||||||
|
|
||||||
Documentation: https://github.com/ajardin/docker-symfony/wiki
|
|
||||||
-3
@@ -1,3 +0,0 @@
|
|||||||
ajgarlag_openid_connect_provider:
|
|
||||||
resource: '@AjgarlagOpenIDConnectProviderBundle/config/routes.php'
|
|
||||||
type: php
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Ajgarlag\\Bundle\\OpenIDConnectProviderBundle\\AjgarlagOpenIDConnectProviderBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Ajgl\\Twig\\Extension\\SymfonyBundle\\AjglBreakpointTwigExtensionBundle": ["dev"]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
consul:
|
|
||||||
service:
|
|
||||||
name: '%env(resolve:CONSUL_SERVICE_NAME)%'
|
|
||||||
host: '%env(resolve:CONSUL_SERVICE_HOST)%'
|
|
||||||
port: '%env(resolve:CONSUL_SERVICE_PORT)%'
|
|
||||||
client:
|
|
||||||
base_uri: '%env(resolve:CONSUL_CLIENT_BASE_URI)%'
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
consul_bundle:
|
|
||||||
resource: "@ConsulBundle/Resources/config/routing.yml"
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Akondas\\ConsulBundle\\ConsulBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"CONSUL_SERVICE_NAME": "symfony-app",
|
|
||||||
"CONSUL_SERVICE_HOST": "localhost",
|
|
||||||
"CONSUL_SERVICE_PORT": "8000",
|
|
||||||
"CONSUL_CLIENT_BASE_URI": "http://127.0.0.1:8500"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
-25
@@ -1,25 +0,0 @@
|
|||||||
alengo_webspace_settings:
|
|
||||||
type_select:
|
|
||||||
- 'blocks'
|
|
||||||
- 'category'
|
|
||||||
- 'categories'
|
|
||||||
- 'collection'
|
|
||||||
- 'collections'
|
|
||||||
- 'contact'
|
|
||||||
- 'contacts'
|
|
||||||
- 'date'
|
|
||||||
- 'dateTime'
|
|
||||||
- 'event'
|
|
||||||
- 'media'
|
|
||||||
- 'medias'
|
|
||||||
- 'account'
|
|
||||||
- 'accounts'
|
|
||||||
- 'page'
|
|
||||||
- 'pages'
|
|
||||||
- 'snippet'
|
|
||||||
- 'snippets'
|
|
||||||
- 'string' # default type
|
|
||||||
- 'tags'
|
|
||||||
- 'time'
|
|
||||||
- 'textArea'
|
|
||||||
- 'textEditor'
|
|
||||||
-45
@@ -1,45 +0,0 @@
|
|||||||
<?xml version="1.0" ?>
|
|
||||||
<properties xmlns="http://schemas.sulu.io/template/template"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
||||||
xsi:schemaLocation="http://schemas.sulu.io/template/template http://schemas.sulu.io/template/template-1.0.xsd">
|
|
||||||
|
|
||||||
<block name="dataBlocks">
|
|
||||||
<types>
|
|
||||||
<type name="singleMediaSelection">
|
|
||||||
<meta>
|
|
||||||
<title>alengo_webspace_settings.media</title>
|
|
||||||
</meta>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<property name="singleMediaSelection" type="single_media_selection">
|
|
||||||
<tag name="sulu.block_preview" priority="512"/>
|
|
||||||
</property>
|
|
||||||
</properties>
|
|
||||||
</type>
|
|
||||||
<type name="mediaSelection">
|
|
||||||
<meta>
|
|
||||||
<title>alengo_webspace_settings.medias</title>
|
|
||||||
</meta>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<property name="mediaSelection" type="media_selection">
|
|
||||||
<tag name="sulu.block_preview" priority="512"/>
|
|
||||||
</property>
|
|
||||||
</properties>
|
|
||||||
</type>
|
|
||||||
<type name="textEditor">
|
|
||||||
<meta>
|
|
||||||
<title>alengo_webspace_settings.textEditor</title>
|
|
||||||
</meta>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<property name="textEditor" type="text_editor">
|
|
||||||
<tag name="sulu.block_preview" priority="1024"/>
|
|
||||||
</property>
|
|
||||||
</properties>
|
|
||||||
</type>
|
|
||||||
</types>
|
|
||||||
</block>
|
|
||||||
|
|
||||||
</properties>
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Alengo\\Bundle\\AlengoWebspaceSettingsBundle\\AlengoWebspaceSettingsBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
* The <fg=green>AlengoWebspaceSettingsBundle</> for Sulu CMS is almost ready:
|
|
||||||
1. Configure your types in config/packages/alengo_webspace_settings.yaml
|
|
||||||
2. Configure your blocks if needed in config/templates/settings/webspace_settings_blocks.xml.
|
|
||||||
|
|
||||||
* <fg=blue>Read</> the documentation at <comment>https://github.com/alengodev/alengoWebspaceSettingsBundle/blob/main/README.md</>
|
|
||||||
-26
@@ -1,26 +0,0 @@
|
|||||||
alengo_webspace_settings:
|
|
||||||
type_select:
|
|
||||||
- 'blocks'
|
|
||||||
- 'category'
|
|
||||||
- 'categories'
|
|
||||||
- 'checkbox'
|
|
||||||
- 'collection'
|
|
||||||
- 'collections'
|
|
||||||
- 'contact'
|
|
||||||
- 'contacts'
|
|
||||||
- 'date'
|
|
||||||
- 'dateTime'
|
|
||||||
- 'event'
|
|
||||||
- 'media'
|
|
||||||
- 'medias'
|
|
||||||
- 'account'
|
|
||||||
- 'accounts'
|
|
||||||
- 'page'
|
|
||||||
- 'pages'
|
|
||||||
- 'snippet'
|
|
||||||
- 'snippets'
|
|
||||||
- 'string' # default type
|
|
||||||
- 'tags'
|
|
||||||
- 'time'
|
|
||||||
- 'textArea'
|
|
||||||
- 'textEditor'
|
|
||||||
-45
@@ -1,45 +0,0 @@
|
|||||||
<?xml version="1.0" ?>
|
|
||||||
<properties xmlns="http://schemas.sulu.io/template/template"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
||||||
xsi:schemaLocation="http://schemas.sulu.io/template/template http://schemas.sulu.io/template/template-1.0.xsd">
|
|
||||||
|
|
||||||
<block name="dataBlocks">
|
|
||||||
<types>
|
|
||||||
<type name="singleMediaSelection">
|
|
||||||
<meta>
|
|
||||||
<title>alengo_webspace_settings.media</title>
|
|
||||||
</meta>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<property name="singleMediaSelection" type="single_media_selection">
|
|
||||||
<tag name="sulu.block_preview" priority="512"/>
|
|
||||||
</property>
|
|
||||||
</properties>
|
|
||||||
</type>
|
|
||||||
<type name="mediaSelection">
|
|
||||||
<meta>
|
|
||||||
<title>alengo_webspace_settings.medias</title>
|
|
||||||
</meta>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<property name="mediaSelection" type="media_selection">
|
|
||||||
<tag name="sulu.block_preview" priority="512"/>
|
|
||||||
</property>
|
|
||||||
</properties>
|
|
||||||
</type>
|
|
||||||
<type name="textEditor">
|
|
||||||
<meta>
|
|
||||||
<title>alengo_webspace_settings.textEditor</title>
|
|
||||||
</meta>
|
|
||||||
|
|
||||||
<properties>
|
|
||||||
<property name="textEditor" type="text_editor">
|
|
||||||
<tag name="sulu.block_preview" priority="1024"/>
|
|
||||||
</property>
|
|
||||||
</properties>
|
|
||||||
</type>
|
|
||||||
</types>
|
|
||||||
</block>
|
|
||||||
|
|
||||||
</properties>
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Alengo\\Bundle\\AlengoWebspaceSettingsBundle\\AlengoWebspaceSettingsBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
* The <fg=green>AlengoWebspaceSettingsBundle</> for Sulu CMS is almost ready:
|
|
||||||
1. Configure your types in config/packages/alengo_webspace_settings.yaml
|
|
||||||
2. Configure your blocks if needed in config/templates/settings/webspace_settings_blocks.xml.
|
|
||||||
|
|
||||||
* <fg=blue>Read</> the documentation at <comment>https://github.com/alengodev/alengoWebspaceSettingsBundle/blob/main/README.md</>
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
alexandre_evc:
|
|
||||||
api_id: '%env(EVC_API)%'
|
|
||||||
username: '%env(EVC_USERNAME)%'
|
|
||||||
password: '%env(EVC_PASSWORD)%'
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Alexandre\\EvcBundle\\AlexandreEvcBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"EVC_API": "Enter the api version provided by evc.de support",
|
|
||||||
"EVC_USERNAME": "Enter your reseller account number",
|
|
||||||
"EVC_PASSWORD": "Enter your api password, not the password to connect on evc.de website"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
-19
@@ -1,19 +0,0 @@
|
|||||||
alex_geno_phone_verification:
|
|
||||||
storage:
|
|
||||||
driver: redis # redis || mongodb
|
|
||||||
redis:
|
|
||||||
connection: default
|
|
||||||
mongodb:
|
|
||||||
connection: default
|
|
||||||
sender:
|
|
||||||
transport: vonage
|
|
||||||
manager:
|
|
||||||
otp:
|
|
||||||
length: '%env(int:PHONE_VERIFICATION_OTP_LENGTH)%'
|
|
||||||
rate_limits:
|
|
||||||
initiate: #for every 'to' no more than 'count' initiations over 'period_secs' seconds
|
|
||||||
period_secs: '%env(int:PHONE_VERIFICATION_RATE_LIMIT_INITIATE_PERIOD_SECS)%'
|
|
||||||
count: '%env(int:PHONE_VERIFICATION_RATE_LIMIT_INITIATE_COUNT)%'
|
|
||||||
complete: #for every 'to' no more than 'count' failed completions over 'period_secs' seconds
|
|
||||||
period_secs: '%env(int:PHONE_VERIFICATION_RATE_LIMIT_COMPLETE_PERIOD_SECS)%' # this is also the expiration period for OTP
|
|
||||||
count: '%env(int:PHONE_VERIFICATION_RATE_LIMIT_COMPLETE_COUNT)%'
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
phone_verification_initiate:
|
|
||||||
path: /phone-verification/initiate/{to}
|
|
||||||
controller: AlexGeno\PhoneVerificationBundle\Controller\PhoneVerificationController::initiate
|
|
||||||
methods: POST
|
|
||||||
phone_verification_complete:
|
|
||||||
path: /phone-verification/complete/{to}/{otp}
|
|
||||||
controller: AlexGeno\PhoneVerificationBundle\Controller\PhoneVerificationController::complete
|
|
||||||
methods: POST
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"AlexGeno\\PhoneVerificationBundle\\AlexGenoPhoneVerificationBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"#0": "1000..9999",
|
|
||||||
"PHONE_VERIFICATION_OTP_LENGTH": "4",
|
|
||||||
"#1": "for every 'to' no more than 10 initiations over 24 hours",
|
|
||||||
"PHONE_VERIFICATION_RATE_LIMIT_INITIATE_PERIOD_SECS": "86400",
|
|
||||||
"PHONE_VERIFICATION_RATE_LIMIT_INITIATE_COUNT": "10",
|
|
||||||
"#2": "for every 'to' no more than 5 failed completions over 5 minutes",
|
|
||||||
"PHONE_VERIFICATION_RATE_LIMIT_COMPLETE_PERIOD_SECS": "300",
|
|
||||||
"PHONE_VERIFICATION_RATE_LIMIT_COMPLETE_COUNT": "5"
|
|
||||||
},
|
|
||||||
"add-lines": [
|
|
||||||
{
|
|
||||||
"file": "config/packages/snc_redis.yaml",
|
|
||||||
"position": "after_target",
|
|
||||||
"warn_if_missing": true,
|
|
||||||
"target": " clients:",
|
|
||||||
"content": " default:\n type: predis\n alias: default\n dsn: \"%env(REDIS_URL)%\""
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
# RussianTextBundle configuration
|
|
||||||
# See https://github.com/alexivanou/russian-text-bundle for documentation
|
|
||||||
russian_text:
|
|
||||||
# All services are enabled by default.
|
|
||||||
# Set any to false to disable unused functionality.
|
|
||||||
enable_pluralizer: true
|
|
||||||
enable_number_speller: true
|
|
||||||
enable_money_speller: true
|
|
||||||
enable_name_inflector: true
|
|
||||||
enable_noun_decliner: true
|
|
||||||
enable_adjective_decliner: true
|
|
||||||
enable_geo_inflector: true
|
|
||||||
enable_time_speller: true
|
|
||||||
enable_twig_plural: true
|
|
||||||
enable_twig_numeral: true
|
|
||||||
enable_twig_name: true
|
|
||||||
enable_twig_declension: true
|
|
||||||
enable_twig_time: true
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"AlexIvanou\\RussianTextBundle\\AlexIvanouRussianTextBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
RussianTextBundle installed!
|
|
||||||
|
|
||||||
Available Twig filters: pluralize, cardinal, ordinal, spell_money, inflect_name, noun_case, noun_plural, adj_case, geo_case, time_ago, distance_of_time
|
|
||||||
Available Twig functions: name_cases, detect_gender
|
|
||||||
|
|
||||||
See README for usage examples.
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
algolia:
|
|
||||||
application_id: "%env(ALGOLIA_APP_ID)%"
|
|
||||||
api_key: "%env(ALGOLIA_API_KEY)%"
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Algolia\\AlgoliaSearchBundle\\AlgoliaAlgoliaSearchBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"ALGOLIA_APP_ID": "...",
|
|
||||||
"ALGOLIA_API_KEY": "..."
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
# All available configuration can be found here:
|
|
||||||
# https://www.algolia.com/doc/api-client/symfony/configuration/
|
|
||||||
algolia_search:
|
|
||||||
prefix: '%env(APP_ENV)%_'
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Algolia\\SearchBundle\\AlgoliaSearchBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"#1": "Create a free account on www.algolia.com",
|
|
||||||
"#2": "and get your credentials from the API Keys tab.",
|
|
||||||
"ALGOLIA_APP_ID": "...",
|
|
||||||
"ALGOLIA_API_KEY": "..."
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
* The Algolia/SearchBundle uses Algolia by default. Create a free
|
|
||||||
account on http://www.algolia.com and modify your ALGOLIA_APP_ID
|
|
||||||
and ALGOLIA_API_KEY config in <fg=green>.env</>
|
|
||||||
|
|
||||||
* Edit the configuration in <fg=green>config/packages/algolia_search.yaml</>
|
|
||||||
to start indexing your data.
|
|
||||||
|
|
||||||
Documentation: https://www.algolia.com/doc/api-client/symfony/
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
cycle:
|
|
||||||
dbal:
|
|
||||||
databases:
|
|
||||||
default:
|
|
||||||
connection: default_connection
|
|
||||||
|
|
||||||
connections:
|
|
||||||
default_connection:
|
|
||||||
driver: mysql
|
|
||||||
host: '%env(resolve:DB_HOST)%'
|
|
||||||
port: '%env(int:DB_PORT)%'
|
|
||||||
dbname: '%env(resolve:DB_NAME)%'
|
|
||||||
user: '%env(resolve:DB_USER)%'
|
|
||||||
password: '%env(resolve:DB_PASSWORD)%'
|
|
||||||
charset: utf8
|
|
||||||
|
|
||||||
orm:
|
|
||||||
schema:
|
|
||||||
type: attribute
|
|
||||||
dir: "%kernel.project_dir%/src/Entity"
|
|
||||||
cache_dir: "%kernel.cache_dir%/cycle"
|
|
||||||
relation:
|
|
||||||
fk_create: false
|
|
||||||
index_create: false
|
|
||||||
|
|
||||||
migration:
|
|
||||||
directory: "%kernel.project_dir%/migrations"
|
|
||||||
|
|
||||||
when@test:
|
|
||||||
cycle:
|
|
||||||
dbal:
|
|
||||||
connections:
|
|
||||||
default_connection:
|
|
||||||
dbname: 'test_%env(resolve:DB_NAME)%'
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Alms\\Bundle\\CycleBundle\\CycleBundle": [
|
|
||||||
"all"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/",
|
|
||||||
"src/": "%SRC_DIR%/",
|
|
||||||
"migrations/": "migrations/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"DB_DRIVER": "mysql",
|
|
||||||
"DB_HOST": "localhost",
|
|
||||||
"DB_PORT": "3306",
|
|
||||||
"DB_NAME": "app",
|
|
||||||
"DB_USER": "root",
|
|
||||||
"DB_PASSWORD": "secret"
|
|
||||||
},
|
|
||||||
"post-install-output": [
|
|
||||||
" * Modify your database config in <fg=green>.env</>"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
alteis_hagreed:
|
|
||||||
token: '%env(HAGREED_TOKEN)%'
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Alteis\\HagreedBundle\\AlteisHagreedBundle": [
|
|
||||||
"all"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"env": {
|
|
||||||
"HAGREED_TOKEN": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
services:
|
|
||||||
AmbientLink\SDK\SmartMonkeyConnection:
|
|
||||||
arguments: ['@amnient.link_connection_settings', '%env(AMBIENT_LINK_USERNAME)%', '%env(AMBIENT_LINK_PASSWORD)%']
|
|
||||||
|
|
||||||
amnient.link_connection_settings:
|
|
||||||
class: PhpMqtt\Client\ConnectionSettings
|
|
||||||
|
|
||||||
PhpMqtt\Client\Contracts\MQTTClient: '@PhpMqtt\Client\MQTTClient'
|
|
||||||
PhpMqtt\Client\MQTTClient:
|
|
||||||
arguments:
|
|
||||||
- '%env(AMBIENT_LINK_HOST)%'
|
|
||||||
- '%env(AMBIENT_LINK_PORT)%'
|
|
||||||
- '%env(AMBIENT_LINK_MONKEY_ID)%'
|
|
||||||
|
|
||||||
AmbientLink\SDK\Mqtt\MqttAdapter:
|
|
||||||
arguments:
|
|
||||||
$username: '%env(AMBIENT_LINK_USERNAME)%'
|
|
||||||
$password: '%env(AMBIENT_LINK_PASSWORD)%'
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
"env": {
|
|
||||||
"AMBIENT_LINK_HOST": "",
|
|
||||||
"AMBIENT_LINK_PORT": "1883",
|
|
||||||
"AMBIENT_LINK_USERNAME": "",
|
|
||||||
"AMBIENT_LINK_PASSWORD": "",
|
|
||||||
"AMBIENT_LINK_MONKEY_ID": ""
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
* Your ability is almost ready:
|
|
||||||
1. Edit <comment>src/AbilityEventSubscriber</comment> and <info>implement</info> your logic:
|
|
||||||
|
|
||||||
public static function getSubscribedEvents(): array
|
|
||||||
{
|
|
||||||
return [
|
|
||||||
// can be found in AmbientLink\SDK\Event\
|
|
||||||
EnterRoomEvent::NAME => 'onEnterRoom',
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
public function onEnterRoom(EnterRoomEvent $event): void
|
|
||||||
{
|
|
||||||
$roomName = $event->roomName();
|
|
||||||
|
|
||||||
$this->logger->debug(sprintf('Some person enters room "%s".', $roomName));
|
|
||||||
|
|
||||||
// @todo implement logic here
|
|
||||||
}
|
|
||||||
|
|
||||||
* You can found Events in AmbientLink\SDK\Event\
|
|
||||||
* Using Ability Command? Try <info>php bin/console ability:debug --dummy</info>
|
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
# Pickle Panther — YAML-driven E2E testing on top of Symfony Panther.
|
|
||||||
#
|
|
||||||
# Loaded in the "test" environment only: the bundle is registered for "test" in
|
|
||||||
# config/bundles.php, so a root-level config/packages/ file would also load in
|
|
||||||
# prod (where the bundle is absent) and Symfony would fail to boot.
|
|
||||||
#
|
|
||||||
# Every key below is OPTIONAL and shown with its default value — edit in place,
|
|
||||||
# or delete what you keep at the default. Full reference & docs:
|
|
||||||
# https://github.com/Amoifr/PicklePantherBundle
|
|
||||||
pickle_panther:
|
|
||||||
locale: fr # default DSL language (fr|en) — matching is bilingual anyway
|
|
||||||
debug: false # true => a screenshot after every step (= E2E_DEBUG=1)
|
|
||||||
scenarios_dir: '%kernel.project_dir%/tests/E2E/Scenario'
|
|
||||||
report:
|
|
||||||
enabled: true
|
|
||||||
output_dir: '%kernel.project_dir%/var/pickle-panther'
|
|
||||||
browser:
|
|
||||||
headless: true
|
|
||||||
chrome_args: [] # extra Chrome args appended to the defaults
|
|
||||||
desktop:
|
|
||||||
width: 1920
|
|
||||||
height: 1080
|
|
||||||
user_agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36'
|
|
||||||
mobile:
|
|
||||||
width: 375
|
|
||||||
height: 812
|
|
||||||
pixel_ratio: 3.0
|
|
||||||
user_agent: 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.0 Mobile/15E148 Safari/604.1'
|
|
||||||
|
|
||||||
# Optional built-in form-login authenticator. Uncomment to enable it; leave
|
|
||||||
# commented if your app has a custom login flow (define your own service
|
|
||||||
# aliased to Amoifr\PicklePantherBundle\Auth\AuthenticatorInterface instead).
|
|
||||||
# Keep credentials out of the repository — read them from environment variables.
|
|
||||||
#auth:
|
|
||||||
# login_path: /login
|
|
||||||
# logout_path: /logout
|
|
||||||
# form_selector: 'form'
|
|
||||||
# email_field: '_username'
|
|
||||||
# password_field: '_password'
|
|
||||||
# roles: # map a scenario role name to its credentials
|
|
||||||
# admin: { email: '%env(E2E_ADMIN_EMAIL)%', password: '%env(E2E_ADMIN_PASSWORD)%' }
|
|
||||||
# user: { email: '%env(E2E_USER_EMAIL)%', password: '%env(E2E_USER_PASSWORD)%' }
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Amoifr\\PicklePantherBundle\\PicklePantherBundle": ["test"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
},
|
|
||||||
"post-install-output": [
|
|
||||||
" * The bundle is enabled in the <comment>test</> environment only.",
|
|
||||||
" Tune <comment>config/packages/test/pickle_panther.yaml</> as needed (every key is optional).",
|
|
||||||
"",
|
|
||||||
" * <comment>To actually run E2E scenarios you need a chromedriver</>",
|
|
||||||
" (<comment>composer require --dev dbrekelmans/bdi && vendor/bin/bdi detect drivers</>)",
|
|
||||||
" <comment>or a browser provided via Docker.</>",
|
|
||||||
"",
|
|
||||||
" * Docs: <href=https://github.com/Amoifr/PicklePantherBundle>https://github.com/Amoifr/PicklePantherBundle</>"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
amzs_random:
|
|
||||||
auto_connect: true
|
|
||||||
default_connection: mysql
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
_admin_amzs_random_bundle:
|
|
||||||
resource: "@AmzsRandomBundle/Resources/config/routing.yaml"
|
|
||||||
prefix: admin/menu
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Amzs\\RandomBundle\\AmzsRandomBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
omnipay:
|
|
||||||
success_url: '/profile/history_orders'
|
|
||||||
fail_url: '/'
|
|
||||||
return_url: '/omnipay_return'
|
|
||||||
notify_url: '/omnipay_notify'
|
|
||||||
cancel_url: '/omnipay_cancel'
|
|
||||||
data_keys:
|
|
||||||
paymentId: ['orderNumber']
|
|
||||||
customerEmail: ['customerNumber']
|
|
||||||
gateways: null
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
omnipay:
|
|
||||||
resource: "@OmnipayBundle/Resources/config/routing.yml"
|
|
||||||
prefix: /
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Andchir\\OmnipayBundle\\OmnipayBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
comments:
|
|
||||||
comment_class: App\MainBundle\Document\Comment
|
|
||||||
status_default: pending
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
comments:
|
|
||||||
resource: '@CommentsBundle'
|
|
||||||
type: annotation
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"Andchir\\CommentsBundle\\CommentsBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,72 +0,0 @@
|
|||||||
# -----------------------------------------------------------------------------
|
|
||||||
# AndrewGos Telegram Bot Bundle - Default Configuration
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
# This file was generated by the AndrewGos Telegram Bot Bundle recipe.
|
|
||||||
# It provides a solid foundation for your first Telegram bot.
|
|
||||||
#
|
|
||||||
# ❗️ YOUR NEXT STEPS:
|
|
||||||
# 1. Set your bot's token in the .env file:
|
|
||||||
# TELEGRAM_BOT_TOKEN="123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11"
|
|
||||||
#
|
|
||||||
# 2. Create the handler and checker classes referenced below, for example:
|
|
||||||
# src/Telegram/Handler/StartHandler.php
|
|
||||||
# src/Telegram/Checker/CommandChecker.php
|
|
||||||
# src/Telegram/Handler/DefaultMessageHandler.php
|
|
||||||
# -----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
andrew_gos_telegram_bot:
|
|
||||||
bots:
|
|
||||||
# 🤖 This is the unique name for your bot.
|
|
||||||
# You'll use this name in console commands, e.g., `php bin/console andrew-gos:telegram-bot:listen default_bot`
|
|
||||||
# default_bot:
|
|
||||||
# 🏭 The factory defines how the Telegram API client is created.
|
|
||||||
# factory:
|
|
||||||
# 'getUpdates' is a shortcut for the long-polling factory. It's perfect for
|
|
||||||
# getting started quickly with the `listen` command.
|
|
||||||
# For production, you will likely switch to webhooks using the 'default' factory.
|
|
||||||
# method: 'getUpdates'
|
|
||||||
# arguments:
|
|
||||||
# ✅ Best Practice: Never hardcode secrets!
|
|
||||||
# This reads the token from your .env file.
|
|
||||||
# $token: '%env(string:TELEGRAM_BOT_TOKEN)%'
|
|
||||||
|
|
||||||
# 🔌 Plugins are services that run on EVERY update before handlers.
|
|
||||||
# They are great for logging, analytics, or session management.
|
|
||||||
# Uncomment this section to enable a request logger.
|
|
||||||
# plugins:
|
|
||||||
# - class: App\Telegram\Plugin\RequestLoggerPlugin
|
|
||||||
# arguments:
|
|
||||||
# # This injects the default Symfony logger for the 'telegram' channel.
|
|
||||||
# $logger: '@monolog.logger.telegram'
|
|
||||||
|
|
||||||
# 🔄 Handlers contain the core logic of your bot.
|
|
||||||
# They are checked in order of priority (higher numbers first).
|
|
||||||
# The first handler whose 'checker' passes will be executed.
|
|
||||||
# handlers:
|
|
||||||
# Handler for the '/start' command. It has a high priority.
|
|
||||||
# -
|
|
||||||
# The checker decides if the handler should run for the current update.
|
|
||||||
# checker:
|
|
||||||
# class: App\Telegram\Checker\CommandChecker
|
|
||||||
# arguments:
|
|
||||||
# $command: '/start'
|
|
||||||
|
|
||||||
# The handler contains the actual logic to execute.
|
|
||||||
# handler: App.Telegram.Handler.StartHandler
|
|
||||||
|
|
||||||
# Middlewares run after the checker but before the handler.
|
|
||||||
# Useful for authentication, rate limiting, etc.
|
|
||||||
# middlewares:
|
|
||||||
# - App\Telegram\Middleware\UserRateLimiterMiddleware
|
|
||||||
|
|
||||||
# Higher priority means this handler is checked before others.
|
|
||||||
# priority: 10
|
|
||||||
|
|
||||||
# A fallback handler for any message not caught by the handlers above.
|
|
||||||
# When a 'checker' is not specified, it defaults to `AnyChecker`,
|
|
||||||
# -
|
|
||||||
# which always passes. This makes it a perfect "catch-all".
|
|
||||||
# handler: App\Telegram\Handler\DefaultMessageHandler
|
|
||||||
|
|
||||||
# A negative priority ensures this runs last.
|
|
||||||
# priority: -10
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"bundles": {
|
|
||||||
"AndrewGos\\TelegramBotBundle\\AndrewGosTelegramBotBundle": ["all"]
|
|
||||||
},
|
|
||||||
"copy-from-recipe": {
|
|
||||||
"config/": "%CONFIG_DIR%/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
services:
|
|
||||||
anezi_twig.locale_extension:
|
|
||||||
class: Anezi\Locale\Twig\Extension\LocaleExtension
|
|
||||||
public: false
|
|
||||||
arguments:
|
|
||||||
$locales: ['fr', 'en'] # Edit here for your needs.
|
|
||||||
tags:
|
|
||||||
- { name: twig.extension }
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user