add 'requires' field to plugin info to list other dependent plugins/addons and disable if dependencies are not installed/enabled

This commit is contained in:
redmatrix
2016-02-24 15:19:28 -08:00
parent b101a8f6fb
commit 7e6febe2a6
4 changed files with 23 additions and 5 deletions

View File

@@ -325,7 +325,8 @@ function get_plugin_info($plugin){
'description' => '',
'author' => array(),
'maintainer' => array(),
'version' => ''
'version' => '',
'requires' => ''
);
if (!is_file("addon/$plugin/$plugin.php"))
@@ -383,6 +384,22 @@ function check_plugin_versions($info) {
}
}
if(array_key_exists('requires',$info)) {
$arr = explode(',',$info['requires']);
$found = true;
if($arr) {
foreach($arr as $test) {
$test = trim($test);
if(! $test)
continue;
if(! in_array($test,get_app()->plugins))
$found = false;
}
}
if(! $found)
return false;
}
return true;
}