Diff for /register/prgsrc/register.cgi between versions 1.6 and 1.12

version 1.6, 2001/09/11 22:27:12 version 1.12, 2002/08/12 21:10:55
Line 41  use POSIX qw(locale_h); Line 41  use POSIX qw(locale_h);
   
 setlocale(LC_CTYPE,'russian');  setlocale(LC_CTYPE,'russian');
 $ENV{'LANG'}='ru_RU.KOI8-R';  $ENV{'LANG'}='ru_RU.KOI8-R';
 my ($SENDMAIL) = "/usr/sbin/sendmail";  my ($SENDMAIL) = "mail";
 my $TO = 'borisv@lk.net, igra@gorlovka.net';  my $TO = 'borisv@lk.net, igra@gorlovka.net, erudit@mail.od.ua';
 my $FROM = 'borisv@lk.net';  my $FROM = 'borisv@lk.net';
   
 my $date='$Date$';  my $date='$Date$';
Line 58  my $dbh = DBI->connect("DBI:mysql:chgk", Line 58  my $dbh = DBI->connect("DBI:mysql:chgk",
         die "Can't connect to DB chgk\n";          die "Can't connect to DB chgk\n";
     };      };
   
 print header;  print header(-charset=>'koi8-r');
   
   
 ##################################################  ##################################################
Line 87  my $self=url(); Line 87  my $self=url();
 ###############################################  ###############################################
 print <<END;  print <<END;
 <dl>  <dl>
   <dt><a href="$self">Home</a></dt>
 <dt><a href="$self?rid=1&level=1000&clubs=0">Все регионы</a></dt>  <dt><a href="$self?rid=1&level=1000&clubs=0">Все регионы</a></dt>
 <dt><a href="$self?rid=1&level=1000&clubs=1">Все клубы</a></dt>  <dt><a href="$self?rid=1&level=1000&clubs=1">Все клубы</a></dt>
 <dt><a href="$self?addclub=1">Добавить клуб</a></dt>  <dt><a href="$self?addclub=1">Добавить клуб</a></dt>
   <dt><a href="$self?whoiswho=1">Кто есть кто</a></dt>
 END  END
   
 #################################################  #################################################
Line 123  END Line 125  END
 <h1 align=center>  <h1 align=center>
 Журнал "Игра"<br>  Журнал "Игра"<br>
 и<br>  и<br>
 <a href="http:/znatoki/klub/znat.html"><img   <a href="/znatoki/klub/znat.html"><img 
 ismap border=0 src= "http:../images/logo.gif"   ismap border=0 src= "../images/logo.gif" 
 alt="Интернет Клуб Что? Где? Когда?" width=319 height=27></a>  alt="Интернет Клуб Что? Где? Когда?" width=319 height=27></a>
 <br>ПРЕДСТАВЛЯЮТ<br>  <br>ПРЕДСТАВЛЯЮТ<br>
 Регистр Клубов Интеллектуальных Игр  Регистр Клубов Интеллектуальных Игр
Line 147  END Line 149  END
         $cid =~ s/(\d*)/$1/;          $cid =~ s/(\d*)/$1/;
         print ClubInfo(dbh=>$dbh,cid=>$cid,          print ClubInfo(dbh=>$dbh,cid=>$cid,
                        self=>$self);                         self=>$self);
       } elsif (param('pid')) {
           my $pid = param('pid');
           $pid =~ s/(\d*)/$1/;
           print ListPerson(dbh=>$dbh,pid=>$pid,
                            self=>$self,
                            positions=>1,
                            displayperson=>1);
       } elsif (param('whoiswho')) {
           print PrintWhoIsWho(dbh=>$dbh,
                               self=>$self);
     } elsif (param('addclub')) {      } elsif (param('addclub')) {
         print AddClub();          print AddClub();
     } elsif (param('Submit')) {      } elsif (param('Submit')) {
Line 158  END Line 170  END
 <dt><a href="$self?rid=1&level=1000&clubs=1">Все клубы</a></dt>  <dt><a href="$self?rid=1&level=1000&clubs=1">Все клубы</a></dt>
 <dt><a href="$self?addclub=1">Добавить клуб или изменить сведения  <dt><a href="$self?addclub=1">Добавить клуб или изменить сведения
 о клубе</a></dt>  о клубе</a></dt>
   <dt><a href="$self?whoiswho=1">Кто есть кто</a></dt>
 </dl>  </dl>
   <p align=center>
   END
   print &Include_virtual("../boris/register/regions.html");
   print <<END;
   </p>
 END  END
 }  }
   
 ####################################################################  ####################################################################
 # And the bottom of the page  # And the bottom of the page
 ###################################################################  ###################################################################
       my $sth=$dbh->prepare("select count(*) from Clubs");
       $sth->execute;
       my ($count) = $sth->fetchrow_array;
       $sth->finish;
   
     print "<p align=center>";      print "<p align=center>";
       print "Всего клубов: $count<br>\n";
     print "Эту страничку посмотрели ";      print "Эту страничку посмотрели ";
     print `/home/piataev/public_html/cgi-bin/counter.sh /znatoki/cgi-bin/register.cgi`;      print `/home/piataev/public_html/cgi-bin/counter.sh /znatoki/cgi-bin/register.cgi`;
     print " раз(а)</p>\n";      print " раз(а)</p>\n";
