Integrierende LernUmgebungen - Fachbereich Informatik

use lib "/export/home/www/apache-develop/site/include/ilu/"; use ILU_main; my ($Sekunden, $Minuten, $Stunden, $Monatstag, $Monat, $Jahr, $Wochentag, $Jahrestag, $Sommerzeit) = localtime(time()); $Monat+=1; $Jahrestag+=1; $Monat = $Monat < 10 ? $Monat = "0".$Monat : $Monat; $Monatstag = $Monatstag < 10 ? $Monatstag = "0".$Monatstag : $Monatstag; $Stunden = $Stunden < 10 ? $Stunden = "0".$Stunden : $Stunden; $Minuten = $Minuten < 10 ? $Minuten = "0".$Minuten : $Minuten; $Sekunden = $Sekunden < 10 ? $Sekunden = "0".$Sekunden : $Sekunden; $Jahr+=1900; print "

Letzte Aktualisierung: $Monatstag.$Monat.$Jahr, $Stunden:$Minuten:$Sekunden

"; # aktuelles Semester bestimmen, da nur die ILU aus dem aktuellen und zukünftigen Semestern aktualisiert werden sollen my $semesterkuerzel = $Jahr.( (($1>3) and ($1<10)) ? "SS" : "WS" ); my @datinfo=stat($SYSTEM_CONF{'SITE-DIR'}."/../htdocs".$FORM->{"SAVEPAGE"}); my $letzteAktu = (@datinfo==13) ? $datinfo[9] : time()-24*60*60; my ($Sekunden, $Minuten, $Stunden, $Monatstag, $Monat, $Jahr, $Wochentag, $Jahrestag, $Sommerzeit) = localtime($letzteAktu); $Monat+=1; $Jahrestag+=1; $Monat = $Monat < 10 ? $Monat = "0".$Monat : $Monat; $Monatstag = $Monatstag < 10 ? $Monatstag = "0".$Monatstag : $Monatstag; $Stunden = $Stunden < 10 ? $Stunden = "0".$Stunden : $Stunden; $Minuten = $Minuten < 10 ? $Minuten = "0".$Minuten : $Minuten; $Sekunden = $Sekunden < 10 ? $Sekunden = "0".$Sekunden : $Sekunden; $Jahr+=1900; print ""; my $suchdir = $metainfo->getValues("hauptverzeichnis"); my $ilutemplate = 0; my $semester_id = 0; my $semestertext = ""; my $rubrik = 0; my @kursauswahl = (); my %metadaten = {}; $metadaten{"hauptverzeichnis"} = $metainfo->getValues("hauptverzeichnis"); my @ilukonfig = (); clearlist(); filemask("index\.html"); ireaddir($suchdir); sort_by_multifield('__imperia_category','semester_id','ilutemplate','kursnummer','filename'); my $c = ""; my $kurse_str = ""; # Das ILU-Erzeugungsskript ILU_main::ilu_erzeugen() verlangt neben der Liste der zu erzeugenden Kurse die Spezifizierung von Semester-ID, Imperia-Rubrik und ILU-Template, so daß bei der Aktualisierung alle existierenden ILU-Kursseiten gemäß dieser drei Parameter sortiert und das Aktualisierungs- = (Neu-)Erzeugungsskript ggf. entsprechend mehrmals aufgerufen werden muß. foreach my $file (@FILELIST) { if ($FILE_META{$file}->{"__imperia_category"} and $FILE_META{$file}->{"semester_id"} and $FILE_META{$file}->{"ilutemplate"} and $FILE_META{$file}->{"kursnummer"} and (not ($FILE_META{$file}->{"semesterkuerzel"} < $semesterkuerzel)) ) { $rubrik = ($rubrik) ? $rubrik : $FILE_META{$file}->{"__imperia_category"}; $ilutemplate = ($ilutemplate) ? $ilutemplate : $FILE_META{$file}->{"ilutemplate"}; $semester_id = ($semester_id) ? $semester_id : $FILE_META{$file}->{"semester_id"}; $semestertext = ($semestertext) ? $semestertext : $FILE_META{$file}->{"semestertext"}; $semesterkuerzel = ($semesterkuerzel) ? $semesterkuerzel : $FILE_META{$file}->{"semesterkuerzel"}; if ( (($FILE_META{$file}->{"__imperia_category"} ne $rubrik) or ($FILE_META{$file}->{"semester_id"} ne $semester_id) or ($FILE_META{$file}->{"ilutemplate"} ne $ilutemplate )) ) { # Kursliste zur Erzeugung übergeben und neue anlegen $metadaten{"__imperia_category"} = $rubrik; print "

$semestertext, Rubrik $rubrik

".ILU_main::ilu_erzeugen($semester_id, \@kursauswahl, $ilutemplate, \%metadaten, \@ilukonfig, $letzteAktu); print "Vorhandene Kursumgebungen: ".$kurse_str; $c = ""; $rubrik = $FILE_META{$file}->{"__imperia_category"}; $ilutemplate = $FILE_META{$file}->{"ilutemplate"}; $semester_id = $FILE_META{$file}->{"semester_id"}; $semestertext = $FILE_META{$file}->{"semestertext"}; $semesterkuerzel = $FILE_META{$file}->{"semesterkuerzel"}; $kurse_str = ""; @kursauswahl = (); $kursauswahl[0] = $FILE_META{$file}->{kursnummer}; } else { # Kurs in die Kursliste aufnehmen my $idx = @kursauswahl; $kursauswahl[$idx]=$FILE_META{$file}->{kursnummer}; } $kurse_str .= ", " if ($kurse_str); $kurse_str .= $FILE_META{$file}->{kursnummer}; $c .= '
  • '.$FILE_META{$file}->{title}.'
  • '; } } if (@kursauswahl>0) { $metadaten{"__imperia_category"} = $rubrik; print "

    $semestertext, Rubrik $rubrik

    ".ILU_main::ilu_erzeugen($semester_id, \@kursauswahl, $ilutemplate, \%metadaten, \@ilukonfig, $letzteAktu); print "Vorhandene Kursumgebungen: ".$kurse_str; }