- user->Shrink("cm_network_"+std::string(channel->name));
- }
-
- void OnRehash(User* user)
- {
- ConfigReader Conf(ServerInstance);
-
- if (!np)
- {
- // This is done on module load only
- std::string npre = Conf.ReadValue("ojoin", "prefix", 0);
- NPrefix = npre.empty() ? 0 : npre[0];
-
- if (NPrefix && ServerInstance->Modes->FindPrefix(NPrefix))
- throw ModuleException("Looks like the +Y prefix you picked for m_ojoin is already in use. Pick another.");
- }
-
- notice = Conf.ReadFlag("ojoin", "notice", "yes", 0);
- op = Conf.ReadFlag("ojoin", "op", "yes", 0);
- }
-
- ModResult OnAccessCheck(User* source,User* dest,Channel* channel,int access_type)
- {
- // Here's where we preform access checks, and disallow any kicking/deopping
- // of +Y users.
-
- // If there's no dest, it's not for us.
- if (!dest || !channel)
- return MOD_RES_PASSTHRU;
-
- // If a ulined nickname, or a server is setting the mode, let it
- // do whatever it wants.
- if ((ServerInstance->ULine(source->nick.c_str())) || (ServerInstance->ULine(source->server)) || (!*source->server))
- return MOD_RES_ALLOW;
-
- std::string network("cm_network_"+channel->name);
-