group::remove_member (public)

 group::remove_member -group_id group_id -user_id user_id

Defined in packages/acs-subsite/tcl/group-procs.tcl

Removes a user from a group. No permission checking.

Switches:
-group_id (required)
-user_id (required)

Partial Call Graph (max 5 caller/called nodes):
%3 test_subsite_api subsite_api (test acs-subsite) group::remove_member group::remove_member test_subsite_api->group::remove_member db_list db_list (public) group::remove_member->db_list db_transaction db_transaction (public) group::remove_member->db_transaction group::flush_members_cache group::flush_members_cache (private) group::remove_member->group::flush_members_cache relation_remove relation_remove (public) group::remove_member->relation_remove membership_rel::change_state membership_rel::change_state (public) membership_rel::change_state->group::remove_member packages/acs-subsite/www/members/member-remove.tcl packages/acs-subsite/ www/members/member-remove.tcl packages/acs-subsite/www/members/member-remove.tcl->group::remove_member

Testcases:
subsite_api
Source code:

    # Find all acs_rels between this group and this user, which are membership_rels or descendants thereof (admin_rels, for example)
    set rel_id_list [db_list select_rel_ids {
        select r.rel_id
        from   acs_rels r,
               membership_rels mr
        where  r.rel_id = mr.rel_id
        and    r.object_id_one = :group_id
        and    r.object_id_two = :user_id
    }]

    db_transaction {
        foreach rel_id $rel_id_list {
            relation_remove $rel_id
        }
    }

    flush_members_cache -group_id $group_id
XQL Not present:
Generic
PostgreSQL XQL file:
packages/acs-subsite/tcl/group-procs-postgresql.xql

Oracle XQL file:
packages/acs-subsite/tcl/group-procs-oracle.xql

[ hide source ] | [ make this the default ]
Show another procedure: