+ if (strlen(text) > 10 && chptr->mode.mode & ModuleModes.MODE_NOCAPS && (!ConfigChannel.exempt_cmode_G || !is_any_op(msptr)))
+ {
+ rb_strlcpy(text2, text, BUFSIZE);
+ strip_unprintable(text2);
+ for(contor=0; contor < strlen(text2); contor++)
+ {
+ if(IsUpper(text2[contor]) && !isdigit(text2[contor]))
+ caps++;
+ len++;
+ }
+ if(((caps*100)/(len)) >= 50)
+ {
+ sendto_one_numeric(source_p, 404, "%s :Cannot send to channel - Your message contains mostly capital letters (+G set)", chptr->chname);
+ return;
+ }
+ }
+ if (p_or_n != PRIVMSG && chptr->mode.mode & ModuleModes.MODE_NONOTICE && (!ConfigChannel.exempt_cmode_T || !is_any_op(msptr)))
+ {
+ sendto_one_numeric(source_p, 404, "%s :Cannot send to channel - Notices are disallowed (+T set)", chptr->chname);
+ return;
+ }
+ if (p_or_n != NOTICE && chptr->mode.mode & ModuleModes.MODE_NOACTION &&
+ !strncasecmp(text + 1, "ACTION", 6) &&
+ (!ConfigChannel.exempt_cmode_D || !is_any_op(msptr)))