user-extensions-procs.tcl

Procs to manage extensions to user data. This calls the UserData service contract for allowing packages to be notified of changes in user information.

Location:
packages/acs-tcl/tcl/user-extensions-procs.tcl
Created:
2002-01-22
Author:
ben@openforce.net
CVS Identification:
$Id: user-extensions-procs.tcl,v 1.9 2024/09/11 06:15:48 gustafn Exp $

Procedures in this file

Detailed information

acs_user_extension::dispatch (private)

 acs_user_extension::dispatch -op op -list_of_args list_of_args \
    [ -impl impl ]

Dispatches (calls the service contract routines) the requested method so that the operation gets executed, and packages are notified of changes in user information.

Switches:
-op (required)
-list_of_args (required)
-impl (optional)

Partial Call Graph (max 5 caller/called nodes):
%3 acs_user_extension::user_approve acs_user_extension::user_approve (public) acs_user_extension::dispatch acs_user_extension::dispatch acs_user_extension::user_approve->acs_user_extension::dispatch acs_user_extension::user_deapprove acs_user_extension::user_deapprove (public) acs_user_extension::user_deapprove->acs_user_extension::dispatch acs_user_extension::user_delete acs_user_extension::user_delete (public) acs_user_extension::user_delete->acs_user_extension::dispatch acs_user_extension::user_modify acs_user_extension::user_modify (public) acs_user_extension::user_modify->acs_user_extension::dispatch acs_user_extension::user_new acs_user_extension::user_new (public) acs_user_extension::user_new->acs_user_extension::dispatch acs_sc::invoke acs_sc::invoke (public) acs_user_extension::dispatch->acs_sc::invoke acs_user_extension::list_extensions acs_user_extension::list_extensions (public) acs_user_extension::dispatch->acs_user_extension::list_extensions

Testcases:
No testcase defined.

acs_user_extension::list_extensions (public)

 acs_user_extension::list_extensions

List the extensions (User Data contract)

Partial Call Graph (max 5 caller/called nodes):
%3 acs_user_extension::dispatch acs_user_extension::dispatch (private) acs_user_extension::list_extensions acs_user_extension::list_extensions acs_user_extension::dispatch->acs_user_extension::list_extensions db_list db_list (public) acs_user_extension::list_extensions->db_list

Testcases:
No testcase defined.

acs_user_extension::user_approve (public)

 acs_user_extension::user_approve -user_id user_id

Notifies packages when a user is approved.

Switches:
-user_id (required)
See Also:
  • dispatch

Partial Call Graph (max 5 caller/called nodes):
%3 acs_user_extension::dispatch acs_user_extension::dispatch (private) acs_user_extension::user_approve acs_user_extension::user_approve acs_user_extension::user_approve->acs_user_extension::dispatch

Testcases:
No testcase defined.

acs_user_extension::user_deapprove (public)

 acs_user_extension::user_deapprove -user_id user_id

Notifies packages when a user is deapproved.

Switches:
-user_id (required)
See Also:
  • dispatch

Partial Call Graph (max 5 caller/called nodes):
%3 acs_user_extension::dispatch acs_user_extension::dispatch (private) acs_user_extension::user_deapprove acs_user_extension::user_deapprove acs_user_extension::user_deapprove->acs_user_extension::dispatch

Testcases:
No testcase defined.

acs_user_extension::user_delete (public)

 acs_user_extension::user_delete -user_id user_id

Notifies packages when a user is deleted.

Switches:
-user_id (required)
See Also:
  • dispatch

Partial Call Graph (max 5 caller/called nodes):
%3 acs_user_extension::dispatch acs_user_extension::dispatch (private) acs_user_extension::user_delete acs_user_extension::user_delete acs_user_extension::user_delete->acs_user_extension::dispatch

Testcases:
No testcase defined.

acs_user_extension::user_modify (public)

 acs_user_extension::user_modify -user_id user_id

Notifies packages when a user is modified.

Switches:
-user_id (required)
See Also:
  • dispatch

Partial Call Graph (max 5 caller/called nodes):
%3 acs_user_extension::dispatch acs_user_extension::dispatch (private) acs_user_extension::user_modify acs_user_extension::user_modify acs_user_extension::user_modify->acs_user_extension::dispatch

Testcases:
No testcase defined.

acs_user_extension::user_new (public)

 acs_user_extension::user_new -user_id user_id

Notifies packages when a new user is added to the system.

Switches:
-user_id (required)
See Also:
  • dispatch

Partial Call Graph (max 5 caller/called nodes):
%3 auth::create_local_account_helper auth::create_local_account_helper (private) acs_user_extension::user_new acs_user_extension::user_new auth::create_local_account_helper->acs_user_extension::user_new acs_user_extension::dispatch acs_user_extension::dispatch (private) acs_user_extension::user_new->acs_user_extension::dispatch

Testcases:
No testcase defined.
[ hide source ] | [ make this the default ]

Content File Source

ad_library {

    Procs to manage extensions to user data.
    This calls the UserData service contract for allowing packages to be notified
    of changes in user information.

    @author ben@openforce.net
    @creation-date 2002-01-22
    @cvs-id $Id: user-extensions-procs.tcl,v 1.9 2024/09/11 06:15:48 gustafn Exp $

}

namespace eval acs_user_extension {

    d_proc -private dispatch {
        {-op:required}
        {-list_of_args:required}
        {-impl ""}
    } {

        Dispatches (calls the service contract routines) the requested
        method so that the operation gets executed, and packages are
        notified of changes in user information.

    } {
        if {$impl eq ""} {
            set extensions [list_extensions]
        } else {
            set extensions [list $impl]
        }

        # Loop through the extensions
        foreach extension $extensions {
            set r [acs_sc::invoke -contract UserData -operation $op -call_args $list_of_args -impl $extension]
        }
    }

    ad_proc -public list_extensions {} {
        List the extensions (User Data contract)
    } {
        return [db_list select_extensions {}]
    }

    d_proc -public user_new {
        {-user_id:required}
    } {
        Notifies packages when a new user is added to the system.

        @see dispatch
    } {
        dispatch -op UserNew -list_of_args [list $user_id]
    }

    d_proc -public user_approve {
        {-user_id:required}
    } {
        Notifies packages when a user is approved.

        @see dispatch
    } {
        dispatch -op UserApprove -list_of_args [list $user_id]
    }

    d_proc -public user_deapprove {
        {-user_id:required}
    } {
        Notifies packages when a user is deapproved.

        @see dispatch
    } {
        dispatch -op UserDeapprove -list_of_args [list $user_id]
    }

    d_proc -public user_modify {
        {-user_id:required}
    } {
        Notifies packages when a user is modified.

        @see dispatch
    } {
        dispatch -op UserModify -list_of_args [list $user_id]
    }

    d_proc -public user_delete {
        {-user_id:required}
    } {
        Notifies packages when a user is deleted.

        @see dispatch
    } {
        dispatch -op UserDelete -list_of_args [list $user_id]
    }

}


# Local variables:
#    mode: tcl
#    tcl-indent-level: 4
#    indent-tabs-mode: nil
# End: