// Invoke the plugin command with indicated method
function plugin($method, $arg = '') {
global $docroot;
exec("$docroot/plugins/dynamix.plugin.manager/scripts/plugin ".escapeshellarg($method)." ".escapeshellarg($arg), $output, $retval);
return $retval==0 ? implode("\n", $output) : false;
}
// Invoke the language command with indicated method
function language($method, $arg = '') {
global $docroot;
exec("$docroot/plugins/dynamix.plugin.manager/scripts/language ".escapeshellarg($method)." ".escapeshellarg($arg), $output, $retval);
return $retval==0 ? implode("\n", $output) : false;
}
function check_plugin($arg, &$ncsi) {
// Get network connection status indicator (NCSI)
if ($ncsi===null) $ncsi = exec("wget --spider -nv -T10 -t1 http://www.msftncsi.com/ncsi.txt 2>&1|grep -o 'OK'");
return $ncsi ? plugin('check',$arg) : false;
}
function make_link($method, $arg, $extra='') {
$plg = basename($arg,'.plg').':'.$method;
$id = str_replace(['.',' ','_'],'',$plg);
$check = $method=='remove' ? "" : "";
$disabled = $check ? ' disabled' : '';
if ($method == 'delete') {
$cmd = "/plugins/dynamix.plugin.manager/scripts/plugin_rm&arg1=$arg";
$exec = $plg = "";
} else {
$cmd = "/plugins/dynamix.plugin.manager/scripts/plugin&arg1=$method&arg2=$arg".($extra?"&arg3=$extra":"");
$exec = "loadlist";
}
return "$check";
}
// trying our best to find an icon
function icon($name) {
// this should be the default location and name
$icon = "plugins/$name/images/$name.png";
if (file_exists($icon)) return $icon;
// try alternatives if default is not present
$icon = "plugins/$name/$name.png";
if (file_exists($icon)) return $icon;
$image = @preg_split('/[\._- ]/',$name)[0];
$icon = "plugins/$name/images/$image.png";
if (file_exists($icon)) return $icon;
$icon = "plugins/$name/$image.png";
if (file_exists($icon)) return $icon;
// last resort - default plugin icon
return "webGui/images/plg.png";
}
function mk_options($select,$value) {
return "";
}
?>