2008-09-02 21:20:45 +00:00
|
|
|
<?php //$Id$
|
|
|
|
|
|
|
|
require('../../config.php');
|
|
|
|
require_once('lib.php');
|
|
|
|
require_once('database_transfer_form.php');
|
|
|
|
|
|
|
|
require_login();
|
|
|
|
admin_externalpage_setup('dbtransfer');
|
|
|
|
|
|
|
|
//create form
|
|
|
|
$form = new database_transfer_form();
|
|
|
|
|
|
|
|
if ($data = $form->get_data()) {
|
|
|
|
list($dbtype, $dblibrary) = explode('/', $data->driver);
|
|
|
|
$targetdb = moodle_database::get_driver_instance($dbtype, $dblibrary);
|
2008-10-29 09:24:45 +00:00
|
|
|
if (!$targetdb->connect($data->dbhost, $data->dbuser, $data->dbpass, $data->dbname, $data->prefix, null)) {
|
2008-09-02 21:20:45 +00:00
|
|
|
throw new dbtransfer_exception('notargetconectexception', null, "$CFG->wwwroot/$CFG->admin/dbtransfer/");
|
|
|
|
}
|
|
|
|
if ($targetdb->get_tables()) {
|
|
|
|
// TODO add exception or string...
|
2008-12-12 04:53:32 +00:00
|
|
|
print_error('ddltablealreadyexists');
|
2008-09-02 21:20:45 +00:00
|
|
|
}
|
|
|
|
admin_externalpage_print_header();
|
|
|
|
dbtransfer_transfer_database($DB, $targetdb);
|
|
|
|
notify(get_string('success'), 'notifysuccess');
|
|
|
|
print_continue("$CFG->wwwroot/$CFG->admin/");
|
|
|
|
admin_externalpage_print_footer();
|
|
|
|
die;
|
|
|
|
}
|
|
|
|
|
|
|
|
admin_externalpage_print_header();
|
|
|
|
// TODO: add some more info here
|
|
|
|
$form->display();
|
|
|
|
admin_externalpage_print_footer();
|