Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/richdocuments.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2019-04-17 16:44:31 +0300
committerGitHub <noreply@github.com>2019-04-17 16:44:31 +0300
commit83cfbe2e451abfbad3468ea50f3c08865aafae67 (patch)
treec4f3fd8628e4c81d12d663966b36e4b47dd99b55 /lib
parentf269b915bd915ed0724db1ded275d856a1903364 (diff)
parentb4c11f406c62a27429fdb8231209f9d58d3c6f93 (diff)
Merge pull request #472 from nextcloud/bugfix/noid/ooxml-templates
Provide ooxml file extensions when set in templates
Diffstat (limited to 'lib')
-rw-r--r--lib/TemplateManager.php25
1 files changed, 18 insertions, 7 deletions
diff --git a/lib/TemplateManager.php b/lib/TemplateManager.php
index 19a7d4cb..2a0be059 100644
--- a/lib/TemplateManager.php
+++ b/lib/TemplateManager.php
@@ -73,6 +73,18 @@ class TemplateManager {
'presentation' => self::MIMES_PRESENTATIONS
];
+ public const TYPE_EXTENTION = [
+ 'document' => 'odt',
+ 'spreadsheet' => 'ods',
+ 'presentation' => 'odp'
+ ];
+
+ public const TYPE_EXTENSION_OOXML = [
+ 'document' => 'docx',
+ 'spreadsheet' => 'xlsx',
+ 'presentation' => 'pptx'
+ ];
+
const EMPTY_TEMPLATE_ID_TYPE = [
-1 => 'document',
-2 => 'spreadsheet',
@@ -83,11 +95,6 @@ class TemplateManager {
'spreadsheet' => -2,
'presentation' => -3,
];
- const TYPE_EXTENTION = [
- 'document' => 'odt',
- 'spreadsheet' => 'ods',
- 'presentation' => 'odp',
- ];
/**
@@ -419,13 +426,15 @@ class TemplateManager {
* @return array
*/
public function formatNodeReturn(File $template) {
+ $ooxml = $this->config->getAppValue($this->appName, 'doc_format', '') === 'ooxml';
+ $documentType = $this->flipTypes()[$template->getMimeType()];
return [
'id' => $template->getId(),
'name' => $template->getName(),
'preview' => $this->urlGenerator->linkToRouteAbsolute('richdocuments.templates.getPreview', ['fileId' => $template->getId()]),
'type' => $this->flipTypes()[$template->getMimeType()],
'delete' => $this->urlGenerator->linkToRouteAbsolute('richdocuments.templates.delete', ['fileId' => $template->getId()]),
- 'extension' => self::TYPE_EXTENTION[$this->flipTypes()[$template->getMimeType()]],
+ 'extension' => $ooxml ? self::TYPE_EXTENSION_OOXML[$documentType] : self::TYPE_EXTENTION[$documentType],
];
}
@@ -446,11 +455,13 @@ class TemplateManager {
}
public function formatEmpty(File $template) {
+ $ooxml = $this->config->getAppValue($this->appName, 'doc_format', '') === 'ooxml';
+ $documentType = $this->flipTypes()[$template->getMimeType()];
return [
'id' => $template->getId(),
'name' => $this->l->t('Empty'),
'type' => $this->flipTypes()[$template->getMimeType()],
- 'extension' => self::TYPE_EXTENTION[$this->flipTypes()[$template->getMimeType()]],
+ 'extension' => $ooxml ? self::TYPE_EXTENSION_OOXML[$documentType] : self::TYPE_EXTENTION[$documentType],
];
}
}