Giter VIP home page Giter VIP logo

phpsouthwales-uk's Introduction

PHP South Wales Drupal codebase

The Drupal codebase for the PHP South Wales user group website.

Local environment

The project is using Docker and Docker Compose for local development.

If you are using Traefik (recommended), then the site should now be available at http://phpsouthwales.localhost.

Updating Drupal core using Composer

./run composer update 'drupal/core-*'

Hosting

The hosting is provided and sponsored by Platform.sh.

phpsouthwales-uk's People

Contributors

ajtrichards avatar dependabot-preview[bot] avatar opdavies avatar violinist-bot avatar

Watchers

 avatar  avatar

phpsouthwales-uk's Issues

Managing sponsors

As a meetup organiser
Given that we have sponsors
I would like to be able to add a sponsor's information to the website
And define their starting and ending dates for when their sponsorship is active

  • Add a sponsor content type
  • Add fields for the sponsor logo and URL to link to
  • Add fields for the sponsorship dates, either using a single field with a date range or separate date fields
  • Adding sponsors should only be possible by users who are logged in with the organiser role
  • Write tests for determining when a sponsor has an active sponsorship
  • Set up a separate admin view for sponsors so that they can be filtered
  • Remove sponsors from the main admin/content listing.

Questions

  • Do we need to classify different types of sponsors?

Fix deprecation notices

Remaining deprecation notices (47)

  24x: Drupal\Component\Plugin\ConfigurablePluginInterface is deprecated in Drupal 8.7.0 and will be removed before Drupal 9.0.0. You should implement ConfigurableInterface and/or DependentPluginInterface directly as needed. If you implement ConfigurableInterface you may choose to implement ConfigurablePluginInterface in Drupal 8 as well for maximum compatibility, however this must be removed prior to Drupal 9. See https://www.drupal.org/node/2946161
    7x in UpdatingEventsTest::testEventNodesAreUpdated from Drupal\Tests\event_pull\Kernel
    6x in CreateEventsTest::testEventNodesAreCreated from Drupal\Tests\event_pull\Kernel
    6x in CreateEventsTest::testEventVenueTermsAreCreated from Drupal\Tests\event_pull\Kernel
    5x in UpdatingEventsTest::testVenuesAreUpdated from Drupal\Tests\event_pull\Kernel

  10x: Array and string offset access syntax with curly braces is deprecated
    2x in CreateEventsTest::testEventNodesAreCreated from Drupal\Tests\event_pull\Kernel
    2x in CreateEventsTest::testEventVenueTermsAreCreated from Drupal\Tests\event_pull\Kernel
    2x in EventLoaderTest::testLoadingEvents from Drupal\Tests\event_pull\Kernel\Service
    2x in UpdatingEventsTest::testEventNodesAreUpdated from Drupal\Tests\event_pull\Kernel
    2x in UpdatingEventsTest::testVenuesAreUpdated from Drupal\Tests\event_pull\Kernel

  8x: Autowiring services based on the types they implement is deprecated since Symfony 3.3 and won't be supported in version 4.0. You should rename (or alias) the "http_client" service to "GuzzleHttp\ClientInterface" instead.
    2x in CreateEventsTest::testEventNodesAreCreated from Drupal\Tests\event_pull\Kernel
    2x in CreateEventsTest::testEventVenueTermsAreCreated from Drupal\Tests\event_pull\Kernel
    2x in EventLoaderTest::testLoadingEvents from Drupal\Tests\event_pull\Kernel\Service
    1x in UpdatingEventsTest::testEventNodesAreUpdated from Drupal\Tests\event_pull\Kernel
    1x in UpdatingEventsTest::testVenuesAreUpdated from Drupal\Tests\event_pull\Kernel

  5x: Autowiring services based on the types they implement is deprecated since Symfony 3.3 and won't be supported in version 4.0. You should rename (or alias) the "entity_type.manager" service to "Drupal\Core\Entity\EntityTypeManager" instead.
    1x in CreateEventsTest::testEventNodesAreCreated from Drupal\Tests\event_pull\Kernel
    1x in CreateEventsTest::testEventVenueTermsAreCreated from Drupal\Tests\event_pull\Kernel
    1x in EventLoaderTest::testLoadingEvents from Drupal\Tests\event_pull\Kernel\Service
    1x in UpdatingEventsTest::testEventNodesAreUpdated from Drupal\Tests\event_pull\Kernel
    1x in UpdatingEventsTest::testVenuesAreUpdated from Drupal\Tests\event_pull\Kernel

Fix deprecation errors within event_pull, re-enable in GitHub Actions

Remaining deprecation notices (8)

4x: Any entity_reference_autocomplete component of an entity_form_display must have a match_limit setting. The field_venue field on the node.event.default form display is missing it. This BC layer will be removed before 9.0.0. See https://www.drupal.org/node/2863188
1x in CreateEventsTest::testEventNodesAreCreated from Drupal\Tests\event_pull\Kernel
1x in CreateEventsTest::testEventVenueTermsAreCreated from Drupal\Tests\event_pull\Kernel
1x in UpdatingEventsTest::testEventNodesAreUpdated from Drupal\Tests\event_pull\Kernel
1x in UpdatingEventsTest::testVenuesAreUpdated from Drupal\Tests\event_pull\Kernel

