mirror of
https://code.castopod.org/adaures/castopod
synced 2025-04-19 13:01:19 +00:00
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
This commit is contained in:
parent
c94bd7cf81
commit
259fe5f697
@ -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',
|
||||
|
Loading…
x
Reference in New Issue
Block a user