Example #1
0
function InstallPlugin()
{
    $plugin = $_GET['plugin'];
    check($plugin, "plugin", __FUNCTION__);
    global $fppDir, $pluginDirectory, $SUDO;
    if (file_exists("{$pluginDirectory}/{$plugin}")) {
        EchoStatusXML('Failure');
        error_log("Failure, plugin you're trying to install already exists");
        return;
    }
    require_once "pluginData.inc.php";
    foreach ($plugins as $available_plugin) {
        if ($available_plugin['shortName'] == $plugin) {
            exec("export SUDO=\"" . $SUDO . "\"; export PLUGINDIR=\"" . $pluginDirectory . "\"; {$fppDir}/scripts/install_plugin {$plugin} \"" . $available_plugin['sourceUrl'] . "\" \"" . $available_plugin['sha'] . "\"", $output, $return_val);
            unset($output);
            if ($return_val != 0) {
                EchoStatusXML('Failure');
                error_log("Failure with FPP install script");
                return;
            }
        }
    }
    EchoStatusXML('Success');
}
Example #2
0
function ExtGPIO()
{
    $gpio = $_GET['gpio'];
    $mode = $_GET['mode'];
    $val = $_GET['val'];
    check($gpio, "gpio", __FUNCTION__);
    check($mode, "mode", __FUNCTION__);
    check($val, "val", __FUNCTION__);
    $status = SendCommand(sprintf("ExtGPIO,%s,%s,%s", $gpio, $mode, $val));
    $status = explode(',', $status, 14);
    if ((int) $status[1] >= 0) {
        $doc = new DomDocument('1.0');
        $root = $doc->createElement('Status');
        $root = $doc->appendChild($root);
        $temp = $doc->createElement('Success');
        $temp = $root->appendChild($temp);
        $result = $doc->createTextNode((int) $status[6]);
        $result = $temp->appendChild($result);
        echo $doc->saveHTML();
    } else {
        EchoStatusXML('Failed');
    }
}