Exemplo n.º 1
0
} else {
    $form = $rc->get_edit($_GET['edit']);
    $edituser = db()->id_get('user_data', $_GET['edit']);
    $tabs = new tabs();
    $uri = MODUL_SELF . '&edit=' . $edituser['id'];
    if ($modulrights['password']) {
        $i++;
        if (!empty($_POST['pass_new']) && $_POST['pass_new'] == $_POST['pass_rep']) {
            $pass = session_iv::crypt($_POST['pass_new'], $salt = uniqid());
            db()->id_update('user_data', array('pass_type' => 0, 'pass_hash' => $pass, 'pass_salt' => $salt), $_GET['edit']);
            $msg = alert('Passwort geändert.', 'success');
        }
        $passform = new form_renderer($uri . '#tabs-' . $i . '-hash');
        $passform->password('pass_new', 'Neues Passwort');
        $passform->password('pass_rep', 'Passwort Wiederholung');
        $tabs->add('Password', $msg . $passform);
    }
    if ($modulrights['rights']) {
        $i++;
        if (isset($_POST['type'])) {
            $type = 4 * $_POST['type']['sysadmin'] + 2 * $_POST['type']['backend'] + $_POST['type']['frontend'];
            db()->id_update('user_data', array('type' => $type), $_GET['edit']);
            throw new redirect($uri . '#tabs-' . $i . '-hash');
        }
        $typeform = new form_renderer($uri . '#tabs-' . $i . '-hash');
        $typeform->checkbox('type[frontend]', 'Frontend', $edituser['type'] & 1);
        $typeform->checkbox('type[backend]', 'Backend', $edituser['type'] & 2);
        $typeform->checkbox('type[sysadmin]', 'Sysadmin', $edituser['type'] & 4);
        $tabs->add('Type', $typeform);
        $i++;
        $rc_groups = new data_controller('user_group_owner', $uri . '#tabs-' . $i . '-hash');
Exemplo n.º 2
0
$_POST['rights'] = serialize($_POST['r']);
$rc = new data_controller('user_groups', MODUL_SELF);
$rc->add('name', 'Name', 1, 1, 1, 1);
$rc->add('rights', 'Rechte', 0, 0, 1, 0, 'hidden');
if ($rc->run()) {
    throw new redirect(MODUL_SELF . '&edit=' . intval($_GET['update']));
}
$grid = $view->grid();
$grid[0]->box($rc->get_create(), 'Gruppe erstellen');
$grid[0]->box($rc->get_list(), 'Gruppen verwalte');
if (!empty($_GET['edit']) && ($group = db()->id_get('user_groups', $_GET['edit']))) {
    $form = $rc->get_edit($_GET['edit']);
    $form->append($tabs = new tabs());
    $grouprights = (array) unserialize($group['rights']);
    foreach ($rights->providers as $type => $provider) {
        $inputs = array();
        $typerights = $grouprights[$type] ?: array();
        foreach ($provider->keys() as $key => $caption) {
            if (!isset($provider->always[$key])) {
                $inputs[] = $inp = new form_field_boxtree("r[{$type}][{$key}]", $caption, isset($typerights[$key]));
                foreach ($provider->flagNames($key) as $flag => $caption) {
                    $inp->sub("r[{$type}][{$key}][{$flag}]", $caption, isset($typerights[$key][$flag]));
                }
            }
        }
        $tabs->add($provider->name, implode($inputs));
    }
    $grid[1]->box($form, 'Rechte bearbeiten');
} else {
    $grid[1]->box('Bitte wählen sie eine Gruppe zur bearbeiung aus', 'Systemhinweis');
}