1
0
mirror of https://github.com/sismics/docs.git synced 2026-01-24 22:17:28 +00:00

Closes #53: Build thumbnails for DOCX and ODT files

This commit is contained in:
jendib
2015-12-11 22:00:44 +01:00
parent 1a37d97a61
commit 7708f61343
10 changed files with 228 additions and 118 deletions

View File

@@ -146,8 +146,14 @@ public class FileResource extends BaseResource {
file.setUserId(principal.getId());
String fileId = fileDao.create(file);
// Guess the mime type a second time, for open document format (first detected as simple ZIP file)
file.setMimeType(MimeTypeUtil.guessOpenDocumentFormat(file, fileInputStream));
// Convert to PDF if necessary (for thumbnail and text extraction)
InputStream pdfIntputStream = FileUtil.convertToPdf(fileInputStream, file);
// Save the file
FileUtil.save(fileInputStream, file, user.getPrivateKey());
FileUtil.save(fileInputStream, pdfIntputStream, file, user.getPrivateKey());
// Update the user quota
user.setStorageCurrent(user.getStorageCurrent() + fileData.length);
@@ -159,6 +165,7 @@ public class FileResource extends BaseResource {
fileCreatedAsyncEvent.setDocument(document);
fileCreatedAsyncEvent.setFile(file);
fileCreatedAsyncEvent.setInputStream(fileInputStream);
fileCreatedAsyncEvent.setPdfInputStream(pdfIntputStream);
AppContext.getInstance().getAsyncEventBus().post(fileCreatedAsyncEvent);
}

View File

@@ -39,7 +39,8 @@
<label class="col-sm-2 control-label" for="inputFiles">New files</label>
<div class="col-sm-6">
<file class="form-control" id="inputFiles" multiple="multiple" ng-model="newFiles"
accept="image/png,image/jpg,image/jpeg,image/gif,application/pdf" ng-disabled="fileIsUploading"></file>
accept="image/png,image/jpg,image/jpeg,image/gif,application/pdf,application/vnd.oasis.opendocument.text,application/vnd.openxmlformats-officedocument.wordprocessingml.document"
ng-disabled="fileIsUploading"></file>
</div>
<div class="col-sm-4" ng-if="orphanFiles.length > 0">
+ {{ orphanFiles.length }} file{{ orphanFiles.length > 1 ? 's' : '' }}