# General

## What is a Celebration Event?

There are three types of events, all falling under the title of "Celebration Event":

* **Birthday Event** - The typical event of a user's birthday.
* **Member Anniversary Event** - The yearly anniversary of a member joining the server.
* **Server Anniversary Event** -  The yearly anniversary of the creation of a server.
* **Custom Event** - A Custom Event configured by the server.

Since the addition of anniversaries and custom events, the celebration event term has been added in order to distinguish between the different settings servers can configure.

## What is an embed?

An example of a message embed is to run the command `bday help`! You will notice the message is specially formatted using Discord API. By default the birthday message is embedded; however, if you use a link to a GIF or image in your custom birthday message, they will not work in an embedded message, so, with Birthday Bot Premium you can add an image to the custom image.

Additionally, free servers can still disable the embed setting and add a link to an image or gif!

## What is the name format type?

The [name format setting](#what-is-the-name-format-setting) decides how the bot displays a user's name.

However, I have split the setting up into multiple sections so that servers can configure how names are shown in specific parts of the bot. The three options are as follows:

* Message - how the bot formats names in custom messages
* List - how the bot formats names in the `/list` command
* Other - how the bot formats names in all other places (i.e. `/next` command)

## What is the name format setting?

You may have run into a bug with Discord where the bot is displaying a bunch of numbers (like: `<@478288246858711040>`) instead of correctly mentioning a user. This can happen either because that user has left the Discord or because Discord's cache wasn't up to date.

To fix this, I added the Name Format setting which decides in which format Birthday Bot should display users. Additionally, there are multiple Name Format settings

* Message - how names appear in custom messages
* List - how names appear in the `/list` command
* Other - how names appear in other commands such as `/next`

There are currently four options:&#x20;

**Mention** (default):

* Displays the user in the typical `@User` format.
* Example: **@Stqlth**

**Username:**&#x20;

* Displays the user's username boldened.
* Example: **Stqlth**

**Nickname**:&#x20;

* Displays the user's nickname (or username, if a nickname is not set) boldened.
* Example: **Scott**

**Tag (DEPRECATED)**

* Displays the user's username followed by their discriminator.
* Example: **Stqlth#0001**

## **What is the server time zone setting?**

The time zone setting is the time zone for your server, this has a couple uses.

Firstly, when a user is setting their birthday for the first time in your server, if the time zone is set, the user will be suggested to use the time zone that the server uses (they can still choose a different one).

Secondly, it *can* also be used to decide the time a message/role is sent/given. This is dependent on the use time zone setting.

Lastly, all Member Anniversaries, Server Anniversaries and Custom Events are celebrated based on the server time zone. Because of this, for any of them to work, the server time zone **must** be set.

## What is the Date Format setting?

The date format setting decides how Birthday Bot detects birthdays when users are setting their birthday in your server. There are two options. The default, `month_day` and `day_month`. They function as their name suggests. For instance, if your server is using the **month\_day** setting then the bot will detect the day **01/12** as January 12th. However, if your server is using the **day\_month** setting then the bow will detect the date **01/12** as December 1st.

## What is the Birthday Blacklist?

The birthday blacklist is a system that allows servers to prevent a member or members with a specific role from having their birthday celebrated. This is to help server owners prevent members from abusing the system by setting their birthday multiple times.

## What is the Post Mode setting?

The post mode setting is used to configure what actions the bot uses when posting an event message. By default, this setting is set to `Post Only` and is the only option for the free version of Birthday Bot. Premium servers can choose two other options:

`Post and Pin` - The bot will post the event message and also pin it in the channel

`Thread` - The bot will post the event message and start a thread for it.

This setting can be configured for the the birthday, member anniversary, and server anniversary systems individually.
