1
0
mirror of https://github.com/e107inc/e107.git synced 2025-08-01 12:20:44 +02:00

Fixes the "dbupdate after a clean install" issue

The "isset" statement tested on a key in array "core_plugins", but the keys of that array were numeric.
So the "isset" was always false and the statements within the if clause were always executed.
That resulted for some reason in a "false positive" on the "featurebox" plugin, in case was not installed at this moment.
This commit is contained in:
Achim Ennenbach
2018-07-20 21:25:40 +02:00
parent 6ab8c5c0f3
commit 2990b57485

View File

@@ -1303,7 +1303,7 @@ class e107plugin
continue; continue;
} }
if(!isset($this->core_plugins[$path])) // check non-core plugins for sql file changes. if(!is_array($path, $this->core_plugins)) // check non-core plugins for sql file changes.
{ {
$dbv->errors = array(); $dbv->errors = array();
$dbv->compare($path); $dbv->compare($path);
@@ -1315,40 +1315,35 @@ class e107plugin
} }
} }
// $curVal = floatval($version); $curVal = $version;
$curVal = $version; $fileVal = $plg->getVersion();
$fileVal = $plg->getVersion(); // floatval($data['@attributes']['version']);
// $fileVal = floatval($fileVal);
if($ret = $this->execute_function($path, 'upgrade', 'required', array($this, $curVal, $fileVal))) // Check {plugin}_setup.php and run a 'required' method, if true, then update is required.
if($ret = $this->execute_function($path, 'upgrade', 'required', array($this, $curVal, $fileVal))) // Check {plugin}_setup.php and run a 'required' method, if true, then update is required. {
$mes->addDebug("Plugin Update(s) Required in ".$path."_setup.php [".$path."]");
if($mode === 'boolean')
{ {
$mes->addDebug("Plugin Update(s) Required in ".$path."_seup.php [".$path."]"); return TRUE;
}
if($mode === 'boolean') $needed[$path] = $data;
{ }
return TRUE; if(version_compare($curVal,$fileVal,"<")) // check pref version against file version.
} {
$mes->addDebug("Plugin Update(s) Required - different version [".$path."]");
$needed[$path] = $data; if($mode === 'boolean')
}
if(version_compare($curVal,$fileVal,"<")) // check pref version against file version.
{ {
$mes->addDebug("Plugin Update(s) Required - different version [".$path."]"); return TRUE;
}
if($mode === 'boolean') // $mes->addDebug("Plugin: <strong>{$path}</strong> requires an update.");
{
return TRUE;
}
// $mes->addDebug("Plugin: <strong>{$path}</strong> requires an update.");
// $log->flushMessages();
$needed[$path] = $data;
}
// $log->flushMessages();
$needed[$path] = $data;
}
} }
@@ -1359,8 +1354,6 @@ class e107plugin
} }
if($mode === 'boolean') if($mode === 'boolean')
{ {
return count($needed) ? true : FALSE; return count($needed) ? true : FALSE;