t("global/fehlerBeimOeffnenDerDatenbankverbindung")); if (!$user=get_uid()) die($p->t("global/nichtAngemeldet").'! '.$p->t("global/zurueck").''); $mac_result = trim((isset($_REQUEST['mac_result']) ? $_REQUEST['mac_result']:'')); $txtUID = trim((isset($_REQUEST['txtUID']) ? $_REQUEST['txtUID']:'')); $txtPassword = trim((isset($_REQUEST['txtPassword']) ? $_REQUEST['txtPassword']:'')); $txtMAC = trim((isset($_REQUEST['txtMAC']) ? $_REQUEST['txtMAC']:'')); if(check_lektor($user)) $is_lector=true; else $is_lector=false; function ip_increment($ip = "") { $ip = explode(".", $ip); if($ip[3] > 0 && $ip[3] < 254) { ++$ip[3]; } else { ++$ip[2]; $ip[3] = 1; } return join(".", $ip); } ?>

t("notebookregister/titelNotebookRegistration");?>

Wollen Sie als Mitarbeiter ein Notebook registrieren, wenden Sie sich bitte an den Support.'; echo '
'; exit; } if (!$txtUID) $txtUID = $user; // wenn die übergebene UID nicht gleich dem // angemeldetem Benutzer ist, muss das Passwort // angegeben werden if ($txtUID != $user && !$txtPassword) { $error = 1; } else if ($txtUID && $txtPassword) { // Passwort pruefen $auth = new authentication(); if($auth->checkpassword($txtUID, $txtPassword)) $error=0; else $error=2; } else { $error =0; } // ändern oder eintragen einer mac adresse if (!$error) { if(isset($txtMAC) && $txtMAC != "") { $sql_query = "SELECT DISTINCT vorname, nachname FROM campus.vw_benutzer WHERE uid=".$db->db_add_param($txtUID)." LIMIT 1"; if($result = $db->db_query($sql_query)) { if($row = $db->db_fetch_object($result)) { $name = $row->vorname.' '.$row->nachname; } else die($p->t("global/fehlerBeimErmittelnDerUID")); } else die($p->t("global/fehlerBeimErmittelnDerUID")); $mac = mb_eregi_replace(":", "", mb_eregi_replace("-", "", mb_strtoupper($txtMAC))); $filename_dat = '../../../../system/dhcp.dat'; $filename_ip = '../../../../system/dhcp.ip'; copy($filename_dat, '../../../../system/backup/dhcp_'.date('j-m-Y_H-i-s').'.dat'); unset($mfiles); // leich gepfuscht aber funktioniert $mfiles = new File_Match("/$mac?\s(.{1}) (.*)\s?/", $filename_dat, '', 0, array('#',';')); $mfiles->setFindFunction('preg'); $mfiles->doFind(); $VLAN=''; if($mfiles->occurences) { $VLAN = $mfiles->match[1]; $fuser = $mfiles->match[2]; $fuser = explode(" ", $fuser); $fuser = $fuser[0]; //hier könnte man noch eine email oder dgl. schicken if ($fuser != $txtUID) $error = 3; } unset($mfiles); if(!$VLAN) $VLAN = 'S'; if (!$error) { if($VLAN != 'S') { $mac_result = 3; } else if ($VLAN == 'S') { $mfiles = new File_SearchReplace("/.*?\sS\s$txtUID\s(.*)?\snb-$txtUID\s(.*)/", "$mac S $txtUID $1 nb-$txtUID $name", $filename_dat, '', 0, array("#", ";")); $mfiles->setSearchFunction('preg'); if(preg_match("/[A-Fa-f0-9]{12}/", $mac) && $mac != '' && mb_strlen($mac) == 12) { $mfiles->doSearch(); // neuen eintrag erzeugen und ip hochzählen if($mfiles->occurences == 0) { //$content = file($filename_dat, "r"); //$content = implode('', $content); $content = file_get_contents($filename_dat); //$ip = file($filename_ip); //$ip = trim($ip[0]); $ip = file_get_contents($filename_ip); $ip = trim($ip); $ip = ip_increment($ip); // nachschauen ob, die mac adresse schon // einmal gespeichert wurde $sfiles = new File_Match("/$mac?\s/", $filename_dat, '', 0, array('#',';')); $sfiles->doFind(); if($sfiles->occurences) { echo 'MAC IN USE'; $error = 3; } else { $mfiles->writeout($filename_dat, $content."$mac S $txtUID $ip nb-$txtUID $name\n"); $mfiles->writeout($filename_ip, $ip); $mac_result = 0; unset($txtMAC); } unset($sfiles); } else if($mfiles->occurences > 0) { $mac_result = 1; unset($txtMAC); } } else if($mac) { $mac_result = 2; } } // eof !$vlan == s } // eof !$error } // eof !error (2) } // eof if $txtMAC ?>

t("notebookregister/notebook_absatz1");?>

t("notebookregister/MACadresse");?>: >
UID:
*t("global/passwort");?>:
* ... t("notebookregister/notebook_anmerkung");?>
 
"> " onClick="document.regMAC.txtMAC.focus();">
'.$p->t("notebookregister/passwortEingebenWennUIDgeaendert").'.'; else if ($error == 2) echo '

'.$p->t("notebookregister/passwortErneutEingeben").'.

'; else if ($error == 3) echo '

'.$p->t("notebookregister/MACadresseBereitsVerwendet").'.

'; if(isset($mac_result) && $mac_result!=='') { if($mac_result === 0) { echo '

'.$p->t("notebookregister/MACadresseErfolgreichEingetragen").'.

'; } else if($mac_result === 1) { echo '

'.$p->t("notebookregister/MACadresseErfolgreichGeaendert").'.

'; } else if($mac_result === 2) { echo '

'.$p->t("notebookregister/MACadresseFehlerhaft").'.

'; } else if($mac_result === 3) { echo '

'.$p->t("notebookregister/MACadresseNichtFreigeschalten").'.

'; } } ?>

t("notebookregister/notebook_absatz2");?>