mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-10 02:59:01 -04:00
Move checks for whether a user is cloakable to {Get,Reset}Cloaks.
This commit is contained in:
parent
4a303da1d5
commit
a909bf763a
@ -106,6 +106,9 @@ public:
|
||||
|
||||
Cloak::List* GetCloaks(LocalUser* user) override
|
||||
{
|
||||
if (user->quitting || !(user->connected & User::CONN_NICKUSER))
|
||||
return nullptr; // This user isn't at a point where they can change their cloak.
|
||||
|
||||
if (!user->GetClass()->config->getBool("usecloak", true))
|
||||
return nullptr;
|
||||
|
||||
@ -148,6 +151,9 @@ public:
|
||||
|
||||
void ResetCloaks(LocalUser* user, bool resetdisplay) override
|
||||
{
|
||||
if (user->quitting || !(user->connected & User::CONN_NICKUSER))
|
||||
return; // This user isn't at a point where they can change their cloak.
|
||||
|
||||
const std::string oldcloak = GetFrontCloak(user);
|
||||
ext.Unset(user);
|
||||
|
||||
@ -368,10 +374,6 @@ public:
|
||||
|
||||
void OnChangeRemoteAddress(LocalUser* user) override
|
||||
{
|
||||
// Connecting users are handled in OnUserConnect not here.
|
||||
if (!user->IsFullyConnected() || user->quitting)
|
||||
return;
|
||||
|
||||
// Remove the cloaks so we can generate new ones.
|
||||
cloakapi.ResetCloaks(user, false);
|
||||
|
||||
|
@ -282,8 +282,8 @@ public:
|
||||
void OnAccountChange(User* user, const std::string& newaccount) override
|
||||
{
|
||||
LocalUser* luser = IS_LOCAL(user);
|
||||
if (!luser || luser->quitting || !luser->IsFullyConnected() || !cloakapi)
|
||||
return; // User is uncloakable.
|
||||
if (!luser || !cloakapi)
|
||||
return;
|
||||
|
||||
if (cloakapi->IsActiveCloak(accountcloak) || cloakapi->IsActiveCloak(accountidcloak))
|
||||
cloakapi->ResetCloaks(luser, true);
|
||||
@ -292,20 +292,14 @@ public:
|
||||
void OnChangeRealUser(User* user, const std::string& newuser) override
|
||||
{
|
||||
LocalUser* luser = IS_LOCAL(user);
|
||||
if (!luser || luser->quitting || !luser->IsFullyConnected() || !cloakapi)
|
||||
return; // User is uncloakable.
|
||||
|
||||
if (cloakapi->IsActiveCloak(usernamecloak))
|
||||
if (luser && cloakapi && cloakapi->IsActiveCloak(usernamecloak))
|
||||
cloakapi->ResetCloaks(luser, true);
|
||||
}
|
||||
|
||||
void OnUserPostNick(User* user, const std::string& oldnick) override
|
||||
{
|
||||
LocalUser* luser = IS_LOCAL(user);
|
||||
if (!luser || luser->quitting || !luser->IsFullyConnected() || !cloakapi)
|
||||
return; // User is uncloakable.
|
||||
|
||||
if (cloakapi->IsActiveCloak(nicknamecloak))
|
||||
if (luser && cloakapi && cloakapi->IsActiveCloak(nicknamecloak))
|
||||
cloakapi->ResetCloaks(luser, true);
|
||||
}
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user