コード例 #1
0
function removeLinkedProperty($object, $property, $module)
{
    $value = SQLSelectOne("SELECT * FROM pvalues WHERE ID='" . getValueIdByName($object, $property) . "'");
    if ($value['ID']) {
        if (!$value['LINKED_MODULES']) {
            $tmp = array();
        } else {
            $tmp = explode(',', $value['LINKED_MODULES']);
        }
        if (in_array($module, $tmp)) {
            $total = count($tmp);
            $res = array();
            for ($i = 0; $i < $total; $i++) {
                if ($tmp[$i] != $module) {
                    $res[] = $tmp[$i];
                }
            }
            $tmp = $res;
            $value['LINKED_MODULES'] = implode(',', $tmp);
            SQLUpdate('pvalues', $value);
        }
    } else {
        return 0;
    }
}
コード例 #2
0
SQLExec("DELETE FROM history WHERE ADDED > NOW()");
SQLExec("DELETE FROM shouts WHERE ADDED > NOW()");
SQLExec("DELETE FROM jobs WHERE PROCESSED = 1");
SQLExec("DELETE FROM history WHERE (TO_DAYS(NOW()) - TO_DAYS(ADDED)) >= 5");
// CHECKING DATA
$tables = array('commands' => 'commands', 'owproperties' => 'onewire', 'snmpproperties' => 'snmpdevices', 'zwave_properties' => 'zwave', 'mqtt' => 'mqtt', 'modbusdevices' => 'modbus');
$value_ids = array();
foreach ($tables as $k => $v) {
    $sqlQuery = "SELECT *\n                  FROM {$k}\n                 WHERE LINKED_OBJECT   != ''\n                   AND LINKED_PROPERTY != ''";
    $data = SQLSelect($sqlQuery);
    $total = count($data);
    for ($i = 0; $i < $total; $i++) {
        $module = $v;
        $property = $data[$i]['LINKED_OBJECT'] . '.' . $data[$i]['LINKED_PROPERTY'];
        if (!$value_ids[$property]) {
            $value_ids[$property] = getValueIdByName($data[$i]['LINKED_OBJECT'], $data[$i]['LINKED_PROPERTY']);
        }
        if ($value_ids[$property]) {
            $sqlQuery = "SELECT *\n                        FROM pvalues\n                       WHERE ID = " . (int) $value_ids[$property];
            $value = SQLSelectOne($sqlQuery);
            if (!$value['LINKED_MODULES']) {
                $tmp = array();
            } else {
                $tmp = explode(',', $value['LINKED_MODULES']);
            }
            if (!in_array($v, $tmp)) {
                echo "{$property} adding linked" . PHP_EOL;
                $tmp[] = $v;
                $value['LINKED_MODULES'] = implode(',', $tmp);
                SQLUpdate('pvalues', $value);
            }