;
close(pwfile);
foreach $pwline (@pwposter) {
chomp ($pwline);
if ($pwline =~ m/^$pw (.+) (.+)/)
{
$writer = $1;
$url = $2;
}
}
return ($writer, $url);
};
sub checkpost
{
my($writer, $url) = @_;
my ($titel) = $form_data{'titel'};
my ($unftekst) = $form_data{'tekst'};
if ($titel eq "")
{
&fout('geen titel');
$nrfout++;
}
if($unftekst eq "")
{
&fout('geen tekst');
$nrfout++;
}
die if ($nrfout > 0);
my ($tekst) = formattekst(\$unftekst);
publish_bericht($titel, \$tekst, $writer, $url);
};
sub formattekst
{
$tekst = shift;
my ($formattedtekst);
my (@lines) = split('\n', $$tekst);
my $quote = 0;
foreach my $line (@lines)
{
$line =~ s/\n/ /g;
$line =~ s/\r//g;
if ($quote)
{
if ($line =~ m/^:q\s*$/)
{
$quote = 0;
$formattedtekst = $formattedtekst . '"';
}
else
{
$formattedtekst = $formattedtekst . $line;
}
}
else
{
if ($line =~ m/^l:\s*(.+)\s*$/)
{
my $url = $1;
my $brokenurl = breekurl($url, 45);
$formattedtekst = $formattedtekst . '' .
'' .
$brokenurl . '' ;
}
elsif ($line =~ m/^q:\s*$/)
{
$quote = 1;
$formattedtekst = $formattedtekst . '
"';
}
else
{
$formattedtekst = $formattedtekst . $line;
}
}
}
return ($formattedtekst);
}
sub breekurl
{
my ($unbroken) = shift;
my ($max) = shift;
my ($broken);
if ($unbroken =~ m/^\s*http:\/\/(.*)$/)
{
$unbroken = $1;
}
$i = 0;
while (($i + $max) <= length($unbroken))
{
$broken = $broken . substr($unbroken, $i, $max) . "
";
$i = ($i + $max);
}
$broken = $broken . substr($unbroken, $i, $max);
return ($broken);
}
sub expand
{
$arrayref = shift;
$placeholder = shift;
$replacement = shift;
foreach (@{$arrayref})
{
chomp;
chomp (${$replacement});
$_ =~ s/\@\@$placeholder\@\@/${$replacement}/g;
}
}
sub publish_bericht
{
my ($titel, $tekst, $writer, $url) = @_;
my($date) = qx(date --date '9 hours' +%d-%m-%Y);
my($time) = qx(date --date '9 hours' +%H:%M);
open(template, "< $berichttmpl");
my(@template) = ;
close (template);
expand(\@template, "TITEL", \$titel);
expand(\@template, "ARTIKEL", $tekst);
expand(\@template, "DATUM", \$date);
expand(\@template, "TIJD", \$time);
expand(\@template, "POSTER", \$writer);
expand(\@template, "URL", \$url);
$number = getnumber();
expand(\@template, "NR", \$number);
my $formatnumber = sprintf ("%04d", $number);
expand(\@template, "NUMMER", \$formatnumber);
if (exists $form_data{'zien'})
{
printpreview(\@template);
newsubmit();
}
else
{
additem(\@template);
open (nummerfile, "> commentaar/$formatnumber.txt");
close (nummerfile);
print "";
}
}
sub printpreview
{
$messageref = shift;
print("\n\n");
print('| ');
foreach $line (@{$messageref})
{
print("$line\n");
}
print(' | ');
print(" \n");
print(" |
\n\n");
}
sub newsubmit
{
print ('