6#ifndef SKYFIRE_CALENDARMGR_H
7#define SKYFIRE_CALENDARMGR_H
113#define CALENDAR_MAX_EVENTS 30
114#define CALENDAR_MAX_GUILD_EVENTS 100
115#define CALENDAR_MAX_INVITES 100
201 time_t eventTime,
uint32 flags, std::string title, std::string description) :
321#define sCalendarMgr Skyfire::Singleton<CalendarMgr, Skyfire::NullMutex>::instance()
std::set< CalendarEvent * > CalendarEventStore
@ CALENDAR_ERROR_INTERNAL
@ CALENDAR_ERROR_INVALID_SIGNUP
@ CALENDAR_ERROR_NO_INVITE
@ CALENDAR_ERROR_SYSTEM_DISABLED
@ CALENDAR_ERROR_EVENT_PASSED
@ CALENDAR_ERROR_NOT_INVITED
@ CALENDAR_ERROR_EVENT_LOCKED
@ CALENDAR_ERROR_ARENA_EVENTS_EXCEEDED
@ CALENDAR_ERROR_OTHER_INVITES_EXCEEDED
@ CALENDAR_ERROR_SELF_INVITES_EXCEEDED
@ CALENDAR_ERROR_NOT_ALLIED
@ CALENDAR_ERROR_PERMISSIONS
@ CALENDAR_ERROR_EVENTS_EXCEEDED
@ CALENDAR_ERROR_NO_GUILD_INVITES
@ CALENDAR_ERROR_INVALID_DATE
@ CALENDAR_ERROR_NEEDS_TITLE
@ CALENDAR_ERROR_RESTRICTED_LEVEL
@ CALENDAR_ERROR_DELETE_CREATOR_FAILED
@ CALENDAR_ERROR_GUILD_EVENTS_EXCEEDED
@ CALENDAR_ERROR_NO_MODERATOR
@ CALENDAR_ERROR_INVITE_WRONG_SERVER
@ CALENDAR_ERROR_ALREADY_INVITED_TO_EVENT_S
@ CALENDAR_ERROR_INVITES_EXCEEDED
@ CALENDAR_ERROR_INVALID_TIME
@ CALENDAR_ERROR_EVENT_WRONG_SERVER
@ CALENDAR_ERROR_RESTRICTED_ACCOUNT
@ CALENDAR_ERROR_IGNORING_YOU_S
@ CALENDAR_ERROR_USER_SQUELCHED
@ CALENDAR_ERROR_PLAYER_NOT_FOUND
@ CALENDAR_ERROR_EVENT_INVALID
@ CALENDAR_ERROR_GUILD_PLAYER_NOT_IN_GUILD
@ CALENDAR_REPEAT_BIWEEKLY
@ CALENDAR_REPEAT_MONTHLY
@ CALENDAR_RANK_MODERATOR
@ CALENDAR_FLAG_WITHOUT_INVITES
@ CALENDAR_FLAG_INVITES_LOCKED
@ CALENDAR_FLAG_GUILD_EVENT
@ CALENDAR_FLAG_ALL_ALLOWED
std::vector< CalendarInvite * > CalendarInviteStore
@ CALENDAR_EVENT_REMOVED_MAIL_SUBJECT
@ CALENDAR_INVITE_REMOVED_MAIL_SUBJECT
@ CALENDAR_STATUS_TENTATIVE
@ CALENDAR_STATUS_NOT_SIGNED_UP
@ CALENDAR_STATUS_STANDBY
@ CALENDAR_STATUS_INVITED
@ CALENDAR_STATUS_ACCEPTED
@ CALENDAR_STATUS_SIGNED_UP
@ CALENDAR_STATUS_REMOVED
@ CALENDAR_STATUS_DECLINED
@ CALENDAR_STATUS_CONFIRMED
std::map< uint64, CalendarInviteStore > CalendarEventInviteStore
void SendCalendarEventUpdateAlert(CalendarEvent const &calendarEvent, time_t oldEventTime)
void UpdateEvent(CalendarEvent *calendarEvent)
void FreeInviteId(uint64 id)
CalendarEventInviteStore _invites
CalendarEventStore const & GetEvents() const
void SendPacketToAllEventRelatives(WorldPacket packet, CalendarEvent const &calendarEvent)
std::deque< uint64 > _freeEventIds
CalendarEventStore GetPlayerEvents(uint64 guid)
void FreeEventId(uint64 id)
void SendCalendarEventInviteAlert(CalendarEvent const &calendarEvent, CalendarInvite const &invite, bool broadcast)
CalendarEventStore _events
void RemoveEvent(uint64 eventId, uint64 remover)
void SendCalendarEventModeratorStatus(CalendarEvent const &calendarEvent, CalendarInvite const &invite)
void SendCalendarEventInviteRemove(CalendarEvent const &calendarEvent, CalendarInvite const &invite, uint32 flags)
void SendCalendarEventRemovedAlert(CalendarEvent const &calendarEvent)
void SendCalendarEventStatusAlert(CalendarEvent const &calendarEvent, CalendarInvite const &invite)
void SendCalendarClearPendingAction(uint64 guid)
CalendarInvite * GetInvite(uint64 inviteId) const
uint32 GetPlayerNumPending(uint64 guid)
void SendCalendarEventStatus(CalendarEvent const &calendarEvent, CalendarInvite const &invite)
void RemovePlayerGuildEventsAndSignups(uint64 guid, uint32 guildId)
void SendCalendarEventInviteRemoveAlert(uint64 guid, CalendarEvent const &calendarEvent, CalendarInviteStatus status)
void UpdateInvite(CalendarInvite *invite)
CalendarEventInviteStore const & GetInvites() const
void SendCalendarCommandResult(uint64 guid, CalendarError err, std::string param="")
std::deque< uint64 > _freeInviteIds
void AddInvite(CalendarEvent *calendarEvent, CalendarInvite *invite, bool sendEventInvitePacket=true, bool forceEventInviteAlertPacket=false)
CalendarEvent * GetEvent(uint64 eventId) const
CalendarInviteStore const & GetEventInvites(uint64 eventId)
void RemoveAllPlayerEventsAndInvites(uint64 guid)
void RemoveInvite(uint64 inviteId, uint64 eventId, uint64 remover)
void SendCalendarEventInvite(CalendarInvite const &invite)
void AddEvent(CalendarEvent *calendarEvent, CalendarSendEventType sendType)
CalendarInviteStore GetPlayerInvites(uint64 guid)
void SendCalendarEvent(uint64 playerGuid, CalendarEvent const &calendarEvent, CalendarSendEventType sendType)
std::string BuildCalendarMailSubject(uint64 remover) const
bool IsGuildAnnouncement() const
void SetGuildId(uint32 guildId)
CalendarEvent(uint64 eventId, uint64 creatorGUID, uint32 guildId, CalendarEventType type, int32 dungeonId, time_t eventTime, uint32 flags, std::string title, std::string description)
CalendarEventType GetType() const
CalendarEvent(CalendarEvent const &calendarEvent, uint64 eventId, uint64 newCreatorGuid)
bool IsGuildEvent() const
void SetDescription(const std::string &description)
void SetEventId(uint64 eventId)
void SetTitle(const std::string &title)
void SetEventTime(time_t eventTime)
uint64 GetEventId() const
void SetType(CalendarEventType type)
void SetCreatorGUID(uint64 guid)
void SetDungeonId(int32 dungeonId)
uint64 GetCreatorGUID() const
int32 GetDungeonId() const
std::string GetTitle() const
std::string BuildCalendarMailBody() const
uint32 GetGuildId() const
time_t GetEventTime() const
std::string GetDescription() const
void SetFlags(uint32 flags)
void SetStatus(CalendarInviteStatus status)
void SetInvitee(uint64 guid)
CalendarModerationRank GetRank() const
void SetRank(CalendarModerationRank rank)
CalendarModerationRank _rank
CalendarInviteStatus GetStatus() const
CalendarInvite(CalendarInvite const &calendarInvite, uint64 inviteId, uint64 eventId, uint64 creatorGuid)
uint64 GetInviteId() const
uint64 GetSenderGUID() const
uint64 GetInviteeGUID() const
void SetSenderGUID(uint64 guid)
void SetStatusTime(time_t statusTime)
void SetInviteId(uint64 inviteId)
void SetText(const std::string &text)
CalendarInvite(uint64 inviteId, uint64 eventId, uint64 invitee, uint64 senderGUID, time_t statusTime, CalendarInviteStatus status, CalendarModerationRank rank, std::string text)
time_t GetStatusTime() const
std::string GetText() const
uint64 GetEventId() const
CalendarInviteStatus _status
void SetEventId(uint64 eventId)