, * Andreas Oesterreicher and * Rudolf Hangl . */ // **** // * Generiert die UID // * FORMAT: el07b001 // * $stgkzl: el = studiengangskuerzel // * $jahr: 07 = Jahr // * $stgtyp: b/m/d/x = Bachelor/Master/Diplom/Incomming // * $matrikelnummer // * 001 = Laufende Nummer Wenn StSem==SS dann wird zur Nummer 500 dazugezaehlt // * Bei Incoming im Masterstudiengang wird auch 500 dazugezaehlt // **** function generateUID($stgkzl,$jahr, $stgtyp, $matrikelnummer) { $art = mb_substr($matrikelnummer, 2, 1); $nr = mb_substr($matrikelnummer, mb_strlen(trim($matrikelnummer))-3); if($art=='2') //Sommersemester $nr = $nr+500; elseif($art=='0' && $stgtyp=='m') //Incoming im Masterstudiengang $nr = $nr+500; return mb_strtolower($stgkzl.$jahr.($art!='0'?$stgtyp:'x').$nr); } // **** // * Gerneriert die Mitarbeiter UID // **** function generateMitarbeiterUID($vorname, $nachname, $lektor) { $bn = new benutzer(); $reserviert = array(); // Das File aliases enthaelt die Mailverteiler haendisch gewarteten Mailverteiler die nicht // in der FHC Datenbank vorhanden sind. // Diese duerfen nicht als UID verwendet werden, da es sonst zu Konflikten kommt $aliases = file_get_contents(DOC_ROOT.'../system/aliases'); $aliases = explode("\n",$aliases); foreach($aliases as $alias) { if(!strstr($alias,'#')) { $entry = preg_split("/[\s:]+/", $alias); if($entry[0]!='') $reserviert[]=$entry[0]; } } for($nn=8,$vn=0;$nn!=0;$nn--,$vn++) { $uid = mb_substr($nachname,0,$nn); $uid .= mb_substr($vorname,0,$vn); $uid = mb_str_replace(' ','',$uid); if(!$bn->uid_exists($uid) && !in_array($uid, $reserviert)) if($bn->errormsg=='') return $uid; } } ?>