Compare commits
8
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
46ae716aa0 | ||
|
|
9a401d740a | ||
|
|
136dba5257 | ||
|
|
8815d735e0 | ||
|
|
2fee2cb945 | ||
|
|
aada303a9e | ||
|
|
3e32add187 | ||
|
|
325a2f4071 |
@@ -0,0 +1,3 @@
|
||||
## 2.11.0 - 2025-07-10
|
||||
### Release
|
||||
* Update chill bundles to v4.0.2
|
||||
@@ -0,0 +1,3 @@
|
||||
## 2.12.0 - 2025-11-10
|
||||
### Release
|
||||
* Update chill bundles to v4.7.0
|
||||
@@ -0,0 +1,3 @@
|
||||
## 2.13.0 - 2026-07-10
|
||||
### Release
|
||||
* Release chill with bundles version 5.1.3
|
||||
@@ -0,0 +1,4 @@
|
||||
# define your env variables for the test env here
|
||||
KERNEL_CLASS='App\Kernel'
|
||||
APP_SECRET='$ecretf0rt3st'
|
||||
SYMFONY_DEPRECATIONS_HELPER=999999
|
||||
+14
@@ -19,3 +19,17 @@ yarn-error.log
|
||||
###> lexik/jwt-authentication-bundle ###
|
||||
/config/jwt/*.pem
|
||||
###< lexik/jwt-authentication-bundle ###
|
||||
|
||||
###> phpstan/phpstan ###
|
||||
phpstan.neon
|
||||
###< phpstan/phpstan ###
|
||||
|
||||
###> phpunit/phpunit ###
|
||||
/phpunit.xml
|
||||
/.phpunit.cache/
|
||||
###< phpunit/phpunit ###
|
||||
|
||||
###> symfony/phpunit-bridge ###
|
||||
.phpunit.result.cache
|
||||
/phpunit.xml
|
||||
###< symfony/phpunit-bridge ###
|
||||
|
||||
@@ -6,6 +6,18 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
|
||||
and is generated by [Changie](https://github.com/miniscruff/changie).
|
||||
|
||||
|
||||
## 2.13.0 - 2026-07-10
|
||||
### Release
|
||||
* Release chill with bundles version 5.1.3
|
||||
|
||||
## 2.12.0 - 2025-11-10
|
||||
### Release
|
||||
* Update chill bundles to v4.7.0
|
||||
|
||||
## 2.11.0 - 2025-07-10
|
||||
### Release
|
||||
* Update chill bundles to v4.0.2
|
||||
|
||||
## 2.10.0 - 2025-05-13
|
||||
### Release
|
||||
* Update chill bundles to 3.11.0
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
FROM php:8.3-fpm-alpine AS chill_base_php82
|
||||
|
||||
ENV POSTGRES_VERSION=15
|
||||
ENV POSTGRES_VERSION=16
|
||||
|
||||
# default UID for the PHP user
|
||||
ARG UID=1000
|
||||
|
||||
+55
-52
@@ -1,38 +1,8 @@
|
||||
{
|
||||
"name": "chill-project/app",
|
||||
"license": "AGPL-3.0",
|
||||
"type": "project",
|
||||
"license": "proprietary",
|
||||
"minimum-stability": "stable",
|
||||
"prefer-stable": true,
|
||||
"require": {
|
||||
"php": ">=8.2.0",
|
||||
"ext-ctype": "*",
|
||||
"ext-iconv": "*",
|
||||
"champs-libres/wopi-bundle": "dev-master@dev",
|
||||
"champs-libres/wopi-lib": "dev-master@dev",
|
||||
"chill-project/chill-bundles": "dev-fix_mado_to_validate@dev",
|
||||
"chill-project/chill-deploy": "^1.0",
|
||||
"graylog2/gelf-php": "^2.0",
|
||||
"symfony/console": "5.4.*",
|
||||
"symfony/dotenv": "5.4.*",
|
||||
"symfony/flex": "^1.17|^2",
|
||||
"symfony/framework-bundle": "5.4.*",
|
||||
"symfony/runtime": "5.4.*",
|
||||
"symfony/yaml": "5.4.*"
|
||||
},
|
||||
"config": {
|
||||
"allow-plugins": {
|
||||
"composer/package-versions-deprecated": true,
|
||||
"php-http/discovery": true,
|
||||
"symfony/flex": true,
|
||||
"symfony/runtime": true
|
||||
},
|
||||
"optimize-autoloader": true,
|
||||
"preferred-install": {
|
||||
"chill-project/chill-bundles": "source",
|
||||
"*": "dist"
|
||||
},
|
||||
"sort-packages": true
|
||||
},
|
||||
"description": "The Chill distribution",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"App\\": "src/"
|
||||
@@ -43,11 +13,43 @@
|
||||
"App\\Tests\\": "tests/"
|
||||
}
|
||||
},
|
||||
"replace": {
|
||||
"symfony/polyfill-ctype": "*",
|
||||
"symfony/polyfill-iconv": "*",
|
||||
"symfony/polyfill-php72": "*"
|
||||
"require": {
|
||||
"ext-redis": "*",
|
||||
"chill-project/chill-bundles": "v5.1.3",
|
||||
"hslavich/oneloginsaml-bundle": "^2.10",
|
||||
"symfony/runtime": "^5.4.0",
|
||||
"symfony/console": "5.4.*",
|
||||
"symfony/dotenv": "5.4.*",
|
||||
"symfony/flex": "^1.17|^2",
|
||||
"symfony/framework-bundle": "5.4.*",
|
||||
"symfony/yaml": "5.4.*",
|
||||
"symfony/amqp-messenger": "5.4.*",
|
||||
"graylog2/gelf-php": "^2.0",
|
||||
"champs-libres/orange-contact-everyone-notifier": "^1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"fakerphp/faker": "^1.13",
|
||||
"nelmio/alice": "^3.8",
|
||||
"phpunit/phpunit": ">=7.5",
|
||||
"symfony/maker-bundle": "^1.20",
|
||||
"doctrine/doctrine-fixtures-bundle": "^3.3",
|
||||
"symfony/web-profiler-bundle": "^5.0",
|
||||
"symfony/var-dumper": "4.*",
|
||||
"symfony/phpunit-bridge": "^5.2",
|
||||
"phpspec/prophecy-phpunit": "^2.0",
|
||||
"phpstan/phpstan": "^1.10",
|
||||
"phpstan/phpstan-deprecation-rules": "^1.1",
|
||||
"phpstan/extension-installer": "^1.2",
|
||||
"phpstan/phpstan-strict-rules": "^1.5",
|
||||
"rector/rector": "^1.2",
|
||||
"phpstan/phpstan-doctrine": "^1.3",
|
||||
"phpstan/phpstan-symfony": "^1.3",
|
||||
"phpstan/phpstan-phpunit": "^1.3",
|
||||
"jangregor/phpstan-prophecy": "^1.0",
|
||||
"symfony/debug-bundle": "^5.4"
|
||||
},
|
||||
"minimum-stability": "dev",
|
||||
"prefer-stable": true,
|
||||
"scripts": {
|
||||
"auto-scripts": {
|
||||
"cache:clear": "symfony-cmd",
|
||||
@@ -55,26 +57,27 @@
|
||||
},
|
||||
"post-install-cmd": [
|
||||
"@auto-scripts"
|
||||
],
|
||||
"post-update-cmd": [
|
||||
"@auto-scripts"
|
||||
]
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/symfony": "*"
|
||||
"config": {
|
||||
"bin-dir": "bin",
|
||||
"allow-plugins": {
|
||||
"ocramius/package-versions": true,
|
||||
"symfony/flex": true,
|
||||
"phpstan/extension-installer": true,
|
||||
"symfony/runtime": true
|
||||
},
|
||||
"preferred-install": {
|
||||
"chill-project/chill-bundles": "source",
|
||||
"champs-libres/async-uploader-bundle": "source"
|
||||
}
|
||||
},
|
||||
"extra": {
|
||||
"symfony": {
|
||||
"allow-contrib": false,
|
||||
"require": "5.4.*",
|
||||
"endpoint": ["flex://defaults", "https://gitlab.com/api/v4/projects/57371968/repository/files/index.json/raw?ref=main"],
|
||||
"docker": true
|
||||
"endpoint": [
|
||||
"flex://defaults",
|
||||
"https://gitlab.com/api/v4/projects/57371968/repository/files/index.json/raw?ref=main"
|
||||
]
|
||||
}
|
||||
},
|
||||
"require-dev": {
|
||||
"doctrine/doctrine-fixtures-bundle": "^3.6",
|
||||
"nelmio/alice": "^3.12",
|
||||
"symfony/debug-bundle": "5.4.*",
|
||||
"symfony/web-profiler-bundle": "5.4.*"
|
||||
}
|
||||
}
|
||||
|
||||
Generated
+3636
-755
File diff suppressed because it is too large
Load Diff
@@ -30,6 +30,7 @@ return [
|
||||
Chill\BudgetBundle\ChillBudgetBundle::class => ['all' => true],
|
||||
Chill\WopiBundle\ChillWopiBundle::class => ['all' => true],
|
||||
Chill\EventBundle\ChillEventBundle::class => ['all' => true],
|
||||
Chill\TicketBundle\ChillTicketBundle::class => ['all' => true],
|
||||
Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle::class => ['dev' => true, 'test' => true],
|
||||
Nelmio\Alice\Bridge\Symfony\NelmioAliceBundle::class => ['dev' => true, 'test' => true],
|
||||
Symfony\Bundle\DebugBundle\DebugBundle::class => ['dev' => true],
|
||||
|
||||
@@ -13,6 +13,7 @@ doctrine_migrations:
|
||||
'Chill\Migrations\AsideActivity': '@ChillAsideActivityBundle/migrations'
|
||||
'Chill\Migrations\Calendar': '@ChillCalendarBundle/migrations'
|
||||
'Chill\Migrations\Budget': '@ChillBudgetBundle/migrations'
|
||||
'Chill\Migrations\Ticket': '@ChillTicketBundle/migrations'
|
||||
all_or_nothing:
|
||||
true
|
||||
|
||||
|
||||
@@ -49,6 +49,7 @@ security:
|
||||
path: /logout
|
||||
switch_user: true
|
||||
# end of lines added by chill-bundles recipe
|
||||
user_checker: chill_security.user_checker
|
||||
|
||||
# Easy way to control access for large sections of your site
|
||||
# Note: Only the *first* access control that matches will be used
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
parameters:
|
||||
level: 6
|
||||
paths:
|
||||
- bin/
|
||||
- config/
|
||||
- public/
|
||||
- src/
|
||||
- tests/
|
||||
+71
-72
@@ -1,61 +1,9 @@
|
||||
{
|
||||
"champs-libres/wopi-bundle": {
|
||||
"version": "dev-master"
|
||||
"version": "dev-symfony-v5"
|
||||
},
|
||||
"chill-project/chill-bundles": {
|
||||
"version": "3.0",
|
||||
"recipe": {
|
||||
"repo": "gitlab.com/Chill-Projet/chill-recipes",
|
||||
"branch": "main",
|
||||
"version": "3.0",
|
||||
"ref": "b8bfc2a355106205bfc235690053fdd96e055275"
|
||||
},
|
||||
"files": [
|
||||
"config/packages/cache_chill.yaml",
|
||||
"config/packages/chill.yaml",
|
||||
"config/packages/chill_budget.yaml",
|
||||
"config/packages/chill_calendar.yaml",
|
||||
"config/packages/chill_doc_generator.yaml",
|
||||
"config/packages/chill_doc_store.yaml",
|
||||
"config/packages/doctrine_migrations_chill.yaml",
|
||||
"config/packages/framework_chill.yaml",
|
||||
"config/packages/mailer_chill.yaml",
|
||||
"config/packages/routing_chill.yaml",
|
||||
"config/packages/security_chill.yaml",
|
||||
"config/packages/translation_chill.yaml",
|
||||
"config/packages/twig_chill.yaml",
|
||||
"config/routes/chill.yaml",
|
||||
"config/routes/chill_wopi.yaml",
|
||||
"config/routes/wopi.yaml",
|
||||
"webpack.config.js.dist",
|
||||
"package.json.dist",
|
||||
".nvmrc",
|
||||
".symfony.local.yaml",
|
||||
"tsconfig.json",
|
||||
"post-install-chill.sh"
|
||||
]
|
||||
},
|
||||
"chill-project/chill-deploy": {
|
||||
"version": "1.0",
|
||||
"recipe": {
|
||||
"repo": "gitlab.com/Chill-Projet/chill-recipes",
|
||||
"branch": "main",
|
||||
"version": "1.0",
|
||||
"ref": "2d916e260041fca4852a8887ff113667c6297046"
|
||||
},
|
||||
"files": [
|
||||
".gitea/workflows/release/update-composer-lock.yaml",
|
||||
"docker/db/docker-entrypoint-initdb.d/0000-add-extensions.sql",
|
||||
"docker/logstash/Dockerfile",
|
||||
"docker/logstash/pipeline/logstash.conf",
|
||||
"docker/nginx/Dockerfile",
|
||||
"docker/nginx/default.conf",
|
||||
"docker/nginx/nginx.with-collabora.conf",
|
||||
"Dockerfile",
|
||||
".dockerignore",
|
||||
"entrypoint.sh",
|
||||
".drone.yml"
|
||||
]
|
||||
"version": "dev-master"
|
||||
},
|
||||
"doctrine/annotations": {
|
||||
"version": "1.14",
|
||||
@@ -79,12 +27,12 @@
|
||||
}
|
||||
},
|
||||
"doctrine/doctrine-bundle": {
|
||||
"version": "2.12",
|
||||
"version": "2.13",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "2.4",
|
||||
"ref": "91690c0a440faba1a3676256bcca2b4aa9f55b72"
|
||||
"ref": "eaa0b7647c0ec3dbdcf24ade4625f381aa23c027"
|
||||
},
|
||||
"files": [
|
||||
"config/packages/doctrine.yaml",
|
||||
@@ -93,7 +41,7 @@
|
||||
]
|
||||
},
|
||||
"doctrine/doctrine-fixtures-bundle": {
|
||||
"version": "3.6",
|
||||
"version": "3.7",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
@@ -105,7 +53,7 @@
|
||||
]
|
||||
},
|
||||
"doctrine/doctrine-migrations-bundle": {
|
||||
"version": "3.3",
|
||||
"version": "3.6",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
@@ -117,14 +65,17 @@
|
||||
"migrations/.gitignore"
|
||||
]
|
||||
},
|
||||
"hslavich/oneloginsaml-bundle": {
|
||||
"version": "v2.10.0"
|
||||
},
|
||||
"knplabs/knp-menu-bundle": {
|
||||
"version": "v3.4.2"
|
||||
"version": "v3.6.0"
|
||||
},
|
||||
"knplabs/knp-time-bundle": {
|
||||
"version": "v1.20.0"
|
||||
},
|
||||
"knpuniversity/oauth2-client-bundle": {
|
||||
"version": "2.18",
|
||||
"version": "2.19",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes-contrib",
|
||||
"branch": "main",
|
||||
@@ -192,10 +143,33 @@
|
||||
"repo": "github.com/symfony/recipes-contrib",
|
||||
"branch": "main",
|
||||
"version": "3.0",
|
||||
"ref": "8aaba28c06547e50377dd9dce4104b9e384731a5"
|
||||
"ref": "0d4442802a90dd2d1d6c18618998b43f69af0d95"
|
||||
}
|
||||
},
|
||||
"phpstan/phpstan": {
|
||||
"version": "1.12",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes-contrib",
|
||||
"branch": "main",
|
||||
"version": "1.0",
|
||||
"ref": "5e490cc197fb6bb1ae22e5abbc531ddc633b6767"
|
||||
},
|
||||
"files": [
|
||||
"config/packages/misd_phone_number.yaml"
|
||||
"phpstan.dist.neon"
|
||||
]
|
||||
},
|
||||
"phpunit/phpunit": {
|
||||
"version": "10.5",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "10.0",
|
||||
"ref": "bb22cf8d8c554a623b427d5f3416b538f5525233"
|
||||
},
|
||||
"files": [
|
||||
".env.test",
|
||||
"phpunit.dist.xml",
|
||||
"tests/bootstrap.php"
|
||||
]
|
||||
},
|
||||
"ramsey/uuid-doctrine": {
|
||||
@@ -247,15 +221,16 @@
|
||||
]
|
||||
},
|
||||
"symfony/flex": {
|
||||
"version": "2.4",
|
||||
"version": "2.9",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "1.0",
|
||||
"ref": "146251ae39e06a95be0fe3d13c807bcf3938b172"
|
||||
"version": "2.4",
|
||||
"ref": "52e9754527a15e2b79d9a610f98185a1fe46622a"
|
||||
},
|
||||
"files": [
|
||||
".env"
|
||||
".env",
|
||||
".env.dev"
|
||||
]
|
||||
},
|
||||
"symfony/framework-bundle": {
|
||||
@@ -283,12 +258,21 @@
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "4.3",
|
||||
"ref": "df66ee1f226c46f01e85c29c2f7acce0596ba35a"
|
||||
"ref": "09051cfde49476e3c12cd3a0e44289ace1c75a4f"
|
||||
},
|
||||
"files": [
|
||||
"config/packages/mailer.yaml"
|
||||
]
|
||||
},
|
||||
"symfony/maker-bundle": {
|
||||
"version": "1.50",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "1.0",
|
||||
"ref": "fadbfe33303a76e25cb63401050439aa9b1a9c7f"
|
||||
}
|
||||
},
|
||||
"symfony/messenger": {
|
||||
"version": "5.4",
|
||||
"recipe": {
|
||||
@@ -307,7 +291,7 @@
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "3.7",
|
||||
"ref": "aff23899c4440dd995907613c1dd709b6f59503f"
|
||||
"ref": "f5f5f3e4c23f5349796b7de587f19c51e7104299"
|
||||
},
|
||||
"files": [
|
||||
"config/packages/monolog.yaml"
|
||||
@@ -334,6 +318,21 @@
|
||||
"ref": "fe2e382c22d60eae9ad54cb22862b1c15291fdf8"
|
||||
}
|
||||
},
|
||||
"symfony/phpunit-bridge": {
|
||||
"version": "5.4",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "5.3",
|
||||
"ref": "07ce01a897311647520b43d4ddddad9537b99ba6"
|
||||
},
|
||||
"files": [
|
||||
".env.test",
|
||||
"bin/phpunit",
|
||||
"phpunit.dist.xml",
|
||||
"tests/bootstrap.php"
|
||||
]
|
||||
},
|
||||
"symfony/routing": {
|
||||
"version": "5.4",
|
||||
"recipe": {
|
||||
@@ -386,7 +385,7 @@
|
||||
]
|
||||
},
|
||||
"symfony/ux-translator": {
|
||||
"version": "2.23",
|
||||
"version": "2.31",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
@@ -430,8 +429,8 @@
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "1.10",
|
||||
"ref": "eff2e505d4557c967b6710fe06bd947ba555cae5"
|
||||
"version": "1.17",
|
||||
"ref": "eeb7f3bae6214a0cee8f48310f14e48f5cf90ba3"
|
||||
},
|
||||
"files": [
|
||||
"assets/app.js",
|
||||
@@ -457,6 +456,6 @@
|
||||
]
|
||||
},
|
||||
"twig/extra-bundle": {
|
||||
"version": "v3.10.0"
|
||||
"version": "v3.22.0"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
|
||||
use Symfony\Component\Dotenv\Dotenv;
|
||||
|
||||
require dirname(__DIR__).'/vendor/autoload.php';
|
||||
|
||||
if (method_exists(Dotenv::class, 'bootEnv')) {
|
||||
(new Dotenv())->bootEnv(dirname(__DIR__).'/.env');
|
||||
}
|
||||
|
||||
if ($_SERVER['APP_DEBUG']) {
|
||||
umask(0000);
|
||||
}
|
||||
+18
-11
@@ -94,19 +94,26 @@ module.exports = (async () => {
|
||||
Encore
|
||||
.setOutputPath('public/build/')
|
||||
.setPublicPath('/build')
|
||||
.enableSassLoader()
|
||||
.enableSassLoader(function (options) {
|
||||
// If set to true, Sass won’t print warnings that are caused by dependencies (like bootstrap):
|
||||
// https://sass-lang.com/documentation/js-api/interfaces/options/#quietDeps
|
||||
options.sassOptions.quietDeps = true;
|
||||
options.sassOptions.silenceDeprecations = ['import'];
|
||||
})
|
||||
.enableVueLoader(() => {}, {
|
||||
version: 3,
|
||||
runtimeCompilerBuild: true,
|
||||
})
|
||||
.enableTypeScriptLoader(/*function (tsConfig){
|
||||
tsConfig.appendTsSuffixTo = [/\.vue$/];
|
||||
tsConfig.appendTsxSuffixTo = [/\.vue$/];
|
||||
// temporary fix for https://github.com/vuejs/vue-loader/issues/1915 and https://github.com/vuejs/core/issues/2855
|
||||
tsConfig.compilerOptions = {strict: !Encore.isProduction()};
|
||||
tsConfig.compilerOptions.paths = {"translator": [resolve(__dirname, "./assets/translator.ts")]};
|
||||
tsConfig.silent = false;
|
||||
}*/)
|
||||
.enableTypeScriptLoader(function (tsConfig){
|
||||
tsConfig.appendTsSuffixTo = [/\.vue$/];
|
||||
tsConfig.appendTsxSuffixTo = [/\.vue$/];
|
||||
// temporary fix for https://github.com/vuejs/vue-loader/issues/1915 and https://github.com/vuejs/core/issues/2855
|
||||
tsConfig.compilerOptions = {strict: !Encore.isProduction()};
|
||||
// disable type checking in ts-loader: Vue files are already checked by vue-tsc,
|
||||
// and the generated code (e.g. mergeModels) may use APIs not yet in the bundled @vue/runtime-core types.
|
||||
// see https://github.com/vuejs/core/issues/10331#issuecomment-1938909170
|
||||
tsConfig.transpileOnly = true;
|
||||
tsConfig.silent = false;
|
||||
})
|
||||
//.enableForkedTypeScriptTypesChecking()
|
||||
.autoProvidejQuery()
|
||||
.enableSourceMaps(!Encore.isProduction())
|
||||
@@ -129,7 +136,7 @@ module.exports = (async () => {
|
||||
;
|
||||
|
||||
Encore.addAliases({
|
||||
translator: resolve(__dirname, './vendor/chill-project/chill-bundles/assets/translator')
|
||||
translator: resolve(__dirname, './vendor/chill-project/chill-bundles/assets/translator'),
|
||||
});
|
||||
|
||||
// populate config with chill entries
|
||||
|
||||
Reference in New Issue
Block a user