diff --git a/lib/Alchemy/Phrasea/Controller/Prod/ToolsController.php b/lib/Alchemy/Phrasea/Controller/Prod/ToolsController.php index 86adee6158..7672ff9190 100644 --- a/lib/Alchemy/Phrasea/Controller/Prod/ToolsController.php +++ b/lib/Alchemy/Phrasea/Controller/Prod/ToolsController.php @@ -456,34 +456,6 @@ class ToolsController extends Controller return $this->app->json(['success' => true, 'errorMessage' => '']); } - /** - * @param Request $request - * @return \Symfony\Component\HttpFoundation\JsonResponse - */ - public function getVideoTextTrackField(Request $request) - { - $records = RecordsRequest::fromRequest($this->app, $request, false); - $videoTextTrackField = []; - - if (count($records) == 1) { - /** @var \record_adapter $record */ - $record = $records->first(); - $databox = $record->getDatabox(); - - - foreach ($databox->get_meta_structure() as $meta) { - if (preg_match('/^VideoTextTrack(.*)$/iu', $meta->get_name(), $matches) && !empty($matches[1]) && strlen($matches[1]) == 2 ) { - $field['label'] = $matches[1]; - $field['meta_struct_id'] = $meta->get_id(); - $videoTextTrackField[] = $field; - unset($field); - } - } - } - - return $this->app->json($videoTextTrackField); - } - public function videoEditorAction(Request $request) { $records = RecordsRequest::fromRequest($this->app, $request, false); @@ -491,6 +463,7 @@ class ToolsController extends Controller $metadatas = false; $record = null; $JSFields = []; + $videoTextTrackFields = []; if (count($records) == 1) { /** @var \record_adapter $record */ @@ -508,6 +481,13 @@ class ToolsController extends Controller 'name' => $meta->get_name(), '_value' => $record->getCaption([$meta->get_name()]), ]; + + if (preg_match('/^VideoTextTrack(.*)$/iu', $meta->get_name(), $matches) && !empty($matches[1]) && strlen($matches[1]) == 2 ) { + $field['label'] = $matches[1]; + $field['meta_struct_id'] = $meta->get_id(); + $videoTextTrackFields[] = $field; + unset($field); + } } if (!$record->isStory()) { @@ -517,11 +497,12 @@ class ToolsController extends Controller $conf = $this->getConf(); return $this->render('prod/actions/Tools/videoEditor.html.twig', [ - 'records' => $records, - 'record' => $record, - 'videoEditorConfig' => $conf->get(['video-editor']), - 'metadatas' => $metadatas, - 'JSonFields' => json_encode($JSFields), + 'records' => $records, + 'record' => $record, + 'videoEditorConfig' => $conf->get(['video-editor']), + 'metadatas' => $metadatas, + 'JSonFields' => json_encode($JSFields), + 'videoTextTrackFields' => $videoTextTrackFields ]); } } diff --git a/lib/Alchemy/Phrasea/ControllerProvider/Prod/Tools.php b/lib/Alchemy/Phrasea/ControllerProvider/Prod/Tools.php index b3def8e65f..8d6932aecf 100644 --- a/lib/Alchemy/Phrasea/ControllerProvider/Prod/Tools.php +++ b/lib/Alchemy/Phrasea/ControllerProvider/Prod/Tools.php @@ -73,7 +73,6 @@ class Tools implements ControllerProviderInterface, ServiceProviderInterface ->bind('prod_tools_metadata_save'); $controllers->get('/videoEditor', 'controller.prod.tools:videoEditorAction'); - $controllers->get('/videoTextTrack/field', 'controller.prod.tools:getVideoTextTrackField'); return $controllers; } diff --git a/templates/web/prod/actions/Tools/videoEditor.html.twig b/templates/web/prod/actions/Tools/videoEditor.html.twig index bf7fd3855f..c745b255b2 100644 --- a/templates/web/prod/actions/Tools/videoEditor.html.twig +++ b/templates/web/prod/actions/Tools/videoEditor.html.twig @@ -183,13 +183,16 @@
- + {% for videoTextTrackField in videoTextTrackFields %} + + {% endfor %}
- - - + + +