예제 #1
0
function insert_defaults($dsn)
{
    // {{{
    $db = NewADOConnection($dsn);
    if (!$db) {
        die("Couldn't connect to \"{$dsn}\"");
    } else {
        if (substr($dsn, 0, 5) == "mysql") {
            $engine = new MySQL();
        } else {
            if (substr($dsn, 0, 5) == "pgsql") {
                $engine = new PostgreSQL();
            } else {
                if (substr($dsn, 0, 6) == "sqlite") {
                    $engine = new SQLite();
                } else {
                    die("Unknown database engine; Shimmie currently officially supports MySQL\n\t\t\t(mysql://), with hacks for Postgres (pgsql://) and SQLite (sqlite://)");
                }
            }
        }
        $engine->init($db);
        $config_insert = $db->Prepare("INSERT INTO config(name, value) VALUES(?, ?)");
        $user_insert = $db->Prepare("INSERT INTO users(name, pass, joindate, admin) VALUES(?, ?, now(), ?)");
        $db->Execute($user_insert, array('Anonymous', null, 'N'));
        $db->Execute($config_insert, array('anon_id', $db->Insert_ID()));
        if (check_im_version() > 0) {
            $db->Execute($config_insert, array('thumb_engine', 'convert'));
        }
        $db->Close();
    }
}