コード例 #1
0
ファイル: getPager.php プロジェクト: kelixin/dnscheck
function getDomainHistory($domain, $pageNumber, $testType)
{
    global $history;
    global $totalPages;
    global $sourceIdentifiers;
    $query = "\r\n\t\t\tSELECT\r\n\t\t\t\t\t\t\ttests.id AS id,\r\n\t\t\t\t\t\t\tUNIX_TIMESTAMP(tests.begin) AS time,\r\n\t\t\t\t\t\t\tIF(0 < tests.count_error, 'error', IF(0 < tests.count_warning, 'warn', 'ok')) AS status\r\n\t\t\t\tFROM\ttests\r\n\t\t\t\t\tINNER JOIN source ON source.id  = tests.source_id\r\n\t\t\t\t\t\tAND source.name = '" . DatabasePackage::escape($sourceIdentifiers[$testType]) . "'\r\n\t\t\t\tWHERE\ttests.domain = '" . DatabasePackage::escape($domain) . "'\r\n\t\t\t\t\t\tAND NOT(ISNULL(tests.end))\r\n\t\t\t\tORDER BY time DESC\r\n\t\t\t\tLIMIT\t" . ($pageNumber - 1) * PAGER_SIZE . ", " . PAGER_SIZE . "\r\n\t\t";
    $result = null;
    $status = DatabasePackage::query($query, $result);
    if (false === $status) {
        return false;
    }
    foreach ($result as $resultItem) {
        $history[] = array('class' => $resultItem['status'], 'time' => $resultItem['time'], 'id' => $resultItem['id']);
    }
    $query = "\r\n\t\t\tSELECT\r\n\t\t\t\t\t\t\tCOUNT(*) AS num_rows\r\n\t\t\t\tFROM\ttests\r\n\t\t\t\t\tINNER JOIN source ON source.id  = tests.source_id\r\n\t\t\t\t\t\tAND source.name = '" . DatabasePackage::escape($sourceIdentifiers[$testType]) . "'\r\n\t\t\t\tWHERE\ttests.domain = '" . DatabasePackage::escape($domain) . "'\r\n\t\t\t\t\t\tAND NOT(ISNULL(tests.end))\r\n\t\t";
    $result = null;
    $status = DatabasePackage::query($query, $result);
    if (false === $status) {
        return false;
    }
    $totalPages = intval(ceil($result[0]['num_rows'] / PAGER_SIZE));
    if (0 == $totalPages) {
        $totalPages = 1;
    }
    return true;
}
コード例 #2
0
ファイル: common.php プロジェクト: kelixin/dnscheck
 private static function connect()
 {
     if (!is_null(self::$dbConnection)) {
         return true;
     }
     global $conf;
     $link = @mysql_connect($conf['db_server'] . ':' . $conf['db_port'], $conf['db_user'], $conf['db_pass']);
     if (false === $link) {
         return false;
     }
     $status = @mysql_select_db($conf['db_name'], $link);
     if (false === $status) {
         return false;
     }
     self::$dbConnection = $link;
     return true;
 }
