Add an Integromat post pusher and add it to the queue worker so that
posts are pushed both to IFTTT (for Twitter) and Integromat (for
LinkedIn).
References #340
Add the integromat webhook URL to the Ansible Vault and also to the
generated Drupal settings file that Ansible generates, and the
opdavies_blog module configuration.
References #340
Enable the auto-configuration of service and repository classes,
including support for classes in subdirectories by using
`getRelativePathname()` rather than `getFilename()` and making some
additional changes to the result.
References #347
Within the `PostFactory` class, ensure that when using the `withTags`
method and creating tag terms that an existing term doesn't already
exist for a given name before trying to create it.
With the previous implementation, there would be multiple terms if the
PostFactory was used multiple times with the same tag name.
Given that `PostFactory` now has a dependency on `EntityTypeManger`,
this has been added as a service within `opdavies_blog_test` and needs
to be resolved from the container before trying to use it within a test.
This commit also updates the usages in `PostTest` so that those tests
continue to work and pass.
References #3
Refactor from using `loadByProperties` to using an entity query.
`loadByProperties` doesn't allow for passing multiple values for a
single property such as multiple tags to compare against, and also means
that removing the current node can be done in the query rather than
filtering it out of the Collection.
This might also be a more performant solution if we can do the grouping
and sorting of the results in the query rather than needing to perform
additional steps on the result.
References #3
Add the initial code for specifying a blog post and returning related
posts. This includes adding a repository for related posts, and adding
it as a service within the `opdavies_blog` module.
References #3
So that the padding takes up the full space within the tab, move the
padding to the link element. This requires adding a preprocess function
to the theme file and removing the classes from the local task template.
References #341
Add a NullPostPusher implementation and use it within the tag
re-ordering tests to stop an Exception being thrown because there's no
webhook URL.
References #332