Diff for /db/prgsrc/db.cgi between versions 1.92 and 1.94

version 1.92, 2003/02/22 01:40:28 version 1.94, 2003/04/04 10:01:27
Line 9  use locale; Line 9  use locale;
 open STDERR, ">/var/tmp/errors1";  open STDERR, ">/var/tmp/errors1";
 my $newsurl='http://news.chgk.info/';  my $newsurl='http://news.chgk.info/';
 my $cashednumber=500;  my $cashednumber=500;
   my $outputbumber=10;
 my ($proxyptext,$proxysstr);  my ($proxyptext,$proxysstr);
 my $printqueries=0;  my $printqueries=0;
 my %forbidden=();  my %forbidden=();
Line 170  sub printform Line 171  sub printform
 {  {
   
   my $qnumber=(" "x10)."Выводить по ". textfield(-name=>'kvo',    my $qnumber=(" "x10)."Выводить по ". textfield(-name=>'kvo',
                          -default=>param('kvo')||'150',                           -default=>param('kvo')||$outputbumber,
                          -size=>3,                           -size=>3,
                          -maxlength=>5)." вопросов";                           -maxlength=>5)." вопросов";
   my $sstr=param('sstr');    my $sstr=param('sstr');
Line 621  sub PrintList { Line 622  sub PrintList {
    my ($dbh,$Questions,$shablon,$was)=@_;     my ($dbh,$Questions,$shablon,$was)=@_;
   
         my $first=param('first') ||1;          my $first=param('first') ||1;
         my $kvo=param('kvo') ||150;          my $kvo=param('kvo') ||$outputbumber;
   
         $first=$first-($first-1)%$kvo;          $first=$first-($first-1)%$kvo;
           my $fkvo=param('fkvo')||($#$Questions+1);
         my $last=$first+$kvo-1;          my $last=$first+$kvo-1;
         $last=scalar @$Questions if scalar @$Questions <$last;          $last=$fkvo if $fkvo<$last;
         my($f,$l);          my($f,$l);
         my $nav='';          my $nav='';
         my $qs=query_string;          my $qs=query_string;
Line 635  sub PrintList { Line 637  sub PrintList {
         $qs=~s/sstr=[^\&]+/sstr=$sstr/;          $qs=~s/sstr=[^\&]+/sstr=$sstr/;
         $qs=~s/\&was=[^\&]+//;          $qs=~s/\&was=[^\&]+//;
         $qs.="&was=$was" if $was;          $qs.="&was=$was" if $was;
          my $fkvo=param('fkvo')||$#$Questions;  
         $qs.="&fkvo=$fkvo" if $was;          $qs.="&fkvo=$fkvo" if $was;
         if ($first>$kvo*3+1)          if ($first>$kvo*3+1)
         {          {
Line 643  sub PrintList { Line 644  sub PrintList {
             ("&nbsp;"x4).              ("&nbsp;"x4).
             a({href=>url."?".$qs."\&first=1"},"<<").("&nbsp;"x4).              a({href=>url."?".$qs."\&first=1"},"<<").("&nbsp;"x4).
             a({href=>(url."?".$qs."\&first=".($first-$kvo))},"<").("&nbsp;"x4)              a({href=>(url."?".$qs."\&first=".($first-$kvo))},"<").("&nbsp;"x4)
                 }          }
   
         else {$nav.='&nbsp;'x15;}          else {$nav.='&nbsp;'x15;}
   
      my ($fprint,$lprint);       my ($fprint,$lprint);
      my $llprint=$fkvo- ($fkvo+1)%$kvo+2;       my $llprint=$fkvo- ($fkvo)%$kvo+1; #
      if ($fkvo+1<=$kvo*7)       if ($fkvo<=$kvo*7)
      {         $fprint=1;       {         $fprint=1;
                $lprint=$llprint;                 $lprint=$llprint;
      }       }
      elsif ($first>$kvo*3 && $fkvo+1-$first>$kvo*3)       elsif ($first>$kvo*3 && $fkvo-$first>$kvo*3)
      {       {
        $fprint=$first-$kvo*3;         $fprint=$first-$kvo*3;
        $lprint=$first+$kvo*3;         $lprint=$first+$kvo*3;
Line 682  sub PrintList { Line 682  sub PrintList {
         {          {
 #         next if $first-$f>$kvo*3;  #         next if $first-$f>$kvo*3;
           $l=$f+$kvo-1;            $l=$f+$kvo-1;
           $l=$#$Questions+1 if $l>$fkvo+1;            $l=$fkvo if $l>$fkvo+1;
           if ($f==$first) {$nav.="[$f-$l] ";}            if ($f==$first) {$nav.="[$f-$l] ";}
           else {            else {
                   $nav.= "[".a({href=>(url."?".$qs."\&first=$f")},"$f-$l")."] ";}                    $nav.= "[".a({href=>(url."?".$qs."\&first=$f")},"$f-$l")."] ";}

Removed from v.1.92  
changed lines
  Added in v.1.94


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>