]> _ Git - fluidbook_tools.git/commitdiff
wip #7259 @1
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Tue, 22 Apr 2025 17:46:11 +0000 (19:46 +0200)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Tue, 22 Apr 2025 17:46:11 +0000 (19:46 +0200)
src/Links/Link.php
src/Links/VideoLink.php

index 0a4773a16356ef0fad328c84ea90dd3c3598b577..95699e6ebb0e676c3dc834b1a0037f00c49ba870 100644 (file)
@@ -133,6 +133,7 @@ class Link
     public $transition;
     public $polygon = '';
     public $cursor = '';
+    public $tracks;
     public $blinkdelay = 0;
     public $stats = [];
     public $visibility_os = 'all';
index 16552a3090aa98bdf693ebbed742b6c28c773c69..be3110f3d8bb4104a9f2202477a26a9ed20b9c52 100644 (file)
@@ -35,7 +35,6 @@ class VideoLink extends Link
     {
         if (!Url::isDistant($this->to)) {
             $this->copyExternalFile($this->to, true);
-
         }
 
         $w = round($this->width * $this->getCssScale());
@@ -87,7 +86,15 @@ class VideoLink extends Link
         $attr['hidelinksonplay'] = $data->hidelinksonplay;
         $attr['link-id'] = $data->uid;
         $attr['backgroundcolor'] = $data->backgroundColor ?? '#000000';
-        $attr['repeat'] = $data->repeat??-1;
+        $attr['repeat'] = $data->repeat ?? -1;
+        $tracks=$data->tracks ? [['src' => $data->tracks, 'kind' => 'captions', 'lang' => $compiler->getFluidbook()->locale]] : [];
+        $attr['tracks'] = json_encode($tracks);
+
+        foreach ($tracks as $track) {
+            if (!Url::isDistant($track['src'])) {
+                $compiler->copyLinkFile($track['src'], 'data/links/',false);
+            }
+        }
 
         if (!is_null($w) && !is_null($h)) {
             $attr['width'] = $w;