summaryrefslogtreecommitdiff
path: root/rt/share/html/Install/Initialize.html
diff options
context:
space:
mode:
Diffstat (limited to 'rt/share/html/Install/Initialize.html')
-rw-r--r--rt/share/html/Install/Initialize.html11
1 files changed, 8 insertions, 3 deletions
diff --git a/rt/share/html/Install/Initialize.html b/rt/share/html/Install/Initialize.html
index 0b9ed6d39..47d7616a1 100644
--- a/rt/share/html/Install/Initialize.html
+++ b/rt/share/html/Install/Initialize.html
@@ -2,7 +2,7 @@
%#
%# COPYRIGHT:
%#
-%# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC
+%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC
%# <sales@bestpractical.com>
%#
%# (Except where explicitly superseded by other copyright notices)
@@ -73,6 +73,11 @@ if ( $Run ) {
my @actions = split /,/, $RT::Installer->{DatabaseAction};
+ # RT::Handle's ISA is dynamical, so we need to unshift the right one.
+ my $class = 'DBIx::SearchBuilder::Handle::' . RT->Config->Get('DatabaseType');
+ $class->require or die $UNIVERSAL::require::ERROR;
+ unshift @RT::Handle::ISA, $class;
+
my $sysdbh = DBI->connect(
RT::Handle->SystemDSN,
$RT::Installer->{InstallConfig}{DatabaseAdmin},
@@ -110,14 +115,14 @@ if ( $Run ) {
($status, $msg) = RT::Handle->InsertACL( $dbh );
}
elsif ( $action eq 'coredata' ) {
- $RT::Handle = new RT::Handle;
+ $RT::Handle = RT::Handle->new;
$RT::Handle->dbh( undef );
RT::ConnectToDatabase();
RT::InitLogging();
($status, $msg) = $RT::Handle->InsertInitialData;
}
elsif ( $action eq 'insert' ) {
- $RT::Handle = new RT::Handle;
+ $RT::Handle = RT::Handle->new;
RT::Init();
my $file = $RT::EtcPath . "/initialdata";
($status, $msg) = $RT::Handle->InsertData( $file );