300) { $text = substr($text, 0, 300) . '...'; } return $text; } #[AsTwigFilter('filesize')] public function type(string|int $size) { return (new FileSize($size))->asAuto(); } #[AsTwigFilter('strip_media_path')] public function stripMediaPath(string $path) { return str_replace( $this->mediaFiles->getBasePath() . DIRECTORY_SEPARATOR, '', $path ); } #[AsTwigFilter('episode_id_from_results')] public function episodeId($result): ?string { if (!$result instanceof GetTvShowOptionsResult) { return null; } return "S". str_pad($result->season, 2, "0", STR_PAD_LEFT) . "E". str_pad($result->episode, 2, "0", STR_PAD_LEFT); } }