4x: Any entity_reference_autocomplete component of an entity_form_display must have a match_limit setting. The uid field on the node.event.default form display is missing it. This BC layer will be removed before 9.0.0. See https://www.drupal.org/node/2863188
1x in CreateEventsTest::testEventNodesAreCreated from Drupal\Tests\event_pull\Kernel
1x in CreateEventsTest::testEventVenueTermsAreCreated from Drupal\Tests\event_pull\Kernel
1x in UpdatingEventsTest::testEventNodesAreUpdated from Drupal\Tests\event_pull\Kernel
1x in UpdatingEventsTest::testVenuesAreUpdated from Drupal\Tests\event_pull\Kernel

Combine `.env` and `.docker.env`?

The project has both a .env and .docker.env file, though only one seems to be used in docker-compose.yaml.

Should these be combined?

Bump to PHP 7.4

  • Bump the PHP version to 7.4 locally and on Platform.sh
  • Add typed properties etc into the existing custom code

Display upcoming events on the homepage

As a potential meetup attendee
Given that there are imported events
When I am on the homepage
I can see the next three published, upcoming events

  • Configure the teaser display mode on the event content type (if not already done in #105)
  • Create a view showing event nodes, using the teaser display mode
    • Add a filter for published status
    • Add a filter for the event date (exclude events where the event date is before today)
    • Add a sort criteria for the event date
    • Add a block display
    • Empty text should be shown if there are no upcoming events - Nothing here yet, check back soon
  • Write tests for the data returned from the view?

Display meetup images on events

As a potential meetup attendee
Given that there are events that have been imported
When I view an event on the website
I want to see the image associated with the event, pulled in from Meetup.com

  • As part of the import, save a local copy of the image file (probably using system_retrieve_file)
  • Link the new file to the created node
  • Display the image when the node is viewed

Dependabot couldn't find a package.json for this project

Dependabot couldn't find a package.json for this project.

Dependabot requires a package.json to evaluate your project's current JavaScript dependencies. It had expected to find one at the path: /src/themes/phpsouthwales/package.json.

If this isn't a JavaScript project, or if it is a library, you may wish to disable updates for it in the .dependabot/config.yml file in this repo.

View the update logs.

Dependabot couldn't find a package.json for this project

Dependabot couldn't find a package.json for this project.

Dependabot requires a package.json to evaluate your project's current JavaScript dependencies. It had expected to find one at the path: /web/themes/custom/phpsouthwales/package.json.

If this isn't a JavaScript project, or if it is a library, you may wish to disable updates for it in the .dependabot/config.yml file in this repo.

View the update logs.

Display upcoming and past events on the Events page

As a community member
Given that there are imported events
When I go to /events
I can see a list of all of the published past and future events, sorted by event date, showing the newest event first

  • Configure the teaser display mode on the event content type
  • Create a view showing event nodes, using the teaser display mode
    • Add a filter for published status
    • Add a sort criteria for the event date
    • Add a block display
  • Write tests for the data returned from the view?

Display active sponsors

As a sponsor
Given that my sponsorship is active (see #107)
When I go to /sponsors
Then my sponsorship should be shown, including my company name and logo
And clicking the link should go to the specified URL on the sponsor node

  • Configure the teaser display mode on the event content type (added in #107)
  • Create a view showing sponsor nodes, using the teaser display mode
    • Add a filter for published status
    • Add a filter for the sponsorship dates (should only show if the sponsorship is active)
    • Add a sort criteria for the sponsorship start date
    • Add a block display
  • Write tests for the data returned from the view?

Current sponsors:

  • Twilio (Meetup.com)
  • Lexis Nexis (refreshments)
  • Techire (raffle prizes)

Add a `run` script

Add a run script similar to https://github.com/opdavies/oliverdavies.uk/blob/5049981f901136ad959368f11456f512388b6ba1/run and https://github.com/opdavies/test-driven-drupal-app/blob/49c7a1699f273524345bbc028c203b66649edf2a/run, to act as a wrapper for long and/or frequent tasks.

This idea is based on https://github.com/adriancooney/Taskfile, and was recommended by @nickjj in his "Replacing make with a Shell Script for Running Your Project's Tasks" video - https://youtu.be/SdmYd5hJISM.

I like this approach as it offers some benefits over Makefiles, which I've used before, whilst also not adding another tool into the project.

As this is a Drupal project, this will be similar to the Test Driven Drupal app, but initially just running Drush and Composer commands would be a good first step.

Your .dependabot/config.yml contained invalid details

Dependabot encountered the following error when parsing your .dependabot/config.yml:

The property '#/update_configs/0/version_requirement_updates' of type boolean did not match the following type: string
The property '#/update_configs/0/version_requirement_updates' value false did not match one of the following values: off, auto, widen_ranges, increase_versions, increase_versions_if_necessary
The property '#/update_configs/1/version_requirement_updates' of type boolean did not match the following type: string
The property '#/update_configs/1/version_requirement_updates' value false did not match one of the following values: off, auto, widen_ranges, increase_versions, increase_versions_if_necessary

Please update the config file to conform with Dependabot's specification using our docs and online validator.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.