acs_user::change_state (public)

 acs_user::change_state -user_id user_id -state state

Defined in packages/acs-tcl/tcl/community-core-procs.tcl

Change the membership state of a user. Existing login cookies become invalidated when the user is banned or deleted so that the new state also becomes effective for already authenticated sessions.

Switches:
-user_id (required)
-state (required)

Partial Call Graph (max 5 caller/called nodes):
test_auth_authenticate auth_authenticate (test acs-authentication) acs_user::change_state acs_user::change_state test_auth_authenticate->acs_user::change_state acs_user::flush_user_info acs_user::flush_user_info (public) acs_user::change_state->acs_user::flush_user_info acs_user::get_user_info acs_user::get_user_info (public) acs_user::change_state->acs_user::get_user_info membership_rel::change_state membership_rel::change_state (public) acs_user::change_state->membership_rel::change_state sec_change_user_auth_token sec_change_user_auth_token (public) acs_user::change_state->sec_change_user_auth_token acs_user::approve acs_user::approve (public) acs_user::approve->acs_user::change_state acs_user::ban acs_user::ban (public) acs_user::ban->acs_user::change_state acs_user::delete acs_user::delete (public) acs_user::delete->acs_user::change_state acs_user::reject acs_user::reject (public) acs_user::reject->acs_user::change_state acs_user::unapprove acs_user::unapprove (public) acs_user::unapprove->acs_user::change_state

Testcases:
auth_authenticate
Source code:
    set rel_id [acs_user::get_user_info  -user_id $user_id -element rel_id]

    # most likely this is not a registered user
    if {$rel_id eq ""} {
        return
    }

    membership_rel::change_state -rel_id $rel_id -state $state
    # flush user-specific info
    acs_user::flush_user_info -user_id $user_id

    if {$state in {banned deleted}} {
        sec_change_user_auth_token $user_id
    }
Generic XQL file:
packages/acs-tcl/tcl/community-core-procs.xql

PostgreSQL XQL file:
packages/acs-tcl/tcl/community-core-procs-postgresql.xql

Oracle XQL file:
packages/acs-tcl/tcl/community-core-procs-oracle.xql

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