- list = true;
- prefix = pfx;
- levelrequired = OPERPREFIX_VALUE;
- m_paramtype = TR_NICK;
- }
-
- unsigned int GetPrefixRank()
- {
- return OPERPREFIX_VALUE;
- }
-
- ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding)
- {
- if (IS_FAKE(source) || (source && ServerInstance->ULine(source->server)))
- return MODEACTION_ALLOW;
- else
- {
- if (source && channel)
- source->WriteNumeric(ERR_CHANOPRIVSNEEDED, "%s %s :Only servers are permitted to change channel mode '%c'", source->nick.c_str(), channel->name.c_str(), 'y');
- return MODEACTION_DENY;
- }
+ std::string pfx = ServerInstance->Config->ConfValue("operprefix")->getString("prefix", "!");
+ prefix = pfx.empty() ? '!' : pfx[0];
+ levelrequired = INT_MAX;