diff options
author | Eric Davis <edavis@littlestreamsoftware.com> | 2010-07-08 03:46:14 +0000 |
---|---|---|
committer | Eric Davis <edavis@littlestreamsoftware.com> | 2010-07-08 03:46:14 +0000 |
commit | ef5bca0fefea59abd5b9b56140c6f10530a4d302 (patch) | |
tree | 4b4f58098d7b58d4dcd230b2a957de9644aace9e /extra | |
parent | 0d5fca9ba5ac81db46211b6cc06686e59c57beb4 (diff) | |
download | redmine-ef5bca0fefea59abd5b9b56140c6f10530a4d302.tar.gz redmine-ef5bca0fefea59abd5b9b56140c6f10530a4d302.zip |
Have Redmine.pm respect the Authentication Required setting. #5797
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3831 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'extra')
-rw-r--r-- | extra/svn/Redmine.pm | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/extra/svn/Redmine.pm b/extra/svn/Redmine.pm index 1b3b0910f..f608ee124 100644 --- a/extra/svn/Redmine.pm +++ b/extra/svn/Redmine.pm @@ -227,9 +227,38 @@ sub authen_handler { } } +# check if authentication is forced +sub is_authentication_forced { + my $r = shift; + + my $dbh = connect_database($r); + my $sth = $dbh->prepare( + "SELECT value FROM settings where settings.name = 'login_required';" + ); + + $sth->execute(); + my $ret = 0; + if (my @row = $sth->fetchrow_array) { + if ($row[0] eq "1" || $row[0] eq "t") { + $ret = 1; + } + } + $sth->finish(); + undef $sth; + + $dbh->disconnect(); + undef $dbh; + + $ret; +} + sub is_public_project { my $project_id = shift; my $r = shift; + + if (is_authentication_forced($r)) { + return 0; + } my $dbh = connect_database($r); my $sth = $dbh->prepare( |