mirror of
https://github.com/moodle/moodle.git
synced 2025-01-19 14:27:22 +01:00
48 lines
1.8 KiB
PHP
48 lines
1.8 KiB
PHP
<?php //$Id$
|
|
|
|
require_once $CFG->libdir.'/formslib.php';
|
|
|
|
class database_transfer_form extends moodleform {
|
|
|
|
function definition() {
|
|
$mform = $this->_form;
|
|
|
|
$mform->addElement('header', 'database', get_string('dbtransfer', 'dbtransfer'));
|
|
|
|
$supported = array (
|
|
'mysqli/adodb',
|
|
'mysql/adodb',
|
|
'postgres7/adodb',
|
|
'mssql_n/adodb',
|
|
'mssql/adodb',
|
|
'odbc_mssql/adodb',
|
|
'oci8po/adodb',
|
|
'sqlite3/pdo',
|
|
);
|
|
$drivers = array();
|
|
foreach($supported as $driver) {
|
|
list($dbtype, $dblibrary) = explode('/', $driver);
|
|
$targetdb = moodle_database::get_driver_instance($dbtype, $dblibrary);
|
|
if ($targetdb->driver_installed() !== true) {
|
|
continue;
|
|
}
|
|
$drivers[$driver] = $driver;
|
|
}
|
|
|
|
$mform->addElement('select', 'driver', get_string('dbtype', 'install'), $drivers);
|
|
$mform->addElement('text', 'dbhost', get_string('dbhost', 'install'));
|
|
$mform->addElement('text', 'dbname', get_string('database', 'install'));
|
|
$mform->addElement('text', 'dbuser', get_string('user'));
|
|
$mform->addElement('text', 'dbpass', get_string('password'));
|
|
$mform->addElement('text', 'prefix', get_string('dbprefix', 'install'));
|
|
|
|
$mform->addRule('dbhost', get_string('required'), 'required', null);
|
|
$mform->addRule('dbname', get_string('required'), 'required', null);
|
|
$mform->addRule('dbuser', get_string('required'), 'required', null);
|
|
$mform->addRule('dbpass', get_string('required'), 'required', null);
|
|
$mform->addRule('prefix', get_string('required'), 'required', null);
|
|
|
|
$this->add_action_buttons(false, get_string('transferdata', 'dbtransfer'));
|
|
}
|
|
}
|