diff --git a/web/modules/custom/blog/drush.services.yml b/web/modules/custom/blog/drush.services.yml index 8563617..5a4a328 100644 --- a/web/modules/custom/blog/drush.services.yml +++ b/web/modules/custom/blog/drush.services.yml @@ -4,8 +4,3 @@ services: autowire: true tags: - { name: drush.command } - - Drupal\opdavies_blog\Command\FormatTagNamesCommand: - autowire: true - tags: - - { name: drush.command } diff --git a/web/modules/custom/blog/src/Command/FormatTagNamesCommand.php b/web/modules/custom/blog/src/Command/FormatTagNamesCommand.php deleted file mode 100644 index 29fe9e9..0000000 --- a/web/modules/custom/blog/src/Command/FormatTagNamesCommand.php +++ /dev/null @@ -1,138 +0,0 @@ - 'Accessible Bristol', - 'admin:hover' => FALSE, - 'aria' => 'ARIA', - 'cck' => 'CCK', - 'centos' => 'CentOS', - 'css' => 'CSS', - 'dcbristol' => FALSE, - 'ddev' => 'DDEV', - 'drupal-association' => 'Drupal Association', - 'drupal-bristol' => 'Drupal Bristol', - 'drupal-commerce' => 'Drupal Commerce', - 'drupal-planet' => 'Drupal Planet', - 'drupal-vm' => 'Drupal VM', - 'drupal-vm-generator' => 'Drupal VM Generator', - 'drupalcamp' => 'DrupalCamp', - 'drupalcamp-bristol' => 'DrupalCamp Bristol', - 'drupalcamp-london' => 'DrupalCamp London', - 'drupalcamp-north' => 'DrupalCamp North', - 'drupalcon' => 'DrupalCon', - 'entity-api' => 'Entity API', - 'fancy-slide' => 'Fancy Slide', - 'field-collection' => 'Field Collection', - 'filefield' => 'FileField', - 'form-api' => 'Form API', - 'git-flow' => 'Git Flow', - 'github' => 'GitHub', - 'github-actions' => 'GitHub Actions', - 'illuminate-collections' => 'Illuminate Collections', - 'image-caption' => 'Image Caption', - 'imagecache' => 'ImageCache', - 'imagefield' => 'ImageField', - 'imagefield-import' => 'ImageField Import', - 'javascript' => 'JavaScript', - 'laravel-collections' => 'Laravel Collections', - 'laravel-mix' => 'Laravel Mix', - 'linux-journal' => 'Linux Journal', - 'mac-os-x' => 'macOS', - 'mamp' => 'MAMP', - 'mod_rewrite' => FALSE, - 'npm' => FALSE, - 'oliverdavies.co.uk' => FALSE, - 'php' => 'PHP', - 'php-south-wales' => 'PHP South Wales', - 'phpstorm' => 'PhpStorm', - 'phpsw' => 'PHPSW', - 'phpunit' => 'PHPUnit', - 'postcss' => 'PostCSS', - 'psr' => 'PSR', - 'regular-expression' => 'Regular expressions', - 'sequel-pro' => 'Sequel Pro', - 'settings.php' => FALSE, - 'sql' => 'SQL', - 'ssh' => 'SSH', - 'sublime-text' => 'Sublime Text', - 'svn' => 'SVN', - 'swdug' => 'SWDUG', - 'symfonylive' => 'SymfonyLive', - 'tailwind-css' => 'Tailwind CSS', - 'tdd' => 'TDD', - 'test-driven-drupal' => 'Test Driven Drupal', - 'views-attach' => 'Views Attach', - 'virtualbox' => 'VirtualBox', - 'vuejs' => 'VueJS', - 'virtualhostx' => 'VirtualHostX', - ]; - - /** - * The taxonomy term storage. - * - * @var \Drupal\Core\Entity\EntityStorageInterface - */ - private $termStorage; - - public function __construct(EntityTypeManagerInterface $entityTypeManager) { - parent::__construct(); - - $this->termStorage = $entityTypeManager->getStorage('taxonomy_term'); - } - - /** - * Drush command for updating legacy tag names. - * - * @command opdavies:update-tag-names - */ - public function updateTagNames(): void { - foreach ($this->getTags() as $tag) { - $name = $tag->label(); - $newName = $this->getNewTagName($name); - - if ($newName === NULL) { - $this->writeln(sprintf('Skipping %s.', $name)); - continue; - } - - $this->writeln(sprintf('Updating %s to %s.', $name, $newName)); - $tag->name = $newName; - $tag->save(); - } - } - - private function getTags(): array { - return $this->termStorage->loadByProperties([ - 'vid' => 'tags', - ]); - } - - private function getNewTagName(string $tagName): ?string { - if (!array_key_exists($tagName, static::$tagNames)) { - return str_replace('-', ' ', ucfirst($tagName)); - } - - if (static::$tagNames[$tagName] === FALSE) { - return NULL; - } - - return static::$tagNames[$tagName]; - } - -}