Skip to content
Snippets Groups Projects
Commit 259fe5f6 authored by Yassine Doghri's avatar Yassine Doghri
Browse files

fix(platforms): trim platform url before validation and storage

--> Having a URL with spaces in the beginning or end would cause the platform to be deleted
parent c94bd7cf
No related branches found
No related tags found
No related merge requests found
......@@ -145,6 +145,8 @@ class PlatformModel extends Model
/**
* @param mixed[] $podcastsPlatformsData
*
* @return int|false Number of rows inserted or FALSE on failure
*/
public function savePodcastPlatforms(
int $podcastId,
......@@ -165,6 +167,11 @@ class PlatformModel extends Model
$this->db->query($deleteJoinQuery, [$podcastId, $platformType]);
if ($podcastsPlatformsData === []) {
// no rows inserted
return 0;
}
return $this->db
->table('podcasts_platforms')
->insertBatch($podcastsPlatformsData);
......
......@@ -70,7 +70,7 @@ class PodcastPlatformController extends BaseController
$this->request->getPost('platforms')
as $platformSlug => $podcastPlatform
) {
$podcastPlatformUrl = $podcastPlatform['url'];
$podcastPlatformUrl = trim((string) $podcastPlatform['url']);
if ($podcastPlatformUrl === null) {
continue;
}
......@@ -79,11 +79,12 @@ class PodcastPlatformController extends BaseController
continue;
}
$podcastPlatformAccountId = trim((string) $podcastPlatform['account_id']);
$podcastsPlatformsData[] = [
'platform_slug' => $platformSlug,
'podcast_id' => $this->podcast->id,
'link_url' => $podcastPlatformUrl,
'account_id' => $podcastPlatform['account_id'] === '' ? null : $podcastPlatform['account_id'],
'account_id' => $podcastPlatformAccountId === '' ? null : $podcastPlatformAccountId,
'is_visible' =>
array_key_exists('visible', $podcastPlatform) &&
$podcastPlatform['visible'] === 'yes',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment