public static function setBlockLists()
 {
     $localCache = new _FileCache('blacklistmonitor-Utilities-BlockLists', 60);
     $cacheKey = 'bl';
     $cacheData = $localCache->get($cacheKey);
     if ($cacheData !== false) {
         if (isset($cacheData['domains']) && isset($cacheData['ips'])) {
             self::$domainBlacklists = $cacheData['domains'];
             self::$ipBlacklists = $cacheData['ips'];
             return true;
         }
     }
     $mysql = new _MySQL();
     $mysql->connect(Setup::$connectionArray);
     $sql = "select host,monitorType from blockLists where isActive = '1';";
     $rs = $mysql->runQuery($sql);
     $cacheData['domains'] = array();
     $cacheData['ips'] = array();
     while ($row = mysqli_fetch_array($rs, MYSQL_ASSOC)) {
         if ($row['monitorType'] == 'ip') {
             $cacheData['ips'][] = $row['host'];
         } else {
             $cacheData['domains'][] = $row['host'];
         }
     }
     $mysql->close();
     $localCache->set($cacheKey, $cacheData);
     self::$domainBlacklists = $cacheData['domains'];
     self::$ipBlacklists = $cacheData['ips'];
     return false;
 }
Esempio n. 2
0
                $searchSQL .= " and isBlocked = 1 ";
                break;
            case 'clean':
                $searchSQL .= " and isBlocked = 0 ";
                break;
            case 'all':
            default:
        }
        $rs = $mysql->runQuery("\n\t\t\tselect ipDomain,isBlocked,rDNS,status,lastStatusChangeTime,lastUpdate\n\t\t\tfrom monitors\n\t\t\twhere 1=1 {$searchSQL}");
        $result['status'] = 'success';
        $result['result'] = array();
        while ($row = mysqli_fetch_array($rs, MYSQL_ASSOC)) {
            $result['result'][] = array('host' => $row['ipDomain'], 'isBlocked' => $row['isBlocked'], 'dns' => $row['rDNS'], 'status' => unserialize($row['status']), 'lastChanged' => $row['lastStatusChangeTime'], 'lastChecked' => $row['lastUpdate']);
        }
        $mysql->close();
        $localCache->set($cacheKey, $result);
        break;
    default:
        $result['status'] = 'no such method';
}
output();
function output($data = false)
{
    global $result;
    if ($data !== false) {
        echo json_encode($data);
    } else {
        echo json_encode($result);
    }
    exit;
}