- }
-
- /* This is adding support for the +q and +a channel modes, basically if they are enabled, and the remover has them set.
- * Then we change the @|%|+ to & if they are +a, or ~ if they are +q */
- protectkey = "cm_protect_" + std::string(channel->name);
- founderkey = "cm_founder_" + std::string(channel->name);
-
- if (ServerInstance->ULine(user->server) || ServerInstance->ULine(user->nick))
- {
- ulevel = chartolevel("U");
- }
- if (user->GetExt(founderkey))
- {
- ulevel = chartolevel("~");
- }
- else if (user->GetExt(protectkey))
- {
- ulevel = chartolevel("&");
- }
- else
- {
- ulevel = chartolevel(channel->GetPrefixChar(user));
- }
-
- /* Now it's the same idea, except for the target. If they're ulined make sure they get a higher level than the sender can */
- if (ServerInstance->ULine(target->server) || ServerInstance->ULine(target->nick))
- {
- tlevel = chartolevel("U");
- }
- else if (target->GetExt(founderkey))
- {
- tlevel = chartolevel("~");
- }
- else if (target->GetExt(protectkey))
- {
- tlevel = chartolevel("&");
- }
- else
- {
- tlevel = chartolevel(channel->GetPrefixChar(target));