コード例 #3
0
ファイル: getResult.php プロジェクト: kelixin/dnscheck
function main(&$tree, &$list)
{
    global $time;
    global $domain;
    global $testId;
    global $languageId;
    global $sourceIdentifiers;
    global $sourceData;
    global $thisVersion;
    $IDN = new idna_convert();
    $domain = $IDN->encode(trim(strtolower($_REQUEST['domain'])));
    $sourceData = isset($_REQUEST['parameters']) ? trim(strtolower($_REQUEST['parameters'])) : '';
    $testId = 0;
    if (isset($_REQUEST['historyId'])) {
        $testId = intval($_REQUEST['historyId']);
        $query = "SELECT UNIX_TIMESTAMP(tests.begin) AS time,\r\n\t\t\t\t\t\t\tsource_data AS source_data\r\n\t\t\t\t\t  FROM tests WHERE tests.id = {$testId}";
        $result = null;
        $status = DatabasePackage::query($query, $result);
        if (true != $status) {
            return STATUS_INTERNAL_ERROR;
        }
        $time = intval($result[0]['time']);
        $sourceData = $result[0]['source_data'];
    } else {
        $query = "\r\n\t\t\t\t(\r\n\t\t\t\t\tSELECT\r\n\t\t\t\t\t\t\t\t\tNULL AS id,\r\n\t\t\t\t\t\t\t\t\tNULL AS time,\r\n\t\t\t\t\t\t\t\t\t'NO' AS finished,\r\n\t\t\t\t\t\t\t\t\tsource_data AS source_data\r\n\t\t\t\t\t\tFROM\tqueue\r\n\t\t\t\t\t\t\tINNER JOIN source ON source.id  = queue.source_id\r\n\t\t\t\t\t\t\t\tAND source.name = '" . DatabasePackage::escape($sourceIdentifiers[$_REQUEST['test']]) . "'\r\n\t\t\t\t\t\tWHERE\tqueue.domain = '" . DatabasePackage::escape($domain) . "'\r\n\t\t\t\t\t\t\t\tAND queue.source_data = '" . DatabasePackage::escape($sourceData) . "'\r\n\t\t\t\t)\r\n\t\t\t\tUNION\r\n\t\t\t\t(\r\n\t\t\t\t\tSELECT\r\n\t\t\t\t\t\t\t\t\ttests.id AS id,\r\n\t\t\t\t\t\t\t\t\tUNIX_TIMESTAMP(tests.begin) AS time,\r\n\t\t\t\t\t\t\t\t\tIF(ISNULL(tests.end), 'NO', 'YES') AS finished,\r\n\t\t\t\t\t\t\t\t\tsource_data AS source_data\r\n\t\t\t\t\t\tFROM\ttests\r\n\t\t\t\t\t\t\tINNER JOIN source ON source.id  = tests.source_id\r\n\t\t\t\t\t\t\t\tAND source.name = '" . DatabasePackage::escape($sourceIdentifiers[$_REQUEST['test']]) . "'\r\n\t\t\t\t\t\tWHERE\ttests.domain = '" . DatabasePackage::escape($domain) . "'\r\n\t\t\t\t\t\t\t\tAND (ISNULL(tests.end) OR (UNIX_TIMESTAMP() - UNIX_TIMESTAMP(tests.end) < 300))\r\n\t\t\t\t\t\t\t\tAND tests.source_data = '" . DatabasePackage::escape($sourceData) . "'\r\n\t\t\t\t)\r\n\t\t\t";
        $result = null;
        $status = DatabasePackage::query($query, $result);
        if (true != $status) {
            return STATUS_INTERNAL_ERROR;
        }
        if (0 == count($result)) {
            $id = getSourceID($sourceIdentifiers[$_REQUEST['test']]);
            $query = "INSERT INTO queue (domain, priority, source_id, source_data, fake_parent_glue) VALUES ('" . DatabasePackage::escape($domain) . "', 10, {$id}, '" . DatabasePackage::escape($sourceData) . "', '" . DatabasePackage::escape($sourceData) . "')";
            $result;
            $status = DatabasePackage::query($query, $result);
            if (true !== $status) {
                return STATUS_INTERNAL_ERROR;
            }
            return STATUS_IN_PROGRESS;
        }
        if ('NO' == $result[0]['finished']) {
            return STATUS_IN_PROGRESS;
        }
        $testId = intval($result[0]['id']);
        $time = intval($result[0]['time']);
        $sourceData = $result[0]['source_data'];
    }
    $languageId = __("languageId");
    $rawResultTree = null;
    getRawResultTree($testId, $languageId, $rawResultTree);
    $tree = null;
    $result = constructFinalTree($rawResultTree, false, true, $tree);
    $list = null;
    constructFinalTree($rawResultTree, true, false, $list);
    return $result;
}
コード例 #4
0
ファイル: index.php プロジェクト: kelixin/dnscheck
?>
</p>
				<p class="testoff"><?php 
_e("test_was_not_performed");
?>
</p>
			</div>

		</div>
	</div>

	<div id="footer">
		<p id="f_info"><?php 
$footer = __("se_tagline");
$sql = "SELECT arg1 FROM results WHERE message = 'ZONE:BEGIN' and test_id = (select max(test_id) from results) ORDER BY test_id DESC LIMIT 0, 1";
$status = DatabasePackage::query($sql, $version);
printf($footer, $version[0]["arg1"], $_SERVER["REMOTE_ADDR"]);
?>
		</p>
		
		<p id="f_links"><?php 
_e("language");
?>
: 
		
			<select name="language" onchange="switchLang(this[this.selectedIndex].value);">
<?php 
$langAr = i18n_get_language_names();
foreach ($langAr as $key => $name) {
    echo "\t\t\t\t<option ";
    if (strtolower($i18n_current_language) == strtolower($key)) {