diff --git a/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy b/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy index 23bc08cc01b3a26f0ce5d964e57fb5ed3b15ce50..a22341083ec9161a945ac302671d5c0dcd37c201 100755 --- a/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy +++ b/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy @@ -19,6 +19,7 @@ package org.bigbluebutton.web.controllers import javax.servlet.ServletRequest; + import java.net.URI; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; @@ -28,7 +29,9 @@ import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; + import org.apache.commons.codec.binary.Base64; +import org.apache.commons.io.FilenameUtils; import org.apache.commons.lang.RandomStringUtils; import org.apache.commons.lang.StringUtils; import org.bigbluebutton.api.domain.Config; @@ -2057,9 +2060,8 @@ class ApiController { } } - def processDocumentFromRawBytes(bytes, presFilename, meetingId) { - def filenameExt = Util.getFilenameExt(presFilename); + def filenameExt = FilenameUtils.getExtension(presFilename); String presentationDir = presentationService.getPresentationDir() def presId = Util.generatePresentationId(presFilename) File uploadDir = Util.createPresentationDirectory(meetingId, presentationDir, presId) @@ -2080,7 +2082,7 @@ class ApiController { def downloadAndProcessDocument(address, meetingId) { log.debug("ApiController#downloadAndProcessDocument(${address}, ${meetingId})"); String presFilename = address.tokenize("/")[-1]; - def filenameExt = presDownloadService.getFilenameExt(presFilename); + def filenameExt = FilenameUtils.getExtension(presFilename); String presentationDir = presentationService.getPresentationDir() def presId = presDownloadService.generatePresentationId(presFilename) diff --git a/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/PresentationController.groovy b/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/PresentationController.groovy index 89e86820053ad7f13d9654992ea218903dafa205..5fbe9af222c34e9cd43f6339cf619be07a1d1d50 100755 --- a/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/PresentationController.groovy +++ b/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/PresentationController.groovy @@ -19,6 +19,8 @@ package org.bigbluebutton.web.controllers import grails.converters.* + +import org.apache.commons.io.FilenameUtils; import org.bigbluebutton.web.services.PresentationService import org.bigbluebutton.presentation.UploadedPresentation import org.bigbluebutton.api.MeetingService; @@ -48,7 +50,7 @@ class PresentationController { if (file && !file.empty) { flash.message = 'Your file has been uploaded' def presFilename = file.getOriginalFilename() - def filenameExt = Util.getFilenameExt(presFilename); + def filenameExt = FilenameUtils.getExtension(presFilename); String presentationDir = presentationService.getPresentationDir() def presId = Util.generatePresentationId(presFilename) File uploadDir = Util.createPresentationDirectory(meetingId, presentationDir, presId) diff --git a/bigbluebutton-web/src/java/org/bigbluebutton/api/Util.java b/bigbluebutton-web/src/java/org/bigbluebutton/api/Util.java index a8bbf7cff5de36a4f7cd4e53e34ff160cfebc7e2..03fa29f24d3c40d4cbc6c74607abdbddad53877e 100755 --- a/bigbluebutton-web/src/java/org/bigbluebutton/api/Util.java +++ b/bigbluebutton-web/src/java/org/bigbluebutton/api/Util.java @@ -10,10 +10,6 @@ public final class Util { return DigestUtils.shaHex(name) + "-" + timestamp; } - public static String getFilenameExt(String filename) { - return filename.substring(filename.lastIndexOf(".")); - } - public static String createNewFilename(String presId, String fileExt) { return presId + fileExt; }