X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Fshare%2Fhtml%2FInstall%2FDatabaseDetails.html;h=04b5fad533e72f89fda8ba742ec509cef2c87199;hp=904d6b848bd34f748ce72f3ff8c555c1ee50430e;hb=7322f2afedcc2f427e997d1535a503613a83f088;hpb=0fb307c305e4bc2c9c27dc25a3308beae3a4d33c diff --git a/rt/share/html/Install/DatabaseDetails.html b/rt/share/html/Install/DatabaseDetails.html index 904d6b848..04b5fad53 100644 --- a/rt/share/html/Install/DatabaseDetails.html +++ b/rt/share/html/Install/DatabaseDetails.html @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2016 Best Practical Solutions, LLC %# %# %# (Except where explicitly superseded by other copyright notices) @@ -105,9 +105,6 @@ unless ( $db_type eq 'SQLite' ) { push @Types, 'DatabaseHost', 'DatabasePort', 'DatabaseAdmin', 'DatabaseAdminPassword', 'DatabaseUser', 'DatabasePassword'; } -if ( $db_type eq 'Pg' ) { - push @Types, 'DatabaseRequireSSL'; -} if ( $Run ) { @@ -129,7 +126,6 @@ if ( $Run ) { my ( $status, $msg ) = RT::Installer->SaveConfig; if ( $status ) { - delete $INC{'RT_SiteConfig.pm'}; RT->LoadConfig; RT::Handle->FinalizeDatabaseType(); # dba connect systemdsn @@ -143,7 +139,17 @@ if ( $Run ) { $dbh = DBI->connect( RT::Handle->DSN, $ARGS{DatabaseAdmin}, $ARGS{DatabaseAdminPassword}, { RaiseError => 0, PrintError => 0 }, ); - + + if ( $dbh and $db_type eq "Oracle") { + # The database _existing_ is itself insufficient for Oracle -- we need to check for the RT user + my $sth = $dbh->prepare('SELECT username FROM dba_users WHERE username = ?'); + $sth->execute( $ARGS{DatabaseUser} ); + undef $dbh unless $sth->fetchrow_array; + + push @errors, loc("Oracle users cannot have empty passwords") + unless $ARGS{DatabasePassword}; + } + if ( $dbh ) { # check if table Users exists eval { @@ -155,6 +161,7 @@ if ( $Run ) { ); my $sth = $dbh->prepare('select * from Users'); + $sth->execute(); }; unless ( $@ ) {