diff options
author | Robin Appelman <icewind@owncloud.com> | 2013-08-07 16:53:09 +0200 |
---|---|---|
committer | Robin Appelman <icewind@owncloud.com> | 2013-08-07 16:53:09 +0200 |
commit | 9321eceed6a94f74ccdb908c05e97dfb1585d211 (patch) | |
tree | 1bf5a557c92a527b2b0017ec22329621ead2e486 /lib | |
parent | fc332acf8a8ecff6cebd929a24e008648138a46d (diff) | |
download | nextcloud-server-9321eceed6a94f74ccdb908c05e97dfb1585d211.tar.gz nextcloud-server-9321eceed6a94f74ccdb908c05e97dfb1585d211.zip |
add the option to have templates for newly created files
Diffstat (limited to 'lib')
-rw-r--r-- | lib/files/type/templatemanager.php | 46 | ||||
-rw-r--r-- | lib/helper.php | 14 |
2 files changed, 60 insertions, 0 deletions
diff --git a/lib/files/type/templatemanager.php b/lib/files/type/templatemanager.php new file mode 100644 index 00000000000..cd1536d2732 --- /dev/null +++ b/lib/files/type/templatemanager.php @@ -0,0 +1,46 @@ +<?php +/** + * Copyright (c) 2013 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OC\Files\Type; + +class TemplateManager { + protected $templates = array(); + + public function registerTemplate($mimetype, $path) { + $this->templates[$mimetype] = $path; + } + + /** + * get the path of the template for a mimetype + * + * @param string $mimetype + * @return string | null + */ + public function getTemplatePath($mimetype) { + if (isset($this->templates[$mimetype])) { + return $this->templates[$mimetype]; + } else { + return null; + } + } + + /** + * get the template content for a mimetype + * + * @param string $mimetype + * @return string + */ + public function getTemplate($mimetype) { + $path = $this->getTemplatePath($mimetype); + if ($path) { + return file_get_contents($path); + } else { + return ''; + } + } +} diff --git a/lib/helper.php b/lib/helper.php index 801f06352d0..8b64baaea72 100644 --- a/lib/helper.php +++ b/lib/helper.php @@ -28,6 +28,7 @@ class OC_Helper { private static $tmpFiles = array(); private static $mimetypeIcons = array(); private static $mimetypeDetector; + private static $templateManager; /** * @brief Creates an url using a defined route @@ -357,6 +358,9 @@ class OC_Helper { } } + /** + * @return \OC\Files\Type\Detection + */ static public function getMimetypeDetector() { if (!self::$mimetypeDetector) { self::$mimetypeDetector = new \OC\Files\Type\Detection(); @@ -366,6 +370,16 @@ class OC_Helper { } /** + * @return \OC\Files\Type\TemplateManager + */ + static public function getFileTemplateManager() { + if (!self::$templateManager) { + self::$templateManager = new \OC\Files\Type\TemplateManager(); + } + return self::$templateManager; + } + + /** * Try to guess the mimetype based on filename * * @param string $path |