All pastes #673413 Raw Edit

Meins

public php v1 · immutable
#673413 ·published 2007-08-28 11:45 UTC
rendered paste body
			$options = array();			if (in_array($dsn['phptype'], array('sqlite', 'ibase'))) {				$options['database_path'] = $GLOBALS['core']['data_path'];				$options['database_extension'] = '.'.$dsn['phptype'];			}			$mdb =& MDB2::singleton($dsn, $options);			if (PEAR::isError($mdb)) {				$this->error[] = INSTALLER_DSN_CONNECT;			} else {				$mdb->loadModule('Datatype');				$mdb->loadModule('Manager');				MDB2::loadFile('Date');				// check if database exists when not creating/overwriting				$create = $this->ifSetOr($this->param['dsn'], 'create', 0);				$overwrite = $this->ifSetOr($this->param['dsn'], 'overwrite', 0);				if ($create && !$overwrite) {					$errorcodes = array(MDB2_ERROR_UNSUPPORTED, MDB2_ERROR_NOT_CAPABLE);					$mdb->expectError($errorcodes);					$databases = $mdb->manager->listDatabases();					$mdb->popExpect();					if (PEAR::isError($databases)) {						if (!MDB2::isError($databases, $errorcodes)) {							$this->error[] = INSTALLER_DSN_ACCESS;						}					} elseif(in_array($this->param['dsn']['database'], $databases)) {						$this->error[] = INSTALLER_DSN_DATABASE_EXISTS;					}				}				require_once 'MDB2/Schema.php';				$schema =& MDB2_Schema::factory($mdb);				if (PEAR::isError($schema)) {					$this->error[] = INSTALLER_DSN_MANAGER;				}			}