version 1.15, 2000/10/22 06:03:35
|
version 1.22, 2002/01/12 00:55:33
|
Line 70 sub getField {
|
Line 70 sub getField {
|
chomp $key; |
chomp $key; |
if ($key eq 'Дата') { |
if ($key eq 'Дата') { |
$value =~ s/^(.*)-(.*)-(.*)$/$3-$2-$1/; |
$value =~ s/^(.*)-(.*)-(.*)$/$3-$2-$1/; |
my($month) = $RevMonths{$2} || '000'; |
my($month) = $RevMonths{$2} || '01'; |
$value =~ s/$2/$month/; |
$value =~ s/-(.*)-/-$month-/; |
|
$value =~ s/-00*$/-01/; |
} |
} |
$value = $dbh->quote($value); |
$value = $dbh->quote($value); |
return ($key, $value); |
return ($key, $value); |
} |
} |
next if (/^\s*$/); |
next if (/^\s*$/); |
|
|
if (/^(.*)[:\.]\s*/ && !$key) { |
if (!$key && /^(.*?)[:\.]\s*(.*)$/s) { |
$key = $1; |
$key = $1; |
|
$value=$2; |
next; |
next; |
} |
} |
if ($key) { |
if ($key) { |
Line 133 sub UpdateTournament {
|
Line 135 sub UpdateTournament {
|
|
|
sub UpdateQuestion { |
sub UpdateQuestion { |
my ($dbh, $QuestionId, $field, $value) = @_; |
my ($dbh, $QuestionId, $field, $value) = @_; |
|
$value=~s/\s*$//; |
$dbh->do("UPDATE Questions SET $field=$value |
$dbh->do("UPDATE Questions SET $field=$value |
WHERE QuestionId=$QuestionId") |
WHERE QuestionId=$QuestionId") |
or die $dbh->errstr; |
or die $dbh->errstr; |
Line 198 sub GetTours {
|
Line 201 sub GetTours {
|
} |
} |
|
|
sub CreateTour { |
sub CreateTour { |
my ($dbh,$title,$ParentId,$rh_defaults)=@_; |
my ($dbh,$title,$ParentId,$TourNum,$rh_defaults)=@_; |
my $sth = $dbh->prepare("INSERT INTO Tournaments |
my $sth = $dbh->prepare("INSERT INTO Tournaments |
(Title, Type, ParentId) |
(Title, Type, ParentId, Number) |
VALUES ($title, 'Т', $ParentId)"); |
VALUES ($title, 'Т', $ParentId, $TourNum)"); |
$sth->execute; |
$sth->execute; |
my $TourId = $sth->{mysql_insertid}; |
my $TourId = $sth->{mysql_insertid}; |
while (my ($key,$value)=each %$rh_defaults) { |
while (my ($key,$value)=each %$rh_defaults) { |
Line 227 MAIN:
|
Line 230 MAIN:
|
# |
# |
my %QuestionFields = ('Тип'=> 'Type', 'Вид'=> 'Type', |
my %QuestionFields = ('Тип'=> 'Type', 'Вид'=> 'Type', |
'Автор' => 'Authors', 'Рейтинг'=>'Rating', |
'Автор' => 'Authors', 'Рейтинг'=>'Rating', |
'Источник' => 'Sources'); |
'Источник' => 'Sources', |
|
'Тема' => 'Topic'); |
|
|
|
|
my($source); |
my($source); |
Line 236 MAIN:
|
Line 240 MAIN:
|
or die "Can't connect to DB chgk\n"; |
or die "Can't connect to DB chgk\n"; |
|
|
while ($source = shift) { |
while ($source = shift) { |
|
my $TourNum=0; |
my($PlayedAt) = ''; |
my($PlayedAt) = ''; |
my($QuestionId, $TourId, $TournamentId, $ParentId) = (0, 0, 0, 0); |
my($QuestionId, $TourId, $TournamentId, $ParentId) = (0, 0, 0, 0); |
my($tournum, $qnum, $all_qnum) = (0, 0, 0); |
my($tournum, $qnum, $all_qnum) = (0, 0, 0); |
Line 280 MAIN:
|
Line 285 MAIN:
|
WHERE Id=$TourId"); |
WHERE Id=$TourId"); |
} |
} |
$qnum = 0; |
$qnum = 0; |
$TourId=CreateTour($dbh,$value,$TournamentId,\%TourDefaults); |
$TourNum++; |
|
$TourId=CreateTour($dbh,$value,$TournamentId,$TourNum, |
|
\%TourDefaults); |
%QuestionDefaults=%QuestionGlobalDefaults; |
%QuestionDefaults=%QuestionGlobalDefaults; |
$QuestionId=0; |
$QuestionId=0; |
next; |
next; |
Line 288 MAIN:
|
Line 295 MAIN:
|
if ($key =~ /Вопрос/) { |
if ($key =~ /Вопрос/) { |
if (!$TourId) { |
if (!$TourId) { |
$qnum = 0; |
$qnum = 0; |
$TourId=CreateTour($dbh,'1',$TournamentId, |
$TourNum++; |
|
$TourId=CreateTour($dbh,'1',$TournamentId,$TourNum, |
\%TourDefaults); |
\%TourDefaults); |
%QuestionDefaults=%QuestionGlobalDefaults; |
%QuestionDefaults=%QuestionGlobalDefaults; |
} |
} |