mirror of
https://code.castopod.org/adaures/castopod
synced 2025-05-15 02:35:46 +00:00

- update CI process to include quality stage (tests + code review) - add captainhook to install git pre-commit & pre-push hooks - remove .devcontainer Dockerfile to use project's docker-compose services: all services can now be started automatically using vscode - update docs/setup-development.md
53 lines
2.0 KiB
PHP
53 lines
2.0 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @copyright 2021 Podlibre
|
|
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
|
|
* @link https://castopod.org/
|
|
*/
|
|
|
|
if (!function_exists('construct_person_array')) {
|
|
/**
|
|
* Fetches persons from an episode
|
|
*
|
|
* @param array &$personsArray
|
|
*/
|
|
function construct_person_array(array $persons, &$personsArray): void
|
|
{
|
|
foreach ($persons as $person) {
|
|
if (array_key_exists($person->person->id, $personsArray)) {
|
|
$personsArray[$person->person->id]['roles'] .=
|
|
empty($person->person_group) || empty($person->person_role)
|
|
? ''
|
|
: (empty($personsArray[$person->person->id]['roles'])
|
|
? ''
|
|
: ', ') .
|
|
lang(
|
|
'PersonsTaxonomy.persons.' .
|
|
$person->person_group .
|
|
'.roles.' .
|
|
$person->person_role .
|
|
'.label',
|
|
);
|
|
} else {
|
|
$personsArray[$person->person->id] = [
|
|
'full_name' => $person->person->full_name,
|
|
'information_url' => $person->person->information_url,
|
|
'thumbnail_url' => $person->person->image->thumbnail_url,
|
|
'roles' =>
|
|
empty($person->person_group) ||
|
|
empty($person->person_role)
|
|
? ''
|
|
: lang(
|
|
'PersonsTaxonomy.persons.' .
|
|
$person->person_group .
|
|
'.roles.' .
|
|
$person->person_role .
|
|
'.label',
|
|
),
|
|
];
|
|
}
|
|
}
|
|
}
|
|
}
|