--- db/prgsrc/updatedb.pl 2002/11/09 01:47:23 1.25 +++ db/prgsrc/updatedb.pl 2003/02/07 23:20:15 1.34 @@ -28,17 +28,18 @@ The database, user and password are hard Dmitry Rubinstein -=head1 $Id: updatedb.pl,v 1.25 2002/11/09 01:47:23 roma7 Exp $ +=head1 $Id: updatedb.pl,v 1.34 2003/02/07 23:20:15 roma7 Exp $ =cut use vars qw($opt_i); use Getopt::Std; +my $unsortedname="../dump/unsorted"; getopts('i'); - +#open STDERR, ">errors"; my $Interactive=$opt_i || 0; - +my $DUMPDIR = $ENV{DUMPDIR} || "../dump"; my (%RevMonths) = ('Jan', '1', 'Feb', '2', 'Mar', '3', 'Apr', '4', 'May', '5', 'Jun', '6', @@ -58,7 +59,7 @@ my ($sth); use DBI; use strict; - +my $isunsorted=0; sub UpdateParents { my ($dbh, $ParentId, $all_qnum) = @_; if ($ParentId) { @@ -143,11 +144,13 @@ sub SelectGroup { } else { # Теперь, если файла нет в дереве турниров, никаких вопросов не # задаётся, а вместо этого он добавляется в группу 9999 - $ParentId = 9999; -print STDERR "INSERT INTO Tournaments - (Title, Type, ParentId, FileName) - VALUES ($TourName, 'Ч', $ParentId, - $source)"; + $ParentId = 9999; + my $tempsource=$source; + my $temptname=$TourName; + $tempsource=~s/^\'(.*)\'$/$1/; + $temptname=~s/^\'(.*)\'$/$1/; + print UNSORTED "$tempsource".((12 -length($source))x' ')."\t$temptname\n"; + $isunsorted=1; $sth = $dbh->prepare("INSERT INTO Tournaments (Title, Type, ParentId, FileName) VALUES ($TourName, 'Ч', $ParentId, @@ -271,6 +274,7 @@ MAIN: my($dbh) = DBI->connect("DBI:mysql:chgk", "piataev", "") or die "Can't connect to DB chgk\n"; my @sources; + open UNSORTED, ">$unsortedname"; while ($source = shift) { push @sources,glob($source); } @@ -406,5 +410,7 @@ MAIN: &UpdateParents($dbh, $ParentId, $all_qnum); print STDERR "Всего вопросов: $all_qnum \n"; } + close UNSORTED; + unlink $unsortedname unless $isunsorted; $dbh->disconnect; }