feat(episodes): replace all audio file URL parameters with base64 encoded data

This commit is contained in:
Benjamin Bellamy 2020-10-29 17:27:16 +01:00
commit e1f65cd3b5
5 changed files with 71 additions and 41 deletions

View file

@ -46,24 +46,24 @@ class Analytics extends Controller
}
// Add one hit to this episode:
public function hit(
$podcastId,
$episodeId,
$bytesThreshold,
$fileSize,
$duration,
...$filename
) {
helper('media');
public function hit($base64EpisodeData, ...$filename)
{
helper('media', 'analytics');
$serviceName = isset($_GET['_from']) ? $_GET['_from'] : '';
$episodeData = unpack(
'IpodcastId/IepisodeId/IbytesThreshold/IfileSize/Iduration/IpublicationDate',
base64_url_decode($base64EpisodeData)
);
podcast_hit(
$podcastId,
$episodeId,
$bytesThreshold,
$fileSize,
$duration,
$episodeData['podcastId'],
$episodeData['episodeId'],
$episodeData['bytesThreshold'],
$episodeData['fileSize'],
$episodeData['duration'],
$episodeData['publicationDate'],
$serviceName
);
return redirect()->to(media_base_url($filename));