示例#1
0
function gp_upgrade_db()
{
    global $gpdb;
    $alterations = BP_SQL_Schema_Parser::delta($gpdb, gp_schema_get());
    $errors = $alterations['errors'];
    if ($errors) {
        return $errors;
    }
    gp_upgrade_data(gp_get_option_from_db('gp_db_version'));
    gp_update_db_version();
}
示例#2
0
文件: upgrade.php 项目: bi0xid/bach
function sp_upgrade()
{
    require_once 'includes/backpress/class.bp-sql-schema-parser.php';
    global $db, $table_prefix;
    $schema = (include 'schema.php');
    if (is_array($schema)) {
        $parser = new BP_SQL_Schema_Parser();
        // fill in the table names
        foreach ($schema as $t => $q) {
            $schema[$t] = sprintf($q, $table_prefix . $t);
        }
        $result = $parser->delta($db, $schema);
        if (!empty($result['errors'])) {
            echo '<pre>';
            echo "Upgrade error:\n";
            var_dump($result);
            echo '</pre>';
        }
    }
}
function bb_upgrade_all()
{
    if (!ini_get('safe_mode')) {
        set_time_limit(600);
    }
    $_do_user_operations = true;
    if (bb_get_option('nxt_table_prefix') || defined('BB_SCHEMA_IGNORE_nxt_USERS_TABLES') && BB_SCHEMA_IGNORE_nxt_USERS_TABLES) {
        $_do_user_operations = false;
    }
    $bb_upgrade = array();
    // Pre DB Delta
    if ($_do_user_operations) {
        $bb_upgrade['messages'][] = bb_upgrade_160();
        // Break blocked users
        $bb_upgrade['messages'][] = bb_upgrade_170();
        // Escaping in usermeta
        $bb_upgrade['messages'][] = bb_upgrade_180();
        // Delete users for real
    }
    $bb_upgrade['messages'][] = bb_upgrade_190();
    // Move topic_resolved to topicmeta
    $bb_upgrade['messages'][] = bb_upgrade_200();
    // Indices
    $bb_upgrade['messages'][] = bb_upgrade_210();
    // Convert text slugs to varchar slugs
    $bb_upgrade['messages'][] = bb_upgrade_220();
    // remove bb_tagged primary key, add new column and primary key
    require_once BACKPRESS_PATH . 'class.bp-sql-schema-parser.php';
    require_once BB_PATH . 'bb-admin/includes/defaults.bb-schema.php';
    $delta = BP_SQL_Schema_Parser::delta($bbdb, $bb_queries, $bb_schema_ignore);
    if (is_array($delta)) {
        $bb_upgrade['messages'] = array_merge($bb_upgrade['messages'], $delta['messages']);
        $bb_upgrade['errors'] = $delta['errors'];
    } else {
        $bb_upgrade['errors'] = array();
    }
    // Post DB Delta
    $bb_upgrade['messages'][] = bb_upgrade_1000();
    // Make forum and topic slugs
    $bb_upgrade['messages'][] = bb_upgrade_1010();
    // Make sure all forums have a valid parent
    if ($_do_user_operations) {
        $bb_upgrade['messages'][] = bb_upgrade_1020();
        // Add a user_nicename to existing users
    }
    $bb_upgrade['messages'][] = bb_upgrade_1030();
    // Move admin_email option to from_email
    $bb_upgrade['messages'][] = bb_upgrade_1040();
    // Activate Akismet and bozo plugins and convert active plugins to new convention on upgrade only
    $bb_upgrade['messages'][] = bb_upgrade_1050();
    // Update active theme if present
    $bb_upgrade['messages'][] = bb_upgrade_1070();
    // trim whitespace from raw_tag
    $bb_upgrade['messages'][] = bb_upgrade_1080();
    // Convert tags to taxonomy
    if ($_do_user_operations) {
        $bb_upgrade['messages'][] = bb_upgrade_1090();
        // Add display names
    }
    $bb_upgrade['messages'][] = bb_upgrade_1100();
    // Replace forum_stickies index with stickies (#876)
    $bb_upgrade['messages'][] = bb_upgrade_1110();
    // Create plugin directory (#1083)
    $bb_upgrade['messages'][] = bb_upgrade_1120();
    // Create theme directory (#1083)
    $bb_upgrade['messages'][] = bb_upgrade_1130();
    // Add subscriptions option and set it to true (#1268)
    bb_update_db_version();
    nxt_cache_flush();
    $bb_upgrade['messages'] = array_filter($bb_upgrade['messages']);
    $bb_upgrade['errors'] = array_filter($bb_upgrade['errors']);
    return $bb_upgrade;
}
function bb_sql_delta($queries, $execute = true)
{
    require_once BACKPRESS_PATH . 'class.bp-sql-schema-parser.php';
    bb_log_deprecated('function', __FUNCTION__, 'BP_SQL_Schema_Parser::delta');
    global $bbdb;
    return BP_SQL_Schema_Parser::delta($bbdb, $queries, false, $execute);
}