*/
protected $isLoggedIn;
+ /**
+ * @var array $_SESSION
+ */
+ protected $session;
+
/**
* @var ReflectionMethod[] List of current class methods.
*/
* @param LinkDB $linkDB LinkDB instance.
* @param ConfigManager $conf Configuration Manager instance.
* @param boolean $isLoggedIn True if the user is logged in.
+ * @param array $session $_SESSION (by reference)
+ *
+ * @throws ReflectionException
*/
- public function __construct($doneUpdates, $linkDB, $conf, $isLoggedIn)
+ public function __construct($doneUpdates, $linkDB, $conf, $isLoggedIn, &$session = [])
{
$this->doneUpdates = $doneUpdates;
$this->linkDB = $linkDB;
$this->conf = $conf;
$this->isLoggedIn = $isLoggedIn;
+ $this->session = &$session;
// Retrieve all update methods.
$class = new ReflectionClass($this);
}
return true;
}
+
+ /**
+ * Add download size and timeout to the configuration file
+ *
+ * @return bool true if the update is successful, false otherwise.
+ */
+ public function updateMethodDownloadSizeAndTimeoutConf()
+ {
+ if ($this->conf->exists('general.download_max_size')
+ && $this->conf->exists('general.download_timeout')
+ ) {
+ return true;
+ }
+
+ if (! $this->conf->exists('general.download_max_size')) {
+ $this->conf->set('general.download_max_size', 1024*1024*4);
+ }
+
+ if (! $this->conf->exists('general.download_timeout')) {
+ $this->conf->set('general.download_timeout', 30);
+ }
+
+ $this->conf->write($this->isLoggedIn);
+ return true;
+ }
+
+ /**
+ * * Move thumbnails management to WebThumbnailer, coming with new settings.
+ */
+ public function updateMethodWebThumbnailer()
+ {
+ if ($this->conf->exists('thumbnails.enabled')) {
+ return true;
+ }
+
+ $thumbnailsEnabled = $this->conf->get('thumbnail.enable_thumbnails', true);
+ $this->conf->set('thumbnails.enabled', $thumbnailsEnabled);
+ $this->conf->set('thumbnails.width', 125);
+ $this->conf->set('thumbnails.height', 90);
+ $this->conf->remove('thumbnail');
+ $this->conf->write(true);
+
+ if ($thumbnailsEnabled) {
+ $this->session['warnings'][] = t(
+ 'You have enabled thumbnails. <a href="?do=thumbs_update">Please synchonize them</a>.'
+ );
+ }
+
+ return true;
+ }
}
/**