Mitarbeitende

# Konstanten $filemaske = ".*\.shtml"; $readdir = $metainfo->getValues("directory"); $ueClass = $metainfo->getValues("ueClass"); %ueberschrift = ( "A" => "Leitung", "A_m" => "Leitung", "A_s" => "Leitung", "A_f" => "Leitung", "A_f_s" => "Leitung", "a" => "Professorinnen und Professoren", "a_m" => "Professoren", "a_s" => "Professor", "a_f" => "Professorinnen", "a_f_s" => "Professorin", "ab" => "Professurvertretung", "ab_m" => "Professurvertretung", "ab_s" => "Professurvertretung", "ab_f" => "Professurvertretung", "ab_f_s" => "Professurvertretung", "aj" => "Juniorprofessur", "aj_m" => "Juniorprofessur", "aj_s" => "Juniorprofessur", "aj_f" => "Juniorprofessur", "aj_f_s" => "Juniorprofessur", "ap" => "apl. Professorinnen and apl. Professoren", "ap_m" => "apl. Professoren", "ap_s" => "apl. Professor", "ap_f" => "apl. Professorinnen", "ap_f_s" => "apl. Professorin", "as" => "Gastprofessur", "as_m" => "Gastprofessur", "as_s" => "Gastprofessur", "as_f" => "Gastprofessur", "as_f_s" => "Gastprofessur", "ay" => "Emeritierte Professorinnen und Professoren", "ay_m" => "em. Professoren", "ay_s" => "em. Professor", "ay_f" => "em. Professorinnen", "ay_f_s" => "em. Professorin", "az" => "Professorinnen und Professoren im Ruhestand", "az_m" => "Professoren i.R.", "az_s" => "Professor i.R.", "az_f" => "Professorinnen i.R.", "az_f_s" => "Professorin i.R.", "bb" => "Hochschuldozentinnen und Hochschuldozenten", "bb_m" => "Hochschuldozenten", "bb_s" => "Hochschuldozent", "bb_f" => "Hochschuldozentinnen", "bb_f_s" => "Hochschuldozentin", "b" => "Sekretariat", "b_m" => "Sekretariat", "b_s" => "Sekretariat", "b_f" => "Sekretariat", "b_f_s" => "Sekretariat", "bc" => "Lehrbeauftragte", "bc_m" => "Lehrbeauftragte", "bc_s" => "Lehrbeauftragter", "bc_f" => "Lehrbeauftragte", "bc_f_s" => "Lehrbeauftragte", "d" => "Habilitandinnen and Habilitanden", "d_m" => "Habilitanden", "d_s" => "Habilitand", "d_f" => "Habilitandinnen", "d_f_s" => "Habilitandin", "ha2" => "Doktorandinnen und Doktoranden", "ha2_m" => "Doktoranden", "ha2_s" => "Doktorand", "ha2_f" => "Doktorandinnen", "ha2_f_s" => "Doktorandin", "e" => "Wissenschaftliche Mitarbeiter/-innen", "e_m" => "Wissenschaftliche Mitarbeiter", "e_s" => "Wissenschaftlicher Mitarbeiter", "e_f" => "Wissenschaftliche Mitarbeiterinnen", "e_f_s" => "Wissenschaftliche Mitarbeiterin", "ea" => "Nichtwissenschaftliche Mitarbeiter/-innen", "ea_m" => "Nichtwissenschaftliche Mitarbeiter", "ea_s" => "Nichtwissenschaftlicher Mitarbeiter", "ea_f" => "Nichtwissenschaftliche Mitarbeiterinnen", "ea_f_s" => "Nichtwissenschaftliche Mitarbeiterin", "eb" => "Technische Mitarbeiter/-innen", "eb_m" => "Technische Mitarbeiter", "eb_s" => "Technischer Mitarbeiter", "eb_f" => "Technische Mitarbeiterinnen", "eb_f_s" => "Technische Mitarbeiterin", "h" => "Wissenschaftliche Hilfskräfte", "h_m" => "Wissenschaftliche Hilfskräfte", "h_s" => "Wissenschaftliche Hilfskraft", "h_f" => "Wissenschaftliche Hilfskräfte", "h_f_s" => "Wissenschaftliche Hilfskraft", "ha" => "Wissenschaftliche Online-Tutorinnen und -Tutoren", "ha_m" => "Wissenschaftliche Online-Tutoren", "ha_s" => "Wissenschaftlicher Online-Tutor", "ha_f" => "Wissenschaftliche Online-Tutorinnen", "ha_f_s" => "Wissenschaftliche Online-Tutorin", "hc" => "Lehrbeauftragte", "hc_m" => "Lehrbeauftragte", "hc_s" => "Lehrbeauftragter", "hc_f" => "Lehrbeauftragte", "hc_f_s" => "Lehrbeauftragte", "hh" => "Studentische Hilfskräfte", "hh_s" => "Studentische Hilfskraft", "hh_m" => "Studentische Hilfskräfte", "hh_f" => "Studentische Hilfskräfte", "hh_f_s" => "Studentische Hilfskraft", "g" => "Projektmitarbeiter/-innen", "g_s" => "Projektmitarbeiter", "g_m" => "Projektmitarbeiter", "g_f" => "Projektmitarbeiterinnen", "g_f_s" => "Projektmitarbeiterin", "ga" => "Externe Promovenden und Promovendinnen", "ga_s" => "Externer Promovend", "ga_f" => "Externe Promovendinnen", "ga_m" => "Externe Promovenden", "ga_f_s" => "Externe Promovendin", "gb" => "Externe Doktoranden und Doktorandinnen", "gb_s" => "Externer Doktorand", "gb_f" => "Externe Doktoraendinnen", "gb_m" => "Externe Doktoranden", "gb_f_s" => "Externe Doktorandin", "gd" => "Gastwissenschaftler/-innen", "gd_s" => "Gastwissenschaftler", "gd_m" => "Gastwissenschaftler", "gd_f" => "Gastwissenschaftlerinnen", "gd_f_s" => "Gastwissenschaftlerin", "k" => "Ehemalige Mitarbeiter/-innen", "k_s" => "Ehemaliger Mitarbeiter", "k_m" => "Ehemalige Mitarbeiter", "k_f" => "Ehemalige Mitarbeiterinnen", "k_f_s" => "Ehemalige Mitarbeiterin", ); sub vergleichen() { my $a_st = $FILE_META{$a}->{stellung}; $a_st =~ s/[_f]//gi; my $b_st = $FILE_META{$b}->{stellung}; $b_st =~ s/[_f]//gi; my $a_dateiname = lc($FILE_META{$a}->{dateiname}); my $b_dateiname = lc($FILE_META{$b}->{dateiname}); $a_dateiname =~ s/[a-zA-Z0-9-]*\.//gi; $b_dateiname =~ s/[a-zA-Z0-9-]*\.//gi; return ( ($a_st cmp $b_st) || (($a_st eq $b_st) && ($a_dateiname cmp $b_dateiname)) ); } clearlist(); filemask($filemaske); ireaddir($readdir); @FILELIST = sort(vergleichen @FILELIST); my $code_ges=""; my $code_akt=""; my $letzte_stellung=""; my $stellung=""; my $f_akt=0; #my $ma_akt=0; my $n_akt=0; foreach my $file (@FILELIST) { my $filename = $FILE_META{$file}->{filename}; my $directory = $FILE_META{$file}->{directory}; my $name = $FILE_META{$file}->{titel}; my $zusatzname = $FILE_META{$file}->{zusatzname}; my $position = $FILE_META{$file}->{zusatzname_position}; my $c = ""; my $email = $FILE_META{$file}->{email}; my $telefax = $FILE_META{$file}->{telefax}; my $telefon = $FILE_META{$file}->{telefon}; my $keinlink = $FILE_META{$file}->{keinlink}; my $weiter = $FILE_META{$file}->{weiter}; my $kein_institut = $FILE_META{$file}->{kein_institut}; my $titel = $FILE_META{$file}->{titel}; #$anzeigen = (($anzeigen eq "ja") or not($anzeigen)); $keineIndexseite = not( $filename =~ /^(index|sa_index|sa_index_abwesenheit|abwesenheit)\.shtml$/ ); if ($keineIndexseite and $titel and not($kein_institut)) { $c .= ''; if (($FILE_META{$file}->{exthomepage} ne "http://") and ($FILE_META{$file}->{exthomepage} ne "")) { $c .= ''; }else{ $c .= '' if (not($keinlink) or ($keinlink eq "no")); } if ($zusatzname){ $c .= $zusatzname .' '.$name if ($position eq "vor"); $c .= $name. ', ' .$zusatzname if ($position eq "nach"); }else{ $c .= $name; } $c .= '' if (not($keinlink) or ($keinlink eq "no")); $c .= ''; $c .= ' [externer Link]' if (($FILE_META{$file}->{exthomepage} ne "http://") and ($FILE_META{$file}->{exthomepage} ne "")); if ($FILE_META{$file}->{stellung} eq "b") { $c .= '
E-Mail: '.$email.'' if ($email); $c .= '
Tel.: '.$telefon if ($telefon); $c .= '
Fax: '.$telefax if ($telefax); } $c .= '
'.$weiter if($weiter); my $s_roh = $FILE_META{$file}->{stellung}; my $stellung = $s_roh; $stellung =~s/[_f]//gi; if ($letzte_stellung eq "") { $letzte_stellung=$stellung; } $c = ''."\n".'
  • '.$c.'
  • '."\n" if ($c); if ($stellung ne $letzte_stellung) { # $st = $letzte_stellung.(($f_akt==$n_akt)?"_f":"").(($n_akt==1)?"_s":""); $st = $letzte_stellung; #Beibt bei 0 menschen in der Organisationseinheit if ($n_akt == 1) { # Nur ein mensch in organisationseinheit if ($f_akt == 1){ #Einziger mensch in Einheit ist eine Frau $st .= "_f_s"; }else{ #Einziger Mensch in Einheit ist ein Mann $st .= "_s"; } }else{ #Mehrere Menschen in der Organisationseinheit if ($f_akt == 0){ #In Einheit keine Frauen (Nur Männer) $st .= "_m"; }else { #In Einheit gibt es Frauen if ($f_akt < $n_akt) { #In Einheit nicht alle menschen sind Frauen. D.h. Gemischte Einheit $st .= ""; }else{ #Faktisch bedeutet $f_akt == $n_akt #Einheit besteht aus mehreren Frauen. Keine Männer $st .= "_f"; }#if $f_akt < $n_akt } #if $f_akt == 0 } #if $n_akt == 1 $code_ges .= '
    '."\n".'

    '.$ueberschrift{$st}.'

    '."\n".'
      '."\n" . $code_akt . '
    '."\n".'
    '."\n"; $letzte_stellung = $stellung; $code_akt=""; $f_akt=0; #$ma_akt=0; $n_akt=0; } # if $stellung $n_akt++; if ($s_roh =~ m/_f/) { $f_akt++; } #if ($s_roh =~ m/ /) { $ma_akt++; } $code_akt .= $c; }# if keine_index }# foreach #$st = $letzte_stellung.(($f_akt==$n_akt)?"_f":"").(($n_akt==1)?"_s":""); my $st = $letzte_stellung; #Beibt bei 0 menschen in der Organisationseinheit if ($n_akt == 1) { # Nur ein mensch in organisationseinheit if ($f_akt == 1){ #Einziger mensch in Einheit ist eine Frau $st .= "_f_s"; }else{ #Einziger Mensch in Einheit ist ein Mann $st .= "_s"; } }else{ #Mehrere Menschen in der Organisationseinheit if ($f_akt == 0){ #In Einheit keine Frauen (Nur Männer) $st .= "_m"; }else { #In Einheit gibt es Frauen if ($f_akt < $n_akt) { #In Einheit nicht alle menschen sind Frauen. D.h. Gemischte Einheit $st .= ""; }else{ #Faktisch bedeutet $f_akt == $n_akt #Einheit besteht aus mehreren Frauen. Keine Männer $st .= "_f"; }#if $f_akt < $n_akt } #if $f_akt == 0 } #if $n_akt == 1 if (scalar(@FILELIST)>0) { $code_ges .= '

    '.$ueberschrift{$st}.'

      ' . $code_akt . '
    '; print($code_ges); } #Setzen Uebersicht-Kuerzel sub setzen_kuerzel{ my $letzte_stellung = shift; my $n_akt = shift; my $f_akt = shift; my $st = $letzte_stellung; #Beibt bei 0 menschen in der Organisationseinheit if ($n_akt == 1) { # Nur ein mensch in organisationseinheit if ($f_akt == 1){ #Einziger mensch in Einheit ist eine Frau $st .= "_f_s"; }else{ #Einziger Mensch in Einheit ist ein Mann $st .= "_s"; } }else{ #Mehrere Menschen in der Organisationseinheit if ($f_akt == 0){ #In Einheit keine Frauen (Nur Männer) $st .= "_m"; }else { #In Einheit gibt es Frauen if ($f_akt < $n_akt) { #In Einheit nicht alle menschen sind Frauen. D.h. Gemischte Einheit $st .= ""; }else{ #Faktisch bedeutet $f_akt == $n_akt #Einheit besteht aus mehreren Frauen. Keine Männer $st .= "_f"; }#if $f_akt < $n_akt } #if $f_akt == 0 } #if $n_akt == 1 } #Ende sub setzen_kuerzel
    06.07.2015