Compare commits

...

13 Commits

41 changed files with 1110 additions and 207 deletions

View File

@ -20,11 +20,12 @@
"drupal/cer": "^5.0@beta",
"drupal/config_ignore": "^3.1",
"drupal/content_as_config": "^1.0",
"drupal/content_moderation_notifications": "^3.6",
"drupal/core-composer-scaffold": "^10.0",
"drupal/core-project-message": "^10.0",
"drupal/core-recommended": "^10.0",
"drupal/diff": "^1.1",
"drupal/core-recommended": "^10.2.4",
"drupal/diff": "^1.1",
"drupal/devel": "^5.1",
"drupal/gin": "^3.0@RC",
"drupal/gin_toolbar": "^1.0@RC",
"drupal/jsonapi_menu_items": "^1.2",

580
composer.lock generated
View File

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "1e4c156c402a50481a77ff4b24a87020",
"content-hash": "6fdae41d9930b076d636c871454e056b",
"packages": [
{
"name": "asm89/stack-cors",
@ -629,16 +629,16 @@
},
{
"name": "consolidation/output-formatters",
"version": "4.3.2",
"version": "4.4.0",
"source": {
"type": "git",
"url": "https://github.com/consolidation/output-formatters.git",
"reference": "06711568b4cd169700ff7e8075db0a9a341ceb58"
"reference": "6812952176c5acc8ed44bdfa78fe93b745c18f25"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/consolidation/output-formatters/zipball/06711568b4cd169700ff7e8075db0a9a341ceb58",
"reference": "06711568b4cd169700ff7e8075db0a9a341ceb58",
"url": "https://api.github.com/repos/consolidation/output-formatters/zipball/6812952176c5acc8ed44bdfa78fe93b745c18f25",
"reference": "6812952176c5acc8ed44bdfa78fe93b745c18f25",
"shasum": ""
},
"require": {
@ -677,9 +677,9 @@
"description": "Format text by applying transformations provided by plug-in formatters.",
"support": {
"issues": "https://github.com/consolidation/output-formatters/issues",
"source": "https://github.com/consolidation/output-formatters/tree/4.3.2"
"source": "https://github.com/consolidation/output-formatters/tree/4.4.0"
},
"time": "2023-07-06T04:45:41+00:00"
"time": "2024-03-30T13:38:29+00:00"
},
{
"name": "consolidation/robo",
@ -870,16 +870,16 @@
},
{
"name": "consolidation/site-process",
"version": "5.2.0",
"version": "5.3.0",
"source": {
"type": "git",
"url": "https://github.com/consolidation/site-process.git",
"reference": "6c44638d7af8a8b4abe12c3180701243f480539d"
"reference": "5e8eff50fd0015e7ca0b6ce4082cacef012f2f77"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/consolidation/site-process/zipball/6c44638d7af8a8b4abe12c3180701243f480539d",
"reference": "6c44638d7af8a8b4abe12c3180701243f480539d",
"url": "https://api.github.com/repos/consolidation/site-process/zipball/5e8eff50fd0015e7ca0b6ce4082cacef012f2f77",
"reference": "5e8eff50fd0015e7ca0b6ce4082cacef012f2f77",
"shasum": ""
},
"require": {
@ -921,9 +921,9 @@
"description": "A thin wrapper around the Symfony Process Component that allows applications to use the Site Alias library to specify the target for a remote call.",
"support": {
"issues": "https://github.com/consolidation/site-process/issues",
"source": "https://github.com/consolidation/site-process/tree/5.2.0"
"source": "https://github.com/consolidation/site-process/tree/5.3.0"
},
"time": "2022-12-06T17:57:16+00:00"
"time": "2024-04-01T12:42:12+00:00"
},
{
"name": "cweagans/composer-patches",
@ -1124,6 +1124,97 @@
},
"time": "2023-02-01T09:20:38+00:00"
},
{
"name": "doctrine/common",
"version": "3.4.3",
"source": {
"type": "git",
"url": "https://github.com/doctrine/common.git",
"reference": "8b5e5650391f851ed58910b3e3d48a71062eeced"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/common/zipball/8b5e5650391f851ed58910b3e3d48a71062eeced",
"reference": "8b5e5650391f851ed58910b3e3d48a71062eeced",
"shasum": ""
},
"require": {
"doctrine/persistence": "^2.0 || ^3.0",
"php": "^7.1 || ^8.0"
},
"require-dev": {
"doctrine/coding-standard": "^9.0 || ^10.0",
"doctrine/collections": "^1",
"phpstan/phpstan": "^1.4.1",
"phpstan/phpstan-phpunit": "^1",
"phpunit/phpunit": "^7.5.20 || ^8.5 || ^9.0",
"squizlabs/php_codesniffer": "^3.0",
"symfony/phpunit-bridge": "^6.1",
"vimeo/psalm": "^4.4"
},
"type": "library",
"autoload": {
"psr-4": {
"Doctrine\\Common\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Guilherme Blanco",
"email": "guilhermeblanco@gmail.com"
},
{
"name": "Roman Borschel",
"email": "roman@code-factory.org"
},
{
"name": "Benjamin Eberlei",
"email": "kontakt@beberlei.de"
},
{
"name": "Jonathan Wage",
"email": "jonwage@gmail.com"
},
{
"name": "Johannes Schmitt",
"email": "schmittjoh@gmail.com"
},
{
"name": "Marco Pivetta",
"email": "ocramius@gmail.com"
}
],
"description": "PHP Doctrine Common project is a library that provides additional functionality that other Doctrine projects depend on such as better reflection support, proxies and much more.",
"homepage": "https://www.doctrine-project.org/projects/common.html",
"keywords": [
"common",
"doctrine",
"php"
],
"support": {
"issues": "https://github.com/doctrine/common/issues",
"source": "https://github.com/doctrine/common/tree/3.4.3"
},
"funding": [
{
"url": "https://www.doctrine-project.org/sponsorship.html",
"type": "custom"
},
{
"url": "https://www.patreon.com/phpdoctrine",
"type": "patreon"
},
{
"url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcommon",
"type": "tidelift"
}
],
"time": "2022-10-09T11:47:59+00:00"
},
{
"name": "doctrine/deprecations",
"version": "1.1.3",
@ -1171,6 +1262,97 @@
},
"time": "2024-01-30T19:34:25+00:00"
},
{
"name": "doctrine/event-manager",
"version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/event-manager.git",
"reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/event-manager/zipball/750671534e0241a7c50ea5b43f67e23eb5c96f32",
"reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32",
"shasum": ""
},
"require": {
"php": "^8.1"
},
"conflict": {
"doctrine/common": "<2.9"
},
"require-dev": {
"doctrine/coding-standard": "^10",
"phpstan/phpstan": "^1.8.8",
"phpunit/phpunit": "^9.5",
"vimeo/psalm": "^4.28"
},
"type": "library",
"autoload": {
"psr-4": {
"Doctrine\\Common\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Guilherme Blanco",
"email": "guilhermeblanco@gmail.com"
},
{
"name": "Roman Borschel",
"email": "roman@code-factory.org"
},
{
"name": "Benjamin Eberlei",
"email": "kontakt@beberlei.de"
},
{
"name": "Jonathan Wage",
"email": "jonwage@gmail.com"
},
{
"name": "Johannes Schmitt",
"email": "schmittjoh@gmail.com"
},
{
"name": "Marco Pivetta",
"email": "ocramius@gmail.com"
}
],
"description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.",
"homepage": "https://www.doctrine-project.org/projects/event-manager.html",
"keywords": [
"event",
"event dispatcher",
"event manager",
"event system",
"events"
],
"support": {
"issues": "https://github.com/doctrine/event-manager/issues",
"source": "https://github.com/doctrine/event-manager/tree/2.0.0"
},
"funding": [
{
"url": "https://www.doctrine-project.org/sponsorship.html",
"type": "custom"
},
{
"url": "https://www.patreon.com/phpdoctrine",
"type": "patreon"
},
{
"url": "https://tidelift.com/funding/github/packagist/doctrine%2Fevent-manager",
"type": "tidelift"
}
],
"time": "2022-10-12T20:59:15+00:00"
},
{
"name": "doctrine/lexer",
"version": "2.1.1",
@ -1249,6 +1431,104 @@
],
"time": "2024-02-05T11:35:39+00:00"
},
{
"name": "doctrine/persistence",
"version": "3.3.2",
"source": {
"type": "git",
"url": "https://github.com/doctrine/persistence.git",
"reference": "477da35bd0255e032826f440b94b3e37f2d56f42"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/persistence/zipball/477da35bd0255e032826f440b94b3e37f2d56f42",
"reference": "477da35bd0255e032826f440b94b3e37f2d56f42",
"shasum": ""
},
"require": {
"doctrine/event-manager": "^1 || ^2",
"php": "^7.2 || ^8.0",
"psr/cache": "^1.0 || ^2.0 || ^3.0"
},
"conflict": {
"doctrine/common": "<2.10"
},
"require-dev": {
"composer/package-versions-deprecated": "^1.11",
"doctrine/coding-standard": "^11",
"doctrine/common": "^3.0",
"phpstan/phpstan": "1.9.4",
"phpstan/phpstan-phpunit": "^1",
"phpstan/phpstan-strict-rules": "^1.1",
"phpunit/phpunit": "^8.5 || ^9.5",
"symfony/cache": "^4.4 || ^5.4 || ^6.0",
"vimeo/psalm": "4.30.0 || 5.3.0"
},
"type": "library",
"autoload": {
"psr-4": {
"Doctrine\\Persistence\\": "src/Persistence"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Guilherme Blanco",
"email": "guilhermeblanco@gmail.com"
},
{
"name": "Roman Borschel",
"email": "roman@code-factory.org"
},
{
"name": "Benjamin Eberlei",
"email": "kontakt@beberlei.de"
},
{
"name": "Jonathan Wage",
"email": "jonwage@gmail.com"
},
{
"name": "Johannes Schmitt",
"email": "schmittjoh@gmail.com"
},
{
"name": "Marco Pivetta",
"email": "ocramius@gmail.com"
}
],
"description": "The Doctrine Persistence project is a set of shared interfaces and functionality that the different Doctrine object mappers share.",
"homepage": "https://www.doctrine-project.org/projects/persistence.html",
"keywords": [
"mapper",
"object",
"odm",
"orm",
"persistence"
],
"support": {
"issues": "https://github.com/doctrine/persistence/issues",
"source": "https://github.com/doctrine/persistence/tree/3.3.2"
},
"funding": [
{
"url": "https://www.doctrine-project.org/sponsorship.html",
"type": "custom"
},
{
"url": "https://www.patreon.com/phpdoctrine",
"type": "patreon"
},
{
"url": "https://tidelift.com/funding/github/packagist/doctrine%2Fpersistence",
"type": "tidelift"
}
],
"time": "2024-03-12T14:54:36+00:00"
},
{
"name": "drupal/cer",
"version": "5.0.0-beta3",
@ -1323,17 +1603,17 @@
},
{
"name": "drupal/config_ignore",
"version": "3.1.0",
"version": "3.2.0",
"source": {
"type": "git",
"url": "https://git.drupalcode.org/project/config_ignore.git",
"reference": "8.x-3.1"
"reference": "8.x-3.2"
},
"dist": {
"type": "zip",
"url": "https://ftp.drupal.org/files/projects/config_ignore-8.x-3.1.zip",
"reference": "8.x-3.1",
"shasum": "5e60f312e02735060d5e5b1724330bb243face4c"
"url": "https://ftp.drupal.org/files/projects/config_ignore-8.x-3.2.zip",
"reference": "8.x-3.2",
"shasum": "00335fc1ddeb4ed93f245dd6963d99b3c084c052"
},
"require": {
"drupal/core": "^8.8 || ^9 || ^10"
@ -1345,8 +1625,8 @@
"type": "drupal-module",
"extra": {
"drupal": {
"version": "8.x-3.1",
"datestamp": "1699302168",
"version": "8.x-3.2",
"datestamp": "1705226226",
"security-coverage": {
"status": "covered",
"message": "Covered by Drupal's security advisory policy"
@ -1446,6 +1726,58 @@
"issues": "https://www.drupal.org/project/issues/content_as_config"
}
},
{
"name": "drupal/content_moderation_notifications",
"version": "3.6.0",
"source": {
"type": "git",
"url": "https://git.drupalcode.org/project/content_moderation_notifications.git",
"reference": "8.x-3.6"
},
"dist": {
"type": "zip",
"url": "https://ftp.drupal.org/files/projects/content_moderation_notifications-8.x-3.6.zip",
"reference": "8.x-3.6",
"shasum": "f475721b95de8d0520053d3101c35c48ea22f61c"
},
"require": {
"drupal/core": "^9 || ^10"
},
"require-dev": {
"drupal/token": "^1.0"
},
"type": "drupal-module",
"extra": {
"drupal": {
"version": "8.x-3.6",
"datestamp": "1695836640",
"security-coverage": {
"status": "covered",
"message": "Covered by Drupal's security advisory policy"
}
}
},
"notification-url": "https://packages.drupal.org/8/downloads",
"license": [
"GPL-2.0+"
],
"authors": [
{
"name": "jhedstrom",
"homepage": "https://www.drupal.org/user/208732"
},
{
"name": "Rob Holmes",
"homepage": "https://www.drupal.org/user/1774034"
}
],
"description": "Manage notifications for content moderation transitions.",
"homepage": "https://www.drupal.org/project/content_moderation_notifications",
"support": {
"source": "https://git.drupalcode.org/project/content_moderation_notifications",
"issues": "https://www.drupal.org/project/issues/content_moderation_notifications"
}
},
{
"name": "drupal/core",
"version": "10.2.4",
@ -1785,6 +2117,65 @@
},
"time": "2024-03-06T08:23:56+00:00"
},
{
"name": "drupal/devel",
"version": "5.2.1",
"source": {
"type": "git",
"url": "https://git.drupalcode.org/project/devel.git",
"reference": "5.2.1"
},
"dist": {
"type": "zip",
"url": "https://ftp.drupal.org/files/projects/devel-5.2.1.zip",
"reference": "5.2.1",
"shasum": "793861751e01092fe8bc7c0cd47589ebea2bb8df"
},
"require": {
"doctrine/common": "^2.7 || ^3.4",
"drupal/core": ">=10.0 <12.0.0-stable",
"php": ">=8.1",
"symfony/var-dumper": "^4 || ^5 || ^6"
},
"conflict": {
"drush/drush": "<12.5.1",
"kint-php/kint": "<3"
},
"require-dev": {
"drush/drush": "^12.5.1"
},
"suggest": {
"kint-php/kint": "Kint provides an informative display of arrays/objects. Useful for debugging and developing."
},
"type": "drupal-module",
"extra": {
"drupal": {
"version": "5.2.1",
"datestamp": "1711328410",
"security-coverage": {
"status": "covered",
"message": "Covered by Drupal's security advisory policy"
}
}
},
"notification-url": "https://packages.drupal.org/8/downloads",
"license": [
"GPL-2.0-or-later"
],
"authors": [
{
"name": "moshe weitzman",
"homepage": "https://www.drupal.org/user/23"
}
],
"description": "Various blocks, pages, and functions for developers.",
"homepage": "https://www.drupal.org/project/devel",
"support": {
"source": "https://gitlab.com/drupalspoons/devel",
"issues": "https://gitlab.com/drupalspoons/devel/-/issues",
"slack": "https://drupal.slack.com/archives/C012WAW1MH6"
}
},
{
"name": "drupal/diff",
"version": "1.1.0",
@ -1844,6 +2235,10 @@
"homepage": "https://www.drupal.org/u/realityloop",
"role": "Maintainer"
},
{
"name": "Junyor",
"homepage": "https://www.drupal.org/user/7006"
},
{
"name": "lhangea",
"homepage": "https://www.drupal.org/user/2743803"
@ -1878,17 +2273,17 @@
},
{
"name": "drupal/gin",
"version": "3.0.0-rc7",
"version": "3.0.0-rc9",
"source": {
"type": "git",
"url": "https://git.drupalcode.org/project/gin.git",
"reference": "8.x-3.0-rc7"
"reference": "8.x-3.0-rc9"
},
"dist": {
"type": "zip",
"url": "https://ftp.drupal.org/files/projects/gin-8.x-3.0-rc7.zip",
"reference": "8.x-3.0-rc7",
"shasum": "9f91862fc82ef8b0adbf34b26caa3c42d4f1f6b2"
"url": "https://ftp.drupal.org/files/projects/gin-8.x-3.0-rc9.zip",
"reference": "8.x-3.0-rc9",
"shasum": "130dec0ea8152bc796d8bbca1bc97b2ae0c381f4"
},
"require": {
"drupal/core": "^9 || ^10",
@ -1897,8 +2292,8 @@
"type": "drupal-theme",
"extra": {
"drupal": {
"version": "8.x-3.0-rc7",
"datestamp": "1697193234",
"version": "8.x-3.0-rc9",
"datestamp": "1706705034",
"security-coverage": {
"status": "not-covered",
"message": "RC releases are not covered by Drupal security advisories."
@ -2175,26 +2570,29 @@
},
{
"name": "drupal/single_content_sync",
"version": "1.3.9",
"version": "1.4.4",
"source": {
"type": "git",
"url": "https://git.drupalcode.org/project/single_content_sync.git",
"reference": "1.3.9"
"reference": "1.4.4"
},
"dist": {
"type": "zip",
"url": "https://ftp.drupal.org/files/projects/single_content_sync-1.3.9.zip",
"reference": "1.3.9",
"shasum": "1975bd88bbd0fd9ada8f53a9c4c3296445da0f85"
"url": "https://ftp.drupal.org/files/projects/single_content_sync-1.4.4.zip",
"reference": "1.4.4",
"shasum": "55194b9c2bd4f15dfb69d451fbef63740b68a8c5"
},
"require": {
"drupal/core": "^9.3 || ^10"
"drupal/core": "^9.3 || ^10",
"ext-dom": "*",
"ext-zip": "*",
"php": ">=7.4"
},
"type": "drupal-module",
"extra": {
"drupal": {
"version": "1.3.9",
"datestamp": "1679596906",
"version": "1.4.4",
"datestamp": "1699421610",
"security-coverage": {
"status": "covered",
"message": "Covered by Drupal's security advisory policy"
@ -2358,16 +2756,16 @@
},
{
"name": "drush/drush",
"version": "12.4.4",
"version": "12.5.1",
"source": {
"type": "git",
"url": "https://github.com/drush-ops/drush.git",
"reference": "a6585cddae47144413565f3c1cd29debc69f6b41"
"reference": "71fcea30a22e7336e17be18bb5945400b2c63fad"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/drush-ops/drush/zipball/a6585cddae47144413565f3c1cd29debc69f6b41",
"reference": "a6585cddae47144413565f3c1cd29debc69f6b41",
"url": "https://api.github.com/repos/drush-ops/drush/zipball/71fcea30a22e7336e17be18bb5945400b2c63fad",
"reference": "71fcea30a22e7336e17be18bb5945400b2c63fad",
"shasum": ""
},
"require": {
@ -2490,7 +2888,7 @@
"issues": "https://github.com/drush-ops/drush/issues",
"security": "https://github.com/drush-ops/drush/security/advisories",
"slack": "https://drupal.slack.com/messages/C62H9CWQM",
"source": "https://github.com/drush-ops/drush/tree/12.4.4"
"source": "https://github.com/drush-ops/drush/tree/12.5.1"
},
"funding": [
{
@ -2498,7 +2896,7 @@
"type": "github"
}
],
"time": "2024-03-02T12:14:56+00:00"
"time": "2024-03-20T15:03:27+00:00"
},
{
"name": "egulias/email-validator",
@ -2567,72 +2965,6 @@
],
"time": "2023-10-06T06:47:41+00:00"
},
{
"name": "enlightn/security-checker",
"version": "v1.11.0",
"source": {
"type": "git",
"url": "https://github.com/enlightn/security-checker.git",
"reference": "68df5c7256c84b428bf8fcff0d249de06ce362d2"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/enlightn/security-checker/zipball/68df5c7256c84b428bf8fcff0d249de06ce362d2",
"reference": "68df5c7256c84b428bf8fcff0d249de06ce362d2",
"shasum": ""
},
"require": {
"ext-json": "*",
"guzzlehttp/guzzle": "^6.3|^7.0",
"php": ">=5.6",
"symfony/console": "^3.4|^4|^5|^6|^7",
"symfony/finder": "^3|^4|^5|^6|^7",
"symfony/process": "^3.4|^4|^5|^6|^7",
"symfony/yaml": "^3.4|^4|^5|^6|^7"
},
"require-dev": {
"ext-zip": "*",
"friendsofphp/php-cs-fixer": "^2.18|^3.0",
"phpunit/phpunit": "^5.5|^6|^7|^8|^9"
},
"bin": [
"security-checker"
],
"type": "library",
"autoload": {
"psr-4": {
"Enlightn\\SecurityChecker\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Paras Malhotra",
"email": "paras@laravel-enlightn.com"
},
{
"name": "Miguel Piedrafita",
"email": "soy@miguelpiedrafita.com"
}
],
"description": "A PHP dependency vulnerabilities scanner based on the Security Advisories Database.",
"keywords": [
"package",
"php",
"scanner",
"security",
"security advisories",
"vulnerability scanner"
],
"support": {
"issues": "https://github.com/enlightn/security-checker/issues",
"source": "https://github.com/enlightn/security-checker/tree/v1.11.0"
},
"time": "2023-11-17T07:53:29+00:00"
},
{
"name": "ezyang/htmlpurifier",
"version": "v4.17.0",
@ -3129,16 +3461,16 @@
},
{
"name": "league/container",
"version": "4.2.0",
"version": "4.2.2",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/container.git",
"reference": "375d13cb828649599ef5d48a339c4af7a26cd0ab"
"reference": "ff346319ca1ff0e78277dc2311a42107cc1aab88"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/thephpleague/container/zipball/375d13cb828649599ef5d48a339c4af7a26cd0ab",
"reference": "375d13cb828649599ef5d48a339c4af7a26cd0ab",
"url": "https://api.github.com/repos/thephpleague/container/zipball/ff346319ca1ff0e78277dc2311a42107cc1aab88",
"reference": "ff346319ca1ff0e78277dc2311a42107cc1aab88",
"shasum": ""
},
"require": {
@ -3199,7 +3531,7 @@
],
"support": {
"issues": "https://github.com/thephpleague/container/issues",
"source": "https://github.com/thephpleague/container/tree/4.2.0"
"source": "https://github.com/thephpleague/container/tree/4.2.2"
},
"funding": [
{
@ -3207,7 +3539,7 @@
"type": "github"
}
],
"time": "2021-11-16T10:29:06+00:00"
"time": "2024-03-13T13:12:53+00:00"
},
{
"name": "masterminds/html5",
@ -3561,12 +3893,12 @@
"source": {
"type": "git",
"url": "https://github.com/pear/pear-core-minimal.git",
"reference": "d457b5c93e5001fbf4b5726d21038266e029e3be"
"reference": "ce0adade8b97561656ace07cdaac4751c271ea8c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/d457b5c93e5001fbf4b5726d21038266e029e3be",
"reference": "d457b5c93e5001fbf4b5726d21038266e029e3be",
"url": "https://api.github.com/repos/pear/pear-core-minimal/zipball/ce0adade8b97561656ace07cdaac4751c271ea8c",
"reference": "ce0adade8b97561656ace07cdaac4751c271ea8c",
"shasum": ""
},
"require": {
@ -3602,7 +3934,7 @@
"issues": "http://pear.php.net/bugs/search.php?cmd=display&package_name[]=PEAR",
"source": "https://github.com/pear/pear-core-minimal"
},
"time": "2024-03-09T19:38:40+00:00"
"time": "2024-03-16T18:41:45+00:00"
},
{
"name": "pear/pear_exception",
@ -4183,16 +4515,16 @@
},
{
"name": "psy/psysh",
"version": "v0.12.0",
"version": "v0.12.2",
"source": {
"type": "git",
"url": "https://github.com/bobthecow/psysh.git",
"reference": "750bf031a48fd07c673dbe3f11f72362ea306d0d"
"reference": "9185c66c2165bbf4d71de78a69dccf4974f9538d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/bobthecow/psysh/zipball/750bf031a48fd07c673dbe3f11f72362ea306d0d",
"reference": "750bf031a48fd07c673dbe3f11f72362ea306d0d",
"url": "https://api.github.com/repos/bobthecow/psysh/zipball/9185c66c2165bbf4d71de78a69dccf4974f9538d",
"reference": "9185c66c2165bbf4d71de78a69dccf4974f9538d",
"shasum": ""
},
"require": {
@ -4256,9 +4588,9 @@
],
"support": {
"issues": "https://github.com/bobthecow/psysh/issues",
"source": "https://github.com/bobthecow/psysh/tree/v0.12.0"
"source": "https://github.com/bobthecow/psysh/tree/v0.12.2"
},
"time": "2023-12-20T15:28:09+00:00"
"time": "2024-03-17T01:53:00+00:00"
},
{
"name": "ralouphie/getallheaders",
@ -7162,5 +7494,5 @@
"prefer-lowest": false,
"platform": [],
"platform-dev": [],
"plugin-api-version": "2.3.0"
"plugin-api-version": "2.6.0"
}

View File

@ -0,0 +1,19 @@
uuid: ef0653bf-ad20-4659-bb94-9273264eb15b
langcode: en
status: true
dependencies: { }
id: nov_osnutek
workflow: concept_workflow
transitions:
create_new_draft: create_new_draft
roles:
editor: editor
maska: maska
author: false
site_mail: false
emails: ''
subject: '[YUFU] New draft of [node:original:title]'
body:
value: "New draft pending moderation: [node:title] ([node:nid]) by [node:author:mail].\r\n\r\n[node:url]/revisions/view/[node:original:vid]/[node:vid]/visual_inline\r\n\r\n[node:body]"
format: plain_text
label: 'Nov osnutek'

View File

@ -0,0 +1,18 @@
uuid: c048753b-259e-4210-8e53-031ae5cbae0f
langcode: en
status: true
dependencies: { }
id: spremembe_sprejete
workflow: concept_workflow
transitions:
publish: publish
roles:
editor: editor
author: true
site_mail: false
emails: ''
subject: '[YUFU] Changes approved'
body:
value: 'Proposed changes to [node:title] ([node:url]) by [node:author:mail] were approved.'
format: plain_text
label: 'Spremembe sprejete'

View File

@ -23,9 +23,9 @@ content:
weight: 101
region: content
content_moderation_control:
weight: -20
settings: { }
third_party_settings: { }
weight: -20
region: content
field_media:
type: entity_reference_entity_view

View File

@ -25,9 +25,9 @@ content:
weight: 101
region: content
content_moderation_control:
weight: -20
settings: { }
third_party_settings: { }
weight: -20
region: content
links:
settings: { }

View File

@ -12,5 +12,6 @@ _core:
default_config_hash: pqZNtad5J9THcdbYjwPD4qINqvrTxnOd8KCWn6tUBRs
id: node.diff
label: 'Revision comparison'
description: ''
targetEntityType: node
cache: true

View File

@ -14,9 +14,11 @@ module:
config_translation: 0
content_as_config: 0
content_moderation: 0
content_moderation_notifications: 0
contextual: 0
datetime: 0
dblog: 0
devel: 0
diff: 0
dynamic_page_cache: 0
editor: 0

View File

@ -0,0 +1,12 @@
_core:
default_config_hash: Aqx6J0yYT6mVqT0fbjeP4JkoL-700nmudVF5d6Pq2Yo
page_alter: false
raw_names: false
error_handlers:
1: 1
rebuild_theme: false
debug_mail_file_format: '%to-%subject-%datetime.mail.txt'
debug_mail_directory: 'temporary://devel-mails'
devel_dumper: var_dumper
debug_logfile: 'temporary://drupal_debug.txt'
debug_pre: true

View File

@ -0,0 +1,10 @@
_core:
default_config_hash: IQjf_ytthngZTAk_MU8-74VecArWD3G5g0oEH6PM6GA
toolbar_items:
- devel.admin_settings_link
- devel.cache_clear
- devel.container_info.service
- devel.menu_rebuild
- devel.reinstall
- devel.route_info
- devel.run_cron

View File

@ -0,0 +1,2 @@
settings:
label: 'RSS feed'

View File

@ -0,0 +1 @@
label: RSS

View File

@ -0,0 +1 @@
label: Razvoj

View File

@ -12,6 +12,7 @@ display:
name:
label: Autor
status:
label: Status
settings:
format_custom_true: Objavljeno
changed:
@ -25,6 +26,9 @@ display:
exposed_sorts_label: 'Rasporedi po'
sort_asc_label: Uzlazno
sort_desc_label: Silazno
empty:
area_text_custom:
content: 'Na voljo ni nobene vsebine.'
filters:
title:
expose:
@ -33,6 +37,8 @@ display:
expose:
label: 'Vrsta sadržaja'
status:
expose:
label: Status
group_info:
group_items:
1:

View File

@ -12,6 +12,7 @@ display:
uid:
label: Autor
status:
label: Status
settings:
format_custom_true: Objavljeno
changed:

View File

@ -36,6 +36,7 @@ display:
delete_media:
text: Ukloni
widget:
display_title: Widget
display_options:
arguments:
bundle:

View File

@ -7,18 +7,12 @@ display:
fields:
title:
label: Naziv
separator: ', '
type:
label: 'Vrsta sadržaja'
separator: ', '
name:
label: Autor
separator: ', '
moderation_state:
separator: ', '
changed:
label: Osvježeno
separator: ', '
operations:
label: Operacije
exposed_form:

View File

@ -0,0 +1,2 @@
settings:
label: 'RSS feed'

View File

@ -0,0 +1 @@
label: RSS

View File

@ -0,0 +1 @@
label: Razvoj

View File

@ -15,10 +15,10 @@ display:
exposed_form:
options:
submit_button: Primjeni
reset_button_label: Poništi
reset_button_label: Ponastavi
exposed_sorts_label: 'Rasporedi po'
sort_asc_label: Uzlazno
sort_desc_label: Silazno
sort_asc_label: Naraščajoče
sort_desc_label: Padajoče
empty:
area_text_custom:
content: 'There are no custom blocks available.'

View File

@ -27,10 +27,10 @@ display:
exposed_form:
options:
submit_button: Počisti
reset_button_label: Poništi
reset_button_label: Ponastavi
exposed_sorts_label: 'Rasporedi po'
sort_asc_label: Uzlazno
sort_desc_label: Silazno
sort_asc_label: Naraščajoče
sort_desc_label: Padajoče
empty:
area_text_custom:
content: 'Nema dostupnih komentara.'

View File

@ -12,6 +12,7 @@ display:
uid:
label: Avtor
status:
label: Status
settings:
format_custom_true: Objavljeno
changed:
@ -21,10 +22,10 @@ display:
exposed_form:
options:
submit_button: Počisti
reset_button_label: Poništi
reset_button_label: Ponastavi
exposed_sorts_label: 'Rasporedi po'
sort_asc_label: Uzlazno
sort_desc_label: Silazno
sort_asc_label: Naraščajoče
sort_desc_label: Padajoče
filters:
bundle:
expose:

View File

@ -8,10 +8,10 @@ display:
action_title: Akcija
exposed_form:
options:
reset_button_label: Poništi
reset_button_label: Ponastavi
exposed_sorts_label: 'Rasporedi po'
sort_asc_label: Uzlazno
sort_desc_label: Silazno
sort_asc_label: Naraščajoče
sort_desc_label: Padajoče
filters:
status:
group_info:
@ -36,6 +36,7 @@ display:
delete_media:
text: Ukloni
widget:
display_title: Widget
display_options:
arguments:
bundle:

View File

@ -7,34 +7,28 @@ display:
fields:
title:
label: Naslov
separator: ', '
type:
label: 'Tip vsebin'
separator: ', '
label: 'Tip vsebine'
name:
label: Avtor
separator: ', '
moderation_state:
separator: ', '
changed:
label: Posodobljeno
separator: ', '
operations:
label: Operacije
exposed_form:
options:
submit_button: Počisti
reset_button_label: Ponastavi
reset_button_label: Poništi
exposed_sorts_label: 'Rasporedi po'
sort_asc_label: Naraščajoče
sort_desc_label: Padajoče
sort_asc_label: Uzlazno
sort_desc_label: Silazno
filters:
title:
expose:
label: Naslov
type:
expose:
label: ''
label: 'Tip vsebine'
langcode:
expose:
label: Jezik

View File

@ -6,10 +6,10 @@ display:
exposed_form:
options:
submit_button: Primjeni
reset_button_label: Poništi
reset_button_label: Ponastavi
exposed_sorts_label: 'Rasporedi po'
sort_asc_label: Uzlazno
sort_desc_label: Silazno
sort_asc_label: Naraščajoče
sort_desc_label: Padajoče
arguments:
tid:
exception:

View File

@ -0,0 +1,2 @@
settings:
label: 'RSS feed'

View File

@ -0,0 +1 @@
label: RSS

View File

@ -0,0 +1 @@
label: Razvoj

View File

@ -12,6 +12,7 @@ display:
name:
label: Autor
status:
label: Status
settings:
format_custom_true: Objavljeno
changed:
@ -25,6 +26,9 @@ display:
exposed_sorts_label: 'Rasporedi po'
sort_asc_label: Uzlazno
sort_desc_label: Silazno
empty:
area_text_custom:
content: 'Na voljo ni nobene vsebine.'
filters:
title:
expose:
@ -33,6 +37,8 @@ display:
expose:
label: 'Vrsta sadržaja'
status:
expose:
label: Status
group_info:
group_items:
1:

View File

@ -12,6 +12,7 @@ display:
uid:
label: Autor
status:
label: Status
settings:
format_custom_true: Objavljeno
changed:

View File

@ -36,6 +36,7 @@ display:
delete_media:
text: Ukloni
widget:
display_title: Widget
display_options:
arguments:
bundle:

View File

@ -7,18 +7,12 @@ display:
fields:
title:
label: Naziv
separator: ', '
type:
label: 'Vrsta sadržaja'
separator: ', '
name:
label: Autor
separator: ', '
moderation_state:
separator: ', '
changed:
label: Osvježeno
separator: ', '
operations:
label: Operacije
exposed_form:

View File

@ -0,0 +1,13 @@
uuid: f9ee5a80-6539-4ade-ad1c-4f71f3739e60
langcode: en
status: true
dependencies:
enforced:
module:
- devel
_core:
default_config_hash: 3V-l1uuTcyirYOGLPZV5HWaDfr02uEbWZJIwc8Byz-c
id: devel
label: Development
description: 'Links related to Devel module.'
locked: true

View File

@ -8,7 +8,7 @@ slogan: ''
page:
403: ''
404: ''
front: /user/login
front: /zadnje-spremembe
admin_compact_mode: false
weight_select_max: 100
default_langcode: en

View File

@ -8,7 +8,7 @@ dependencies:
_core:
default_config_hash: 12Bd0mJQFIaXAkRfMVCAAcZ0oaxm94PoK8oHR9hkLmY
id: content
label: Vsebine
label: Sadržaj
module: node
description: 'Find and manage content.'
tag: default
@ -371,11 +371,11 @@ display:
options:
submit_button: Počisti
reset_button: true
reset_button_label: Poništi
reset_button_label: Ponastavi
exposed_sorts_label: 'Rasporedi po'
expose_sort_order: true
sort_asc_label: Uzlazno
sort_desc_label: Silazno
sort_asc_label: Naraščajoče
sort_desc_label: Padajoče
access:
type: perm
options:

View File

@ -0,0 +1,443 @@
uuid: 89fa6e21-3730-4602-b26f-d4f1f45f52d4
langcode: en
status: true
dependencies:
config:
- node.type.concept
module:
- content_moderation
- node
- user
id: zadnje_spremembe
label: 'Zadnje spremembe'
module: views
description: ''
tag: ''
base_table: node_field_revision
base_field: vid
display:
default:
id: default
display_title: Default
display_plugin: default
position: 0
display_options:
title: 'Zadnje spremembe'
fields:
changed:
id: changed
table: node_field_revision
field: changed
relationship: none
group_type: group
admin_label: ''
entity_type: node
entity_field: changed
plugin_id: field
label: Čas
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: false
ellipsis: false
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: timestamp
settings:
date_format: medium
custom_date_format: ''
timezone: ''
tooltip:
date_format: ''
custom_date_format: ''
time_diff:
enabled: false
future_format: '@interval hence'
past_format: '@interval ago'
granularity: 2
refresh: 60
description: ''
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
moderation_state:
id: moderation_state
table: node_field_revision
field: moderation_state
relationship: none
group_type: group
admin_label: ''
entity_type: node
plugin_id: moderation_state_field
label: Stanje
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: content_moderation_state
settings: { }
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
title:
id: title
table: node_field_revision
field: title
relationship: none
group_type: group
admin_label: ''
entity_type: node
entity_field: title
plugin_id: field
label: Pojem
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: false
ellipsis: false
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: string
settings:
link_to_entity: false
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
revision_uid:
id: revision_uid
table: node_revision
field: revision_uid
relationship: none
group_type: group
admin_label: ''
entity_type: node
entity_field: revision_uid
plugin_id: field
label: 'Revision user'
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: target_id
type: entity_reference_label
settings:
link: true
group_column: target_id
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
pager:
type: mini
options:
offset: 0
items_per_page: 20
total_pages: null
id: 0
tags:
next:
previous:
expose:
items_per_page: false
items_per_page_label: 'Items per page'
items_per_page_options: '5, 10, 25, 50'
items_per_page_options_all: false
items_per_page_options_all_label: '- All -'
offset: false
offset_label: Offset
exposed_form:
type: basic
options:
submit_button: Apply
reset_button: false
reset_button_label: Reset
exposed_sorts_label: 'Sort by'
expose_sort_order: true
sort_asc_label: Asc
sort_desc_label: Desc
access:
type: perm
options:
perm: 'view all revisions'
cache:
type: tag
options: { }
empty: { }
sorts:
changed:
id: changed
table: node_field_revision
field: changed
relationship: none
group_type: group
admin_label: ''
entity_type: node
entity_field: changed
plugin_id: date
order: DESC
expose:
label: ''
field_identifier: ''
exposed: false
granularity: second
arguments: { }
filters:
type:
id: type
table: node_field_data
field: type
relationship: nid
entity_type: node
entity_field: type
plugin_id: bundle
value:
concept: concept
style:
type: table
options:
grouping: { }
row_class: ''
default_row_class: true
columns:
changed: changed
title: title
default: '-1'
info:
changed:
sortable: false
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
title:
sortable: false
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
override: true
sticky: false
summary: ''
empty_table: false
caption: ''
description: ''
row:
type: fields
query:
type: views_query
options:
query_comment: ''
disable_sql_rewrite: false
distinct: false
replica: false
query_tags: { }
relationships:
nid:
id: nid
table: node_field_revision
field: nid
relationship: none
group_type: group
admin_label: 'Get the actual content from a content revision.'
entity_type: node
entity_field: nid
plugin_id: standard
required: true
header: { }
footer: { }
display_extenders: { }
cache_metadata:
max-age: -1
contexts:
- 'languages:language_content'
- 'languages:language_interface'
- url.query_args
- 'user.node_grants:view'
- user.permissions
tags: { }
page_1:
id: page_1
display_title: Page
display_plugin: page
position: 1
display_options:
display_extenders: { }
path: zadnje-spremembe
cache_metadata:
max-age: -1
contexts:
- 'languages:language_content'
- 'languages:language_interface'
- url.query_args
- 'user.node_grants:view'
- user.permissions
tags: { }

View File

@ -57,39 +57,39 @@ function yufu_admin_mail($key, &$message, $params) {
/**
* Implements hook_ENTITY_TYPE_presave().
*/
function yufu_admin_node_presave(EntityInterface $entity) {
if ($entity instanceOf NodeInterface && $entity->bundle() == 'concept') {
// Get transition: concept_drafted, concept_approved, concept_rejected.
if ($entity->isNew()) {
$transition = 'concept_drafted';
}
else {
$transition = _yufu_admin_get_node_transition($entity);
}
switch ($transition) {
case 'stay_draft':
case 'concept_drafted':
// Send email to editors.
$params = _yufu_admin_concept_drafted_mail($entity);
$result = _yufu_admin_send_email($transition, $params['to'], $params);
_yufu_admin_status_message($result['result'], $transition, $entity, $params['to']);
break;
case 'concept_approved':
// Send email to revision creator (user).
// @TODO Maybe notify other editors.
$params = _yufu_admin_concept_approved_get_message($entity);
$result = _yufu_admin_send_email($transition, $params['to'], $params);
_yufu_admin_status_message($result['result'], $transition, $entity, $params['to']);
break;
case 'concept_rejectd':
// Send email to revision creator (user).
// This transition happens on revision delete.
// Curently it is dead.
// @TODO https://git.kompot.si/yufu/manifest/issues/45
break;
}
}
}
// function yufu_admin_node_presave(EntityInterface $entity) {
// if ($entity instanceOf NodeInterface && $entity->bundle() == 'concept') {
// // Get transition: concept_drafted, concept_approved, concept_rejected.
// if ($entity->isNew()) {
// $transition = 'concept_drafted';
// }
// else {
// $transition = _yufu_admin_get_node_transition($entity);
// }
// switch ($transition) {
// case 'stay_draft':
// case 'concept_drafted':
// // Send email to editors.
// $params = _yufu_admin_concept_drafted_mail($entity);
// $result = _yufu_admin_send_email($transition, $params['to'], $params);
// _yufu_admin_status_message($result['result'], $transition, $entity, $params['to']);
// break;
// case 'concept_approved':
// // Send email to revision creator (user).
// // @TODO Maybe notify other editors.
// $params = _yufu_admin_concept_approved_get_message($entity);
// $result = _yufu_admin_send_email($transition, $params['to'], $params);
// _yufu_admin_status_message($result['result'], $transition, $entity, $params['to']);
// break;
// case 'concept_rejectd':
// // Send email to revision creator (user).
// // This transition happens on revision delete.
// // Curently it is dead.
// // @TODO https://git.kompot.si/yufu/manifest/issues/45
// break;
// }
// }
//}
/**
* Compare original node moderation state with current state.
@ -276,3 +276,15 @@ function _yufu_admin_get_all_pioneer_emails() {
// @TODO: Think it through if it is really needed.
return [];
}
/**
* Invoke hook_content_moderation_notification_mail_data_alter().
*/
// function yufu_admin_content_moderation_notification_mail_data_alter(EntityInterface $entity, array &$data) {
// // Add an extra email address to the list.
// if ($entity instanceOf NodeInterface) {
// if ($email = _yufu_admin_get_pioneer_email($entity)) {
// $data['to'][] = $email;
// }
// }
// }

View File

@ -8,7 +8,6 @@ use Drupal\Core\StringTranslation\StringTranslationTrait;
use Drupal\Core\TypedData\Exception\MissingDataException;
use Drupal\node\NodeInterface;
use Drupal\rest\Plugin\ResourceBase;
use Drupal\rest\ResourceResponse;
use Psr\Log\LogLevel;
use Psr\Log\LoggerInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
@ -101,7 +100,7 @@ class AddConcept extends ResourceBase {
* @param \Symfony\Component\HttpFoundation\Request;
* Post request.
*
* @return \Drupal\rest\ResourceResponse
* @return \Symfony\Component\HttpFoundation\JsonResponse
* Returns rest resource.
*/
public function post(Request $request) {
@ -124,6 +123,11 @@ class AddConcept extends ResourceBase {
$concept->setRevisionUserId($uid);
$concept->set('title', $data['title']);
$concept->set('body', $data['text'] ?? $concept->body->value);
if ($uid) {
$uids = $concept->get('uid')->getValue();
$uids[] = ['target_id' => $uid];
$concept->set('uid', array_reverse($uids));
}
$concept->isDefaultRevision(FALSE);
$concept->setRevisionLogMessage('New revision by concept endpoint.');
$concept->set('moderation_state', 'draft');
@ -163,7 +167,6 @@ class AddConcept extends ResourceBase {
'revision_uid' => $concept->getRevisionUserId(),
'uid' => $concept->uid->target_id,
];
// $response = new ResourceResponse($response_status);
$response = new JsonResponse($response_status);
return $response;
}

View File

@ -1,6 +1,28 @@
<?php
use Drupal\Core\Entity\EntityInterface;
use Drupal\node\NodeInterface;
/**
* @file
* Primary module hooks for Yufu Concept module.
*/
/**
* Implements hook_entity_update().
*/
function yufu_concept_node_presave(EntityInterface $entity) {
if ($entity instanceOf NodeInterface && $entity->bundle() == 'concept') {
$transition = \Drupal::service('content_moderation_notifications.notification_information')->getTransition($entity);
if ($transition->id() == 'publish') {
if ($user = $entity->uid->entity) {
if (!$user->status->value) {
$user->set('status', 1);
$user->addRole('editor');
$user->save();
}
}
}
}
}

View File

@ -0,0 +1,3 @@
services:
cache.backend.null:
class: Drupal\Core\Cache\NullBackendFactory