Projekte

use Imperia; sub vergleichen() { my $a_status = ($FILE_META{$a}->{status} eq "laufend") ? 0 : (($FILE_META{$a}->{status} eq "abgeschlossen") ? 1 : 2 ); my $b_status = ($FILE_META{$b}->{status} eq "laufend") ? 0 : (($FILE_META{$b}->{status} eq "abgeschlossen") ? 1 : 2 ); return ($a_status cmp $b_status or (($b_status eq $a_status) and ($FILE_META{$a}->{titel} cmp $FILE_META{$b}->{titel}))); } my %statusEn = ( "laufend" => "in progress", "abgeschlossen" => "finished", "geplant" => "in preparation" ); $mitarbeiterverzeichnis = $metainfo->getValues("mitarbeiterverzeichnis"); $ssidir = $metainfo->getValues("ssiverzeichnis"); $ueClass = $metainfo->getValues("ueClass"); $htdocsroot = $imperia->common->{system_conf}->{'SITE-DIR'}; $htdocsroot =~ s/\/site$/\/htdocs/gi; $kein_titel_ssi = $metainfo->getValues("kein_titel_ssi"); $titel_ssi = $metainfo->getValues("titel"); if ($mitarbeiterverzeichnis and $ssidir) { clearlist(); $filemaske = $metainfo->getValues("mitarbeiterfilemaske"); $filemaske = "\.s?html?" if (!$filemaske); filemask($filemaske); ireaddir($mitarbeiterverzeichnis); my @mitarbeiterliste = @FILELIST; foreach my $mitarbeiterfile (@mitarbeiterliste) { if ($FILE_META{$mitarbeiterfile}->{"template"} =~ /lg_mitarbeiterseite/i ) { my $ssihtml = ""; my $li = ""; my $kategorie = ""; my $okay = 0; $mitarbeiterurl = $FILE_META{$mitarbeiterfile}->{directory}."/".$FILE_META{$mitarbeiterfile}->{filename}; clearlist(); my $filemaske = $metainfo->getValues("filemaske"); $filemaske = "\.s?html?" if (!$filemaske); filemask($filemaske); ireaddir($metainfo->getValues("directory")); @FILELIST = sort(vergleichen @FILELIST); #sort_by_metafield('titel'); foreach my $file (@FILELIST) { $okay=0; if ($FILE_META{$file}->{template} eq "lg_projekt") { for (my $i=0; $i<$FILE_META{$file}->{"imperiablock_count_3"}; $i++) { $okay = 1 if ($FILE_META{$file}->{"projektleiterurl_3_$i"} eq $mitarbeiterurl); } for (my $i=0; $i<$FILE_META{$file}->{"imperiablock_count_4"}; $i++) { $okay = 1 if ($FILE_META{$file}->{"projektmitarbeiterurl_4_$i"} eq $mitarbeiterurl); } if ($okay and $FILE_META{$file}->{'_publikationsorte'}) { $okay = ($FILE_META{$file}->{'publikationsort-mitarbeiter'} eq 'mitarbeiter'); } if ($okay) { my $status = $FILE_META{$file}->{status}; my $laufzeit = $FILE_META{$file}->{laufzeit}; my $umfang = $FILE_META{$file}->{umfang}; my $foerderer = ""; for (my $i=0; $i<$FILE_META{$file}->{"imperiablock_count_5"}; $i++) { $foerderer .= ", " if ($foerderer ne ""); $foerderer .= $FILE_META{$file}->{"foerderer_5_$i"}; } $foerderer = ", Förderer: ".$foerderer if ($foerderer ne ""); $laufzeit = ", Laufzeit: " . $laufzeit if ($laufzeit); $umfang = ", Umfang: ". $umfang if ($umfang ne ""); $li .= '
  • ' . $FILE_META{$file}->{titel}.', '. $status . $foerderer . $laufzeit .'
  • '."\n"; } # if okay } # if template okay } # foreach publikationsfile if ($FILE_META{$mitarbeiterfile}->{filename} ne "") { if ($li){ if($kein_titel_ssi){ $ssihtml .= '
      '.$li.'
    '; }else{ $ssihtml .= ''."\n".'
      '.$li.'
    '; } } $ssihtml = ($ssihtml eq "") ? "keine projekte " : "projekte -->".$ssihtml." " ); print DATEI $ssihtml; close(DATEI); } # if } # if template ist richtig } # foreach mitarbeiterfile } # if mitarbeiterverzeichnis and ssidir clearlist(); $filemaske = "\.s?html"; filemask($filemaske); ireaddir($metainfo->getValues("directory")); #sort_by_metafield('titel'); @FILELIST = sort(vergleichen @FILELIST); my $status = ""; my $c= ""; my $wt= ""; my $i = 0; foreach my $file (@FILELIST) { my $projekttitel = $FILE_META{$file}->{titel}; $keineIndexseite = not( $filename =~ /^(index|sa_index)\.s?html?$/ ); my $zupublizieren = $FILE_META{$file}->{'publikationsort-lehrgebiet'} || $FILE_META{$file}->{'publikationsort-institut'}; if ($projekttitel and $zupublizieren and $keineIndexseite) { if ($FILE_META{$file}->{status} ne $status) { $c .= "" if ($status); $wt .= "" if ($status); $status = $FILE_META{$file}->{status}; $c .= ''; $wt .= '

    '.$status.'

    '."\n".'
      '; } $c .= '
    • '.$projekttitel.''; $wt .= '
    • '.$projekttitel.''; if ($FILE_META{$file}->{imperiablock_count_3}>0){ $c .= '
      Projektleitung: '; $wt .= '
      Projektleitung: '; for($i=0;$i<$FILE_META{$file}->{imperiablock_count_3};$i++) { if ($FILE_META{$file}->{"projektleiterurl_3_$i"}){ $c .= ''.$FILE_META{$file}->{"projektleiter_3_$i"}.''; $wt .= ''.$FILE_META{$file}->{"projektleiter_3_$i"}.''; }else{ $c .= $FILE_META{$file}->{"projektleiter_3_$i"}; $wt .= $FILE_META{$file}->{"projektleiter_3_$i"}; } $c .= ', ' if ($FILE_META{$file}->{imperiablock_count_3}>1); $wt .= ', ' if ($FILE_META{$file}->{imperiablock_count_3}>1); } } $c .= '
      '.$FILE_META{$file}->{kurzbeschreibung}.'
    • '."\n"; $wt .= '
      '.$FILE_META{$file}->{kurzbeschreibung}.''."\n"; } } $c .= "
    \n" if ($status); $wt .= "\n" if ($status); print $c;
    13.07.2015