Railsbin – The vulnerable pastebin service!
Editing Paste
Private
Title
Content
// Berechtigungen laden $finalStruktUsers = array(); $notStrukSet = array(); $accsUsers = $dbmain->query($dbmain->select()->from($table['newaccess']))->fetchAll(); $finalAccsUsers = array(); $allAccsUsers = $dbmain->query($dbmain->select()->from($table['userdata'], array('user_name'))->where('user_type != ?', 'admin')->order('user_name ASC'))->fetchAll(); // Details aller Benutzer aufbereiten if (!empty($allAccsUsers) && is_array($allAccsUsers)) { foreach($allAccsUsers as $aridx => $rowdata) { $detaildata = $dbauth->query($dbauth->select()->from($table['userinfo'], array('vorname', 'nachname'))->where('user_name = ?', $rowdata['user_name']))->fetch(); if (!empty($detaildata)) { $finalAccsUsers[$rowdata['user_name']] = array(); $finalAccsUsers[$rowdata['user_name']]['vorname'] = $detaildata['vorname']; $finalAccsUsers[$rowdata['user_name']]['nachname'] = $detaildata['nachname']; } } unset($allAccsUsers); } // Details aller Zuordnungen aufbereiten if (!empty($accsUsers) && is_array($accsUsers)) { foreach($accsUsers as $aridx => $rowdata) { $finalStruktUsers[$rowdata['sections']][$rowdata['user_name']] = $rowdata['accesslvl']; $tmpUSectAr = explode('-', $rowdata['sections']); if (count($tmpUSectAr) == 1) { // Alle untergeordneten sind bereits dem Benutzer zugeordnet, also sperren if (isset($rohdatenaufbereitung['bereich'][$tmpUSectAr[0]]) && !empty($rohdatenaufbereitung['anlage'][$tmpUSectAr[0]])) { foreach ($rohdatenaufbereitung['bereich'][$tmpUSectAr[0]] as $ident => $details) { $notStrukSet[$tmpUSectAr[0].'-'.$ident][$rowdata['user_name']] = true; if (isset($rohdatenaufbereitung['anlage'][$ident]) && !empty($rohdatenaufbereitung['anlage'][$ident])) { foreach ($rohdatenaufbereitung['anlage'][$ident] as $bident => $bdetails) { $notStrukSet[$tmpUSectAr[0].'-'.$ident.'-'.$bident][$rowdata['user_name']] = true; } } } } } elseif (count($tmpUSectAr) == 2) { // Alle über- und untergeordneten des selben Baums sperren $notStrukSet[$tmpUSectAr[0]][$rowdata['user_name']] = false; if (isset($rohdatenaufbereitung['anlage'][$tmpUSectAr[1]]) && !empty($rohdatenaufbereitung['anlage'][$tmpUSectAr[1]])) { foreach ($rohdatenaufbereitung['anlage'][$tmpUSectAr[1]] as $ident => $details) { $notStrukSet[$tmpUSectAr[0].'-'.$tmpUSectAr[1].'-'.$ident][$rowdata['user_name']] = true; } } } elseif (count($tmpUSectAr) == 3) { // Alle übergeordneten des selben Baums sperren $notStrukSet[$tmpUSectAr[0]][$rowdata['user_name']] = false; $notStrukSet[$tmpUSectAr[0].'-'.$tmpUSectAr[1]][$rowdata['user_name']] = false; } } unset($accsUsers); } $addRowCount = 15; $sectionname = '-'; $sectionlongname = '-'; $useNeu = false;
Show
|
Back