Line 236  SELECT Name FROM Regions WHERE RID=$args Line 259  SELECT Name FROM Regions WHERE RID=$args
   
         # Frist, we print clubs          # Frist, we print clubs
         if ($args{'clubs'}) {          if ($args{'clubs'}) {
               $result .= ListRegionURLs(%args);
             $result .= ListClubs(%args);              $result .= ListClubs(%args);
         }          }
         $sth=$args{'dbh'}->prepare("          $sth=$args{'dbh'}->prepare("
Line 264  SELECT rid FROM Regions WHERE $clause OR Line 288  SELECT rid FROM Regions WHERE $clause OR
 }  }
   
 ############################################################  ############################################################
   # List the URLs of a given region
   ###########################################################
   sub ListRegionURLs {
       my %args = @_;
       my $sth;
       $sth = $args{'dbh'}->prepare("
   SELECT URL FROM Regions WHERE rid=$args{'rid'} and NOT ISNULL(URL)");
   
       $sth->execute;
           
       if (!$sth->rows) {
           return "";
       }
       
       my $result;
           
       $result=<<END;
   <dl><dt>Странички:</dt>
   <dd><dl>\n
   END
       
       while (my ($string)=$sth->fetchrow_array) {
           $string=htmlize($string);
           $result .= p($string);
       }
       $result .= "</dl></dd></dl>\n";
       return $result;
   }
   
   
   ############################################################
 # List the clubs of a given region or a given association  # List the clubs of a given region or a given association
 ###########################################################  ###########################################################
 sub ListClubs {  sub ListClubs {
Line 289  SELECT cid FROM ClubRegion WHERE rid=$ar Line 344  SELECT cid FROM ClubRegion WHERE rid=$ar
   
         $result=<<END;          $result=<<END;
 <h3>Клубы:</h3>  <h3>Клубы:</h3>
 <dd><dl>\n  <dl>\n
 END  END
      } else {       } else {
     
Line 333  SELECT Parent FROM ClubClub WHERE Child= Line 388  SELECT Parent FROM ClubClub WHERE Child=
                   
     $result=<<END;      $result=<<END;
 <h3>Коллективный член ассоциаций:</h3>  <h3>Коллективный член ассоциаций:</h3>
 <dd><dl>\n  <dl>\n
 END  END
   
     my @clubs=();      my @clubs=();
Line 490  SELECT * FROM People WHERE pid=$args{'pi Line 545  SELECT * FROM People WHERE pid=$args{'pi
         return "";          return "";
     }      }
   
       my $result="";
     my @entries=();      my @entries=();
     my $person=$sth->fetchrow_hashref;      my $person=$sth->fetchrow_hashref;
     if (my $string = $person->{'Name'}) {      if (my $string = $person->{'Name'}) {
         push @entries, $string;          if ($args{'displayperson'}) {
               $result=h2($string);
           } else {
               push @entries, 
               "<a href=\"$args{'self'}?pid=$args{'pid'}\">$string</a>";
           }
     }      }
     if (my $string=$person->{'Address'}) {      if (my $string=$person->{'Address'}) {
         push @entries, "Адрес: $string";          push @entries, "Адрес: $string";
Line 517  SELECT * FROM People WHERE pid=$args{'pi Line 578  SELECT * FROM People WHERE pid=$args{'pi
         push @entries, "E-mail: $string";          push @entries, "E-mail: $string";
     }      }
   
     return p(join('; ',@entries).".");      $result.=p(join('; ',@entries).".");
       if ($args{'positions'}) {
           my $sth=$dbh->prepare("SELECT cid,Position FROM ClubPeople
   WHERE pid=$args{'pid'} ORDER by Weight");
           $sth->execute;
           $result .= "<dl>\n";
           while (my ($cid,$Position)=$sth->fetchrow_array) {
               my $sth1=$dbh->prepare("Select Name from Clubs where
   cid=$cid");
               $sth1->execute;
               my ($Name)=$sth1->fetchrow_array;
               $sth1->finish;
               $result .= "<dd><strong>$Position,</strong> ";
               $result .= "<a href=\"$args{self}?cid=$cid\">$Name</a></dd>\n";
           }
           $sth->finish;
           $result .= "</dl>\n";
       }
       return $result;
   
 }  }
   
Line 688  sub AddClub { Line 767  sub AddClub {
 # Sending the letter with results  # Sending the letter with results
 #####################################################################  #####################################################################
 sub SendLetter {  sub SendLetter {
    open(MAIL,"| $SENDMAIL -t -n");     open(MAIL,"| $SENDMAIL -s 'Registracionnaya kartochka kluba' $TO");
     print MAIL <<END;      print MAIL <<END;
 To: $TO  
 From: $FROM  
 Subject: Registracionnaya kartochka kluba  
 MIME-Version: 1.0  MIME-Version: 1.0
 Content-type: text/plain; charset=koi8-r  Content-type: text/plain; charset=koi8-r
   
Line 711  END Line 787  END
             "обработки будут внесены в базу данных");              "обработки будут внесены в базу данных");
 }  }
   
   ###############################################################
   # Printing Who is Who list
   ###############################################################
   sub PrintWhoIsWho {
       my %args =@_;
       my $result = h2("Кто есть кто");
       $result .= "\n<dl>\n";
       my $sth = $dbh->prepare("SELECT pid,Name FROM People ORDER BY Name");  
       $sth->execute;
       while (my($pid,$Name)=$sth->fetchrow_array) {
           $result .= dd("<a href=\"$args{'self'}?pid=$pid\">$Name</a>");
           $result .= "\n";
       }
       $sth->finish;
       $result .= "</dl>\n";
       return $result;
   }

Removed from v.1.6  
changed lines
  Added in v.1.12


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