diff --git a/app/Resources/fonts/noto-sans-mono-regular.woff2 b/app/Resources/fonts/noto-sans-mono-regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..9c1e09db87a01fe674c9b1595f5ef63bcfe8a701 Binary files /dev/null and b/app/Resources/fonts/noto-sans-mono-regular.woff2 differ diff --git a/app/Resources/styles/fonts.css b/app/Resources/styles/fonts.css index ac7c9896f3993ee87b6d0d008b9a9efad9e6136f..cee3974e06681ff7b659386aa3d03cc327986dab 100644 --- a/app/Resources/styles/fonts.css +++ b/app/Resources/styles/fonts.css @@ -34,4 +34,13 @@ font-display: swap; src: url("/fonts/inter-600.woff2") format("woff2"); } + + /* noto-sans-mono-regular */ + @font-face { + font-family: "Noto Sans Mono"; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url("/fonts/noto-sans-mono-regular.woff2") format("woff2"); + } } diff --git a/modules/Admin/Language/en/VideoClip.php b/modules/Admin/Language/en/VideoClip.php index fd13c061838231bc72d0dac0b8a56da41b398127..49689c673ecec5f5682c1ef735ea53012ffc8150 100644 --- a/modules/Admin/Language/en/VideoClip.php +++ b/modules/Admin/Language/en/VideoClip.php @@ -29,6 +29,7 @@ return [ ], 'title' => 'Video clip: {videoClipLabel}', 'download_clip' => 'Download clip', + 'create' => 'New video clip', 'go_to_page' => 'Go to clip page', 'delete' => 'Delete clip', 'logs' => 'Job logs', diff --git a/modules/Admin/Language/fr/VideoClip.php b/modules/Admin/Language/fr/VideoClip.php index bf686ed31695d8dbeb18a8d010e1a6ed0bc281e8..6f4bc60e9a42118efd2e8d07c1246880aca86cb7 100644 --- a/modules/Admin/Language/fr/VideoClip.php +++ b/modules/Admin/Language/fr/VideoClip.php @@ -29,6 +29,7 @@ return [ ], 'title' => 'Extrait vidéo : {videoClipLabel}', 'download_clip' => 'Télécharger l’extrait', + 'create' => 'Nouvel extrait vidéo', 'go_to_page' => 'Aller à la page de l’extrait', 'delete' => 'Supprimer l’extrait', 'logs' => 'Historique d’exécution', diff --git a/tailwind.config.js b/tailwind.config.js index 07a662ca96dca51f512c324302cc5466922d6a72..4cc6919cf391ea8211e3e14edc4e6841a5c1c0dd 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -23,6 +23,7 @@ module.exports = { fontFamily: { sans: ["Inter", ...defaultTheme.fontFamily.sans], display: ["Kumbh Sans", ...defaultTheme.fontFamily.sans], + mono: ["Noto Sans Mono", ...defaultTheme.fontFamily.mono], }, textColor: { skin: { diff --git a/themes/cp_admin/episode/video_clips_list.php b/themes/cp_admin/episode/video_clips_list.php index c718c3930ffcbbb3b74b861998f229f8f801a32f..3a0b065e632abc0738affa079ca617f3a3e99972 100644 --- a/themes/cp_admin/episode/video_clips_list.php +++ b/themes/cp_admin/episode/video_clips_list.php @@ -14,6 +14,10 @@ use CodeIgniter\I18n\Time; <?= lang('VideoClip.list.title') ?> <?= $this->endSection() ?> +<?= $this->section('headerRight') ?> +<Button uri="<?= route_to('video-clips-create', $podcast->id, $episode->id) ?>" variant="primary" iconLeft="add"><?= lang('VideoClip.create') ?></Button> +<?= $this->endSection() ?> + <?= $this->section('content') ?> <?= data_table( [ @@ -68,11 +72,11 @@ use CodeIgniter\I18n\Time; if ($videoClip->job_started_at !== null) { if ($videoClip->job_ended_at !== null) { $duration = '<div class="flex flex-col text-xs gap-y-1">' . - '<div class="inline-flex items-center gap-x-1"><Icon glyph="timer" class="text-sm text-gray-400" />' . format_duration($videoClip->job_duration, true) . '</div>' . + '<div class="inline-flex items-center font-mono gap-x-1"><Icon glyph="timer" class="text-sm text-gray-400" />' . format_duration($videoClip->job_duration, true) . '</div>' . '<div class="inline-flex items-center gap-x-1"><Icon glyph="calendar" class="text-sm text-gray-400" />' . relative_time($videoClip->job_ended_at) . '</div>' . '</div>'; } else { - $duration = '<div class="inline-flex items-center text-xs gap-x-1"><Icon glyph="timer" class="text-sm text-gray-400" />' . format_duration(($videoClip->job_started_at->difference(Time::now()))->getSeconds(), true) . '</div>'; + $duration = '<div class="inline-flex items-center font-mono text-xs gap-x-1"><Icon glyph="timer" class="text-sm text-gray-400" />' . format_duration(($videoClip->job_started_at->difference(Time::now()))->getSeconds(), true) . '</div>'; } }