diff options
author | Michael <icarus@dabo.de> | 2012-05-19 16:55:33 +0200 |
---|---|---|
committer | Michael <icarus@dabo.de> | 2012-05-19 16:55:33 +0200 |
commit | 6342b3e0bdd5774857a8fca809994f05e0208d25 (patch) | |
tree | 54114a005e74c8a6d8bad8a490e1d1e41bc4178f /include/plugin.php | |
parent | 2b8c4df544f59d611ad1e8fc0dbc5fcd38bee8f7 (diff) | |
parent | 9a940786c18c1c2bd772aec93f1828f67dc45667 (diff) | |
download | volse-hubzilla-6342b3e0bdd5774857a8fca809994f05e0208d25.tar.gz volse-hubzilla-6342b3e0bdd5774857a8fca809994f05e0208d25.tar.bz2 volse-hubzilla-6342b3e0bdd5774857a8fca809994f05e0208d25.zip |
Merge branch 'master' of github.com:annando/friendica
Diffstat (limited to 'include/plugin.php')
-rw-r--r-- | include/plugin.php | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/include/plugin.php b/include/plugin.php index 8196e8756..ae8eee78a 100644 --- a/include/plugin.php +++ b/include/plugin.php @@ -5,7 +5,7 @@ if (! function_exists('uninstall_plugin')){ function uninstall_plugin($plugin){ logger("Addons: uninstalling " . $plugin); - q("DELETE FROM `addon` WHERE `name` = '%s' LIMIT 1", + q("DELETE FROM `addon` WHERE `name` = '%s' ", dbesc($plugin) ); @@ -37,6 +37,16 @@ function install_plugin($plugin) { intval($t), $plugin_admin ); + + // we can add the following with the previous SQL + // once most site tables have been updated. + // This way the system won't fall over dead during the update. + + if(file_exists('addon/' . $plugin . '/.hidden')) { + q("update addon set hidden = 1 where name = '%s' limit 1", + dbesc($plugin) + ); + } return true; } else { @@ -60,8 +70,10 @@ function reload_plugins() { $installed = array(); $parr = explode(',',$plugins); + if(count($parr)) { foreach($parr as $pl) { + $pl = trim($pl); $fname = 'addon/' . $pl . '/' . $pl . '.php'; @@ -91,6 +103,7 @@ function reload_plugins() { } } } + }} @@ -153,6 +166,14 @@ function call_hooks($name, &$data = null) { $func = $hook[HOOK_FUNCTION]; $func($a,$data); } + else { + // remove orphan hooks + q("delete from hook where hook = '%s' and file = '$s' and function = '%s' limit 1", + dbesc($hook[HOOK_HOOK]), + dbesc($hook[HOOK_FILE]), + dbesc($hook[HOOK_FUNCTION]) + ); + } } } } |