diff --git a/composer.json b/composer.json index 18f6513..496fcb7 100644 --- a/composer.json +++ b/composer.json @@ -26,9 +26,13 @@ "drupal/console": "^1.0.2", "drupal/core": "^8.6.0", "drupal/entity_clone": "^1.0", + "drupal/mailgun": "1.x-dev", + "drupal/mailsystem": "^4.1", "drupal/migrate_plus": "4.x-dev", "drupal/migrate_tools": "4.x-dev", + "drupal/mimemail": "1.x-dev", "drupal/select_translation": "1.x-dev", + "drupal/simplenews": "1.x-dev", "drupal/telephone_formatter": "^1.0@beta", "drupal/telephone_validation": "^2.1", "drupal/views_conditional": "1.x-dev", diff --git a/composer.lock b/composer.lock index a7a4d69..409a054 100644 --- a/composer.lock +++ b/composer.lock @@ -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": "5c81e81b43e05fe31dadbff79f287767", + "content-hash": "fcb611e3e36853a84ef3340632b6df4f", "packages": [ { "name": "alchemy/zippy", @@ -167,6 +167,58 @@ "description": "Drupal code generator", "time": "2019-01-30T10:34:16+00:00" }, + { + "name": "clue/stream-filter", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/clue/php-stream-filter.git", + "reference": "d80fdee9b3a7e0d16fc330a22f41f3ad0eeb09d0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/php-stream-filter/zipball/d80fdee9b3a7e0d16fc330a22f41f3ad0eeb09d0", + "reference": "d80fdee9b3a7e0d16fc330a22f41f3ad0eeb09d0", + "shasum": "" + }, + "require": { + "php": ">=5.3" + }, + "require-dev": { + "phpunit/phpunit": "^5.0 || ^4.8" + }, + "type": "library", + "autoload": { + "psr-4": { + "Clue\\StreamFilter\\": "src/" + }, + "files": [ + "src/functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@lueck.tv" + } + ], + "description": "A simple and modern approach to stream filtering in PHP", + "homepage": "https://github.com/clue/php-stream-filter", + "keywords": [ + "bucket brigade", + "callback", + "filter", + "php_user_filter", + "stream", + "stream_filter_append", + "stream_filter_register" + ], + "time": "2017-08-18T09:54:01+00:00" + }, { "name": "commerceguys/addressing", "version": "v1.0.2", @@ -5276,6 +5328,65 @@ }, "time": "2018-01-01T11:13:09+00:00" }, + { + "name": "drupal/mailgun", + "version": "dev-1.x", + "source": { + "type": "git", + "url": "https://git.drupal.org/project/mailgun", + "reference": "fe6868bccbab74acbde4950dd0cd536f8dc949ce" + }, + "require": { + "drupal/core": "~8.0", + "drupal/mailsystem": "*", + "guzzlehttp/psr7": "^1.0", + "html2text/html2text": "~4.0.1", + "mailgun/mailgun-php": ">=2.3", + "php-http/curl-client": "^1.0" + }, + "type": "drupal-module", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + }, + "drupal": { + "version": "8.x-1.0-beta1+29-dev", + "datestamp": "1549125780", + "security-coverage": { + "status": "not-covered", + "message": "Dev releases are not covered by Drupal security advisories." + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Jeffrey C.", + "homepage": "https://www.drupal.org/user/1290564" + }, + { + "name": "Matroskeen", + "homepage": "https://www.drupal.org/user/3426249" + }, + { + "name": "SpartyDan", + "homepage": "https://www.drupal.org/user/609056" + }, + { + "name": "bohart", + "homepage": "https://www.drupal.org/user/289861" + } + ], + "description": "Allows site to send emails using Mailgun email service.", + "homepage": "https://www.drupal.org/project/mailgun", + "support": { + "source": "http://cgit.drupalcode.org/mailgun" + }, + "time": "2019-02-04T21:22:28+00:00" + }, { "name": "drupal/maillog", "version": "dev-1.x", @@ -5845,6 +5956,61 @@ }, "time": "2018-12-20T22:27:32+00:00" }, + { + "name": "drupal/mimemail", + "version": "dev-1.x", + "source": { + "type": "git", + "url": "https://git.drupal.org/project/mimemail", + "reference": "25f919ff7dc6fbc5541385e01c459800a067bee1" + }, + "require": { + "drupal/core": "~8.0", + "drupal/mailsystem": "*" + }, + "type": "drupal-module", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + }, + "drupal": { + "version": "8.x-1.0-alpha2+10-dev", + "datestamp": "1533746584", + "security-coverage": { + "status": "not-covered", + "message": "Dev releases are not covered by Drupal security advisories." + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Allie Micka", + "homepage": "https://www.drupal.org/user/15091" + }, + { + "name": "TR", + "homepage": "https://www.drupal.org/user/202830" + }, + { + "name": "jerdavis", + "homepage": "https://www.drupal.org/user/228997" + }, + { + "name": "sgabe", + "homepage": "https://www.drupal.org/user/232117" + } + ], + "description": "Sends MIME-encoded emails with embedded images and attachments.", + "homepage": "https://www.drupal.org/project/mimemail", + "support": { + "source": "http://cgit.drupalcode.org/mimemail" + }, + "time": "2018-09-12T19:16:13+00:00" + }, { "name": "drupal/pagerer", "version": "1.4.0", @@ -6453,6 +6619,68 @@ }, "time": "2018-11-20T15:20:53+00:00" }, + { + "name": "drupal/simplenews", + "version": "dev-1.x", + "source": { + "type": "git", + "url": "https://git.drupal.org/project/simplenews", + "reference": "10960066e2ec080d539fc9706da5fc8c5f1270f3" + }, + "require": { + "drupal/core": "*" + }, + "require-dev": { + "drupal/monitoring": "*", + "drupal/simplenews_scheduler": "*" + }, + "type": "drupal-module", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + }, + "drupal": { + "version": "8.x-1.0-alpha3+17-dev", + "datestamp": "1549810380", + "security-coverage": { + "status": "not-covered", + "message": "Dev releases are not covered by Drupal security advisories." + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "AlexisWilke", + "homepage": "https://www.drupal.org/user/356197" + }, + { + "name": "Berdir", + "homepage": "https://www.drupal.org/user/214652" + }, + { + "name": "Simon Georges", + "homepage": "https://www.drupal.org/user/172312" + }, + { + "name": "Sutharsan", + "homepage": "https://www.drupal.org/user/73854" + }, + { + "name": "miro_dietiker", + "homepage": "https://www.drupal.org/user/227761" + } + ], + "description": "Send newsletters to subscribed email addresses. For uninstall go to Configuration > Web services > Simplenews > Settings and hit \"Prepare uninstall\".", + "homepage": "https://www.drupal.org/project/simplenews", + "support": { + "source": "http://cgit.drupalcode.org/simplenews" + }, + "time": "2019-02-11T11:41:31+00:00" + }, { "name": "drupal/smart_trim", "version": "1.1.0", @@ -8049,6 +8277,43 @@ ], "time": "2018-12-04T20:46:45+00:00" }, + { + "name": "html2text/html2text", + "version": "4.0.1", + "source": { + "type": "git", + "url": "https://github.com/mtibben/html2text.git", + "reference": "f55104b7c9f99b0937f0e20fe051b19f9c0ecad1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mtibben/html2text/zipball/f55104b7c9f99b0937f0e20fe051b19f9c0ecad1", + "reference": "f55104b7c9f99b0937f0e20fe051b19f9c0ecad1", + "shasum": "" + }, + "require-dev": { + "phpunit/phpunit": "~4" + }, + "suggest": { + "ext-mbstring": "For best performance", + "symfony/polyfill-mbstring": "If you can't install ext-mbstring" + }, + "type": "library", + "autoload": { + "psr-4": { + "Html2Text\\": [ + "src/", + "test/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPLv2" + ], + "description": "Converts HTML to formatted plain text", + "time": "2016-03-16T23:24:34+00:00" + }, { "name": "jakub-onderka/php-console-color", "version": "v0.2", @@ -8257,6 +8522,58 @@ ], "time": "2017-02-03T11:58:58+00:00" }, + { + "name": "mailgun/mailgun-php", + "version": "2.8.1", + "source": { + "type": "git", + "url": "https://github.com/mailgun/mailgun-php.git", + "reference": "4af0346851914ae0d9a58bf9ddf17eb48f6498c8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mailgun/mailgun-php/zipball/4af0346851914ae0d9a58bf9ddf17eb48f6498c8", + "reference": "4af0346851914ae0d9a58bf9ddf17eb48f6498c8", + "shasum": "" + }, + "require": { + "php": "^5.5 || ^7.0", + "php-http/client-common": "^1.1", + "php-http/discovery": "^1.0", + "php-http/httplug": "^1.0 || ^2.0", + "php-http/message": "^1.0", + "php-http/multipart-stream-builder": "^1.0", + "webmozart/assert": "^1.2" + }, + "require-dev": { + "guzzlehttp/psr7": "^1.4", + "nyholm/nsa": "^1.1", + "php-http/guzzle6-adapter": "^1.0", + "phpunit/phpunit": "~4.8" + }, + "suggest": { + "guzzlehttp/psr7": "PSR-7 message implementation that also provides common utility methods", + "php-http/curl-client": "cURL client for PHP-HTTP" + }, + "type": "library", + "autoload": { + "psr-0": { + "Mailgun": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Travis Swientek", + "email": "travis@mailgunhq.com" + } + ], + "description": "The Mailgun SDK provides methods for all API functions.", + "time": "2019-02-02T07:14:32+00:00" + }, { "name": "masterminds/html5", "version": "2.5.0", @@ -8461,6 +8778,472 @@ "homepage": "https://github.com/PhenX/php-font-lib", "time": "2017-02-11T10:58:43+00:00" }, + { + "name": "php-http/client-common", + "version": "1.9.1", + "source": { + "type": "git", + "url": "https://github.com/php-http/client-common.git", + "reference": "0e156a12cc3e46f590c73bf57592a2252fc3dc48" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/client-common/zipball/0e156a12cc3e46f590c73bf57592a2252fc3dc48", + "reference": "0e156a12cc3e46f590c73bf57592a2252fc3dc48", + "shasum": "" + }, + "require": { + "php": "^5.4 || ^7.0", + "php-http/httplug": "^1.1", + "php-http/message": "^1.6", + "php-http/message-factory": "^1.0", + "symfony/options-resolver": "^2.6 || ^3.0 || ^4.0" + }, + "require-dev": { + "guzzlehttp/psr7": "^1.4", + "phpspec/phpspec": "^2.5 || ^3.4 || ^4.2" + }, + "suggest": { + "php-http/cache-plugin": "PSR-6 Cache plugin", + "php-http/logger-plugin": "PSR-3 Logger plugin", + "php-http/stopwatch-plugin": "Symfony Stopwatch plugin" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.9.x-dev" + } + }, + "autoload": { + "psr-4": { + "Http\\Client\\Common\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "Common HTTP Client implementations and tools for HTTPlug", + "homepage": "http://httplug.io", + "keywords": [ + "client", + "common", + "http", + "httplug" + ], + "time": "2019-02-02T07:03:15+00:00" + }, + { + "name": "php-http/curl-client", + "version": "v1.7.1", + "source": { + "type": "git", + "url": "https://github.com/php-http/curl-client.git", + "reference": "6341a93d00e5d953fc868a3928b5167e6513f2b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/curl-client/zipball/6341a93d00e5d953fc868a3928b5167e6513f2b6", + "reference": "6341a93d00e5d953fc868a3928b5167e6513f2b6", + "shasum": "" + }, + "require": { + "ext-curl": "*", + "php": "^5.5 || ^7.0", + "php-http/discovery": "^1.0", + "php-http/httplug": "^1.0", + "php-http/message": "^1.2", + "php-http/message-factory": "^1.0.2" + }, + "provide": { + "php-http/async-client-implementation": "1.0", + "php-http/client-implementation": "1.0" + }, + "require-dev": { + "guzzlehttp/psr7": "^1.0", + "php-http/client-integration-tests": "^0.6", + "phpunit/phpunit": "^4.8.27", + "zendframework/zend-diactoros": "^1.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Http\\Client\\Curl\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Михаил Красильников", + "email": "m.krasilnikov@yandex.ru" + } + ], + "description": "cURL client for PHP-HTTP", + "homepage": "http://php-http.org", + "keywords": [ + "curl", + "http" + ], + "time": "2018-03-26T19:21:48+00:00" + }, + { + "name": "php-http/discovery", + "version": "1.6.0", + "source": { + "type": "git", + "url": "https://github.com/php-http/discovery.git", + "reference": "02b7ea21eafa0757af04140890a67d8ed45f83b2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/discovery/zipball/02b7ea21eafa0757af04140890a67d8ed45f83b2", + "reference": "02b7ea21eafa0757af04140890a67d8ed45f83b2", + "shasum": "" + }, + "require": { + "php": "^5.5 || ^7.0" + }, + "conflict": { + "nyholm/psr7": "<1.0" + }, + "require-dev": { + "php-http/httplug": "^1.0 || ^2.0", + "php-http/message-factory": "^1.0", + "phpspec/phpspec": "^2.4", + "puli/composer-plugin": "1.0.0-beta10" + }, + "suggest": { + "php-http/message": "Allow to use Guzzle, Diactoros or Slim Framework factories", + "puli/composer-plugin": "Sets up Puli which is recommended for Discovery to work. Check http://docs.php-http.org/en/latest/discovery.html for more details." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.5-dev" + } + }, + "autoload": { + "psr-4": { + "Http\\Discovery\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "Finds installed HTTPlug implementations and PSR-7 message factories", + "homepage": "http://php-http.org", + "keywords": [ + "adapter", + "client", + "discovery", + "factory", + "http", + "message", + "psr7" + ], + "time": "2019-01-23T12:41:22+00:00" + }, + { + "name": "php-http/httplug", + "version": "v1.1.0", + "source": { + "type": "git", + "url": "https://github.com/php-http/httplug.git", + "reference": "1c6381726c18579c4ca2ef1ec1498fdae8bdf018" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/httplug/zipball/1c6381726c18579c4ca2ef1ec1498fdae8bdf018", + "reference": "1c6381726c18579c4ca2ef1ec1498fdae8bdf018", + "shasum": "" + }, + "require": { + "php": ">=5.4", + "php-http/promise": "^1.0", + "psr/http-message": "^1.0" + }, + "require-dev": { + "henrikbjorn/phpspec-code-coverage": "^1.0", + "phpspec/phpspec": "^2.4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Eric GELOEN", + "email": "geloen.eric@gmail.com" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "HTTPlug, the HTTP client abstraction for PHP", + "homepage": "http://httplug.io", + "keywords": [ + "client", + "http" + ], + "time": "2016-08-31T08:30:17+00:00" + }, + { + "name": "php-http/message", + "version": "1.7.2", + "source": { + "type": "git", + "url": "https://github.com/php-http/message.git", + "reference": "b159ffe570dffd335e22ef0b91a946eacb182fa1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/message/zipball/b159ffe570dffd335e22ef0b91a946eacb182fa1", + "reference": "b159ffe570dffd335e22ef0b91a946eacb182fa1", + "shasum": "" + }, + "require": { + "clue/stream-filter": "^1.4", + "php": "^5.4 || ^7.0", + "php-http/message-factory": "^1.0.2", + "psr/http-message": "^1.0" + }, + "provide": { + "php-http/message-factory-implementation": "1.0" + }, + "require-dev": { + "akeneo/phpspec-skip-example-extension": "^1.0", + "coduo/phpspec-data-provider-extension": "^1.0", + "ext-zlib": "*", + "guzzlehttp/psr7": "^1.0", + "henrikbjorn/phpspec-code-coverage": "^1.0", + "phpspec/phpspec": "^2.4", + "slim/slim": "^3.0", + "zendframework/zend-diactoros": "^1.0" + }, + "suggest": { + "ext-zlib": "Used with compressor/decompressor streams", + "guzzlehttp/psr7": "Used with Guzzle PSR-7 Factories", + "slim/slim": "Used with Slim Framework PSR-7 implementation", + "zendframework/zend-diactoros": "Used with Diactoros Factories" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.6-dev" + } + }, + "autoload": { + "psr-4": { + "Http\\Message\\": "src/" + }, + "files": [ + "src/filters.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "HTTP Message related tools", + "homepage": "http://php-http.org", + "keywords": [ + "http", + "message", + "psr-7" + ], + "time": "2018-11-01T09:32:41+00:00" + }, + { + "name": "php-http/message-factory", + "version": "v1.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-http/message-factory.git", + "reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/message-factory/zipball/a478cb11f66a6ac48d8954216cfed9aa06a501a1", + "reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1", + "shasum": "" + }, + "require": { + "php": ">=5.4", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "psr-4": { + "Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "Factory interfaces for PSR-7 HTTP Message", + "homepage": "http://php-http.org", + "keywords": [ + "factory", + "http", + "message", + "stream", + "uri" + ], + "time": "2015-12-19T14:08:53+00:00" + }, + { + "name": "php-http/multipart-stream-builder", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-http/multipart-stream-builder.git", + "reference": "1fa3c623fc813a43b39494b2a1612174e36e0fb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/multipart-stream-builder/zipball/1fa3c623fc813a43b39494b2a1612174e36e0fb0", + "reference": "1fa3c623fc813a43b39494b2a1612174e36e0fb0", + "shasum": "" + }, + "require": { + "php": "^5.5 || ^7.0", + "php-http/discovery": "^1.0", + "php-http/message-factory": "^1.0.2", + "psr/http-message": "^1.0" + }, + "require-dev": { + "php-http/message": "^1.5", + "phpunit/phpunit": "^4.8 || ^5.4", + "zendframework/zend-diactoros": "^1.3.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "0.3-dev" + } + }, + "autoload": { + "psr-4": { + "Http\\Message\\MultipartStream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com" + } + ], + "description": "A builder class that help you create a multipart stream", + "homepage": "http://php-http.org", + "keywords": [ + "factory", + "http", + "message", + "multipart stream", + "stream" + ], + "time": "2017-05-21T17:45:25+00:00" + }, + { + "name": "php-http/promise", + "version": "v1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-http/promise.git", + "reference": "dc494cdc9d7160b9a09bd5573272195242ce7980" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/promise/zipball/dc494cdc9d7160b9a09bd5573272195242ce7980", + "reference": "dc494cdc9d7160b9a09bd5573272195242ce7980", + "shasum": "" + }, + "require-dev": { + "henrikbjorn/phpspec-code-coverage": "^1.0", + "phpspec/phpspec": "^2.4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "Http\\Promise\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + }, + { + "name": "Joel Wurtz", + "email": "joel.wurtz@gmail.com" + } + ], + "description": "Promise used for asynchronous HTTP requests", + "homepage": "http://httplug.io", + "keywords": [ + "promise" + ], + "time": "2016-01-26T13:27:02+00:00" + }, { "name": "psr/container", "version": "1.0.0", @@ -9608,6 +10391,60 @@ "homepage": "https://symfony.com", "time": "2019-02-03T12:22:50+00:00" }, + { + "name": "symfony/options-resolver", + "version": "v3.4.22", + "source": { + "type": "git", + "url": "https://github.com/symfony/options-resolver.git", + "reference": "0f1cbaee6b356e72c0e025f9a4e9d76a25bf4793" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/0f1cbaee6b356e72c0e025f9a4e9d76a25bf4793", + "reference": "0f1cbaee6b356e72c0e025f9a4e9d76a25bf4793", + "shasum": "" + }, + "require": { + "php": "^5.5.9|>=7.0.8" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.4-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\OptionsResolver\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony OptionsResolver Component", + "homepage": "https://symfony.com", + "keywords": [ + "config", + "configuration", + "options" + ], + "time": "2019-01-16T09:39:14+00:00" + }, { "name": "symfony/polyfill-ctype", "version": "v1.10.0", @@ -13159,9 +13996,12 @@ "minimum-stability": "dev", "stability-flags": { "drupal/computed_field": 10, + "drupal/mailgun": 20, "drupal/migrate_plus": 20, "drupal/migrate_tools": 20, + "drupal/mimemail": 20, "drupal/select_translation": 20, + "drupal/simplenews": 20, "drupal/telephone_formatter": 10, "drupal/views_conditional": 20, "drupal/advanced_text_formatter": 10, diff --git a/config/sync/core.entity_form_display.node.simplenews_issue.default.yml b/config/sync/core.entity_form_display.node.simplenews_issue.default.yml new file mode 100644 index 0000000..8755fa5 --- /dev/null +++ b/config/sync/core.entity_form_display.node.simplenews_issue.default.yml @@ -0,0 +1,96 @@ +uuid: 24e1d1da-42d9-439a-8897-6003b48d8c4e +langcode: en +status: true +dependencies: + config: + - field.field.node.simplenews_issue.body + - field.field.node.simplenews_issue.simplenews_issue + - node.type.simplenews_issue + module: + - path + - text +_core: + default_config_hash: WqeUSrMFjkfE6sD1OFP-91spC9kIXK8gtJ_qXf4bKDg +id: node.simplenews_issue.default +targetEntityType: node +bundle: simplenews_issue +mode: default +content: + body: + type: text_textarea_with_summary + weight: 2 + settings: + rows: 9 + summary_rows: 3 + placeholder: '' + third_party_settings: { } + region: content + created: + type: datetime_timestamp + weight: 10 + settings: { } + third_party_settings: { } + region: content + langcode: + type: language_select + weight: 2 + region: content + settings: + include_locked: true + third_party_settings: { } + path: + type: path + weight: 30 + region: content + settings: { } + third_party_settings: { } + promote: + type: boolean_checkbox + settings: + display_label: true + weight: 15 + third_party_settings: { } + region: content + simplenews_issue: + type: options_select + weight: 3 + settings: { } + third_party_settings: { } + region: content + status: + type: boolean_checkbox + settings: + display_label: true + weight: 120 + region: content + third_party_settings: { } + sticky: + type: boolean_checkbox + settings: + display_label: true + weight: 16 + third_party_settings: { } + region: content + title: + type: string_textfield + weight: 0 + settings: + size: 60 + placeholder: '' + third_party_settings: { } + region: content + uid: + type: entity_reference_autocomplete + weight: 5 + settings: + match_operator: CONTAINS + size: 60 + placeholder: '' + third_party_settings: { } + region: content + url_redirects: + weight: 50 + settings: { } + third_party_settings: { } + region: content +hidden: { } diff --git a/config/sync/core.entity_form_display.simplenews_subscriber.simplenews_subscriber.account.yml b/config/sync/core.entity_form_display.simplenews_subscriber.simplenews_subscriber.account.yml new file mode 100644 index 0000000..471a566 --- /dev/null +++ b/config/sync/core.entity_form_display.simplenews_subscriber.simplenews_subscriber.account.yml @@ -0,0 +1,25 @@ +uuid: 69018b12-11c1-4af9-8c54-8d53d7ca678a +langcode: und +status: true +dependencies: + config: + - core.entity_form_mode.simplenews_subscriber.account + - field.field.simplenews_subscriber.simplenews_subscriber.subscriptions + module: + - simplenews +_core: + default_config_hash: wsSwexy6Zc4ZKCF3dNzcg9vwvZeAsOKhe-WpASvCLIs +id: simplenews_subscriber.simplenews_subscriber.account +targetEntityType: simplenews_subscriber +bundle: simplenews_subscriber +mode: account +content: + subscriptions: + type: simplenews_subscription_select + weight: 0 + settings: { } + third_party_settings: { } + region: content +hidden: + mail: true + uid: true diff --git a/config/sync/core.entity_form_display.simplenews_subscriber.simplenews_subscriber.default.yml b/config/sync/core.entity_form_display.simplenews_subscriber.simplenews_subscriber.default.yml new file mode 100644 index 0000000..dd5c9c1 --- /dev/null +++ b/config/sync/core.entity_form_display.simplenews_subscriber.simplenews_subscriber.default.yml @@ -0,0 +1,30 @@ +uuid: 68b2586e-6b2e-4d18-94e4-3a7844c5f12b +langcode: en +status: true +dependencies: + config: + - field.field.simplenews_subscriber.simplenews_subscriber.subscriptions + module: + - simplenews +_core: + default_config_hash: pxNnkOchZljVErGC7uuVjmPpbp0Wy2CiK-pllIxNLK0 +id: simplenews_subscriber.simplenews_subscriber.default +targetEntityType: simplenews_subscriber +bundle: simplenews_subscriber +mode: default +content: + mail: + type: email_default + weight: 5 + settings: + placeholder: '' + third_party_settings: { } + region: content + subscriptions: + type: simplenews_subscription_select + weight: 0 + settings: { } + third_party_settings: { } + region: content +hidden: + uid: true diff --git a/config/sync/core.entity_form_mode.simplenews_subscriber.account.yml b/config/sync/core.entity_form_mode.simplenews_subscriber.account.yml new file mode 100644 index 0000000..4a15bde --- /dev/null +++ b/config/sync/core.entity_form_mode.simplenews_subscriber.account.yml @@ -0,0 +1,12 @@ +uuid: 92fa8f62-b5f9-47ce-8419-ccb809633941 +langcode: en +status: true +dependencies: + module: + - simplenews +_core: + default_config_hash: 3Ly1xMx90SxhhhBmZjDhcBCQ4kyR4u7tS5vLgA84B2M +id: simplenews_subscriber.account +label: Account +targetEntityType: simplenews_subscriber +cache: true diff --git a/config/sync/core.entity_form_mode.simplenews_subscriber.block.yml b/config/sync/core.entity_form_mode.simplenews_subscriber.block.yml new file mode 100644 index 0000000..8b13fdc --- /dev/null +++ b/config/sync/core.entity_form_mode.simplenews_subscriber.block.yml @@ -0,0 +1,12 @@ +uuid: 92b22a9b-0f91-40dd-8ad5-e69f2b7d03a0 +langcode: en +status: true +dependencies: + module: + - simplenews +_core: + default_config_hash: 7EIO8InzdeUlS1NCs5hq23QRzWmqAKGjeSqd3hQP62s +id: simplenews_subscriber.block +label: Block +targetEntityType: simplenews_subscriber +cache: true diff --git a/config/sync/core.entity_form_mode.simplenews_subscriber.page.yml b/config/sync/core.entity_form_mode.simplenews_subscriber.page.yml new file mode 100644 index 0000000..76691c6 --- /dev/null +++ b/config/sync/core.entity_form_mode.simplenews_subscriber.page.yml @@ -0,0 +1,12 @@ +uuid: 6308a7e2-7d22-4601-b46f-6fd252d67973 +langcode: en +status: true +dependencies: + module: + - simplenews +_core: + default_config_hash: ZNiTMgBURMLUyp3dwxIn7Zz_hREzPRpyF2M-Dm3e1BI +id: simplenews_subscriber.page +label: Page +targetEntityType: simplenews_subscriber +cache: true diff --git a/config/sync/core.entity_view_display.node.simplenews_issue.default.yml b/config/sync/core.entity_view_display.node.simplenews_issue.default.yml new file mode 100644 index 0000000..d1239d6 --- /dev/null +++ b/config/sync/core.entity_view_display.node.simplenews_issue.default.yml @@ -0,0 +1,33 @@ +uuid: 54e1bd31-29e3-40b7-a78d-389ad2e89184 +langcode: en +status: true +dependencies: + config: + - field.field.node.simplenews_issue.body + - field.field.node.simplenews_issue.simplenews_issue + - node.type.simplenews_issue + module: + - text + - user +_core: + default_config_hash: 2uFXyR4335F9Qrls0Lx2QTobeBiF6FN1PeDjJEv47Yw +id: node.simplenews_issue.default +targetEntityType: node +bundle: simplenews_issue +mode: default +content: + body: + type: text_default + weight: 0 + label: hidden + settings: { } + third_party_settings: { } + region: content + links: + weight: 1 + settings: { } + third_party_settings: { } + region: content +hidden: + langcode: true + simplenews_issue: true diff --git a/config/sync/core.entity_view_display.node.simplenews_issue.email_html.yml b/config/sync/core.entity_view_display.node.simplenews_issue.email_html.yml new file mode 100644 index 0000000..7d106da --- /dev/null +++ b/config/sync/core.entity_view_display.node.simplenews_issue.email_html.yml @@ -0,0 +1,30 @@ +uuid: 595d84b8-78d5-46b1-855d-93f466a736b9 +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.node.email_html + - field.field.node.simplenews_issue.body + - field.field.node.simplenews_issue.simplenews_issue + - node.type.simplenews_issue + module: + - text + - user +_core: + default_config_hash: k7huXut68pdao0qGHWeETfwtQudI0SZ260TyVyGTOFg +id: node.simplenews_issue.email_html +targetEntityType: node +bundle: simplenews_issue +mode: email_html +content: + body: + type: text_default + weight: 0 + settings: { } + third_party_settings: { } + label: hidden + region: content +hidden: + langcode: true + links: true + simplenews_issue: true diff --git a/config/sync/core.entity_view_display.node.simplenews_issue.email_plain.yml b/config/sync/core.entity_view_display.node.simplenews_issue.email_plain.yml new file mode 100644 index 0000000..c2aa1ec --- /dev/null +++ b/config/sync/core.entity_view_display.node.simplenews_issue.email_plain.yml @@ -0,0 +1,30 @@ +uuid: a836de9a-6d1f-4ed7-8600-fbc2b09286c1 +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.node.email_plain + - field.field.node.simplenews_issue.body + - field.field.node.simplenews_issue.simplenews_issue + - node.type.simplenews_issue + module: + - text + - user +_core: + default_config_hash: yLPMU-4Mw-Wl011PDZNQMHzzeilyDjLSQZQ4LLQG08k +id: node.simplenews_issue.email_plain +targetEntityType: node +bundle: simplenews_issue +mode: email_plain +content: + body: + type: text_default + weight: 0 + settings: { } + third_party_settings: { } + label: hidden + region: content +hidden: + langcode: true + links: true + simplenews_issue: true diff --git a/config/sync/core.entity_view_display.node.simplenews_issue.email_textalt.yml b/config/sync/core.entity_view_display.node.simplenews_issue.email_textalt.yml new file mode 100644 index 0000000..c209d8b --- /dev/null +++ b/config/sync/core.entity_view_display.node.simplenews_issue.email_textalt.yml @@ -0,0 +1,30 @@ +uuid: 6e5a75a4-cf9b-4b8c-bf00-dbde3b42dcb2 +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.node.email_textalt + - field.field.node.simplenews_issue.body + - field.field.node.simplenews_issue.simplenews_issue + - node.type.simplenews_issue + module: + - text + - user +_core: + default_config_hash: nbS6YErkrJfcf1Lgbd-MEFDZvatGhf9ZYEdg7_phgRU +id: node.simplenews_issue.email_textalt +targetEntityType: node +bundle: simplenews_issue +mode: email_textalt +content: + body: + type: text_default + weight: 0 + settings: { } + third_party_settings: { } + label: hidden + region: content +hidden: + langcode: true + links: true + simplenews_issue: true diff --git a/config/sync/core.entity_view_display.node.simplenews_issue.teaser.yml b/config/sync/core.entity_view_display.node.simplenews_issue.teaser.yml new file mode 100644 index 0000000..90b4e56 --- /dev/null +++ b/config/sync/core.entity_view_display.node.simplenews_issue.teaser.yml @@ -0,0 +1,31 @@ +uuid: 1754e700-7290-485d-a404-4a052ef18ae2 +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.node.teaser + - field.field.node.simplenews_issue.body + - field.field.node.simplenews_issue.simplenews_issue + - node.type.simplenews_issue + module: + - text + - user +_core: + default_config_hash: n2xAKuCwCLXGUcR4BjVa08OIbG6UDdyIQFjq_S91h50 +id: node.simplenews_issue.teaser +targetEntityType: node +bundle: simplenews_issue +mode: teaser +content: + body: + type: text_trimmed + weight: 0 + settings: + trim_length: 600 + third_party_settings: { } + label: hidden + region: content +hidden: + langcode: true + links: true + simplenews_issue: true diff --git a/config/sync/core.entity_view_mode.node.email_html.yml b/config/sync/core.entity_view_mode.node.email_html.yml new file mode 100644 index 0000000..6c6cf64 --- /dev/null +++ b/config/sync/core.entity_view_mode.node.email_html.yml @@ -0,0 +1,15 @@ +uuid: 6ee7e247-a08b-44e2-afad-8d29d6d383b5 +langcode: en +status: false +dependencies: + enforced: + module: + - simplenews + module: + - node +_core: + default_config_hash: iQNOEsNlbBFbVMOoSwtfUd8YC0XpRLzTjXv48HYfxwE +id: node.email_html +label: 'Email: HTML' +targetEntityType: node +cache: true diff --git a/config/sync/core.entity_view_mode.node.email_plain.yml b/config/sync/core.entity_view_mode.node.email_plain.yml new file mode 100644 index 0000000..fb53438 --- /dev/null +++ b/config/sync/core.entity_view_mode.node.email_plain.yml @@ -0,0 +1,15 @@ +uuid: f0862c18-2c6b-499a-8515-76610cb5a178 +langcode: en +status: false +dependencies: + enforced: + module: + - simplenews + module: + - node +_core: + default_config_hash: rCDGCl6pMFu6zZuErLQggKvmawfFDysFcZNCDL72U4M +id: node.email_plain +label: 'Email: Plain' +targetEntityType: node +cache: true diff --git a/config/sync/core.entity_view_mode.node.email_textalt.yml b/config/sync/core.entity_view_mode.node.email_textalt.yml new file mode 100644 index 0000000..ae97152 --- /dev/null +++ b/config/sync/core.entity_view_mode.node.email_textalt.yml @@ -0,0 +1,15 @@ +uuid: 8f2bb66b-0654-45b5-b4d7-1f44976cbb9f +langcode: en +status: false +dependencies: + enforced: + module: + - simplenews + module: + - node +_core: + default_config_hash: 3VUPDEGmxWyAGCr0U_RTGoPS3xmNiOj3NU0wy4vxgwI +id: node.email_textalt +label: 'Email: HTML text alternative' +targetEntityType: node +cache: true diff --git a/config/sync/core.extension.yml b/config/sync/core.extension.yml index 4232539..78f9922 100644 --- a/config/sync/core.extension.yml +++ b/config/sync/core.extension.yml @@ -57,6 +57,7 @@ module: link_attributes: 0 linkit: 0 locale: 0 + mailgun: 0 maillog: 0 mailsystem: 0 materio_id: 0 @@ -71,6 +72,7 @@ module: migrate_drupal_multilingual: 0 migrate_plus: 0 migrate_tools: 0 + mimemail: 0 node: 0 options: 0 page_cache: 0 @@ -86,6 +88,7 @@ module: search_api: 0 search_api_db: 0 select_translation: 0 + simplenews: 0 smart_trim: 0 smtp: 0 synonyms: 0 diff --git a/config/sync/field.field.node.simplenews_issue.body.yml b/config/sync/field.field.node.simplenews_issue.body.yml new file mode 100644 index 0000000..c6d3535 --- /dev/null +++ b/config/sync/field.field.node.simplenews_issue.body.yml @@ -0,0 +1,24 @@ +uuid: 61265270-ee6d-4f47-82ea-516f11bf4103 +langcode: en +status: true +dependencies: + config: + - field.storage.node.body + - node.type.simplenews_issue + module: + - text +_core: + default_config_hash: WmXguLYedqjDlEM-2yau5wACNAMvrbCVHXQUn4GQEDA +id: node.simplenews_issue.body +field_name: body +entity_type: node +bundle: simplenews_issue +label: Body +description: '' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: + display_summary: false +field_type: text_with_summary diff --git a/config/sync/field.field.node.simplenews_issue.simplenews_issue.yml b/config/sync/field.field.node.simplenews_issue.simplenews_issue.yml new file mode 100644 index 0000000..66e99a5 --- /dev/null +++ b/config/sync/field.field.node.simplenews_issue.simplenews_issue.yml @@ -0,0 +1,33 @@ +uuid: 303631d0-6080-4189-aa26-e18a1aabc706 +langcode: en +status: true +dependencies: + config: + - field.storage.node.simplenews_issue + - node.type.simplenews_issue + module: + - simplenews +_core: + default_config_hash: 7I8TFo87YOgsZYmlZeFxbC-uebIhSy0RGoSxIem8zUQ +id: node.simplenews_issue.simplenews_issue +field_name: simplenews_issue +entity_type: node +bundle: simplenews_issue +label: Newsletter +description: '' +required: true +translatable: true +default_value: + - + target_id: default + handler: simplenews_all + handler_settings: { } + status: 0 + sent_count: 0 + subscribers: 0 +default_value_callback: '' +settings: + handler: 'default:simplenews_newsletter' + handler_settings: + target_bundles: null +field_type: simplenews_issue diff --git a/config/sync/field.field.simplenews_subscriber.simplenews_subscriber.subscriptions.yml b/config/sync/field.field.simplenews_subscriber.simplenews_subscriber.subscriptions.yml new file mode 100644 index 0000000..9a40bce --- /dev/null +++ b/config/sync/field.field.simplenews_subscriber.simplenews_subscriber.subscriptions.yml @@ -0,0 +1,25 @@ +uuid: 5c76fa02-bca2-4e1a-b7a1-ee0250f863cb +langcode: en +status: true +dependencies: + config: + - field.storage.simplenews_subscriber.subscriptions + module: + - simplenews +_core: + default_config_hash: '-FGoXJQMTtfhnYhAdYmmB815lFLwEn09sI0nyn2EbKM' +id: simplenews_subscriber.simplenews_subscriber.subscriptions +field_name: subscriptions +entity_type: simplenews_subscriber +bundle: simplenews_subscriber +label: Subscriptions +description: '' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: + handler: 'default:simplenews_newsletter' + handler_settings: + target_bundles: null +field_type: simplenews_subscription diff --git a/config/sync/field.storage.node.simplenews_issue.yml b/config/sync/field.storage.node.simplenews_issue.yml new file mode 100644 index 0000000..fd5a06b --- /dev/null +++ b/config/sync/field.storage.node.simplenews_issue.yml @@ -0,0 +1,22 @@ +uuid: 9a1c075d-72f0-456f-a1fa-501acb90db95 +langcode: und +status: true +dependencies: + module: + - node + - simplenews +_core: + default_config_hash: WH-ddyUo4oWNnk6HaulK2RLdPTM4CV0xBZSj5HFqAnQ +id: node.simplenews_issue +field_name: simplenews_issue +entity_type: node +type: simplenews_issue +settings: + target_type: simplenews_newsletter +module: simplenews +locked: false +cardinality: 1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/field.storage.simplenews_subscriber.subscriptions.yml b/config/sync/field.storage.simplenews_subscriber.subscriptions.yml new file mode 100644 index 0000000..20b3e93 --- /dev/null +++ b/config/sync/field.storage.simplenews_subscriber.subscriptions.yml @@ -0,0 +1,21 @@ +uuid: 9692ac0e-4f66-4374-b221-6baaf0925877 +langcode: und +status: true +dependencies: + module: + - simplenews +_core: + default_config_hash: wPBNO4_O9cizdnYp2mpq2Dd3O163g-2v5v6_yazR4MA +id: simplenews_subscriber.subscriptions +field_name: subscriptions +entity_type: simplenews_subscriber +type: simplenews_subscription +settings: + target_type: simplenews_newsletter +module: simplenews +locked: false +cardinality: -1 +translatable: true +indexes: { } +persist_with_no_fields: false +custom_storage: false diff --git a/config/sync/language/fr/views.view.simplenews_newsletters.yml b/config/sync/language/fr/views.view.simplenews_newsletters.yml new file mode 100644 index 0000000..a6c53fa --- /dev/null +++ b/config/sync/language/fr/views.view.simplenews_newsletters.yml @@ -0,0 +1,24 @@ +display: + default: + display_title: Maître + display_options: + exposed_form: + options: + submit_button: Appliquer + reset_button_label: Réinitialiser + exposed_sorts_label: 'Trier par' + sort_asc_label: Asc + sort_desc_label: Desc + pager: + options: + expose: + items_per_page_label: 'Éléments par page' + items_per_page_options_all_label: '- Tout -' + offset_label: Décalage + fields: + node_bulk_form: + action_title: 'Pour cette sélection' + status: + label: Publié + created: + label: 'Mis à jour' diff --git a/config/sync/language/fr/views.view.simplenews_subscribers.yml b/config/sync/language/fr/views.view.simplenews_subscribers.yml new file mode 100644 index 0000000..ca9d1cf --- /dev/null +++ b/config/sync/language/fr/views.view.simplenews_subscribers.yml @@ -0,0 +1,33 @@ +display: + default: + display_title: Maître + display_options: + exposed_form: + options: + submit_button: Appliquer + reset_button_label: Réinitialiser + exposed_sorts_label: 'Trier par' + sort_asc_label: Asc + sort_desc_label: Desc + pager: + options: + expose: + items_per_page_label: 'Éléments par page' + items_per_page_options_all_label: '- Tout -' + offset_label: Décalage + fields: + user_name: + label: 'Nom d''utilisateur' + status: + label: Actif + created: + label: Créé(e) + operations: + label: Actions + filters: + status: + expose: + label: Actif + subscriptions_status: + expose: + label: Etat diff --git a/config/sync/mailgun.settings.yml b/config/sync/mailgun.settings.yml new file mode 100644 index 0000000..5541969 --- /dev/null +++ b/config/sync/mailgun.settings.yml @@ -0,0 +1,13 @@ +api_key: '' +working_domain: _sender +debug_mode: false +test_mode: false +tracking_opens: '' +tracking_clicks: '' +tracking_exception: 'user:password_reset' +format_filter: plain_text +use_queue: false +use_theme: false +tagging_mailkey: true +_core: + default_config_hash: bMOl3jD7ZuzZMuaUYzyqadr56G486ldo28NYIkK_54g diff --git a/config/sync/migrate_plus.migration.d7_allpublicfiles.yml b/config/sync/migrate_plus.migration.d7_allpublicfiles.yml index e4e2102..33119de 100644 --- a/config/sync/migrate_plus.migration.d7_allpublicfiles.yml +++ b/config/sync/migrate_plus.migration.d7_allpublicfiles.yml @@ -1,4 +1,4 @@ -uuid: e549aecb-1717-48fd-84bf-9583f4e6f6eb +uuid: 3430da79-cc12-48fc-91f1-acef3ea235d6 langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration.d7_node_materiau.yml b/config/sync/migrate_plus.migration.d7_node_materiau.yml index 421b3f1..d9b5816 100644 --- a/config/sync/migrate_plus.migration.d7_node_materiau.yml +++ b/config/sync/migrate_plus.migration.d7_node_materiau.yml @@ -1,4 +1,4 @@ -uuid: 4c86eb85-1a5f-4e66-9bb3-85fab7ecf505 +uuid: 24a0d73a-bb5d-472d-9f45-3f9806834ece langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration.d7_node_materiau_i18n.yml b/config/sync/migrate_plus.migration.d7_node_materiau_i18n.yml index 6e32338..3aca787 100644 --- a/config/sync/migrate_plus.migration.d7_node_materiau_i18n.yml +++ b/config/sync/migrate_plus.migration.d7_node_materiau_i18n.yml @@ -1,4 +1,4 @@ -uuid: e2b8d38d-1ae4-4812-b1f2-5b8dc0d8d7df +uuid: 103478ec-9372-40a4-bd28-67f6b327776d langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration.d7_simplenews_nodes.yml b/config/sync/migrate_plus.migration.d7_simplenews_nodes.yml new file mode 100644 index 0000000..477f261 --- /dev/null +++ b/config/sync/migrate_plus.migration.d7_simplenews_nodes.yml @@ -0,0 +1,79 @@ +uuid: d2ee3a75-1c75-451b-8ee2-ba45ab6834da +langcode: en +status: true +dependencies: { } +_core: + default_config_hash: V4b8Ctj8B8jqXWdO1pnAIWyZxa_cdp-tjxU-swY0jvE +id: d7_simplenews_nodes +class: null +field_plugin_method: null +cck_plugin_method: null +migration_tags: + - 'Drupal 7' + - Content + - Materio +migration_group: d7_materio +label: 'Simplenews newsletters nodes' +source: + plugin: d7_simplenews_nodes + node_type: simplenews + high_water_property: + name: changed + alias: 'n' +process: + type: + plugin: default_value + default_value: simplenews_issue + title: title + created: created + changed: changed + uid: + plugin: migration_lookup + migration: d7_users + source: uid + field_migration: + plugin: default_value + default_value: migration_imported + body: + plugin: iterator + source: body + process: + value: value + format: + plugin: default_value + default_value: wysiwyg + langcode: language + field_workflow: + - + plugin: default_value + source: workflow + default_value: 2 + - + plugin: static_map + default_value: 2 + map: + 1: workflow_creation + 2: workflow_hidden + 3: workflow_visible + 4: workflow_imported + 5: workflow_edited + simplenews_issue: + - + plugin: extract + source: field_simplenews_term + index: + - 0 + - tid + - + plugin: static_map + map: + 6585: test + 6374: ze_daily_materio_ + 6274: materio_newsletter + 7881: companies +destination: + plugin: 'entity:node' +migration_dependencies: + required: + - d7_allpublicfiles + - d7_users diff --git a/config/sync/migrate_plus.migration.d7_taxonomy_term_company.yml b/config/sync/migrate_plus.migration.d7_taxonomy_term_company.yml index 40dc805..1b63755 100644 --- a/config/sync/migrate_plus.migration.d7_taxonomy_term_company.yml +++ b/config/sync/migrate_plus.migration.d7_taxonomy_term_company.yml @@ -1,4 +1,4 @@ -uuid: 2a02b09a-204e-4e04-bbdd-3f10f47856a0 +uuid: fb66841a-8bd9-410b-a61d-eba0efbe2589 langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration.d7_taxonomy_term_showroom.yml b/config/sync/migrate_plus.migration.d7_taxonomy_term_showroom.yml index 4307d0c..46bc461 100644 --- a/config/sync/migrate_plus.migration.d7_taxonomy_term_showroom.yml +++ b/config/sync/migrate_plus.migration.d7_taxonomy_term_showroom.yml @@ -1,4 +1,4 @@ -uuid: cb5f7d31-f610-4abd-a4b5-70c5e0db4e2c +uuid: e98881d9-6886-44cb-aa4c-448e7ab54427 langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration.d7_taxonomy_term_tags.yml b/config/sync/migrate_plus.migration.d7_taxonomy_term_tags.yml index d7d6ce8..22cb659 100644 --- a/config/sync/migrate_plus.migration.d7_taxonomy_term_tags.yml +++ b/config/sync/migrate_plus.migration.d7_taxonomy_term_tags.yml @@ -1,4 +1,4 @@ -uuid: 9dcbad73-6576-410f-a0aa-f9d23c94ce59 +uuid: 28abdd1f-09e5-449d-b7ca-6cfafab42011 langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration.d7_taxonomy_term_tags_i18n.yml b/config/sync/migrate_plus.migration.d7_taxonomy_term_tags_i18n.yml index 611ebe6..eea002c 100644 --- a/config/sync/migrate_plus.migration.d7_taxonomy_term_tags_i18n.yml +++ b/config/sync/migrate_plus.migration.d7_taxonomy_term_tags_i18n.yml @@ -1,4 +1,4 @@ -uuid: 16eb6c05-cf5c-4810-8eb8-e6e03433c0af +uuid: db84d816-e6ab-4f1d-9870-915a8e769cb9 langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration.d7_taxonomy_term_thesaurus.yml b/config/sync/migrate_plus.migration.d7_taxonomy_term_thesaurus.yml index 3371780..80b8d7f 100644 --- a/config/sync/migrate_plus.migration.d7_taxonomy_term_thesaurus.yml +++ b/config/sync/migrate_plus.migration.d7_taxonomy_term_thesaurus.yml @@ -1,4 +1,4 @@ -uuid: 56e57ba6-a3af-481c-b8f2-4e935acf1aae +uuid: 88ec814e-8ff4-40e1-92b6-5ce2f5652cfc langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration.d7_taxonomy_term_thesaurus_i18n.yml b/config/sync/migrate_plus.migration.d7_taxonomy_term_thesaurus_i18n.yml index 41b4e0f..67197da 100644 --- a/config/sync/migrate_plus.migration.d7_taxonomy_term_thesaurus_i18n.yml +++ b/config/sync/migrate_plus.migration.d7_taxonomy_term_thesaurus_i18n.yml @@ -1,4 +1,4 @@ -uuid: dc2dca54-3a82-4fb9-acb1-37976ab1c665 +uuid: 00905a42-742e-430d-bcdc-ce3f3ae5c526 langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration.d7_user_profile.yml b/config/sync/migrate_plus.migration.d7_user_profile.yml index a842827..60649e8 100644 --- a/config/sync/migrate_plus.migration.d7_user_profile.yml +++ b/config/sync/migrate_plus.migration.d7_user_profile.yml @@ -1,4 +1,4 @@ -uuid: 42034c67-180d-4220-a44e-9c5576e979b2 +uuid: 06e1a8cb-0843-4b5e-b771-f8faa87e23f3 langcode: en status: true dependencies: diff --git a/config/sync/migrate_plus.migration.d7_users.yml b/config/sync/migrate_plus.migration.d7_users.yml index 1466320..4d914fd 100644 --- a/config/sync/migrate_plus.migration.d7_users.yml +++ b/config/sync/migrate_plus.migration.d7_users.yml @@ -1,4 +1,4 @@ -uuid: f436e9b2-bb3c-4334-b7aa-bdf7c56d5591 +uuid: 338268b0-bcce-449b-91e2-778d2ae1b77c langcode: en status: true dependencies: { } diff --git a/config/sync/migrate_plus.migration_group.d7_materio.yml b/config/sync/migrate_plus.migration_group.d7_materio.yml index 107c005..8a566f8 100644 --- a/config/sync/migrate_plus.migration_group.d7_materio.yml +++ b/config/sync/migrate_plus.migration_group.d7_materio.yml @@ -1,4 +1,4 @@ -uuid: b9da768b-b306-4b04-b690-1630ea3b3d4f +uuid: 5b4b459f-6dc1-4dc6-a5be-784890476b1f langcode: en status: true dependencies: diff --git a/config/sync/mimemail.settings.yml b/config/sync/mimemail.settings.yml new file mode 100644 index 0000000..435626f --- /dev/null +++ b/config/sync/mimemail.settings.yml @@ -0,0 +1,14 @@ +format: full_html +name: '' +mail: '' +linkonly: false +textonly: false +sitestyle: true +simple_address: false +engine: mimemail +preserve_class: false +advanced: + incoming: false + key: '' +_core: + default_config_hash: 7mRdLbI-Rda0ePrw4IkNSJd8m_lTx7nLZnVfbNbyfwA diff --git a/config/sync/node.type.simplenews_issue.yml b/config/sync/node.type.simplenews_issue.yml new file mode 100644 index 0000000..ff47ce0 --- /dev/null +++ b/config/sync/node.type.simplenews_issue.yml @@ -0,0 +1,13 @@ +uuid: 91eb4bfa-68a0-4aef-b7dc-44370d549cc2 +langcode: en +status: true +dependencies: { } +_core: + default_config_hash: 3BiX0lHzQ8EyHRnO56OziilMZPNxJImXpSAQUTuALLU +name: 'Newsletter Issue' +type: simplenews_issue +description: 'Use Newsletter Issue for newsletters.' +help: '' +new_revision: false +preview_mode: 1 +display_submitted: false diff --git a/config/sync/simplenews.newsletter.companies.yml b/config/sync/simplenews.newsletter.companies.yml new file mode 100644 index 0000000..76d5284 --- /dev/null +++ b/config/sync/simplenews.newsletter.companies.yml @@ -0,0 +1,17 @@ +uuid: 3f1f8aa7-c8c9-4ad2-9cdd-1da4c7db06ac +langcode: en +status: true +dependencies: { } +name: Companies +id: companies +description: '' +format: html +priority: 3 +receipt: false +from_name: materiO’ +subject: '[node:title]' +from_address: info@materio.com +hyperlinks: true +new_account: none +opt_inout: double +weight: 0 diff --git a/config/sync/simplenews.newsletter.materio_newsletter.yml b/config/sync/simplenews.newsletter.materio_newsletter.yml new file mode 100644 index 0000000..f226e41 --- /dev/null +++ b/config/sync/simplenews.newsletter.materio_newsletter.yml @@ -0,0 +1,17 @@ +uuid: 3e63cf60-30a5-46aa-a43d-05e499decc72 +langcode: en +status: true +dependencies: { } +name: 'materiO’ newsletter' +id: materio_newsletter +description: '' +format: html +priority: 3 +receipt: false +from_name: materiO’ +subject: '[node:title]' +from_address: info@materio.com +hyperlinks: true +new_account: 'on' +opt_inout: double +weight: 0 diff --git a/config/sync/simplenews.newsletter.test.yml b/config/sync/simplenews.newsletter.test.yml new file mode 100644 index 0000000..eea26bb --- /dev/null +++ b/config/sync/simplenews.newsletter.test.yml @@ -0,0 +1,17 @@ +uuid: 71a8ff4a-a7e8-4809-b67a-03e7ae45719b +langcode: en +status: true +dependencies: { } +name: test +id: test +description: '' +format: html +priority: 3 +receipt: false +from_name: materiO’ +subject: '[[simplenews-newsletter:name]] [node:title]' +from_address: info@materio.com +hyperlinks: true +new_account: none +opt_inout: double +weight: 0 diff --git a/config/sync/simplenews.newsletter.ze_daily_materio_.yml b/config/sync/simplenews.newsletter.ze_daily_materio_.yml new file mode 100644 index 0000000..e15e4a6 --- /dev/null +++ b/config/sync/simplenews.newsletter.ze_daily_materio_.yml @@ -0,0 +1,17 @@ +uuid: e47899ca-0ae0-4479-982c-01a2db3de9e4 +langcode: en +status: true +dependencies: { } +name: 'Ze Daily materiO''' +id: ze_daily_materio_ +description: '' +format: html +priority: 3 +receipt: false +from_name: materiO’ +subject: '[node:title]' +from_address: info@materio.com +hyperlinks: true +new_account: 'on' +opt_inout: double +weight: 0 diff --git a/config/sync/simplenews.settings.yml b/config/sync/simplenews.settings.yml new file mode 100644 index 0000000..0bd331c --- /dev/null +++ b/config/sync/simplenews.settings.yml @@ -0,0 +1,34 @@ +hash_expiration: 86400 +newsletter: + format: html + priority: 3 + receipt: false + from_address: info@materio.com + from_name: materiO’ +subscriber: + sync_fields: true +subscription: + use_combined: multiple + confirm_subscribe_subject: 'Confirmation for [simplenews-newsletter:name] from [site:name]' + confirm_subscribe_unsubscribed: "We have received a request to subscribe [simplenews-subscriber:mail] to the [simplenews-newsletter:name] newsletter on [site:name] website at [site:url]. To confirm please use the link below. \n\n [simplenews-subscriber:subscribe-url]" + confirm_subscribe_subscribed: 'We have received a request to subscribe [simplenews-subscriber:mail] to the [simplenews-newsletter:name] newsletter on [site:name] website at [site:url]. However, this email is already subscribed to this newsletter. If you intended to unsubscribe please visit our site: [site:url]' + confirm_unsubscribe_subscribed: "We have received a request to remove the [simplenews-subscriber:mail] from the [simplenews-newsletter:name] mailing list on [site:name] website at [site:url]. To confirm please use the link below.\r\n\r\n[simplenews-subscriber:unsubscribe-url]" + confirm_unsubscribe_unsubscribed: 'We have received a request to remove the [simplenews-subscriber:mail] from the [simplenews-newsletter:name] mailing list on [site:name] website at [site:url]. However, this email is not subscribed to this mailing list. If you intended to subscribe please visit our site at [site:url]' + confirm_combined_subject: 'Confirmation for [site:name]' + confirm_combined_body: "We have received a request for the following subscription changes for [simplenews-subscriber:mail] at [site:url]:\r\n\r\n[changes-list]\r\n\r\nTo confirm please use the link below.\r\n\r\n[simplenews-subscriber:combined-url]" + confirm_combined_body_unchanged: "We have received a request for the following subscription changes for [simplenews-subscriber:mail] at [site:url]:\r\n\r\n[changes-list]\r\n\r\nNo confirmation necessary because all requested changes equal the current state." + confirm_combined_line_subscribe_unsubscribed: 'Subscribe to [simplenews-newsletter:name]' + confirm_combined_line_subscribe_subscribed: 'Already subscribed to [simplenews-newsletter:name]' + confirm_combined_line_unsubscribe_subscribed: 'Unsubscribe from [simplenews-newsletter:name]' + confirm_combined_line_unsubscribe_unsubscribed: 'Already unsubscribed from [simplenews-newsletter:name]' + confirm_subscribe_page: '' + confirm_unsubscribe_page: '' +mail: + use_cron: true + throttle: 20 + spool_progress_expiration: 3600 + spool_expire: 0 + debug: true + source_cache: null +_core: + default_config_hash: cy-hJPYCnfCsuUZA7VDoAwssKhRJCa8N88iJTaWiims diff --git a/config/sync/system.action.simplenews_send_action.yml b/config/sync/system.action.simplenews_send_action.yml new file mode 100644 index 0000000..600a79f --- /dev/null +++ b/config/sync/system.action.simplenews_send_action.yml @@ -0,0 +1,13 @@ +uuid: 5825f3da-5975-4825-82c0-ded153e77282 +langcode: en +status: true +dependencies: + module: + - simplenews +_core: + default_config_hash: _80qceRjNVCStX2wbyle-6zMazNn3VsvHpwLRV3Gr5M +id: simplenews_send_action +label: 'Send newsletter issue' +type: node +plugin: simplenews_send_action +configuration: { } diff --git a/config/sync/system.action.simplenews_stop_action.yml b/config/sync/system.action.simplenews_stop_action.yml new file mode 100644 index 0000000..1f7abeb --- /dev/null +++ b/config/sync/system.action.simplenews_stop_action.yml @@ -0,0 +1,13 @@ +uuid: 71c8ca70-6d66-4c50-9781-63c6e35a4d2f +langcode: en +status: true +dependencies: + module: + - simplenews +_core: + default_config_hash: 03Ao5qcJ1Dn0biP58cSBcKu_JNkpvt9n8tHLi5SToJ4 +id: simplenews_stop_action +label: 'Stop sending' +type: node +plugin: simplenews_stop_action +configuration: { } diff --git a/config/sync/system.mail.yml b/config/sync/system.mail.yml index 3f75abc..4330465 100644 --- a/config/sync/system.mail.yml +++ b/config/sync/system.mail.yml @@ -1,5 +1,6 @@ interface: default: maillog + mailgun: mailgun langcode: fr _core: default_config_hash: lCmomLfOMrVmswIaFN0SimRdg6H1_a0nU60SauWb2WA diff --git a/config/sync/ultimate_cron.job.simplenews_cron.yml b/config/sync/ultimate_cron.job.simplenews_cron.yml new file mode 100644 index 0000000..92e714e --- /dev/null +++ b/config/sync/ultimate_cron.job.simplenews_cron.yml @@ -0,0 +1,32 @@ +uuid: 0a714008-1181-44ac-ba76-8af1bac79f95 +langcode: en +status: true +dependencies: + module: + - simplenews +_core: + default_config_hash: S4R8gMB5KRRp4AeUvku-2qpcRuD0o_Lu8UgnSXEHyBw +title: 'Sends newsletters' +id: simplenews_cron +weight: 0 +module: simplenews +callback: simplenews_cron +scheduler: + id: simple + configuration: + rules: + - '*/5+@ * * * *' +launcher: + id: serial + configuration: + timeouts: + lock_timeout: 3600 + max_execution_time: 3600 + launcher: + max_threads: 1 +logger: + id: database + configuration: + method: '3' + expire: 1209600 + retain: 1000 diff --git a/config/sync/user.role.anonymous.yml b/config/sync/user.role.anonymous.yml index bce2563..4b38b0a 100644 --- a/config/sync/user.role.anonymous.yml +++ b/config/sync/user.role.anonymous.yml @@ -19,6 +19,7 @@ permissions: - 'create generique workflow_transition' - 'create migration workflow_transition' - 'create workflow workflow_transition' + - 'subscribe to newsletters' - 'use text format wysiwyg' - 'view published fil entities' - 'view search api pages' diff --git a/config/sync/user.role.authenticated.yml b/config/sync/user.role.authenticated.yml index b8f2a5b..29bd97d 100644 --- a/config/sync/user.role.authenticated.yml +++ b/config/sync/user.role.authenticated.yml @@ -25,6 +25,7 @@ permissions: - 'edit own composition entities' - 'edit own fil entities' - 'opt-in or out of matomo tracking' + - 'subscribe to newsletters' - 'use chutier' - 'use text format wysiwyg' - 'view own unpublished chutier entities' diff --git a/config/sync/views.view.simplenews_newsletters.yml b/config/sync/views.view.simplenews_newsletters.yml new file mode 100644 index 0000000..9e25538 --- /dev/null +++ b/config/sync/views.view.simplenews_newsletters.yml @@ -0,0 +1,623 @@ +uuid: 605ef472-e411-4460-a5fd-c3ca7081b8b9 +langcode: en +status: true +dependencies: + config: + - field.storage.node.simplenews_issue + module: + - node + - simplenews + - user +_core: + default_config_hash: HuVRq8jAJW0fd2D6rM4IFSjVVl0zaXy3GRZMHpgstik +id: simplenews_newsletters +label: Newsletters +module: views +description: '' +tag: '' +base_table: node_field_data +base_field: nid +core: 8.x +display: + default: + display_plugin: default + id: default + display_title: Master + position: 0 + display_options: + access: + type: perm + options: + perm: 'send newsletter' + cache: + type: none + options: { } + query: + type: views_query + options: + disable_sql_rewrite: false + distinct: false + replica: false + query_comment: '' + query_tags: { } + 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 + pager: + type: full + options: + items_per_page: 10 + offset: 0 + id: 0 + total_pages: null + 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 + tags: + previous: '‹ previous' + next: 'next ›' + first: '« first' + last: 'last »' + quantity: 9 + style: + type: table + row: + type: fields + fields: + node_bulk_form: + id: node_bulk_form + table: node + field: node_bulk_form + relationship: none + group_type: group + admin_label: '' + label: 'Node operations bulk form' + 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: null + 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 + action_title: 'With selection' + include_exclude: include + selected_actions: + - simplenews_send_action + - simplenews_stop_action + entity_type: node + plugin_id: node_bulk_form + title: + id: title + table: node_field_data + field: title + relationship: none + group_type: group + admin_label: '' + label: Issue + 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: null + 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 + link_to_node: true + entity_type: node + entity_field: title + plugin_id: node + simplenews_issue: + id: simplenews_issue + table: node__simplenews_issue + field: simplenews_issue + relationship: none + group_type: group + admin_label: '' + label: Newsletter + 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: null + 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: '' + 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 + plugin_id: field + status: + id: status + table: node_field_data + field: status + relationship: none + group_type: group + admin_label: '' + label: Published + 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: boolean + settings: + format: unicode-yes-no + format_custom_true: '' + format_custom_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 + entity_type: node + entity_field: status + plugin_id: field + created: + id: created + table: node_field_data + field: created + relationship: none + group_type: group + admin_label: '' + label: Updated + 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: null + 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 + date_format: short + custom_date_format: '' + timezone: '' + entity_type: node + entity_field: created + plugin_id: date + send_status: + id: send_status + table: node + field: send_status + relationship: none + group_type: group + admin_label: '' + label: 'Send status' + 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: null + 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 + entity_type: node + plugin_id: simplenews_send_status + operations: + id: operations + table: node + field: operations + relationship: none + group_type: group + admin_label: '' + label: 'Operations links' + 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 + destination: true + entity_type: node + plugin_id: entity_operations + filters: + simplenews_issue_target_id: + id: simplenews_issue_target_id + table: node__simplenews_issue + field: simplenews_issue_target_id + relationship: none + group_type: group + admin_label: '' + operator: 'not empty' + value: { } + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + plugin_id: in_operator + simplenews_issue_target_id_1: + id: simplenews_issue_target_id_1 + table: node__simplenews_issue + field: simplenews_issue_target_id + relationship: none + group_type: group + admin_label: '' + operator: in + value: { } + group: 1 + exposed: true + expose: + operator_id: simplenews_issue_target_id_1_op + label: Newsletter + description: '' + use_operator: false + operator: simplenews_issue_target_id_1_op + identifier: simplenews_issue_target_id_1 + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + plugin_id: in_operator + sorts: + created: + id: created + table: node_field_data + field: created + order: DESC + entity_type: node + entity_field: created + plugin_id: date + relationship: none + group_type: group + admin_label: '' + exposed: false + expose: + label: '' + granularity: second + title: Newsletters + header: { } + footer: { } + empty: + area: + id: area + table: views + field: area + relationship: none + group_type: group + admin_label: '' + empty: true + tokenize: false + content: + value: 'No newsletter issues found.' + format: basic_html + plugin_id: text + relationships: { } + arguments: { } + display_extenders: { } + cache_metadata: + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + cacheable: false + max-age: 0 + tags: + - 'config:field.storage.node.simplenews_issue' + page_1: + display_plugin: page + id: page_1 + display_title: Page + position: 1 + display_options: + display_extenders: { } + path: admin/content/simplenews + menu: + type: tab + title: 'Newsletter issues' + description: '' + parent: system.admin_content + weight: 0 + context: '0' + menu_name: admin + cache_metadata: + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - 'user.node_grants:view' + - user.permissions + cacheable: false + max-age: 0 + tags: + - 'config:field.storage.node.simplenews_issue' diff --git a/config/sync/views.view.simplenews_subscribers.yml b/config/sync/views.view.simplenews_subscribers.yml new file mode 100644 index 0000000..d635862 --- /dev/null +++ b/config/sync/views.view.simplenews_subscribers.yml @@ -0,0 +1,618 @@ +uuid: 53a979eb-9ee5-4a9b-b4fb-602e19e052f7 +langcode: en +status: true +dependencies: + config: + - field.storage.simplenews_subscriber.subscriptions + module: + - simplenews + - user +_core: + default_config_hash: WyIS3mrmy1vkSOWTl1IGi_Zi0UmkVqmtW06au3N9rXU +id: simplenews_subscribers +label: Subscribers +module: views +description: '' +tag: '' +base_table: simplenews_subscriber +base_field: id +core: 8.x +display: + default: + display_plugin: default + id: default + display_title: Master + position: 0 + display_options: + access: + type: perm + options: + perm: 'administer simplenews subscriptions' + cache: + type: none + options: { } + query: + type: views_query + options: + disable_sql_rewrite: false + distinct: true + replica: false + query_comment: '' + query_tags: { } + 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 + pager: + type: full + options: + items_per_page: 30 + offset: 0 + id: 0 + total_pages: null + tags: + previous: '‹ previous' + next: 'next ›' + first: '« first' + last: 'last »' + 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 + quantity: 9 + style: + type: table + row: + type: fields + fields: + mail: + table: simplenews_subscriber + field: mail + id: mail + entity_type: null + entity_field: mail + plugin_id: standard + relationship: none + group_type: group + admin_label: '' + label: Email + 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: null + 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 + user_name: + id: user_name + table: simplenews_subscriber + field: user_name + relationship: none + group_type: group + admin_label: '' + label: Username + 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: null + 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 + entity_type: simplenews_subscriber + plugin_id: simplenews_user_name + subscriptions: + id: subscriptions + table: simplenews_subscriber__subscriptions + field: subscriptions + relationship: none + group_type: group + admin_label: '' + label: Subscriptions + 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: null + 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: simplenews_subscription_status + group_column: '' + group_columns: { } + group_rows: true + delta_limit: 0 + delta_offset: 0 + delta_reversed: false + delta_first_last: false + multi_type: ul + separator: ', ' + field_api_classes: false + plugin_id: field + status: + id: status + table: simplenews_subscriber + field: status + relationship: none + group_type: group + admin_label: '' + label: Active + 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: null + 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 + type: boolean + type_custom_true: '' + type_custom_false: '' + not: false + entity_type: simplenews_subscriber + entity_field: status + plugin_id: boolean + created: + id: created + table: simplenews_subscriber + field: created + relationship: none + group_type: group + admin_label: '' + label: Created + 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: null + 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 + date_format: fallback + custom_date_format: '' + timezone: '' + entity_type: simplenews_subscriber + entity_field: created + plugin_id: date + operations: + id: operations + table: simplenews_subscriber + field: operations + relationship: none + group_type: group + admin_label: '' + label: Operations + 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 + destination: true + entity_type: simplenews_subscriber + plugin_id: entity_operations + filters: + mail: + id: mail + table: simplenews_subscriber + field: mail + relationship: none + group_type: group + admin_label: '' + operator: contains + value: '' + group: 1 + exposed: true + expose: + operator_id: mail_op + label: Email + description: '' + use_operator: false + operator: mail_op + identifier: mail + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + entity_type: simplenews_subscriber + entity_field: mail + plugin_id: string + subscriptions_target_id: + id: subscriptions_target_id + table: simplenews_subscriber__subscriptions + field: subscriptions_target_id + relationship: none + group_type: group + admin_label: '' + operator: in + value: { } + group: 1 + exposed: true + expose: + operator_id: subscriptions_target_id_op + label: Newsletters + description: '' + use_operator: false + operator: subscriptions_target_id_op + identifier: subscriptions_target_id + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + plugin_id: in_operator + status: + id: status + table: simplenews_subscriber + field: status + relationship: none + group_type: group + admin_label: '' + operator: '=' + value: '1' + group: 1 + exposed: true + expose: + operator_id: '' + label: Active + description: '' + use_operator: false + operator: status_op + identifier: status + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + entity_type: simplenews_subscriber + entity_field: status + plugin_id: boolean + subscriptions_status: + id: subscriptions_status + table: simplenews_subscriber__subscriptions + field: subscriptions_status + relationship: none + group_type: group + admin_label: '' + operator: in + value: + 1: '1' + group: 1 + exposed: true + expose: + operator_id: subscriptions_status_op + label: Status + description: '' + use_operator: false + operator: subscriptions_status_op + identifier: subscriptions_status + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + anonymous: '0' + administrator: '0' + reduce: false + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + plugin_id: in_operator + sorts: { } + title: Subscribers + header: { } + footer: { } + empty: + area: + id: area + table: views + field: area + relationship: none + group_type: group + admin_label: '' + empty: true + tokenize: false + content: + value: 'No subscribers found.' + format: basic_html + plugin_id: text + relationships: { } + arguments: { } + display_extenders: { } + cache_metadata: + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - user.permissions + cacheable: false + max-age: -1 + tags: + - 'config:field.storage.simplenews_subscriber.subscriptions' + page_1: + display_plugin: page + id: page_1 + display_title: Page + position: 1 + display_options: + display_extenders: { } + path: admin/people/simplenews + menu: + type: tab + title: Subscribers + description: '' + parent: user.admin_index + weight: 11 + context: '0' + menu_name: admin + cache_metadata: + contexts: + - 'languages:language_content' + - 'languages:language_interface' + - url + - url.query_args + - user.permissions + cacheable: false + max-age: -1 + tags: + - 'config:field.storage.simplenews_subscriber.subscriptions' diff --git a/web/modules/custom/materio_migrate/config/install/migrate_plus.migration.d7_simplenews_nodes.yml b/web/modules/custom/materio_migrate/config/install/migrate_plus.migration.d7_simplenews_nodes.yml new file mode 100644 index 0000000..18a32e7 --- /dev/null +++ b/web/modules/custom/materio_migrate/config/install/migrate_plus.migration.d7_simplenews_nodes.yml @@ -0,0 +1,85 @@ +id: d7_simplenews_nodes +migration_group: d7_materio +dependencies: + module: + - migrate_drupal + - simplenews +label: Simplenews newsletters nodes +migration_tags: + - Drupal 7 + - Content + - Materio + +source: + plugin: d7_simplenews_nodes + node_type: simplenews + high_water_property: + name: changed + alias: n + +destination: + plugin: entity:node + +process: + # nid + type: + plugin: default_value + default_value: simplenews_issue + title: title + created: created + changed: changed + + uid: + plugin: migration_lookup + migration: d7_users + source: uid + + field_migration: + plugin: default_value + default_value: 'migration_imported' + body: + plugin: iterator + source: body + process: + value: value + format: + plugin: default_value + default_value: wysiwyg + langcode: language + + field_workflow: + - + plugin: default_value + source: workflow + default_value: 2 + - + plugin: static_map + default_value: 2 + map: + 1: "workflow_creation" + 2: "workflow_hidden" + 3: "workflow_visible" + 4: "workflow_imported" + 5: "workflow_edited" + + simplenews_issue: + - + plugin: extract + source: field_simplenews_term + index: + - 0 + - tid + - + plugin: static_map + map: + 6585: "test" + 6374: "ze_daily_materio_" + 6274: "materio_newsletter" + 7881: "companies" + + # Sent status + +migration_dependencies: + required: + - d7_allpublicfiles + - d7_users diff --git a/web/modules/custom/materio_migrate/src/Plugin/migrate/source/D7SimplenewsNodes.php b/web/modules/custom/materio_migrate/src/Plugin/migrate/source/D7SimplenewsNodes.php new file mode 100644 index 0000000..679e53c --- /dev/null +++ b/web/modules/custom/materio_migrate/src/Plugin/migrate/source/D7SimplenewsNodes.php @@ -0,0 +1,161 @@ +moduleHandler = $module_handler; + } + + /** + * {@inheritdoc} + */ + public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration = NULL) { + return new static( + $configuration, + $plugin_id, + $plugin_definition, + $migration, + $container->get('state'), + $container->get('entity.manager'), + $container->get('module_handler') + ); + } + + /** + * The join options between the node and the node_revisions table. + */ + const JOIN = 'n.vid = nr.vid'; + + /** + * {@inheritdoc} + */ + public function query() { + // Select node in its last revision. + $query = $this->select('node_revision', 'nr') + ->fields('n', [ + 'nid', + 'type', + 'uid', + 'language', + 'status', + 'created', + 'changed', + 'comment', + 'promote', + 'sticky', + 'tnid', + 'translate', + ]) + ->fields('nr', [ + 'vid', + 'title', + 'log', + 'timestamp', + ]) + ->orderBy('changed'); + + $query->addField('n', 'uid', 'node_uid'); + $query->addField('nr', 'uid', 'revision_uid'); + $query->innerJoin('node', 'n', static::JOIN); + + if (isset($this->configuration['node_type'])) { + $query->condition('n.type', $this->configuration['node_type']); + } + + return $query; + } + + /** + * {@inheritdoc} + */ + public function prepareRow(Row $row) { + $nid = $row->getSourceProperty('nid'); + $vid = $row->getSourceProperty('vid'); + $type = $row->getSourceProperty('type'); + $title = $row->getSourceProperty('title'); + // drush_print('-- '.$nid."\t".$title); + + // Get Field API field values. + foreach ($this->getFields('node', $type) as $field_name => $field) { + $row->setSourceProperty($field_name, $this->getFieldValues('node', $field_name, $nid, $vid, 'und')); + } + + // workflow + $query = $this->select('workflow_node', 'wn'); + $query->fields('wn', ['sid']); + $query->condition('wn.nid', $nid); + $results = $query->execute()->fetchField(); + if(!$results){ + $results = 2; + drush_print('WARNING: no workflow'); + } + $row->setSourceProperty('workflow', $results); + + + return parent::prepareRow($row); + } + + /** + * {@inheritdoc} + */ + public function fields() { + $fields = [ + 'nid' => $this->t('Node ID'), + 'type' => $this->t('Type'), + 'title' => $this->t('Title'), + 'node_uid' => $this->t('Node authored by (uid)'), + 'revision_uid' => $this->t('Revision authored by (uid)'), + 'created' => $this->t('Created timestamp'), + 'changed' => $this->t('Modified timestamp'), + 'status' => $this->t('Published'), + 'promote' => $this->t('Promoted to front page'), + 'sticky' => $this->t('Sticky at top of lists'), + 'revision' => $this->t('Create new revision'), + 'language' => $this->t('Language (fr, en, ...)'), + 'tnid' => $this->t('The translation set id for this node'), + 'timestamp' => $this->t('The timestamp the latest revision of this node was created.'), + ]; + return $fields; + } + + /** + * {@inheritdoc} + */ + public function getIds() { + $ids['nid']['type'] = 'integer'; + $ids['nid']['alias'] = 'n'; + return $ids; + } + + +}