Example #1
0
    // change membership of that user
    // this must be called as ajax request
    try {
        $membership = 0;
        $leadership = 0;
        if (isset($_POST['member_' . $getUserId]) && $_POST['member_' . $getUserId] == 'true') {
            $membership = 1;
        }
        if (isset($_POST['leader_' . $getUserId]) && $_POST['leader_' . $getUserId] == 'true') {
            $membership = 1;
            $leadership = 1;
        }
        // Member
        $member = new TableMembers($gDb);
        // Datensatzupdate
        $mem_count = $role->countMembers($getUserId);
        // Wenn Rolle weniger mitglieder hätte als zugelassen oder Leiter hinzugefügt werden soll
        if ($leadership == 1 || $leadership == 0 && $membership == 1 && ($role->getValue('rol_max_members') > $mem_count || $role->getValue('rol_max_members') == 0 || $role->getValue('rol_max_members') == 0)) {
            $member->startMembership($role->getValue('rol_id'), $getUserId, $leadership);
            echo 'success';
        } elseif ($leadership == 0 && $membership == 0) {
            $member->stopMembership($role->getValue('rol_id'), $getUserId);
            echo 'success';
        } else {
            $gMessage->show($gL10n->get('SYS_ROLE_MAX_MEMBERS', $role->getValue('rol_name')));
        }
    } catch (AdmException $e) {
        $e->showText();
    }
} else {
    // show html list with all users and their membership to this role