> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apex-services.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Faction Bell hooks

> Every hook exposed by apex-faction-bell/hooks.lua.

Source: `apex-faction-bell/hooks.lua` (unencrypted).

## Server hooks

<AccordionGroup>
  <Accordion title="Hooks.OnPlayerNotify(source, title, message, type)" icon="bell">
    Default `xPlayer.showNotification(message)`.
  </Accordion>

  <Accordion title="Hooks.OnPlayerBan(source, reason)" icon="ban">
    Default `DropPlayer(source, reason)`.
  </Accordion>

  <Accordion title="Hooks.OnPlayerKick(source, reason)" icon="user-slash">
    Default `DropPlayer(source, reason)`.
  </Accordion>

  <Accordion title="Hooks.OnAuditLog(source, action, details)" icon="file-lines">
    Default `lib.logger(source, 'apex-faction-bell', details, action)`.
  </Accordion>

  <Accordion title="Hooks.HasManagerPermission(source)" icon="user-check">
    Default checks `xPlayer.getGroup()` against `Config.AllowedGroups`.
  </Accordion>

  <Accordion title="Hooks.GetJobs()" icon="briefcase">
    Default returns `ESX.GetJobs()` filtered (no `_offduty` suffix, no `unemployed`), sorted by label.
  </Accordion>

  <Accordion title="Hooks.JobExists(jobName)" icon="briefcase">
    Default `ESX.GetJobs()[jobName] ~= nil`.
  </Accordion>
</AccordionGroup>

## Client hooks

<AccordionGroup>
  <Accordion title="Hooks.ShowHelpText(key, text)" icon="comment">
    Default `lib.showTextUI`.
  </Accordion>

  <Accordion title="Hooks.HideHelpText(key)" icon="comment-slash">
    Default `lib.hideTextUI`.
  </Accordion>

  <Accordion title="Hooks.ShowClientNotify(title, message, type)" icon="bell">
    Default `lib.notify`.
  </Accordion>

  <Accordion title="Hooks.PlayBellSound()" icon="bell">
    Default `PlaySoundFrontend(-1, '5_SEC_WARNING', 'HUD_MINI_GAME_SOUNDSET', true)`.
  </Accordion>
</AccordionGroup>
