--- db/prgsrc/db.cgi 2003/04/09 23:31:54 1.95 +++ db/prgsrc/db.cgi 2003/04/19 22:50:06 1.99 @@ -23,11 +23,16 @@ $outputkvo=100 if $outputkvo>100; if (param('debug')) {$debug=1; $printqueries=1} *STDERR=*STDOUT if $debug; -if ($url !~ /db\.chgk\.info/ && $url !~ /localhost/ ) { +if ($url !~ /db\.chgk\.info/ && $url !~ /(localhost)||(bilbo)/ ) { my $u="http://db.chgk.info/cgi-bin/db.cgi?$qs"; Redirect ($u); exit; } +if (!param('sstr') && param('all')) { + my $destination='http://db.chgk.info/all.html'; + Redirect($destination); + exit; +} my $thislocale; if ($^O =~ /win/i) { $thislocale = "Russian_Russia.20866"; @@ -137,11 +142,13 @@ sub fetchquestion { my ($sth,$q,$WithTour)=@_; if ($WithTour) { ($$q{'Question'},$$q{'Answer'},$$q{'Comments'},$$q{'Authors'}, + $$q{'Sources'}, $$q{'Number'}, $$q{'Title'}, $$q{'TourTitle'}, $$q{'FileName'},$$q{'PlayedAt'},$$q{'TourNumber'}) = $sth->fetchrow; } else { ($$q{'Question'},$$q{'Answer'},$$q{'Comments'},$$q{'Authors'}, + $$q{'Sources'}, $$q{'Number'})= $sth->fetchrow; } @@ -160,13 +167,13 @@ sub SelectQuestions { my $query; if ($WithTour) { - $query="SELECT Questions.Question, Answer, Comments, Authors, + $query="SELECT Questions.Question, Answer, Comments, Authors, Sources, Questions.Number , t2.Title, t1.Title, t2.FileName, t2.PlayedAt,t1.Number from Questions,Tournaments as t1, Tournaments as t2 WHERE $where"; } else { - $query="SELECT Questions.Question, Answer, Comments, Authors, + $query="SELECT Questions.Question, Answer, Comments, Authors,Sources, Questions.Number from Questions WHERE $where"; } @@ -177,7 +184,6 @@ sub SelectQuestions { return $sth; } - # Reads one question from the DB. Gets DB handler and Question ID. sub GetQuestion { my ($dbh, $QuestionId) = @_; @@ -766,7 +772,7 @@ sub PrintList { a({href=>url."?".$qs."\&first=$llprint"},">>").(" "x4) } $Output.= "$nav".br."\n"; - my @q=@$Questions[$first..$last]; + my @q=@$Questions[$first-1..$last-1]; my %q=(); my $sth=SelectQuestions($dbh,\@q,1); for (my $i = $first; $i <= $last; $i++) { @@ -1817,7 +1823,7 @@ th {font-size: x-small; font-family : sa $globaloutput.=&Include_virtual("../dimrub/db/reklama.html"); } - if (length ($qs)<=255 && $qs !~ /(sstr)|(rand)|(comp)/i) { + if (length ($qs)<=255 && $qs !~ /(sstr)|(rand)|(comp)|(all=)/i) { my $sth=$dbh->prepare("SELECT page,times,t from hash where query=".$dbh->quote($qs)); $sth->execute(); my ($p,$times,$t)=$sth->fetchrow(); @@ -1857,7 +1863,8 @@ th {font-size: x-small; font-family : sa else { $sth = $dbh->prepare("SELECT Id FROM Tournaments - WHERE FileName = '$tour.txt'"); + WHERE FileName = '$tour.txt' OR + FileName = '$tour'"); } $sth->execute; $tour = ($sth->fetchrow)[0]; @@ -1910,7 +1917,10 @@ EOT elsif (param('getfile')){ $globaloutput.=&writefile } elsif (param('all')) { - $globaloutput.=&PrintAll($dbh, 0); + my $destination='http://db.chgk.info/all.html'; + Redirect($destination); + exit; +# $globaloutput.=&PrintAll($dbh, 0); } elsif (param('from_year') && param('to_year')) { $globaloutput.=&PrintDates($dbh); } elsif (param('comp')) {