From e63342f3e646a7e7d77818220b064d6a36df212d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20Gn=C3=A4gi?= <gnaegi@frentix.com>
Date: Wed, 27 Nov 2019 15:59:57 +0100
Subject: [PATCH] OO-4380 check video format instead of parsing host

---
 .../modules/video/ui/VideoDisplayController.java  | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

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 acd83d6d2a7..9a42c5f10fd 100644
--- a/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java
+++ b/src/main/java/org/olat/modules/video/ui/VideoDisplayController.java
@@ -351,11 +351,10 @@ public class VideoDisplayController extends BasicController {
 	
 	private void loadVideo(UserRequest ureq, String url, VideoFormat format) {
 		mainVC.contextPut("externalUrlOriginal", url);
-		URIBuilder uriBuilder;
-		try {
-			uriBuilder = new URIBuilder(url);
-			// Check if this is a vimeo video
-			if (uriBuilder.getHost().indexOf("vimeo") != -1) {
+		if (VideoFormat.vimeo.equals(format)) {
+			URIBuilder uriBuilder;
+			try {
+				uriBuilder = new URIBuilder(url);
 				// Vimeo allows removing the controls when using the payed service. It ignores the parameter
 				// for the free service, so it is save to use it. We use the URIBuilder method in case the
 				// user already added that parameter or if he uses some other parameters
@@ -367,9 +366,9 @@ public class VideoDisplayController extends BasicController {
 					uriBuilder.setPath(uriBuilder.getPathSegments().get(0));
 				}
 				url = uriBuilder.build().toString();
-			}
-		} catch (URISyntaxException e) {
-			logWarn("Error while parsing URL from external video source URL::" + url, e);
+			} catch (URISyntaxException e) {
+				logWarn("Error while parsing URL from external video source URL::" + url, e);
+			}			
 		}
 	    
 		mainVC.contextPut("externalUrl", url);
-- 
GitLab