コード例 #1
0
ファイル: update_api.php プロジェクト: DarneoStudio/bitrix
        if (!($ver_dir = opendir($ver_path))) {
            die('Cannot read ' . $ver_path);
        }
        while (false !== ($ver = readdir($ver_dir))) {
            if ($ver == '.' || $ver == '..' || !is_dir($ver_path . '/' . $ver)) {
                continue;
            }
            if (!($version = CBitrixLiveapi::GetModuleVersion($ver_path . '/' . $ver, $module_id))) {
                $version = $ver;
            }
            $rs = $DB->Query('SELECT item FROM b_liveapi WHERE module_id="' . $DB->ForSQL($module_id) . '" AND version="' . $DB->ForSQL($version) . '" LIMIT 1');
            // MySQL only
            if ($rs->Fetch()) {
                continue;
            }
            $ar = CBitrixLiveapi::ScanModule($ver_path . '/' . $ver);
            foreach ($ar as $type => $arList) {
                foreach ($arList as $item => $Location) {
                    CBitrixLiveapi::Insert(array('module_id' => $module_id, 'version' => $version, 'type' => $type, 'item' => $item, 'location' => $Location));
                }
            }
        }
        closedir($ver_dir);
        $loop = true;
    }
    closedir($dir);
}
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_after.php";
echo '<div>
	<input type=button value="' . GetMessage("BITRIX_LIVEAPI_SKANIROVATQ_PAPKU_S") . '" onclick="if(confirm(\'' . GetMessage("BITRIX_LIVEAPI_NACATQ_SKANIROVANIE") . '?\'))document.location=\'?scan=Y\'">
	<input type=button value="' . GetMessage("BITRIX_LIVEAPI_POKAZATQ_POSLEDNIE_O") . '" onclick="document.location=\'?last_updates=Y\'">
コード例 #2
0
ファイル: live_api.php プロジェクト: DarneoStudio/bitrix
    CheckDirPath(dirname(DATA_FILE));
    if (!$_REQUEST['next_file'] && file_exists(DATA_FILE)) {
        rename(DATA_FILE, DATA_FILE_OLD);
    }
    while (false !== ($file = readdir($dir))) {
        if ($file == '.' || $file == '..' || strpos($file, '.') === 0 || !is_dir($path . '/' . $file)) {
            continue;
        }
        if ($_REQUEST['next_file'] && $file != $_REQUEST['next_file']) {
            continue;
        }
        unset($_REQUEST['next_file']);
        if (time() - START_TIME > 10) {
            die('<div>' . GetMessage("BITRIX_LIVEAPI_SKANIROVANIE_MODULA") . $file . '</div> <script>document.location="?scan=Y&next_file=' . htmlspecialchars($file) . '";</script>');
        }
        $ar = CBitrixLiveapi::ScanModule($path . '/' . $file);
        $f = fopen(DATA_FILE, 'ab');
        fwrite($f, '<' . '? $DATA[\'' . $file . '\'] = \'' . str_replace("'", "\\'", str_replace('\\', '\\\\', serialize($ar))) . '\'; ?' . '>' . "\n");
        fclose($f);
    }
    closedir($dir);
    echo '<div>' . GetMessage("BITRIX_LIVEAPI_SKANIROVANIE_ZAVERSE") . '</div>';
} else {
    $bNeedToRescan = true;
    if (file_exists(DATA_FILE)) {
        $utime = COption::GetOptionString("main", "update_system_update", 0);
        $bNeedToRescan = MakeTimeStamp($utime) > filemtime(DATA_FILE);
    }
    if ($bNeedToRescan) {
        echo '<div style="color:red">' . GetMessage("BITRIX_LIVEAPI_BYLI_USTANOVLENY_OBN") . '.</div>';
    }