Merge pull request #7570 from owncloud/fix_issue_imagick_non_static_4

fix issue with Non-static method Imagick ../..; @ doesn't seem to work in this case
This commit is contained in:
Vincent Petry 2014-03-06 14:11:44 +01:00
commit bfd0d799d8
3 changed files with 80 additions and 62 deletions

View File

@ -6,7 +6,11 @@
* See the COPYING-README file.
*/
//both, libreoffice backend and php fallback, need imagick
if (extension_loaded('imagick') && count(@\Imagick::queryFormats("PDF")) === 1) {
if (extension_loaded('imagick')) {
$checkImagick = new Imagick();
if(count($checkImagick->queryFormats('PDF')) === 1) {
$isShellExecEnabled = \OC_Helper::is_function_enabled('shell_exec');
// LibreOffice preview is currently not supported on Windows
@ -26,4 +30,5 @@ if (extension_loaded('imagick') && count(@\Imagick::queryFormats("PDF")) === 1)
//in case there isn't, use our fallback
require_once('office-fallback.php');
}
}
}

View File

@ -7,7 +7,13 @@
*/
namespace OC\Preview;
if (extension_loaded('imagick') && count(@\Imagick::queryFormats("PDF")) === 1) {
use Imagick;
if (extension_loaded('imagick')) {
$checkImagick = new Imagick();
if(count($checkImagick->queryFormats('PDF')) === 1) {
class PDF extends Provider {
@ -20,7 +26,7 @@ if (extension_loaded('imagick') && count(@\Imagick::queryFormats("PDF")) === 1)
//create imagick object from pdf
try{
$pdf = new \imagick($tmpPath . '[0]');
$pdf = new Imagick($tmpPath . '[0]');
$pdf->setImageFormat('jpg');
} catch (\Exception $e) {
\OC_Log::write('core', $e->getmessage(), \OC_Log::ERROR);
@ -37,4 +43,5 @@ if (extension_loaded('imagick') && count(@\Imagick::queryFormats("PDF")) === 1)
}
\OC\Preview::registerProvider('OC\Preview\PDF');
}
}

View File

@ -7,7 +7,13 @@
*/
namespace OC\Preview;
if (extension_loaded('imagick') && count(@\Imagick::queryFormats("SVG")) === 1) {
use Imagick;
if (extension_loaded('imagick')) {
$checkImagick = new Imagick();
if(count($checkImagick->queryFormats('SVG')) === 1) {
class SVG extends Provider {
@ -17,7 +23,7 @@ if (extension_loaded('imagick') && count(@\Imagick::queryFormats("SVG")) === 1)
public function getThumbnail($path,$maxX,$maxY,$scalingup,$fileview) {
try{
$svg = new \Imagick();
$svg = new Imagick();
$svg->setBackgroundColor(new \ImagickPixel('transparent'));
$content = stream_get_contents($fileview->fopen($path, 'r'));
@ -42,5 +48,5 @@ if (extension_loaded('imagick') && count(@\Imagick::queryFormats("SVG")) === 1)
}
\OC\Preview::registerProvider('OC\Preview\SVG');
}
}