Commit aa46dca4 authored by Yassine Doghri's avatar Yassine Doghri
Browse files

fix(podcast-import): set default values for person group and role if not found in taxonomy

+ update podcast-feed and podcast-persons-taxonomy packages
parent d50cbb09
Loading
Loading
Loading
Loading
Loading
+1 −1
+8 −8
Original line number Diff line number Diff line
@@ -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": "9fa20de985bf6177f95f7ac32155d843",
  "content-hash": "c63a07ae62c9740982f4270527b6de53",
  "packages": [
    {
      "name": "adaures/ipcat-php",
@@ -43,11 +43,11 @@
    },
    {
      "name": "adaures/podcast-persons-taxonomy",
      "version": "v1.0.0",
      "version": "v1.0.1",
      "source": {
        "type": "git",
        "url": "https://code.castopod.org/adaures/podcast-persons-taxonomy",
        "reference": "117b207e334f54cd1b00ee52b0c53d58cb1a5524"
        "reference": "d2a6836e32ed013676fd969425e133e0ebb104fc"
      },
      "type": "library",
      "autoload": {
@@ -71,7 +71,7 @@
      ],
      "description": "Generate PHP translation files for CodeIgniter4 from the podcast-namespace's Persons Taxonomy json files.",
      "homepage": "https://code.castopod.org/adaures/podcast-persons-taxonomy",
      "time": "2022-02-20T14:09:25+00:00"
      "time": "2023-06-22T14:24:55+00:00"
    },
    {
      "name": "aws/aws-crt-php",
@@ -3135,12 +3135,12 @@
      "source": {
        "type": "git",
        "url": "https://github.com/yassinedoghri/podcast-feed.git",
        "reference": "c6b25fb19d6d14f93e403e423640df7714067aca"
        "reference": "366ddcedfb4b89c7093d03b2398184435f930843"
      },
      "dist": {
        "type": "zip",
        "url": "https://api.github.com/repos/yassinedoghri/podcast-feed/zipball/c6b25fb19d6d14f93e403e423640df7714067aca",
        "reference": "c6b25fb19d6d14f93e403e423640df7714067aca",
        "url": "https://api.github.com/repos/yassinedoghri/podcast-feed/zipball/366ddcedfb4b89c7093d03b2398184435f930843",
        "reference": "366ddcedfb4b89c7093d03b2398184435f930843",
        "shasum": ""
      },
      "require": {
@@ -3176,7 +3176,7 @@
        "issues": "https://github.com/yassinedoghri/podcast-feed/issues",
        "source": "https://github.com/yassinedoghri/podcast-feed/tree/main"
      },
      "time": "2023-06-11T16:54:30+00:00"
      "time": "2023-06-22T13:54:05+00:00"
    }
  ],
  "packages-dev": [
+30 −6
Original line number Diff line number Diff line
@@ -310,10 +310,22 @@ class PodcastImport extends BaseCommand
            $personGroup = $person->getAttribute('group');
            $personRole = $person->getAttribute('role');

            $personGroup = ReversedTaxonomy::$taxonomy[(string) $personGroup];

            $isTaxonomyFound = false;
            if (array_key_exists(strtolower((string) $personGroup), ReversedTaxonomy::$taxonomy)) {
                $personGroup = ReversedTaxonomy::$taxonomy[strtolower((string) $personGroup)];
                $personGroupSlug = $personGroup['slug'];
            $personRoleSlug = $personGroup['roles'][(string) $personRole]['slug'];

                if (array_key_exists(strtolower((string) $personRole), $personGroup['roles'])) {
                    $personRoleSlug = $personGroup['roles'][strtolower((string) $personRole)]['slug'];
                    $isTaxonomyFound = true;
                }
            }

            if (! $isTaxonomyFound) {
                // taxonomy was not found, set default group and role
                $personGroupSlug = 'cast';
                $personRoleSlug = 'host';
            }

            $podcastPersonModel = new PersonModel();
            if (! $podcastPersonModel->addPodcastPerson(
@@ -512,10 +524,22 @@ class PodcastImport extends BaseCommand
            $personGroup = $person->getAttribute('group');
            $personRole = $person->getAttribute('role');

            $personGroup = ReversedTaxonomy::$taxonomy[(string) $personGroup];

            $isTaxonomyFound = false;
            if (array_key_exists(strtolower((string) $personGroup), ReversedTaxonomy::$taxonomy)) {
                $personGroup = ReversedTaxonomy::$taxonomy[strtolower((string) $personGroup)];
                $personGroupSlug = $personGroup['slug'];
            $personRoleSlug = $personGroup['roles'][(string) $personRole]['slug'];

                if (array_key_exists(strtolower((string) $personRole), $personGroup['roles'])) {
                    $personRoleSlug = $personGroup['roles'][strtolower((string) $personRole)]['slug'];
                    $isTaxonomyFound = true;
                }
            }

            if (! $isTaxonomyFound) {
                // taxonomy was not found, set default group and role
                $personGroupSlug = 'cast';
                $personRoleSlug = 'host';
            }

            $episodePersonModel = new PersonModel();
            if (! $episodePersonModel->addEpisodePerson(