ExpressionEngine Docs

# Login Controller Extension Hooks

- `login_authenticate_start()`
- `cp_member_login($hook_data)`
- `cp_member_logout()`
- `cp_member_reset_password()`

### `login_authenticate_start()`

Parameter | Type
--- | ---
Returns | `Void`

Perform additional actions prior to/take over the control panel login routine.

How it’s called:

    $this->extensions->call('login_authenticate_start');
    if ($this->extensions->end_script === TRUE) return;

### `cp_member_login($hook_data)`

Parameter | Type | Description
--- | --- | ---
$hook_data | `Object` | Member object with session ID (`$hook_data->session_id`) and CP permission boolean (`$hook_data->can_access_cp`)
Returns | `Void` |

Executes after control panel session is instantiated, allows additional processing on control panel logins.

How it’s called:

    ee()->extensions->call('cp_member_login', $this->_hook_data());
    if (ee()->extensions->end_script === TRUE) return;

### `cp_member_logout()`

Parameter | Type
--- | ---
Returns | `Void`

Perform additional actions after a user logs out of the control panel.

How it’s called:

    $this->extensions->call('cp_member_logout');
    if ($this->extensions->end_script === TRUE) return;

### `cp_member_reset_password()`

Parameter | Type
--- | ---
Returns | `Void`

Perform additional actions after a user resets their password via the control panel.

How it’s called:

    $this->extensions->call('cp_member_process_reset_password');
    if ($this->extensions->end_script === TRUE) return;