# Hooks

- [Actions](#actions)
- [Filters](#filters)

## Actions

### `emsm_auth_before_session_destroy`

*Fires before the session is destroyed.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$user` | `\Extendmate_Session_Manager\Inc\Admin\WP_User` | The user object.
`$session_manager` | `\Extendmate_Session_Manager\Inc\Common\Service\User_Meta_Session_Tokens` | The custom session token manager.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-auth.php](inc/admin/class-auth.php), [line 75](inc/admin/class-auth.php#L75-L81)

### `emsm_auth_after_session_destroy`

*Fires after the session is destroyed.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$user` | `\Extendmate_Session_Manager\Inc\Admin\WP_User` | The user object.
`$session_manager` | `\Extendmate_Session_Manager\Inc\Common\Service\User_Meta_Session_Tokens` | The custom session token manager.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-auth.php](inc/admin/class-auth.php), [line 92](inc/admin/class-auth.php#L92-L98)

### `emsm_user_list_table_bulk_action_logout_processed`

*Fires after the bulk action is processed.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$user_id` | `int` | The user ID for which the bulk action is processed.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-user.php](inc/admin/class-user.php), [line 295](inc/admin/class-user.php#L295-L300)

### `emsm_admin_sessions_modal_header`

*Fires in the sessions modal header, just before the table list.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$user` | `\WP_User` | User object.

Source: [wp-content/plugins/extendmate-session-manager/inc/template/admin/modal/body.php](inc/template/admin/modal/body.php), [line 84](inc/template/admin/modal/body.php#L84-L90)

### `emsm_frontend_session_list_card_meta`

*Fires after the session meta information and before the session actions.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$session` | `array` | Session data.
`$is_current` | `bool` | Whether the session is the current session.

Source: [wp-content/plugins/extendmate-session-manager/inc/template/frontend/sessions.php](inc/template/frontend/sessions.php), [line 78](inc/template/frontend/sessions.php#L78-L84)

### `emsm_frontend_session_list_card_actions`

*Fires after the session actions.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$session` | `array` | Session data.
`$is_current` | `bool` | Whether the session is the current session.

Source: [wp-content/plugins/extendmate-session-manager/inc/template/frontend/sessions.php](inc/template/frontend/sessions.php), [line 104](inc/template/frontend/sessions.php#L104-L110)

## Filters

### `emsm_enable_template_overrides`

*Filters whether to enable template overrides from the active theme.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$enable_template_overrides` | `bool` | Whether to enable template overrides from the active theme.

Source: [wp-content/plugins/extendmate-session-manager/inc/common/helpers/class-template.php](inc/common/helpers/class-template.php), [line 41](inc/common/helpers/class-template.php#L41-L46)

### `emsm_gmt_offset`

*Allows to modify the GMT offset in seconds.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$gmt_offset` | `int` | The current offset in seconds.

Source: [wp-content/plugins/extendmate-session-manager/inc/common/helpers/class-settings.php](inc/common/helpers/class-settings.php), [line 33](inc/common/helpers/class-settings.php#L33-L38)

### `emsm_datetime_format`

*Allows to modify the datetime format.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$datetime_format` | `string` | The current datetime format.

Source: [wp-content/plugins/extendmate-session-manager/inc/common/helpers/class-settings.php](inc/common/helpers/class-settings.php), [line 51](inc/common/helpers/class-settings.php#L51-L56)

### `emsm_user_meta_session_tokens_get_user_action_info`

*Filters the user action information.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$data` | `array` | The user action information.

Source: [wp-content/plugins/extendmate-session-manager/inc/common/service/class-user-meta-session-tokens.php](inc/common/service/class-user-meta-session-tokens.php), [line 134](inc/common/service/class-user-meta-session-tokens.php#L134-L139)

### `emsm_session_list_table_get_columns`

*Filters the columns for the session list table.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$columns` | `array` | The list of columns.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-session-list-table.php](inc/admin/class-session-list-table.php), [line 142](inc/admin/class-session-list-table.php#L142-L147)

### `emsm_session_list_table_get_hidden_columns`

*Filters the columns that are hidden by default.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$hidden_columns` | `string[]` | The list of columns.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-session-list-table.php](inc/admin/class-session-list-table.php), [line 216](inc/admin/class-session-list-table.php#L216-L221)

### `emsm_session_list_table_prepare_sessions`

*Filters the list of sessions before it is displayed.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$sessions` | `array` | The list of sessions.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-session-list-table.php](inc/admin/class-session-list-table.php), [line 230](inc/admin/class-session-list-table.php#L230-L235)

### `emsm_session_list_table_session_data`

*Filters the data for a session before it is displayed.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$item_data` | `array` | The session data.
`$session` | `array` | The session data before formatting.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-session-list-table.php](inc/admin/class-session-list-table.php), [line 262](inc/admin/class-session-list-table.php#L262-L268)

### `emsm_session_list_table_column_default`

*Filters the display value for a session column.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$value` | `string` | The column value.
`$item` | `array` | The session data.
`$column_name` | `string` | The column name.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-session-list-table.php](inc/admin/class-session-list-table.php), [line 300](inc/admin/class-session-list-table.php#L300-L307)

### `emsm_session_list_table_get_sortable_columns`

*Filters the sortable columns for the session list table.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$columns` | `array` | The sortable columns.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-session-list-table.php](inc/admin/class-session-list-table.php), [line 331](inc/admin/class-session-list-table.php#L331-L336)

### `emsm_render_extra_tablenav_items`

*Filters the extra table navigation items.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$items` | `array` | The extra table navigation items.
`$count` | `int` | The total count of the records.
`$is_owner` | `bool` | Whether the viewed user is the same as the current user.
`$current_user_id` | `int` | The ID of the current user.
`$viewed_user_id` | `int` | The ID of the viewed user.
`$which` | `string` | The location of the extra navigation area ('top' or 'bottom').

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-session-list-table.php](inc/admin/class-session-list-table.php), [line 445](inc/admin/class-session-list-table.php#L445-L455)

### `emsm_session_list_table_column_ip_actions`

*Fires when a session list table's IP column is processed.*

The dynamic portion of the hook name, `$item['verifier']`, refers to the session's verifier.

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$actions` | `array` | The existing actions.
`$item` | `array` | The current session data.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-session-list-table.php](inc/admin/class-session-list-table.php), [line 596](inc/admin/class-session-list-table.php#L596-L604)

### `emsm_session_list_table_ajax_response`

*Filters the response for the AJAX call to render the session list table.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$response` | `array` | The response data.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-session-list-table.php](inc/admin/class-session-list-table.php), [line 669](inc/admin/class-session-list-table.php#L669-L674)

### `emsm_user_list_table_actions`

*Filters the array of actions.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$actions` | `array` | The array of actions.
`$value` | `string` | The existing column value.
`$column_name` | `string` | The column name.
`$user_id` | `int` | The user ID.

Source: [wp-content/plugins/extendmate-session-manager/inc/admin/class-user.php](inc/admin/class-user.php), [line 212](inc/admin/class-user.php#L212-L220)

### `emsm_frontend_render_session_list_atts`

*Fires before rendering the session list.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$atts` | `array` | The attributes of the shortcode.

Source: [wp-content/plugins/extendmate-session-manager/inc/frontend/class-frontend.php](inc/frontend/class-frontend.php), [line 202](inc/frontend/class-frontend.php#L202-L207)

### `emsm_frontend_session`

*Filters the session array before it is used to display the frontend session list.*

**Arguments**

Argument | Type | Description
-------- | ---- | -----------
`$session` | `array` | The session data to be displayed.
`$user_id` | `int` | The ID of the user to display the sessions for.
`$verifier` | `string` | The session verifier.

Source: [wp-content/plugins/extendmate-session-manager/inc/template/frontend/sessions.php](inc/template/frontend/sessions.php), [line 43](inc/template/frontend/sessions.php#L43-L52)


<p align="center"><a href="https://github.com/pronamic/wp-documentor"><img src="https://cdn.jsdelivr.net/gh/pronamic/wp-documentor@main/logos/pronamic-wp-documentor.svgo-min.svg" alt="Pronamic WordPress Documentor" width="32" height="32"></a><br><em>Generated by <a href="https://github.com/pronamic/wp-documentor">Pronamic WordPress Documentor</a> <code>1.2.0</code></em><p>

