summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rwxr-xr-xlib/preview.php29
-rw-r--r--lib/preview/images.php2
-rw-r--r--lib/preview/libreoffice-cl.php10
-rw-r--r--lib/preview/movies.php2
-rw-r--r--lib/preview/mp3.php2
-rw-r--r--lib/preview/msoffice.php12
-rw-r--r--lib/preview/pdf.php2
-rw-r--r--lib/preview/svg.php2
-rw-r--r--lib/preview/txt.php6
-rw-r--r--lib/preview/unknown.php2
10 files changed, 39 insertions, 30 deletions
diff --git a/lib/preview.php b/lib/preview.php
index cc287595f40..73e01a9e552 100755
--- a/lib/preview.php
+++ b/lib/preview.php
@@ -44,10 +44,6 @@ class Preview {
//preview images object
private $preview;
- //preview providers
- static private $providers = array();
- static private $registeredProviders = array();
-
/**
* @brief check if thumbnail or bigger version of thumbnail of file is cached
* @param string $user userid - if no user is given, OC_User::getUser will be used
@@ -82,11 +78,13 @@ class Preview {
$this->preview = null;
//check if there are preview backends
- if(empty(self::$providers)) {
- self::initProviders();
+ $providers = PreviewManager::getProviders();
+ if(empty($providers)) {
+ PreviewManager::initProviders();
}
- if(empty(self::$providers)) {
+ $providers = PreviewManager::getProviders();
+ if(empty($providers)) {
\OC_Log::write('core', 'No preview providers exist', \OC_Log::ERROR);
throw new \Exception('No preview providers');
}
@@ -380,7 +378,8 @@ class Preview {
$mimetype = $this->fileview->getMimeType($file);
$preview = null;
- foreach(self::$providers as $supportedmimetype => $provider) {
+ $providers = PreviewManager::getProviders();
+ foreach($providers as $supportedmimetype => $provider) {
if(!preg_match($supportedmimetype, $mimetype)) {
continue;
}
@@ -544,6 +543,16 @@ class Preview {
return;
}
}
+}
+
+class PreviewManager {
+ //preview providers
+ static private $providers = array();
+ static private $registeredProviders = array();
+
+ public static function getProviders() {
+ return self::$providers;
+ }
/**
* @brief register a new preview provider to be used
@@ -559,7 +568,7 @@ class Preview {
* @brief create instances of all the registered preview providers
* @return void
*/
- private static function initProviders() {
+ public static function initProviders() {
if(count(self::$providers)>0) {
return;
}
@@ -766,7 +775,7 @@ class Preview {
$preview->deleteAllPreviews();
}
- private static function showErrorPreview() {
+ public static function showErrorPreview() {
$path = \OC::$SERVERROOT . '/core/img/actions/delete.png';
$preview = new \OC_Image($path);
$preview->preciseResize(44, 44);
diff --git a/lib/preview/images.php b/lib/preview/images.php
index 987aa9aef0a..84ab9f1ae43 100644
--- a/lib/preview/images.php
+++ b/lib/preview/images.php
@@ -30,4 +30,4 @@ class Image extends Provider {
}
}
-\OC\Preview::registerProvider('OC\Preview\Image'); \ No newline at end of file
+\OC\PreviewManager::registerProvider('OC\Preview\Image'); \ No newline at end of file
diff --git a/lib/preview/libreoffice-cl.php b/lib/preview/libreoffice-cl.php
index 2749c4867e9..ffe8de505f7 100644
--- a/lib/preview/libreoffice-cl.php
+++ b/lib/preview/libreoffice-cl.php
@@ -80,7 +80,7 @@ class MSOfficeDoc extends Office {
}
-\OC\Preview::registerProvider('OC\Preview\MSOfficeDoc');
+\OC\PreviewManager::registerProvider('OC\Preview\MSOfficeDoc');
//.docm, .dotm, .xls(m), .xlt(m), .xla(m), .ppt(m), .pot(m), .pps(m), .ppa(m)
class MSOffice2003 extends Office {
@@ -91,7 +91,7 @@ class MSOffice2003 extends Office {
}
-\OC\Preview::registerProvider('OC\Preview\MSOffice2003');
+\OC\PreviewManager::registerProvider('OC\Preview\MSOffice2003');
//.docx, .dotx, .xlsx, .xltx, .pptx, .potx, .ppsx
class MSOffice2007 extends Office {
@@ -102,7 +102,7 @@ class MSOffice2007 extends Office {
}
-\OC\Preview::registerProvider('OC\Preview\MSOffice2007');
+\OC\PreviewManager::registerProvider('OC\Preview\MSOffice2007');
//.odt, .ott, .oth, .odm, .odg, .otg, .odp, .otp, .ods, .ots, .odc, .odf, .odb, .odi, .oxt
class OpenDocument extends Office {
@@ -113,7 +113,7 @@ class OpenDocument extends Office {
}
-\OC\Preview::registerProvider('OC\Preview\OpenDocument');
+\OC\PreviewManager::registerProvider('OC\Preview\OpenDocument');
//.sxw, .stw, .sxc, .stc, .sxd, .std, .sxi, .sti, .sxg, .sxm
class StarOffice extends Office {
@@ -124,4 +124,4 @@ class StarOffice extends Office {
}
-\OC\Preview::registerProvider('OC\Preview\StarOffice'); \ No newline at end of file
+\OC\PreviewManager::registerProvider('OC\Preview\StarOffice'); \ No newline at end of file
diff --git a/lib/preview/movies.php b/lib/preview/movies.php
index 8531050d112..f4452e02fc2 100644
--- a/lib/preview/movies.php
+++ b/lib/preview/movies.php
@@ -39,5 +39,5 @@ if(!is_null(shell_exec('ffmpeg -version'))) {
}
}
- \OC\Preview::registerProvider('OC\Preview\Movie');
+ \OC\PreviewManager::registerProvider('OC\Preview\Movie');
} \ No newline at end of file
diff --git a/lib/preview/mp3.php b/lib/preview/mp3.php
index 835ff529000..baa24ad129e 100644
--- a/lib/preview/mp3.php
+++ b/lib/preview/mp3.php
@@ -43,4 +43,4 @@ class MP3 extends Provider {
}
-\OC\Preview::registerProvider('OC\Preview\MP3'); \ No newline at end of file
+\OC\PreviewManager::registerProvider('OC\Preview\MP3'); \ No newline at end of file
diff --git a/lib/preview/msoffice.php b/lib/preview/msoffice.php
index ccf1d674c7a..9f6ea7f74cf 100644
--- a/lib/preview/msoffice.php
+++ b/lib/preview/msoffice.php
@@ -20,7 +20,7 @@ class DOC extends Provider {
}
-\OC\Preview::registerProvider('OC\Preview\DOC');
+\OC\PreviewManager::registerProvider('OC\Preview\DOC');
*/
class DOCX extends Provider {
@@ -50,7 +50,7 @@ class DOCX extends Provider {
}
-\OC\Preview::registerProvider('OC\Preview\DOCX');
+\OC\PreviewManager::registerProvider('OC\Preview\DOCX');
class MSOfficeExcel extends Provider {
@@ -95,7 +95,7 @@ class XLS extends MSOfficeExcel {
}
-\OC\Preview::registerProvider('OC\Preview\XLS');
+\OC\PreviewManager::registerProvider('OC\Preview\XLS');
class XLSX extends MSOfficeExcel {
@@ -105,7 +105,7 @@ class XLSX extends MSOfficeExcel {
}
-\OC\Preview::registerProvider('OC\Preview\XLSX');
+\OC\PreviewManager::registerProvider('OC\Preview\XLSX');
/* //There is no (good) php-only solution for converting powerpoint documents to pdfs / pngs ...
class MSOfficePowerPoint extends Provider {
@@ -128,7 +128,7 @@ class PPT extends MSOfficePowerPoint {
}
-\OC\Preview::registerProvider('OC\Preview\PPT');
+\OC\PreviewManager::registerProvider('OC\Preview\PPT');
class PPTX extends MSOfficePowerPoint {
@@ -138,5 +138,5 @@ class PPTX extends MSOfficePowerPoint {
}
-\OC\Preview::registerProvider('OC\Preview\PPTX');
+\OC\PreviewManager::registerProvider('OC\Preview\PPTX');
*/ \ No newline at end of file
diff --git a/lib/preview/pdf.php b/lib/preview/pdf.php
index 3eabd201156..0d289e9db94 100644
--- a/lib/preview/pdf.php
+++ b/lib/preview/pdf.php
@@ -36,5 +36,5 @@ if (extension_loaded('imagick')) {
}
}
- \OC\Preview::registerProvider('OC\Preview\PDF');
+ \OC\PreviewManager::registerProvider('OC\Preview\PDF');
}
diff --git a/lib/preview/svg.php b/lib/preview/svg.php
index bafaf71b15a..5507686af97 100644
--- a/lib/preview/svg.php
+++ b/lib/preview/svg.php
@@ -39,6 +39,6 @@ if (extension_loaded('imagick')) {
}
}
- \OC\Preview::registerProvider('OC\Preview\SVG');
+ \OC\PreviewManager::registerProvider('OC\Preview\SVG');
} \ No newline at end of file
diff --git a/lib/preview/txt.php b/lib/preview/txt.php
index c7b8fabc6b0..acbf34c5e42 100644
--- a/lib/preview/txt.php
+++ b/lib/preview/txt.php
@@ -46,7 +46,7 @@ class TXT extends Provider {
}
}
-\OC\Preview::registerProvider('OC\Preview\TXT');
+\OC\PreviewManager::registerProvider('OC\Preview\TXT');
class PHP extends TXT {
@@ -56,7 +56,7 @@ class PHP extends TXT {
}
-\OC\Preview::registerProvider('OC\Preview\PHP');
+\OC\PreviewManager::registerProvider('OC\Preview\PHP');
class JavaScript extends TXT {
@@ -66,4 +66,4 @@ class JavaScript extends TXT {
}
-\OC\Preview::registerProvider('OC\Preview\JavaScript'); \ No newline at end of file
+\OC\PreviewManager::registerProvider('OC\Preview\JavaScript'); \ No newline at end of file
diff --git a/lib/preview/unknown.php b/lib/preview/unknown.php
index a31b365722e..f9f6fe957b2 100644
--- a/lib/preview/unknown.php
+++ b/lib/preview/unknown.php
@@ -40,4 +40,4 @@ class Unknown extends Provider {
}
}
-\OC\Preview::registerProvider('OC\Preview\Unknown'); \ No newline at end of file
+\OC\PreviewManager::registerProvider('OC\Preview\Unknown'); \ No newline at end of file