####################################################
### Script um Archiv für Referenzen zu erstellen
### by Holger Maier
### Datum: 2010-11-29
####################################################
use strict;
# Übersetzungsdatei einlesen
my %uebersetzung;
my $uebersetzungsFile = "/srv/www/site/dynamic/allgemein.conf";
open (I18N, "< $uebersetzungsFile") or die "Konnte die Datei $uebersetzungsFile nicht oeffnen\n";
while () {
chomp;
$_ = m|\s*REPLACE\s*\[(.*)\]\s*BY\s*\[(.*)\]|;
$uebersetzung{$1} = $2;
}
close I18N;
my @sprachen = qw(de);
foreach my $sprache (@sprachen)
{
clearlist();
my $mask = "index\.shtml\.".$sprache."\$";
filemask($mask);
my $einleseVerzeichnis = "/dh/referenzen";
ireaddir($einleseVerzeichnis);
reject('$einleseVerzeichnis/index.shtml.de');
reject('$einleseVerzeichnis/index.shtml.fr');
reject('$einleseVerzeichnis/index.shtml.en');
my $sortierFeld = "+title_" . $sprache;
sort_by_multifield($sortierFeld);
my $title_lang = "title_". $sprache;
my $teaser_lang = "teaser_". $sprache;
my $weiter = $uebersetzung{"text.weiter_" . $sprache};
foreach my $file (@FILELIST)
{
my $title = $FILE_META_INFO{$file}->getValues($title_lang);
my $teaser = $FILE_META_INFO{$file}->getValues($teaser_lang);
my $foundDir = $FILE_META_INFO{$file}->getValues('directory');
my $foundFile = $FILE_META_INFO{$file}->getValues('filename');
next if ($foundDir eq $einleseVerzeichnis);
# Extrahierung der Rubrik aus dem Verzeichnis
my @verzeichnisElemente = split('/',$foundDir);
my $rubrik = $verzeichnisElemente[3];
my $suchRubrik = "text.rubrik." . $rubrik . "_" . $sprache;
my $uebersetzteRubrik = $uebersetzung{$suchRubrik};
my $notToMatch = $einleseVerzeichnis ."/" .$rubrik ."/index.shtml";
my $hrefRubrik = "/dh/referenzen/". $rubrik. "/index.shtml." . $sprache;
my $uebersichtBild = $FILE_META_INFO{$file}->getValues('uebersicht_bild_name');
my $vorschauBild = $FILE_META_INFO{$file}->getValues('vorschau_bild_name');
my $bild = $vorschauBild;
if (length($uebersichtBild) > 5)
{
$bild = $uebersichtBild;
} else {
$bild = $vorschauBild;
}
if (($title ne "") && !($foundDir =~/$notToMatch/))
{
print <
[$uebersetzteRubrik]
$title
$teaser [$weiter ...]