From 1657eaedc95c4c7c2d215a7afd0b0a2eff922ddf Mon Sep 17 00:00:00 2001 From: dfurrer <none@none> Date: Thu, 14 Apr 2016 09:24:57 +0200 Subject: [PATCH] non-jira --- .../nodes/video/VideoEditController.java | 8 ++-- .../nodes/video/VideoPeekviewController.java | 2 +- .../nodes/video/VideoRunController.java | 6 +-- .../org/olat/modules/video/VideoModule.java | 1 + .../modules/video/_spring/videoContext.xml | 2 +- .../{managers => manager}/MediaMapper.java | 2 +- .../{managers => manager}/VideoManager.java | 2 +- .../VideoManagerImpl.java | 2 +- .../video/models/VideoQualityVersion.java | 11 ++++++ .../video/service/HandbrakeTranscoder.java | 4 +- .../video/service/TranscoderService.java | 15 ++------ .../video/ui/VideoDisplayController.java | 17 ++++++--- .../ui/VideoMetaDataEditFormController.java | 2 +- .../video/ui/VideoPosterEditController.java | 4 +- .../video/ui/VideoPosterSelectionForm.java | 4 +- .../video/ui/VideoPosterUploadForm.java | 5 +++ .../ui/VideoQualityTableFormController.java | 37 +++++++++++++++---- .../video/ui/VideoRuntimeController.java | 5 --- .../video/ui/VideoSettingsController.java | 2 +- .../video/ui/VideoTrackEditController.java | 2 +- .../repository/handlers/VideoHandler.java | 4 +- 21 files changed, 83 insertions(+), 54 deletions(-) rename src/main/java/org/olat/modules/video/{managers => manager}/MediaMapper.java (95%) rename src/main/java/org/olat/modules/video/{managers => manager}/VideoManager.java (98%) rename src/main/java/org/olat/modules/video/{managers => manager}/VideoManagerImpl.java (99%) diff --git a/src/main/java/org/olat/course/nodes/video/VideoEditController.java b/src/main/java/org/olat/course/nodes/video/VideoEditController.java index feffe2b50d1..cbde9381656 100644 --- a/src/main/java/org/olat/course/nodes/video/VideoEditController.java +++ b/src/main/java/org/olat/course/nodes/video/VideoEditController.java @@ -37,7 +37,7 @@ import org.olat.course.nodes.VideoCourseNode; import org.olat.course.run.userview.UserCourseEnvironment; import org.olat.fileresource.types.VideoFileResource; import org.olat.modules.ModuleConfiguration; -import org.olat.modules.video.managers.VideoManager; +import org.olat.modules.video.manager.VideoManager; import org.olat.modules.video.ui.VideoDisplayController; import org.olat.repository.RepositoryEntry; import org.olat.repository.RepositoryManager; @@ -171,13 +171,13 @@ public class VideoEditController extends ActivateableTabbableDefaultController switch(config.getStringValue(VideoEditController.CONFIG_KEY_DESCRIPTION_SELECT)){ case "resourceDescription": - previewController = new VideoDisplayController(ureq, getWindowControl(), re, config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), "", false, ""); + previewController = new VideoDisplayController(ureq, getWindowControl(), re, config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), "", false,false, ""); break; case "customDescription": - previewController = new VideoDisplayController(ureq, getWindowControl(), re, config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), "", true, config.getStringValue(VideoEditController.CONFIG_KEY_DESCRIPTION_CUSTOMTEXT)); + previewController = new VideoDisplayController(ureq, getWindowControl(), re, config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), "", true,false, config.getStringValue(VideoEditController.CONFIG_KEY_DESCRIPTION_CUSTOMTEXT)); break; case "none": - previewController = new VideoDisplayController(ureq, getWindowControl(), re, config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), "", true, ""); + previewController = new VideoDisplayController(ureq, getWindowControl(), re, config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), "", true,false, ""); break; } cmc = new CloseableModalController( diff --git a/src/main/java/org/olat/course/nodes/video/VideoPeekviewController.java b/src/main/java/org/olat/course/nodes/video/VideoPeekviewController.java index baacc298b7b..e8e00a8ea53 100644 --- a/src/main/java/org/olat/course/nodes/video/VideoPeekviewController.java +++ b/src/main/java/org/olat/course/nodes/video/VideoPeekviewController.java @@ -8,7 +8,7 @@ import org.olat.core.gui.control.Event; import org.olat.core.gui.control.WindowControl; import org.olat.core.gui.control.controller.BasicController; import org.olat.core.util.vfs.VFSContainer; -import org.olat.modules.video.managers.MediaMapper; +import org.olat.modules.video.manager.MediaMapper; public class VideoPeekviewController extends BasicController implements Controller{ diff --git a/src/main/java/org/olat/course/nodes/video/VideoRunController.java b/src/main/java/org/olat/course/nodes/video/VideoRunController.java index cc65bb9d790..2ad8eda1b72 100644 --- a/src/main/java/org/olat/course/nodes/video/VideoRunController.java +++ b/src/main/java/org/olat/course/nodes/video/VideoRunController.java @@ -121,13 +121,13 @@ public class VideoRunController extends BasicController { } switch(config.getStringValue(VideoEditController.CONFIG_KEY_DESCRIPTION_SELECT,"none")){ case "resourceDescription": - videoDispCtr = new VideoDisplayController(ureq, getWindowControl(), videoNode.getReferencedRepositoryEntry(), config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), videoNode.getIdent(), false, ""); + videoDispCtr = new VideoDisplayController(ureq, getWindowControl(), videoNode.getReferencedRepositoryEntry(), config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), videoNode.getIdent(), false, false, ""); break; case "customDescription": - videoDispCtr = new VideoDisplayController(ureq, getWindowControl(), videoNode.getReferencedRepositoryEntry(), config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), videoNode.getIdent(), true, config.getStringValue(VideoEditController.CONFIG_KEY_DESCRIPTION_CUSTOMTEXT)); + videoDispCtr = new VideoDisplayController(ureq, getWindowControl(), videoNode.getReferencedRepositoryEntry(), config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), videoNode.getIdent(), true, false, config.getStringValue(VideoEditController.CONFIG_KEY_DESCRIPTION_CUSTOMTEXT)); break; case "none": - videoDispCtr = new VideoDisplayController(ureq, getWindowControl(), videoNode.getReferencedRepositoryEntry(), config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), videoNode.getIdent(), true, ""); + videoDispCtr = new VideoDisplayController(ureq, getWindowControl(), videoNode.getReferencedRepositoryEntry(), config.getBooleanSafe(VideoEditController.CONFIG_KEY_AUTOPLAY), config.getBooleanSafe(VideoEditController.CONFIG_KEY_COMMENTS), config.getBooleanSafe(VideoEditController.CONFIG_KEY_RATING), videoNode.getIdent(), true, false, ""); break; } diff --git a/src/main/java/org/olat/modules/video/VideoModule.java b/src/main/java/org/olat/modules/video/VideoModule.java index 15095212ae9..ffba77cee21 100644 --- a/src/main/java/org/olat/modules/video/VideoModule.java +++ b/src/main/java/org/olat/modules/video/VideoModule.java @@ -27,6 +27,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; /** + * * Initial date: 23.2.2016<br> * @author dfakae, dirk.furrer@frentix.com, http://www.frentix.com * diff --git a/src/main/java/org/olat/modules/video/_spring/videoContext.xml b/src/main/java/org/olat/modules/video/_spring/videoContext.xml index ea8badeec03..0e8381d63c0 100644 --- a/src/main/java/org/olat/modules/video/_spring/videoContext.xml +++ b/src/main/java/org/olat/modules/video/_spring/videoContext.xml @@ -5,7 +5,7 @@ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> -<bean id="videoManager" class="org.olat.modules.video.managers.VideoManagerImpl"> +<bean id="videoManager" class="org.olat.modules.video.manager.VideoManagerImpl"> </bean> <bean id="transcodingService" class="org.olat.modules.video.service.TranscoderService"> diff --git a/src/main/java/org/olat/modules/video/managers/MediaMapper.java b/src/main/java/org/olat/modules/video/manager/MediaMapper.java similarity index 95% rename from src/main/java/org/olat/modules/video/managers/MediaMapper.java rename to src/main/java/org/olat/modules/video/manager/MediaMapper.java index aeb285412fd..a5ff9222635 100644 --- a/src/main/java/org/olat/modules/video/managers/MediaMapper.java +++ b/src/main/java/org/olat/modules/video/manager/MediaMapper.java @@ -1,4 +1,4 @@ -package org.olat.modules.video.managers; +package org.olat.modules.video.manager; import javax.servlet.http.HttpServletRequest; diff --git a/src/main/java/org/olat/modules/video/managers/VideoManager.java b/src/main/java/org/olat/modules/video/manager/VideoManager.java similarity index 98% rename from src/main/java/org/olat/modules/video/managers/VideoManager.java rename to src/main/java/org/olat/modules/video/manager/VideoManager.java index 918b0d94fd1..bc2575fcefb 100644 --- a/src/main/java/org/olat/modules/video/managers/VideoManager.java +++ b/src/main/java/org/olat/modules/video/manager/VideoManager.java @@ -17,7 +17,7 @@ * frentix GmbH, http://www.frentix.com * <p> */ -package org.olat.modules.video.managers; +package org.olat.modules.video.manager; import java.io.File; import java.io.IOException; diff --git a/src/main/java/org/olat/modules/video/managers/VideoManagerImpl.java b/src/main/java/org/olat/modules/video/manager/VideoManagerImpl.java similarity index 99% rename from src/main/java/org/olat/modules/video/managers/VideoManagerImpl.java rename to src/main/java/org/olat/modules/video/manager/VideoManagerImpl.java index 8d51498daa8..ce64b5fed63 100644 --- a/src/main/java/org/olat/modules/video/managers/VideoManagerImpl.java +++ b/src/main/java/org/olat/modules/video/manager/VideoManagerImpl.java @@ -1,4 +1,4 @@ -package org.olat.modules.video.managers; +package org.olat.modules.video.manager; import java.awt.image.BufferedImage; import java.io.File; diff --git a/src/main/java/org/olat/modules/video/models/VideoQualityVersion.java b/src/main/java/org/olat/modules/video/models/VideoQualityVersion.java index 15740f4b6dc..af619fe8c9d 100644 --- a/src/main/java/org/olat/modules/video/models/VideoQualityVersion.java +++ b/src/main/java/org/olat/modules/video/models/VideoQualityVersion.java @@ -1,9 +1,12 @@ package org.olat.modules.video.models; +import java.io.File; + import org.olat.core.commons.services.image.Size; public class VideoQualityVersion{ // Properties + File file; String type; String fileSize; Size dimension; @@ -56,4 +59,12 @@ public class VideoQualityVersion{ public void setIsTransforming(boolean isTranscoding) { this.isTransforming = isTranscoding; } + + public File getFile(){ + return file; + } + + public void setFile(File file){ + this.file = file; + } } \ No newline at end of file diff --git a/src/main/java/org/olat/modules/video/service/HandbrakeTranscoder.java b/src/main/java/org/olat/modules/video/service/HandbrakeTranscoder.java index b6a3d94692b..f61c7e54f8b 100644 --- a/src/main/java/org/olat/modules/video/service/HandbrakeTranscoder.java +++ b/src/main/java/org/olat/modules/video/service/HandbrakeTranscoder.java @@ -8,7 +8,7 @@ import org.olat.core.CoreSpringFactory; import org.olat.core.logging.OLog; import org.olat.core.logging.Tracing; import org.olat.fileresource.FileResourceManager; -import org.olat.modules.video.managers.VideoManager; +import org.olat.modules.video.manager.VideoManager; import org.olat.resource.OLATResource; public class HandbrakeTranscoder implements Transcoder { @@ -37,7 +37,6 @@ public class HandbrakeTranscoder implements Transcoder { pb.redirectErrorStream(true); pb.inheritIO(); - try { logger.info("+--------------------------HANDBRAKE STARTS TRANSCODING------------------------------------+"); Runtime.getRuntime().exec("HandBrakeCLI "+" -i "+file.getAbsolutePath()+" -o "+optimizedFolder.getAbsolutePath()+"/optimized_"+file.getName()+" --optimize"+" --preset Normal"); @@ -49,7 +48,6 @@ public class HandbrakeTranscoder implements Transcoder { } } - private boolean transcodeVideoRessourceLow(OLATResource video) { // TODO Auto-generated method stub return false; diff --git a/src/main/java/org/olat/modules/video/service/TranscoderService.java b/src/main/java/org/olat/modules/video/service/TranscoderService.java index fcefed9019b..ecc58ea10a8 100644 --- a/src/main/java/org/olat/modules/video/service/TranscoderService.java +++ b/src/main/java/org/olat/modules/video/service/TranscoderService.java @@ -1,7 +1,6 @@ package org.olat.modules.video.service; -import java.util.ServiceLoader; - +import org.olat.core.CoreSpringFactory; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -12,24 +11,16 @@ public class TranscoderService{ private static String transcodingProvider; private static TranscoderService service; - private static ServiceLoader<Transcoder> loader; private TranscoderService() { - loader = ServiceLoader.load(Transcoder.class); } public static synchronized TranscoderService getInstance() { if (service == null) { - service = new TranscoderService(); + service = CoreSpringFactory.getImpl(TranscoderService.class); } return service; } -// public static Transcoder getTrascoder(){ -// -// for (Transcoder transcoder : loader) { -// return transcoder; -// } -// -// } + } diff --git a/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java b/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java index b58135da6f7..0bde5202259 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java +++ b/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java @@ -43,8 +43,8 @@ import org.olat.core.util.vfs.VFSContainer; import org.olat.core.util.vfs.VFSItem; import org.olat.core.util.vfs.VFSLeaf; import org.olat.fileresource.FileResourceManager; -import org.olat.modules.video.managers.MediaMapper; -import org.olat.modules.video.managers.VideoManager; +import org.olat.modules.video.manager.MediaMapper; +import org.olat.modules.video.manager.VideoManager; import org.olat.repository.RepositoryEntry; import org.olat.resource.OLATResource; import org.springframework.beans.factory.annotation.Autowired; @@ -65,11 +65,15 @@ public class VideoDisplayController extends BasicController { public static final Event ENDED_EVENT = new Event("videoEnded"); + public VideoDisplayController(UserRequest ureq, WindowControl wControl, RepositoryEntry entry, boolean autoWidth) { + this(ureq, wControl, entry, false, false, false, null, false, autoWidth, null); + } + public VideoDisplayController(UserRequest ureq, WindowControl wControl, RepositoryEntry entry) { - this(ureq, wControl, entry, false, false, false, null, false, null); + this(ureq, wControl, entry, false, false, false, null, false, false, null); } - public VideoDisplayController(UserRequest ureq, WindowControl wControl, RepositoryEntry entry, Boolean autoplay, Boolean showComments, Boolean showRating, String OresSubPath, boolean customDescription, String descriptionText) { + public VideoDisplayController(UserRequest ureq, WindowControl wControl, RepositoryEntry entry, Boolean autoplay, Boolean showComments, Boolean showRating, String OresSubPath, boolean customDescription, boolean autoWidth, String descriptionText) { super(ureq, wControl); mainVC = createVelocityContainer("video_run"); @@ -96,7 +100,10 @@ public class VideoDisplayController extends BasicController { mainVC.contextPut("movie", filename); mainVC.contextPut("mediaUrl", mediaUrl); Size realSize = movieService.getSize(video, extension); - if(realSize != null) { + if(autoWidth){ + mainVC.contextPut("height", 480); + mainVC.contextPut("width", "100%"); + } else if(realSize != null) { mainVC.contextPut("height", realSize.getHeight()); mainVC.contextPut("width", realSize.getWidth()); } else { diff --git a/src/main/java/org/olat/modules/video/ui/VideoMetaDataEditFormController.java b/src/main/java/org/olat/modules/video/ui/VideoMetaDataEditFormController.java index ec0a40d5cd7..0141476929f 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoMetaDataEditFormController.java +++ b/src/main/java/org/olat/modules/video/ui/VideoMetaDataEditFormController.java @@ -12,7 +12,7 @@ import org.olat.core.gui.components.form.flexible.elements.StaticTextElement; import org.olat.core.gui.components.form.flexible.impl.FormBasicController; import org.olat.core.gui.control.Controller; import org.olat.core.gui.control.WindowControl; -import org.olat.modules.video.managers.VideoManager; +import org.olat.modules.video.manager.VideoManager; import org.olat.resource.OLATResource; import org.springframework.beans.factory.annotation.Autowired; diff --git a/src/main/java/org/olat/modules/video/ui/VideoPosterEditController.java b/src/main/java/org/olat/modules/video/ui/VideoPosterEditController.java index fb32293e5b0..248fe5b132c 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoPosterEditController.java +++ b/src/main/java/org/olat/modules/video/ui/VideoPosterEditController.java @@ -17,8 +17,8 @@ import org.olat.core.helpers.Settings; import org.olat.core.util.vfs.VFSContainer; import org.olat.core.util.vfs.VFSLeaf; import org.olat.fileresource.FileResourceManager; -import org.olat.modules.video.managers.MediaMapper; -import org.olat.modules.video.managers.VideoManager; +import org.olat.modules.video.manager.MediaMapper; +import org.olat.modules.video.manager.VideoManager; import org.olat.resource.OLATResource; import org.springframework.beans.factory.annotation.Autowired; diff --git a/src/main/java/org/olat/modules/video/ui/VideoPosterSelectionForm.java b/src/main/java/org/olat/modules/video/ui/VideoPosterSelectionForm.java index 167d3135cf1..d53c92ed8ef 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoPosterSelectionForm.java +++ b/src/main/java/org/olat/modules/video/ui/VideoPosterSelectionForm.java @@ -27,8 +27,8 @@ import org.olat.core.util.vfs.VFSContainer; import org.olat.core.util.vfs.VFSLeaf; import org.olat.core.util.vfs.VFSManager; import org.olat.fileresource.FileResourceManager; -import org.olat.modules.video.managers.MediaMapper; -import org.olat.modules.video.managers.VideoManager; +import org.olat.modules.video.manager.MediaMapper; +import org.olat.modules.video.manager.VideoManager; import org.olat.resource.OLATResource; public class VideoPosterSelectionForm extends BasicController { diff --git a/src/main/java/org/olat/modules/video/ui/VideoPosterUploadForm.java b/src/main/java/org/olat/modules/video/ui/VideoPosterUploadForm.java index e6452a2dd77..2c9ede1dd63 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoPosterUploadForm.java +++ b/src/main/java/org/olat/modules/video/ui/VideoPosterUploadForm.java @@ -18,6 +18,11 @@ import org.olat.core.util.vfs.VFSContainer; import org.olat.core.util.vfs.VFSManager; import org.olat.fileresource.FileResourceManager; import org.olat.resource.OLATResource; +/** + * Videoposter upload form for create a + * @author dfakae + * + */ public class VideoPosterUploadForm extends FormBasicController { private OLATResource videoResource; diff --git a/src/main/java/org/olat/modules/video/ui/VideoQualityTableFormController.java b/src/main/java/org/olat/modules/video/ui/VideoQualityTableFormController.java index 16bfed07885..c9e1b4d2159 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoQualityTableFormController.java +++ b/src/main/java/org/olat/modules/video/ui/VideoQualityTableFormController.java @@ -6,10 +6,12 @@ import java.util.List; import org.apache.commons.io.FileUtils; import org.olat.core.commons.services.image.Size; import org.olat.core.gui.UserRequest; +import org.olat.core.gui.components.form.flexible.FormItem; import org.olat.core.gui.components.form.flexible.FormItemContainer; import org.olat.core.gui.components.form.flexible.elements.FlexiTableElement; import org.olat.core.gui.components.form.flexible.elements.FormLink; import org.olat.core.gui.components.form.flexible.impl.FormBasicController; +import org.olat.core.gui.components.form.flexible.impl.FormEvent; import org.olat.core.gui.components.form.flexible.impl.FormLayoutContainer; import org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiColumnModel; import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableColumnModel; @@ -17,27 +19,37 @@ import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTable import org.olat.core.gui.components.link.Link; import org.olat.core.gui.control.Controller; import org.olat.core.gui.control.WindowControl; -import org.olat.modules.video.managers.VideoManager; +import org.olat.core.gui.control.generic.closablewrapper.CloseableModalController; +import org.olat.modules.video.manager.VideoManager; import org.olat.modules.video.models.VideoQualityTableModel; -import org.olat.modules.video.models.VideoQualityVersion; import org.olat.modules.video.models.VideoQualityTableModel.QualityTableCols; +import org.olat.modules.video.models.VideoQualityVersion; +import org.olat.repository.RepositoryEntry; import org.olat.resource.OLATResource; import org.springframework.beans.factory.annotation.Autowired; - +/** + * table to show the different available qualityversions of a video ressource + * @author Dirk Furrer + * + */ public class VideoQualityTableFormController extends FormBasicController { private FlexiTableElement tableEl; private VideoQualityTableModel tableModel; + private FormLink viewButton; + private CloseableModalController cmc; @Autowired private VideoManager videoManager; private OLATResource videoResource; + private RepositoryEntry videoEntry; - public VideoQualityTableFormController(UserRequest ureq, WindowControl wControl, OLATResource videoResource) { + public VideoQualityTableFormController(UserRequest ureq, WindowControl wControl, RepositoryEntry videoEntry) { super(ureq, wControl, LAYOUT_VERTICAL); - this.videoResource = videoResource; + this.videoResource = videoEntry.getOlatResource(); + this.videoEntry = videoEntry; initForm(ureq); } @@ -58,15 +70,14 @@ public class VideoQualityTableFormController extends FormBasicController { tableModel = new VideoQualityTableModel(columnsModel, getTranslator()); List<QualityTableRow> rows = new ArrayList<QualityTableRow>(); - Size origSize = videoManager.getVideoSize(videoResource); - - FormLink viewButton = uifactory.addFormLink("view", "viewQuality", "quality.view", "qulaity.view", null, Link.LINK); + viewButton = uifactory.addFormLink("view", "viewQuality", "quality.view", "qulaity.view", null, Link.LINK); rows.add(new QualityTableRow("original", origSize.getWidth() +"x"+ origSize.getHeight(), FileUtils.byteCountToDisplaySize(videoManager.getVideoFile(videoResource).length()), "mp4",viewButton)); List<VideoQualityVersion> versions = videoManager.getQualityVersions(videoResource); for(VideoQualityVersion version:versions){ + viewButton = uifactory.addFormLink(version.getType(), "viewQuality", "quality.view", "qulaity.view", null, Link.LINK); rows.add(new QualityTableRow(version.getType(), version.getDimension().getWidth() +"x"+ version.getDimension().getHeight(), version.getFileSize(), version.getFormat(),viewButton)); } @@ -74,6 +85,16 @@ public class VideoQualityTableFormController extends FormBasicController { tableEl = uifactory.addTableElement(getWindowControl(), "qualities", tableModel, getTranslator(), generalCont); tableEl.setCustomizeColumns(false); } + + @Override + protected void formInnerEvent(UserRequest ureq, FormItem source, FormEvent event) { + if(source == viewButton){ + + VideoDisplayController videoDispController = new VideoDisplayController(ureq, getWindowControl(), videoEntry, true); + cmc = new CloseableModalController(getWindowControl(), "close", videoDispController.getInitialComponent()); + cmc.activate(); + } + } @Override protected void formOK(UserRequest ureq) { diff --git a/src/main/java/org/olat/modules/video/ui/VideoRuntimeController.java b/src/main/java/org/olat/modules/video/ui/VideoRuntimeController.java index b3f6ff5bef0..2452b229e64 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoRuntimeController.java +++ b/src/main/java/org/olat/modules/video/ui/VideoRuntimeController.java @@ -28,11 +28,9 @@ import org.olat.core.gui.components.link.LinkFactory; import org.olat.core.gui.control.Controller; import org.olat.core.gui.control.Event; import org.olat.core.gui.control.WindowControl; -import org.olat.modules.video.managers.VideoManager; import org.olat.repository.RepositoryEntry; import org.olat.repository.model.RepositoryEntrySecurity; import org.olat.repository.ui.RepositoryEntryRuntimeController; -import org.springframework.beans.factory.annotation.Autowired; /** * @@ -46,9 +44,6 @@ public class VideoRuntimeController extends RepositoryEntryRuntimeController { private Link settingsLink; - @Autowired - private VideoManager videoManager; - public VideoRuntimeController(UserRequest ureq, WindowControl wControl, RepositoryEntry re, RepositoryEntrySecurity reSecurity, RuntimeControllerCreator runtimeControllerCreator) { super(ureq, wControl, re, reSecurity, runtimeControllerCreator); diff --git a/src/main/java/org/olat/modules/video/ui/VideoSettingsController.java b/src/main/java/org/olat/modules/video/ui/VideoSettingsController.java index 9a90b3ec685..249d69a4037 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoSettingsController.java +++ b/src/main/java/org/olat/modules/video/ui/VideoSettingsController.java @@ -101,7 +101,7 @@ public class VideoSettingsController extends BasicController { private void doOpenQualityConfig(UserRequest ureq) { if(qualityEditController == null) { - qualityEditController = new VideoQualityTableFormController(ureq, getWindowControl(), entry.getOlatResource()); + qualityEditController = new VideoQualityTableFormController(ureq, getWindowControl(), entry); } mainVC.put("segmentCmp", qualityEditController.getInitialComponent()); } diff --git a/src/main/java/org/olat/modules/video/ui/VideoTrackEditController.java b/src/main/java/org/olat/modules/video/ui/VideoTrackEditController.java index 01b309d883d..0cf711f67d0 100644 --- a/src/main/java/org/olat/modules/video/ui/VideoTrackEditController.java +++ b/src/main/java/org/olat/modules/video/ui/VideoTrackEditController.java @@ -23,7 +23,7 @@ import org.olat.core.gui.control.Event; import org.olat.core.gui.control.WindowControl; import org.olat.core.gui.control.generic.closablewrapper.CloseableModalController; import org.olat.core.util.vfs.VFSLeaf; -import org.olat.modules.video.managers.VideoManager; +import org.olat.modules.video.manager.VideoManager; import org.olat.modules.video.models.VideoTracksTableModel; import org.olat.modules.video.models.VideoTracksTableModel.TrackTableCols; import org.olat.resource.OLATResource; diff --git a/src/main/java/org/olat/repository/handlers/VideoHandler.java b/src/main/java/org/olat/repository/handlers/VideoHandler.java index e887c2275a0..d210de184b8 100644 --- a/src/main/java/org/olat/repository/handlers/VideoHandler.java +++ b/src/main/java/org/olat/repository/handlers/VideoHandler.java @@ -60,7 +60,7 @@ import org.olat.fileresource.types.FileResource; import org.olat.fileresource.types.ResourceEvaluation; import org.olat.fileresource.types.VideoFileResource; import org.olat.modules.video.VideoModule; -import org.olat.modules.video.managers.VideoManager; +import org.olat.modules.video.manager.VideoManager; import org.olat.modules.video.models.VideoMetadata; import org.olat.modules.video.ui.VideoDisplayController; import org.olat.modules.video.ui.VideoRuntimeController; @@ -74,7 +74,7 @@ import org.olat.resource.OLATResourceManager; import org.springframework.beans.factory.annotation.Autowired; -/** +/** * Initial Date: Mar 27, 2015 * * @author Dirk Furrer -- GitLab