Пример #1
0
function install_check_php_settings()
{
    $buffer = "<h3>PHP Settings</h3>\n";
    $buffer .= "<table>";
    if (opendb_version_compare(phpversion(), "5.0.0", ">=")) {
        $buffer .= format_field("PHP Version", phpversion());
    } else {
        $buffer .= format_field("PHP Version", "<span class='error'>" . phpversion() . " (must be >= 5.0.0)</span>");
    }
    if (preg_match("/([0-9]+)M/", ini_get('memory_limit'), $matches)) {
        if (is_numeric($matches[1]) && $matches[1] >= 8) {
            $buffer .= format_field("Memory Limit", $matches[0]);
        } else {
            $buffer .= format_field("Memory Limit", "<span class='error'>" . $matches[0] . " (should be >= 8M)</span>");
        }
    }
    if (ini_get('safe_mode') == 0 || strtolower(ini_get('safe_mode')) == 'off') {
        $buffer .= format_field("Safe Mode", "off");
    } else {
        $buffer .= format_field("Safe Mode", "<span class='error'>on (item / http cache, file uploads, and potentially other parts of the system do not function well with safe mode enabled.)</span>");
    }
    $max_execution_time = ini_get('max_execution_time');
    if (is_numeric(ini_get('max_execution_time')) && (ini_get('max_execution_time') >= 600 || @set_time_limit('600') && ini_get('max_execution_time') >= 600)) {
        if ($max_execution_time < 600) {
            $max_execution_time = 600;
            // set_time_limit can be activated, so for display purposes, up it to the 600, which is what we use
        }
        $buffer .= format_field("Max Execution Time", $max_execution_time);
    } else {
        $buffer .= format_field("Max Execution Time", "<span class='error'>" . $max_execution_time . " (set_time_limit disabled - set_time_limit should be enabled or max_execution_time >= 600)</span>");
    }
    if (ini_get('register_globals') == 0 || strtolower(ini_get('register_globals')) == 'off') {
        $buffer .= format_field("Register Globals", "off");
    } else {
        $buffer .= format_field("Register Globals", "<span class='warn'>on (register globals is not required)</span>");
    }
    if (ini_get('file_uploads') == 1 || strtolower(ini_get('file_uploads')) == 'on') {
        $buffer .= format_field("File Uploads", "on");
    } else {
        $buffer .= format_field("File Uploads", "<span class='error'>off (import functionality will be disabled)</span>");
    }
    $buffer .= "</table>";
    return $buffer;
}
Пример #2
0
 function testVersion150To1501()
 {
     $this->assertTrue(opendb_version_compare('1.5.0.1', '1.5.0', '>'), '1.5.0.1 > 1.5.0');
 }
Пример #3
0
/**
	Returns a list of all upgraders, including specific details about them including:
	    to_version=>
	    from_version=>
	    description=>
	    upgrader_plugin=>

	Will not display any plugins which are not appropriate for the $db_version_r, $opendb_version

	@param $db_version - is the version of the opendb database we are upgrading.
	@param $opendb_version - is the version of the code we are updating the database to
	@param $latest_to_version - is the latest upgrader to_version available.
*/
function get_upgraders_rs($db_version, $opendb_version, &$latest_to_version)
{
    $all_upgrader_rs = NULL;
    build_upgrader_list($all_upgrader_rs, $latest_to_version);
    $upgraders_rs = array();
    if (count($all_upgrader_rs) > 0) {
        if (strlen($db_version) == 0) {
            // no database installed so get a list of all
            $upgraders_rs[] = $upgrader_r;
        } else {
            // initial filter -
            for ($i = 0; $i < count($all_upgrader_rs); $i++) {
                $upgrader_r = $all_upgrader_rs[$i];
                if (opendb_version_compare($db_version, $upgrader_r['from_version'], '>=') && opendb_version_compare($db_version, $upgrader_r['to_version'], '<')) {
                    $upgraders_rs[] = $upgrader_r;
                }
            }
            // if no matches, then get latest and upgrade with that.
            if (count($upgraders_rs) == 0) {
                for ($i = 0; $i < count($all_upgrader_rs); $i++) {
                    if ($latest_to_version == $upgrader_r['to_version'] && opendb_version_compare($db_version, $upgrader_r['to_version'], '<')) {
                        $upgraders_rs[] = $upgrader_r;
                    }
                }
            }
        }
        if (count($upgraders_rs) > 0) {
            // now have to process it to remove those options that are not appropriate
            if (strlen($db_version) > 0) {
                $revised_list_rs = NULL;
                for ($i = 0; $i < count($upgraders_rs); $i++) {
                    $upgrader_r = $upgraders_rs[$i];
                    // lets look for a from_version which matches db_version exactly, and don't bother
                    // looking anywhere else if found.
                    if (opendb_version_compare($db_version, $upgrader_r['from_version'], '=')) {
                        $revised_list_rs[] = $upgrader_r;
                        break;
                    }
                }
                if (is_array($revised_list_rs)) {
                    return $revised_list_rs;
                } else {
                    return $upgraders_rs;
                }
            } else {
                return $upgraders_rs;
            }
        } else {
            // empty array as last resort.
            return array();
        }
    } else {
        $errors[] = 'No Upgrader plugin classes found - this is a fatal error!';
        return FALSE;
    }
}