]> git.immae.eu Git - github/shaarli/Shaarli.git/blobdiff - application/Thumbnailer.php
Take code review into account
[github/shaarli/Shaarli.git] / application / Thumbnailer.php
index 9cf5dacdfb573dddbe679c4465c5dd380d6b665d..d2284e795eb3b43261cfc4577832e610a390b036 100644 (file)
@@ -32,6 +32,14 @@ class Thumbnailer
     public function __construct($conf)
     {
         $this->conf = $conf;
+
+        if (! $this->checkRequirements()) {
+            $this->conf->set('thumbnails.enabled', false);
+            $this->conf->write(true);
+            // TODO: create a proper error handling system able to catch exceptions...
+            die(t('php-gd extension must be loaded to use thumbnails. Thumbnails are now disabled. Please reload the page.'));
+        }
+
         $this->wt = new WebThumbnailer();
         WTConfigManager::addFile('inc/web-thumbnailer.json');
         $this->wt->maxWidth($this->conf->get('thumbnails.width'))
@@ -57,4 +65,13 @@ class Thumbnailer
             return false;
         }
     }
+
+    /**
+     * Make sure that requirements are match to use thumbnails:
+     *   - php-gd is loaded
+     */
+    protected function checkRequirements()
+    {
+        return extension_loaded('gd');
+    }
 }