summaryrefslogtreecommitdiff
path: root/classes/pluginhost.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2021-01-15 08:32:06 +0300
committerAndrew Dolgov <[email protected]>2021-01-15 08:32:06 +0300
commit40f38fc87fe2993dfcc2c2953f0a073096e806e6 (patch)
treed0eafcc3057abd18b7521d4bf044b2855f9e1ed5 /classes/pluginhost.php
parentf67f0f864bbac9a60912b00b940848e45e96f046 (diff)
pluginhost: load plugin data automatically (also marks load_data method as private)
Diffstat (limited to 'classes/pluginhost.php')
-rwxr-xr-xclasses/pluginhost.php11
1 files changed, 9 insertions, 2 deletions
diff --git a/classes/pluginhost.php b/classes/pluginhost.php
index 3ff658918..2ce20be86 100755
--- a/classes/pluginhost.php
+++ b/classes/pluginhost.php
@@ -14,6 +14,7 @@ class PluginHost {
private $plugin_actions = array();
private $owner_uid;
private $last_registered;
+ private $data_loaded;
private static $instance;
const API_VERSION = 2;
@@ -268,6 +269,8 @@ class PluginHost {
}
}
}
+
+ $this->load_data();
}
function is_system($plugin) {
@@ -352,8 +355,8 @@ class PluginHost {
}
}
- function load_data() {
- if ($this->owner_uid) {
+ private function load_data() {
+ if (get_schema_version() > 100 && $this->owner_uid && !$this->data_loaded) {
$sth = $this->pdo->prepare("SELECT name, content FROM ttrss_plugin_storage
WHERE owner_uid = ?");
$sth->execute([$this->owner_uid]);
@@ -361,6 +364,8 @@ class PluginHost {
while ($line = $sth->fetch()) {
$this->storage[$line["name"]] = unserialize($line["content"]);
}
+
+ $this->data_loaded = true;
}
}
@@ -411,6 +416,8 @@ class PluginHost {
function get($sender, $name, $default_value = false) {
$idx = get_class($sender);
+ $this->load_data();
+
if (isset($this->storage[$idx][$name])) {
return $this->storage[$idx][$name];
} else {