This commit is contained in:
2019-09-25 15:05:50 +02:00
parent af7ca72760
commit 40af43681e
14 changed files with 3496 additions and 456 deletions
Generated
+183 -174
View File
@@ -52,25 +52,25 @@
},
{
"name": "composer/ca-bundle",
"version": "1.1.3",
"version": "1.2.4",
"source": {
"type": "git",
"url": "https://github.com/composer/ca-bundle.git",
"reference": "8afa52cd417f4ec417b4bfe86b68106538a87660"
"reference": "10bb96592168a0f8e8f6dcde3532d9fa50b0b527"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/composer/ca-bundle/zipball/8afa52cd417f4ec417b4bfe86b68106538a87660",
"reference": "8afa52cd417f4ec417b4bfe86b68106538a87660",
"url": "https://api.github.com/repos/composer/ca-bundle/zipball/10bb96592168a0f8e8f6dcde3532d9fa50b0b527",
"reference": "10bb96592168a0f8e8f6dcde3532d9fa50b0b527",
"shasum": ""
},
"require": {
"ext-openssl": "*",
"ext-pcre": "*",
"php": "^5.3.2 || ^7.0"
"php": "^5.3.2 || ^7.0 || ^8.0"
},
"require-dev": {
"phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5",
"phpunit/phpunit": "^4.8.35 || ^5.7 || 6.5 - 8",
"psr/log": "^1.0",
"symfony/process": "^2.5 || ^3.0 || ^4.0"
},
@@ -104,7 +104,7 @@
"ssl",
"tls"
],
"time": "2018-10-18T06:09:13+00:00"
"time": "2019-08-30T08:44:50+00:00"
},
{
"name": "doctrine/cache",
@@ -245,16 +245,16 @@
},
{
"name": "donatj/phpuseragentparser",
"version": "v0.11.1",
"version": "v0.13.0",
"source": {
"type": "git",
"url": "https://github.com/donatj/PhpUserAgent.git",
"reference": "0eab93a89a1a73a087e795abc96d5777c3d48b64"
"reference": "5f2da266d2a386f9b231d4344ae37baf7a467c2d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/donatj/PhpUserAgent/zipball/0eab93a89a1a73a087e795abc96d5777c3d48b64",
"reference": "0eab93a89a1a73a087e795abc96d5777c3d48b64",
"url": "https://api.github.com/repos/donatj/PhpUserAgent/zipball/5f2da266d2a386f9b231d4344ae37baf7a467c2d",
"reference": "5f2da266d2a386f9b231d4344ae37baf7a467c2d",
"shasum": ""
},
"require": {
@@ -268,7 +268,7 @@
"type": "library",
"autoload": {
"files": [
"Source/UserAgentParser.php"
"src/UserAgentParser.php"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -278,9 +278,9 @@
"authors": [
{
"name": "Jesse G. Donat",
"role": "Developer",
"email": "donatj@gmail.com",
"homepage": "http://donatstudios.com",
"role": "Developer"
"homepage": "http://donatstudios.com"
}
],
"description": "Lightning fast, minimalist PHP UserAgent string parser.",
@@ -292,7 +292,7 @@
"user agent",
"useragent"
],
"time": "2018-10-25T20:22:53+00:00"
"time": "2019-03-08T20:52:23+00:00"
},
{
"name": "erusev/parsedown",
@@ -385,16 +385,16 @@
},
{
"name": "filp/whoops",
"version": "2.3.1",
"version": "2.5.0",
"source": {
"type": "git",
"url": "https://github.com/filp/whoops.git",
"reference": "bc0fd11bc455cc20ee4b5edabc63ebbf859324c7"
"reference": "cde50e6720a39fdacb240159d3eea6865d51fd96"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/filp/whoops/zipball/bc0fd11bc455cc20ee4b5edabc63ebbf859324c7",
"reference": "bc0fd11bc455cc20ee4b5edabc63ebbf859324c7",
"url": "https://api.github.com/repos/filp/whoops/zipball/cde50e6720a39fdacb240159d3eea6865d51fd96",
"reference": "cde50e6720a39fdacb240159d3eea6865d51fd96",
"shasum": ""
},
"require": {
@@ -442,7 +442,7 @@
"throwable",
"whoops"
],
"time": "2018-10-23T09:00:00+00:00"
"time": "2019-08-07T09:00:00+00:00"
},
{
"name": "gregwar/cache",
@@ -489,17 +489,17 @@
},
{
"name": "gregwar/image",
"version": "v2.0.23",
"version": "v2.0.25",
"target-dir": "Gregwar/Image",
"source": {
"type": "git",
"url": "https://github.com/Gregwar/Image.git",
"reference": "25fbb91a95d41d44587ee7ca8923745b66221a7d"
"reference": "03534d5760cbea5c96e6292041ff81a3bb205c36"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Gregwar/Image/zipball/25fbb91a95d41d44587ee7ca8923745b66221a7d",
"reference": "25fbb91a95d41d44587ee7ca8923745b66221a7d",
"url": "https://api.github.com/repos/Gregwar/Image/zipball/03534d5760cbea5c96e6292041ff81a3bb205c36",
"reference": "03534d5760cbea5c96e6292041ff81a3bb205c36",
"shasum": ""
},
"require": {
@@ -537,37 +537,41 @@
"gd",
"image"
],
"time": "2018-10-25T17:12:13+00:00"
"time": "2019-03-01T15:55:29+00:00"
},
{
"name": "guzzlehttp/psr7",
"version": "1.5.2",
"version": "1.6.1",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
"reference": "9f83dded91781a01c63574e387eaa769be769115"
"reference": "239400de7a173fe9901b9ac7c06497751f00727a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/9f83dded91781a01c63574e387eaa769be769115",
"reference": "9f83dded91781a01c63574e387eaa769be769115",
"url": "https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a",
"reference": "239400de7a173fe9901b9ac7c06497751f00727a",
"shasum": ""
},
"require": {
"php": ">=5.4.0",
"psr/http-message": "~1.0",
"ralouphie/getallheaders": "^2.0.5"
"ralouphie/getallheaders": "^2.0.5 || ^3.0.0"
},
"provide": {
"psr/http-message-implementation": "1.0"
},
"require-dev": {
"ext-zlib": "*",
"phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8"
},
"suggest": {
"zendframework/zend-httphandlerrunner": "Emit PSR-7 responses"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.5-dev"
"dev-master": "1.6-dev"
}
},
"autoload": {
@@ -604,7 +608,7 @@
"uri",
"url"
],
"time": "2018-12-04T20:46:45+00:00"
"time": "2019-07-01T23:21:34+00:00"
},
{
"name": "league/climate",
@@ -839,24 +843,25 @@
},
{
"name": "miljar/php-exif",
"version": "v0.6.4",
"version": "v0.6.5",
"source": {
"type": "git",
"url": "https://github.com/PHPExif/php-exif.git",
"reference": "361c15b8bc7d5ef26a9492fe537f09c920fe6511"
"reference": "41f23db39d7b48e4af0e134c2e80e577c1782ac9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/PHPExif/php-exif/zipball/361c15b8bc7d5ef26a9492fe537f09c920fe6511",
"reference": "361c15b8bc7d5ef26a9492fe537f09c920fe6511",
"url": "https://api.github.com/repos/PHPExif/php-exif/zipball/41f23db39d7b48e4af0e134c2e80e577c1782ac9",
"reference": "41f23db39d7b48e4af0e134c2e80e577c1782ac9",
"shasum": ""
},
"require": {
"php": ">=5.3.0"
"php": ">=5.4"
},
"require-dev": {
"jakub-onderka/php-parallel-lint": "^1.0",
"phpmd/phpmd": "~2.2",
"phpunit/phpunit": "3.7.*",
"phpunit/phpunit": ">=4.0 <6.0",
"satooshi/php-coveralls": "~0.6",
"sebastian/phpcpd": "1.4.*@stable",
"squizlabs/php_codesniffer": "1.4.*@stable"
@@ -890,20 +895,20 @@
"jpeg",
"tiff"
],
"time": "2018-03-27T10:41:55+00:00"
"time": "2019-02-11T13:47:52+00:00"
},
{
"name": "monolog/monolog",
"version": "1.24.0",
"version": "1.25.1",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/monolog.git",
"reference": "bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266"
"reference": "70e65a5470a42cfec1a7da00d30edb6e617e8dcf"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Seldaek/monolog/zipball/bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266",
"reference": "bfc9ebb28f97e7a24c45bdc3f0ff482e47bb0266",
"url": "https://api.github.com/repos/Seldaek/monolog/zipball/70e65a5470a42cfec1a7da00d30edb6e617e8dcf",
"reference": "70e65a5470a42cfec1a7da00d30edb6e617e8dcf",
"shasum": ""
},
"require": {
@@ -968,7 +973,7 @@
"logging",
"psr-3"
],
"time": "2018-11-05T09:00:11+00:00"
"time": "2019-09-06T13:49:17+00:00"
},
{
"name": "pimple/pimple",
@@ -1216,24 +1221,24 @@
},
{
"name": "ralouphie/getallheaders",
"version": "2.0.5",
"version": "3.0.3",
"source": {
"type": "git",
"url": "https://github.com/ralouphie/getallheaders.git",
"reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa"
"reference": "120b605dfeb996808c31b6477290a714d356e822"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/5601c8a83fbba7ef674a7369456d12f1e0d0eafa",
"reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa",
"url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822",
"reference": "120b605dfeb996808c31b6477290a714d356e822",
"shasum": ""
},
"require": {
"php": ">=5.3"
"php": ">=5.6"
},
"require-dev": {
"phpunit/phpunit": "~3.7.0",
"satooshi/php-coveralls": ">=1.0"
"php-coveralls/php-coveralls": "^2.1",
"phpunit/phpunit": "^5 || ^6.5"
},
"type": "library",
"autoload": {
@@ -1252,30 +1257,31 @@
}
],
"description": "A polyfill for getallheaders.",
"time": "2016-02-11T07:05:27+00:00"
"time": "2019-03-08T08:55:37+00:00"
},
{
"name": "rockettheme/toolbox",
"version": "1.4.2",
"version": "1.4.6",
"source": {
"type": "git",
"url": "https://github.com/rockettheme/toolbox.git",
"reference": "93f5c3d5e173cee7419df20eed52711471abbc3e"
"reference": "e7010c2a956aff241dfa100ab8aef5b6cf83892a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/rockettheme/toolbox/zipball/93f5c3d5e173cee7419df20eed52711471abbc3e",
"reference": "93f5c3d5e173cee7419df20eed52711471abbc3e",
"url": "https://api.github.com/repos/rockettheme/toolbox/zipball/e7010c2a956aff241dfa100ab8aef5b6cf83892a",
"reference": "e7010c2a956aff241dfa100ab8aef5b6cf83892a",
"shasum": ""
},
"require": {
"ext-json": "*",
"php": ">=5.4.0",
"pimple/pimple": "~3.0",
"symfony/event-dispatcher": ">2.5",
"symfony/yaml": ">2.5"
},
"require-dev": {
"phpunit/phpunit": "~5.1.5"
"phpunit/phpunit": "~6"
},
"type": "library",
"autoload": {
@@ -1301,7 +1307,7 @@
"php",
"rockettheme"
],
"time": "2018-08-08T18:03:32+00:00"
"time": "2019-03-20T19:59:17+00:00"
},
{
"name": "seld/cli-prompt",
@@ -1353,16 +1359,16 @@
},
{
"name": "symfony/console",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "a700b874d3692bc8342199adfb6d3b99f62cc61a"
"reference": "4510f04e70344d70952566e4262a0b11df39cb10"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/a700b874d3692bc8342199adfb6d3b99f62cc61a",
"reference": "a700b874d3692bc8342199adfb6d3b99f62cc61a",
"url": "https://api.github.com/repos/symfony/console/zipball/4510f04e70344d70952566e4262a0b11df39cb10",
"reference": "4510f04e70344d70952566e4262a0b11df39cb10",
"shasum": ""
},
"require": {
@@ -1374,6 +1380,9 @@
"symfony/dependency-injection": "<3.4",
"symfony/process": "<3.3"
},
"provide": {
"psr/log-implementation": "1.0"
},
"require-dev": {
"psr/log": "~1.0",
"symfony/config": "~3.3|~4.0",
@@ -1383,7 +1392,7 @@
"symfony/process": "~3.3|~4.0"
},
"suggest": {
"psr/log-implementation": "For using the console logger",
"psr/log": "For using the console logger",
"symfony/event-dispatcher": "",
"symfony/lock": "",
"symfony/process": ""
@@ -1418,20 +1427,20 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
"time": "2019-01-04T04:42:43+00:00"
"time": "2019-08-26T07:52:58+00:00"
},
{
"name": "symfony/debug",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug.git",
"reference": "26d7f23b9bd0b93bee5583e4d6ca5cb1ab31b186"
"reference": "0b600300918780001e2821db77bc28b677794486"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/debug/zipball/26d7f23b9bd0b93bee5583e4d6ca5cb1ab31b186",
"reference": "26d7f23b9bd0b93bee5583e4d6ca5cb1ab31b186",
"url": "https://api.github.com/repos/symfony/debug/zipball/0b600300918780001e2821db77bc28b677794486",
"reference": "0b600300918780001e2821db77bc28b677794486",
"shasum": ""
},
"require": {
@@ -1474,20 +1483,20 @@
],
"description": "Symfony Debug Component",
"homepage": "https://symfony.com",
"time": "2019-01-01T13:45:19+00:00"
"time": "2019-08-20T13:31:17+00:00"
},
{
"name": "symfony/event-dispatcher",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
"reference": "d1cdd46c53c264a2bd42505bd0e8ce21423bd0e2"
"reference": "3e922c4c3430b9de624e8a285dada5e61e230959"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d1cdd46c53c264a2bd42505bd0e8ce21423bd0e2",
"reference": "d1cdd46c53c264a2bd42505bd0e8ce21423bd0e2",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/3e922c4c3430b9de624e8a285dada5e61e230959",
"reference": "3e922c4c3430b9de624e8a285dada5e61e230959",
"shasum": ""
},
"require": {
@@ -1537,20 +1546,20 @@
],
"description": "Symfony EventDispatcher Component",
"homepage": "https://symfony.com",
"time": "2019-01-01T18:08:36+00:00"
"time": "2019-08-23T08:05:57+00:00"
},
{
"name": "symfony/polyfill-ctype",
"version": "v1.10.0",
"version": "v1.12.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
"reference": "e3d826245268269cd66f8326bd8bc066687b4a19"
"reference": "550ebaac289296ce228a706d0867afc34687e3f4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e3d826245268269cd66f8326bd8bc066687b4a19",
"reference": "e3d826245268269cd66f8326bd8bc066687b4a19",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/550ebaac289296ce228a706d0867afc34687e3f4",
"reference": "550ebaac289296ce228a706d0867afc34687e3f4",
"shasum": ""
},
"require": {
@@ -1562,7 +1571,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.9-dev"
"dev-master": "1.12-dev"
}
},
"autoload": {
@@ -1578,13 +1587,13 @@
"MIT"
],
"authors": [
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
},
{
"name": "Gert de Pagter",
"email": "BackEndTea@gmail.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony polyfill for ctype functions",
@@ -1595,20 +1604,20 @@
"polyfill",
"portable"
],
"time": "2018-08-06T14:22:27+00:00"
"time": "2019-08-06T08:03:45+00:00"
},
{
"name": "symfony/polyfill-iconv",
"version": "v1.10.0",
"version": "v1.12.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-iconv.git",
"reference": "97001cfc283484c9691769f51cdf25259037eba2"
"reference": "685968b11e61a347c18bf25db32effa478be610f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/97001cfc283484c9691769f51cdf25259037eba2",
"reference": "97001cfc283484c9691769f51cdf25259037eba2",
"url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/685968b11e61a347c18bf25db32effa478be610f",
"reference": "685968b11e61a347c18bf25db32effa478be610f",
"shasum": ""
},
"require": {
@@ -1620,7 +1629,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.9-dev"
"dev-master": "1.12-dev"
}
},
"autoload": {
@@ -1654,20 +1663,20 @@
"portable",
"shim"
],
"time": "2018-09-21T06:26:08+00:00"
"time": "2019-08-06T08:03:45+00:00"
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.10.0",
"version": "v1.12.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
"reference": "c79c051f5b3a46be09205c73b80b346e4153e494"
"reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/c79c051f5b3a46be09205c73b80b346e4153e494",
"reference": "c79c051f5b3a46be09205c73b80b346e4153e494",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/b42a2f66e8f1b15ccf25652c3424265923eb4f17",
"reference": "b42a2f66e8f1b15ccf25652c3424265923eb4f17",
"shasum": ""
},
"require": {
@@ -1679,7 +1688,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.9-dev"
"dev-master": "1.12-dev"
}
},
"autoload": {
@@ -1713,20 +1722,20 @@
"portable",
"shim"
],
"time": "2018-09-21T13:07:52+00:00"
"time": "2019-08-06T08:03:45+00:00"
},
{
"name": "symfony/var-dumper",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
"reference": "a5f39641bb62e8b74e343467b145331273f615a2"
"reference": "5408ad7194737ee1bc5ab7a9683fb6925f92c3e4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/a5f39641bb62e8b74e343467b145331273f615a2",
"reference": "a5f39641bb62e8b74e343467b145331273f615a2",
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/5408ad7194737ee1bc5ab7a9683fb6925f92c3e4",
"reference": "5408ad7194737ee1bc5ab7a9683fb6925f92c3e4",
"shasum": ""
},
"require": {
@@ -1782,20 +1791,20 @@
"debug",
"dump"
],
"time": "2019-01-01T13:45:19+00:00"
"time": "2019-08-26T07:50:50+00:00"
},
{
"name": "symfony/yaml",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
"reference": "554a59a1ccbaac238a89b19c8e551a556fd0e2ea"
"reference": "3dc414b7db30695bae671a1d86013d03f4ae9834"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/yaml/zipball/554a59a1ccbaac238a89b19c8e551a556fd0e2ea",
"reference": "554a59a1ccbaac238a89b19c8e551a556fd0e2ea",
"url": "https://api.github.com/repos/symfony/yaml/zipball/3dc414b7db30695bae671a1d86013d03f4ae9834",
"reference": "3dc414b7db30695bae671a1d86013d03f4ae9834",
"shasum": ""
},
"require": {
@@ -1841,35 +1850,35 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
"time": "2019-01-01T13:45:19+00:00"
"time": "2019-08-20T13:31:17+00:00"
},
{
"name": "twig/twig",
"version": "v1.37.1",
"version": "v1.42.3",
"source": {
"type": "git",
"url": "https://github.com/twigphp/Twig.git",
"reference": "66be9366c76cbf23e82e7171d47cbfa54a057a62"
"reference": "201baee843e0ffe8b0b956f336dd42b2a92fae4e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/66be9366c76cbf23e82e7171d47cbfa54a057a62",
"reference": "66be9366c76cbf23e82e7171d47cbfa54a057a62",
"url": "https://api.github.com/repos/twigphp/Twig/zipball/201baee843e0ffe8b0b956f336dd42b2a92fae4e",
"reference": "201baee843e0ffe8b0b956f336dd42b2a92fae4e",
"shasum": ""
},
"require": {
"php": ">=5.4.0",
"php": ">=5.5.0",
"symfony/polyfill-ctype": "^1.8"
},
"require-dev": {
"psr/container": "^1.0",
"symfony/debug": "^2.7",
"symfony/phpunit-bridge": "^3.4.19|^4.1.8"
"symfony/debug": "^3.4|^4.2",
"symfony/phpunit-bridge": "^4.4@dev|^5.0"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.37-dev"
"dev-master": "1.42-dev"
}
},
"autoload": {
@@ -1891,15 +1900,15 @@
"homepage": "http://fabien.potencier.org",
"role": "Lead Developer"
},
{
"name": "Armin Ronacher",
"email": "armin.ronacher@active-4.com",
"role": "Project Founder"
},
{
"name": "Twig Team",
"homepage": "https://twig.symfony.com/contributors",
"role": "Contributors"
},
{
"name": "Armin Ronacher",
"email": "armin.ronacher@active-4.com",
"role": "Project Founder"
}
],
"description": "Twig, the flexible, fast, and secure template language for PHP",
@@ -1907,7 +1916,7 @@
"keywords": [
"templating"
],
"time": "2019-01-14T14:59:29+00:00"
"time": "2019-08-24T12:51:03+00:00"
}
],
"packages-dev": [
@@ -1972,16 +1981,16 @@
},
{
"name": "codeception/codeception",
"version": "2.5.2",
"version": "2.5.6",
"source": {
"type": "git",
"url": "https://github.com/Codeception/Codeception.git",
"reference": "4f89de32929fef53ca6d83b159fe329b6d484c1c"
"reference": "b83a9338296e706fab2ceb49de8a352fbca3dc98"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Codeception/Codeception/zipball/4f89de32929fef53ca6d83b159fe329b6d484c1c",
"reference": "4f89de32929fef53ca6d83b159fe329b6d484c1c",
"url": "https://api.github.com/repos/Codeception/Codeception/zipball/b83a9338296e706fab2ceb49de8a352fbca3dc98",
"reference": "b83a9338296e706fab2ceb49de8a352fbca3dc98",
"shasum": ""
},
"require": {
@@ -2013,7 +2022,7 @@
"predis/predis": "^1.0",
"squizlabs/php_codesniffer": "~2.0",
"symfony/process": ">=2.7 <5.0",
"vlucas/phpdotenv": "^2.4.0"
"vlucas/phpdotenv": "^3.0"
},
"suggest": {
"aws/aws-sdk-php": "For using AWS Auth in REST module and Queue module",
@@ -2060,7 +2069,7 @@
"functional testing",
"unit testing"
],
"time": "2019-01-02T10:28:51+00:00"
"time": "2019-04-24T11:28:19+00:00"
},
{
"name": "codeception/phpunit-wrapper",
@@ -2194,16 +2203,16 @@
},
{
"name": "facebook/webdriver",
"version": "1.6.0",
"version": "1.7.1",
"source": {
"type": "git",
"url": "https://github.com/facebook/php-webdriver.git",
"reference": "bd8c740097eb9f2fc3735250fc1912bc811a954e"
"reference": "e43de70f3c7166169d0f14a374505392734160e5"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/facebook/php-webdriver/zipball/bd8c740097eb9f2fc3735250fc1912bc811a954e",
"reference": "bd8c740097eb9f2fc3735250fc1912bc811a954e",
"url": "https://api.github.com/repos/facebook/php-webdriver/zipball/e43de70f3c7166169d0f14a374505392734160e5",
"reference": "e43de70f3c7166169d0f14a374505392734160e5",
"shasum": ""
},
"require": {
@@ -2250,7 +2259,7 @@
"selenium",
"webdriver"
],
"time": "2018-05-16T17:37:13+00:00"
"time": "2019-06-13T08:02:18+00:00"
},
{
"name": "fzaninotto/faker",
@@ -2566,16 +2575,16 @@
},
{
"name": "phpspec/prophecy",
"version": "1.8.0",
"version": "1.8.1",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
"reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06"
"reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpspec/prophecy/zipball/4ba436b55987b4bf311cb7c6ba82aa528aac0a06",
"reference": "4ba436b55987b4bf311cb7c6ba82aa528aac0a06",
"url": "https://api.github.com/repos/phpspec/prophecy/zipball/1927e75f4ed19131ec9bcc3b002e07fb1173ee76",
"reference": "1927e75f4ed19131ec9bcc3b002e07fb1173ee76",
"shasum": ""
},
"require": {
@@ -2596,8 +2605,8 @@
}
},
"autoload": {
"psr-0": {
"Prophecy\\": "src/"
"psr-4": {
"Prophecy\\": "src/Prophecy"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -2625,7 +2634,7 @@
"spy",
"stub"
],
"time": "2018-08-05T17:53:17+00:00"
"time": "2019-06-13T12:50:23+00:00"
},
{
"name": "phpunit/php-code-coverage",
@@ -3001,6 +3010,7 @@
"mock",
"xunit"
],
"abandoned": true,
"time": "2015-10-02T06:51:40+00:00"
},
{
@@ -3377,16 +3387,16 @@
},
{
"name": "symfony/browser-kit",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/browser-kit.git",
"reference": "6d98fb221a263c66b1311203fe4eed154035f508"
"reference": "1a3406a6b9b61b492592a816ca056afcc9e976c0"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/browser-kit/zipball/6d98fb221a263c66b1311203fe4eed154035f508",
"reference": "6d98fb221a263c66b1311203fe4eed154035f508",
"url": "https://api.github.com/repos/symfony/browser-kit/zipball/1a3406a6b9b61b492592a816ca056afcc9e976c0",
"reference": "1a3406a6b9b61b492592a816ca056afcc9e976c0",
"shasum": ""
},
"require": {
@@ -3430,20 +3440,20 @@
],
"description": "Symfony BrowserKit Component",
"homepage": "https://symfony.com",
"time": "2019-01-01T13:45:19+00:00"
"time": "2019-08-26T07:52:58+00:00"
},
{
"name": "symfony/css-selector",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
"reference": "12f86295c46c36af9896cf21db6b6b8a1465315d"
"reference": "e18c5c4b35e7f17513448a25d02f7af34a4bdb41"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/css-selector/zipball/12f86295c46c36af9896cf21db6b6b8a1465315d",
"reference": "12f86295c46c36af9896cf21db6b6b8a1465315d",
"url": "https://api.github.com/repos/symfony/css-selector/zipball/e18c5c4b35e7f17513448a25d02f7af34a4bdb41",
"reference": "e18c5c4b35e7f17513448a25d02f7af34a4bdb41",
"shasum": ""
},
"require": {
@@ -3468,14 +3478,14 @@
"MIT"
],
"authors": [
{
"name": "Jean-François Simon",
"email": "jeanfrancois.simon@sensiolabs.com"
},
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
},
{
"name": "Jean-François Simon",
"email": "jeanfrancois.simon@sensiolabs.com"
},
{
"name": "Symfony Community",
"homepage": "https://symfony.com/contributors"
@@ -3483,20 +3493,20 @@
],
"description": "Symfony CssSelector Component",
"homepage": "https://symfony.com",
"time": "2019-01-02T09:30:52+00:00"
"time": "2019-08-20T13:31:17+00:00"
},
{
"name": "symfony/dom-crawler",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/dom-crawler.git",
"reference": "311f666d85d1075b0a294ba1f3de4ae9307d8180"
"reference": "8558d1bc4554f5cb0b66e50377457967a8969263"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/dom-crawler/zipball/311f666d85d1075b0a294ba1f3de4ae9307d8180",
"reference": "311f666d85d1075b0a294ba1f3de4ae9307d8180",
"url": "https://api.github.com/repos/symfony/dom-crawler/zipball/8558d1bc4554f5cb0b66e50377457967a8969263",
"reference": "8558d1bc4554f5cb0b66e50377457967a8969263",
"shasum": ""
},
"require": {
@@ -3540,20 +3550,20 @@
],
"description": "Symfony DomCrawler Component",
"homepage": "https://symfony.com",
"time": "2019-01-01T13:45:19+00:00"
"time": "2019-08-26T07:52:58+00:00"
},
{
"name": "symfony/finder",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
"reference": "3f2a2ab6315dd7682d4c16dcae1e7b95c8b8555e"
"reference": "1fcad80b440abcd1451767349906b6f9d3961d37"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/finder/zipball/3f2a2ab6315dd7682d4c16dcae1e7b95c8b8555e",
"reference": "3f2a2ab6315dd7682d4c16dcae1e7b95c8b8555e",
"url": "https://api.github.com/repos/symfony/finder/zipball/1fcad80b440abcd1451767349906b6f9d3961d37",
"reference": "1fcad80b440abcd1451767349906b6f9d3961d37",
"shasum": ""
},
"require": {
@@ -3589,20 +3599,20 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
"time": "2019-01-01T13:45:19+00:00"
"time": "2019-08-14T09:39:58+00:00"
},
{
"name": "symfony/process",
"version": "v3.4.21",
"version": "v3.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
"reference": "0d41dd7d95ed179aed6a13393b0f4f97bfa2d25c"
"reference": "d822cb654000a95b7855362c0d5b127f6a6d8baa"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/process/zipball/0d41dd7d95ed179aed6a13393b0f4f97bfa2d25c",
"reference": "0d41dd7d95ed179aed6a13393b0f4f97bfa2d25c",
"url": "https://api.github.com/repos/symfony/process/zipball/d822cb654000a95b7855362c0d5b127f6a6d8baa",
"reference": "d822cb654000a95b7855362c0d5b127f6a6d8baa",
"shasum": ""
},
"require": {
@@ -3638,7 +3648,7 @@
],
"description": "Symfony Process Component",
"homepage": "https://symfony.com",
"time": "2019-01-02T21:24:08+00:00"
"time": "2019-08-26T07:52:58+00:00"
},
{
"name": "victorjonsson/markdowndocs",
@@ -3688,16 +3698,16 @@
},
{
"name": "webmozart/assert",
"version": "1.4.0",
"version": "1.5.0",
"source": {
"type": "git",
"url": "https://github.com/webmozart/assert.git",
"reference": "83e253c8e0be5b0257b881e1827274667c5c17a9"
"reference": "88e6d84706d09a236046d686bbea96f07b3a34f4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/webmozart/assert/zipball/83e253c8e0be5b0257b881e1827274667c5c17a9",
"reference": "83e253c8e0be5b0257b881e1827274667c5c17a9",
"url": "https://api.github.com/repos/webmozart/assert/zipball/88e6d84706d09a236046d686bbea96f07b3a34f4",
"reference": "88e6d84706d09a236046d686bbea96f07b3a34f4",
"shasum": ""
},
"require": {
@@ -3705,8 +3715,7 @@
"symfony/polyfill-ctype": "^1.8"
},
"require-dev": {
"phpunit/phpunit": "^4.6",
"sebastian/version": "^1.0.1"
"phpunit/phpunit": "^4.8.36 || ^7.5.13"
},
"type": "library",
"extra": {
@@ -3735,7 +3744,7 @@
"check",
"validate"
],
"time": "2018-12-25T11:19:39+00:00"
"time": "2019-08-24T08:43:50+00:00"
}
],
"aliases": [],
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+24 -20
View File
@@ -15,25 +15,29 @@ var paths = {
source: src_dir
};
gulp.task('watch', function() {
gulp.watch(watch_dir, ['build']);
});
function watch() {
return gulp.watch(watch_dir, build);
}
gulp.task('build', function() {
gulp.src(paths.source)
.pipe(sourcemaps.init())
.pipe(sass({outputStyle: 'compact', precision: 10})
.on('error', sass.logError)
)
.pipe(sourcemaps.write())
.pipe(autoprefixer())
.pipe(gulp.dest(dest_dir))
.pipe(csscomb())
.pipe(cleancss())
.pipe(rename({
suffix: '.min'
}))
.pipe(gulp.dest(dest_dir));
});
function build() {
return gulp.src(paths.source)
.pipe(sourcemaps.init())
.pipe(sass({
outputStyle: 'compact',
precision: 10
}).on('error', sass.logError)
)
.pipe(sourcemaps.write())
.pipe(autoprefixer())
.pipe(gulp.dest(dest_dir))
.pipe(csscomb())
.pipe(cleancss())
.pipe(rename({
suffix: '.min'
}))
.pipe(gulp.dest(dest_dir));
}
gulp.task('default', ['build']);
exports.watch = watch;
exports.build = build;
exports.default = build;
-149
View File
@@ -1,149 +0,0 @@
var $link_txt = $('#text_figli p > a');
var $link_list = $('.list-projets a');
function ajax_txt($href,$this, this_id) {
var $link_txt = $('#text_figli > p');
var idlink_txt = $link_txt.attr("id");
var search_id =$link_txt.find('#' + this_id);
$.ajax({
url : $href, // La ressource ciblée
type : 'GET', // Le type de la requête HTTP
dataType:'html',
success: function(data) {
$(data).find('.card').addClass(this_id).insertAfter(search_id);
var $card = $('#text_figli .card .card-image > a');
$card.click(function(e) {
e.preventDefault();
var $this = $(this);
var $href = $this.attr("href");
var this_id = $this.parent('.card-image').attr("id");
if ($this.parent('.card-image').hasClass('views')) {
$('#'+this_id+' #item').remove();
$this.parent('.card-image').removeClass("views");
}else{
$.ajax({
url : $href, // La ressource ciblée
type : 'GET', // Le type de la requête HTTP
dataType:'html',
success: function(data) {
$(data).find('#item').insertAfter($this);
$(window).on('resize', function(x){
var x = $this.offset();
var x = $this.offset();
var Wwindow = $('#text_figli').width();
var Wcard = $this.parents('.card').width();
var xcard = $this.offset().left;
var marginR = Wwindow - (Wcard + xcard);
console.log('x.left resize =',x.left);
$this.parent('.card-image').find('#item').css('margin-left', -x.left+8);
$this.parents('.card').css('margin-right', marginR);
});
var x = $this.offset();
var Wwindow = $('#text_figli').width();
var Wcard = $this.parents('.card').width();
var xcard = $this.offset().left;
var marginR = Wwindow - (Wcard + xcard);
// si la distance entre l'image précédente et la bord droit du text est supérieur ou égale
// a un card
// alors soustrai xcard a la marg calculer de this.
// sinon tu ne change rien
console.log('marginR', marginR);
// console.log('x.left',x.left);
// console.log('marginR',marginR.right);
$this.parent('.card-image').find('#item').css('margin-left', -x.left+8);
$this.parents('.card').css('margin-right', marginR);
}
});
$this.parent('.card-image').addClass('views');
}
});
}
});
}
function ajax_liste($href,$this, this_id) {
var $link_txt = $('#text_figli > p');
var idlink_txt = $link_txt.attr("id");
var search_id =$link_txt.find('#' + this_id);
console.log('$href',$href);
var url = $href.split("/");
var id = url[url.length - 2];
var projetc_name = url[url.length - 1];
console.log('projetc_name',projetc_name);
$.ajax({
url : '/projets/' + id, // La ressource ciblée
type : 'GET', // Le type de la requête HTTP
dataType:'html',
success: function(data) {
$(data).find('.card').addClass(this_id).insertAfter(search_id);
},
complete: function(){
// Handle the complete event
setTimeout( function(){
$.ajax({
url : '/projets/' + id + '/' + projetc_name, // La ressource ciblée
type : 'GET', // Le type de la requête HTTP
dataType:'html',
success: function(data) {
var $link_item = $('#text_figli > p > .card');
var idlink_txt = $link_txt.attr("id");
var search_id =$link_item.find('#' + projetc_name);
console.log('search_id',id);
$(data).find('#item').insertAfter(search_id);
console.log('complete2');
},
})
}, 2000);
}
});
}
function deploy() {
$link_txt.click(function(e){
e.preventDefault();
var $this = $(this);
var $href = $this.attr("href");
var this_id = $this.attr("id");
if ($this.hasClass('open')) {
$('.card.'+this_id).remove();
$this.removeClass("open");
}else{
ajax_txt($href, $this, this_id);
$this.addClass('open');
}
});
$link_list.click(function(e){
e.preventDefault();
var $this = $(this);
var $href = $this.attr("href");
var this_id = $this.attr("id");
if ($this.hasClass('open')) {
$('.card.'+this_id).remove();
$this.removeClass("open");
}else{
ajax_liste($href, $this, this_id);
$this.addClass('open');
}
});
}
jQuery(document).ready(function($){
deploy();
});
+147 -47
View File
@@ -1,59 +1,159 @@
var isTouch = window.DocumentTouch && document instanceof DocumentTouch;
function click_link() {
function scrollHeader() {
// Has scrolled class on header
var zvalue = $(document).scrollTop();
if ( zvalue > 75 )
$("#header").addClass("scrolled");
else
$("#header").removeClass("scrolled");
}
$link = $('#text_figli p > a');
function parallaxBackground() {
$('.parallax').css('background-positionY', ($(window).scrollTop() * 0.3) + 'px');
}
$link.click(function(e) {
e.preventDefault();
jQuery(document).ready(function($){
var $this = $(this);
$href = $this.attr("href");
url = $href.split("/");
page = url[1];
cat = url[2];
project_name = url[3];
scrollHeader();
if ($this.hasClass('open')) {
$this.removeClass('open');
$('#item_list.'+ cat).remove();
} else {
// Scroll Events
if (!isTouch){
$(document).scroll(function() {
scrollHeader();
parallaxBackground();
});
};
// Touch scroll
$(document).on({
'touchmove': function(e) {
scrollHeader(); // Replace this with your code.
$.ajax({
url : '/' + page + '/' + cat, // La ressource ciblée
type : 'GET', // Le type de la requête HTTP
dataType:'html',
success: function(data) {
$(data).find('#item_list').addClass(cat).insertAfter($this);
$this.addClass('open');
},
complete: function(data) {
console.log('cat', cat);
click_img(e, $this, $href, url, page, cat, project_name);
}
});
}
});
};
function click_list() {
var $link = $('.list-projets li > a');
$link.click(function(e) {
e.preventDefault();
var $this = $(this);
$href = $this.attr("href");
url = $href.split("/");
page = url[1];
cat = url[2];
project_name = url[3];
var $link_txt = $('#text_figli a#'+cat);
var $link_item = $('#item_list.'+cat);
var $link_card = $('.card > #'+project_name + ' a');
if ($link_txt.hasClass('open') && $link_card.parent().hasClass('open') ) {
console.log('anchor');
anchor($href);
}else if ($link_txt.hasClass('open')) {
$.ajax({
url : '/' + page + '/' + cat + '/' + project_name, // La ressource ciblée
type : 'GET', // Le type de la requête HTTP
dataType:'html',
success: function(data) {
$(data).find('#item').addClass(cat).insertAfter($link_card);
$link_card.parent().addClass('open');
},
});
} else {
$.ajax({
url : '/' + page + '/' + cat, // La ressource ciblée
type : 'GET', // Le type de la requête HTTP
dataType:'html',
success: function(data) {
$(data).find('#item_list').addClass(cat).insertAfter($link_txt);
$link_txt.addClass('open');
anchor($href);
$('.card a').click(function (e) {
e.preventDefault()
})
click_img(e, $this, $href, url, page, cat, project_name)
},
complete: function(data) {
console.log('cat', cat);
var $link_card = $('.card > #'+project_name + ' a');
setTimeout( function(){
console.log('project_name', project_name);
console.log('$link_card', $link_card);
if ($link_card.hasClass('open')) {
}else {
anchor($href);
$.ajax({
url : '/' + page + '/' + cat + '/' + project_name, // La ressource ciblée
type : 'GET', // Le type de la requête HTTP
dataType:'html',
success: function(data) {
$(data).find('#item').addClass(cat).insertAfter($link_card);
$link_card.parent().addClass('open');
},
});
}
}, 1500);
}
});
}
});
}
function click_img(e, $this, $href, url, page, cat, project_name) {
// $link_img = $('.card .card-image > a');
$('section.' + cat +' .card-image > a').click(function(e) {
var $this = $(this);
$href = $this.attr("href");
url = $href.split("/");
page = url[1];
cat = url[2];
project_name = url[3];
e.preventDefault();
if ($this.parent().hasClass('open')) {
$this.parent().removeClass('open');
$($this.parent().find('#item.'+ cat)).remove();
} else {
$.ajax({
url : '/' + page + '/' + cat + '/' + project_name, // La ressource ciblée
type : 'GET', // Le type de la requête HTTP
dataType:'html',
success: function(data) {
$(data).find('#item').addClass(cat).insertAfter($this);
$this.parent().addClass('open');
},
});
}
});
}
//Smooth scroll to start
$('#to-start').click(function(){
var start_y = $('#start').position().top;
var header_offset = 45;
window.scroll({ top: start_y - header_offset, left: 0, behavior: 'smooth' });
return false;
});
function anchor($href) {
//Smooth scroll to top
$('#to-top').click(function(){
window.scroll({ top: 0, left: 0, behavior: 'smooth' });
return false;
});
var aTag = $("a[href='"+ $href +"']");
$('html,body').animate({scrollTop: aTag.offset().top},'slow');
// Responsive Menu
$('#toggle').click(function () {
$(this).toggleClass('active');
$('#overlay').toggleClass('open');
$('body').toggleClass('mobile-nav-open');
});
// Tree Menu
$(".tree").treemenu({delay:300});
}
$(document).ready(function($){
click_link();
click_list();
});
File diff suppressed because it is too large Load Diff
+1
View File
@@ -47,6 +47,7 @@
"merge": "^1.2.1",
"minimatch": "^3.0.4",
"normalize.css": "^8.0.1",
"npm": "^6.11.3",
"path": "^0.12.7",
"util": "^0.12.1",
"utils": "^0.3.1",
@@ -4,11 +4,11 @@
@include font-face($playfair, $file-italic, $family-italic, $category);//2
// font-size
$txt-figli: 3.5rem;
$txt-figli: 2.5rem;
// line-height
$Flhome: 4rem;
$Flhome: 3rem;
$marg: 0.5rem;
$margI: 1rem;
$Wi: 80%;
@@ -20,7 +20,6 @@ form {
}
#grav-login {
> form {
margin: 2rem auto 0;
max-width: 350px;
@@ -7,37 +7,21 @@ html, body, header{
body{
#start{
width: calc( #{$Wi} - #{$marg} );
width: $Wi50;
margin: $marg auto auto $marg;
#text_figli{
p {
a{
position: relative;
// &::after{
// display: block;
// content: '';
// position: absolute;
// top: 0;
// left: 0;
// transform: translate(-25%,-65%);
// z-index: 999;
// }
// &:hover{
// &::after{
// content: url('/user/themes/figureslibres/images/ovale.svg');
// width: 100%;
// height: 100%;
// top: 0;
// left: 0;
// }
// }
&.marg{
margin-right: $marg;
}
}
}
#item_list{
width: 80vw;
.card{
width: calc((100% / 3) - ( #{$marg} * 2) );
width: calc((100% / 5) - ( #{$marg} * 2) );
height: auto;
// overflow: hidden;
display: inline-block;
@@ -45,7 +29,10 @@ body{
line-height: 0;
margin-right: $marg;
position: relative;
margin-top: $marg;
margin-top: $marg;
a{
display: block;
}
.card-header{
display: none;
& > *{
@@ -70,10 +57,24 @@ body{
}
#item{
width: calc( 307% - #{$marg} );
// margin-left: -50vw;
.content-title{
margin: 30px auto;
a{
display: block;
}
}
.e-content{
margin: 30px auto;
p{
font-size: 1rem;
line-height: 1rem;
}
}
}
}
}
}
}
&:not(.home){
#start{
@@ -13,7 +13,7 @@ header{
.home{
p{
font-size: $txt-figli;
line-height: $Flhome;
line-height: 3rem;
}
#text_figli{
strong{
@@ -22,7 +22,8 @@
{% block javascripts %}
{% do assets.addJs('jquery', 101) %}
{% do assets.addJs('theme://js/script_k.js', {group:'bottom'}) %}
{% do assets.addJs('theme://js/site.js', {group:'bottom'}) %}
{% endblock %}
{{ assets.js()|raw }}
@@ -5,7 +5,7 @@
<div class="card">
{% set image = page.media.images|first %}
{% if image %}
<div id="{{ macro.pageLinkName(page.title) }}" class="card-image">
<div id="{{ page.folder }}" class="card-image">
<a href="{{ page.url }}">{{ image.html("", "Projet") }}</a>
</div>
{% endif %}