|
|
| !equals_to_any(page_namespace, 2, 3) & | | !equals_to_any(page_namespace, 2, 3) & |
| !contains_any(user_groups, "autopatrol", "sysop", "bot") & | | !contains_any(user_groups, "autopatrol", "sysop", "bot") & |
| ( | | ( |
| bad_words := "\b(?:(?:ASS|ARSE|BUTT)\s?HOLES?|(?:DUMB|(?:F|PH)AT+(?:EST)?)\s*ASS|ARSE|BITCH(?:E[SZ]{1,2})?|COCK(?:S|SUCKER)?|DICK(?:HEAD|SUCKER)?S?|CUCK(?:ER|ING|S)?|CUNTS?|DILDO|DOUCH|(?:M[OU]TH[AER]+)?F[UV]CK(?:ER[SYZ]{0,2}|HEAD|HOLE)|N[IL]G{2,}(?:A[HSZ]{0,3}|[AEIOU]{1,5}R[SZ]{0,2})|P[AE]DO(?:F|PH)ILE?|FAG(?:G[AIO]T)?|PENIS|CRAP(?:PY)?|SLUTS?|WHORES?|(?:BULL|DOG|HORSE|PIG)?SHITE?(?:HOLE|S|TI?ER|T?Y|T?ING)?|PUSS(?!YCAT|YFOOT|Y RIOT)A?Y|IDIOTS?|(?<!IT )(?<!THAT )WAS HERE|LOL)\b"; | | bad_words := "\b(?:(?:ASS|ARSE|BUTT)\s?HOLES?|(?:DUMB|(?:F|PH)AT+(?:EST)?)\s*ASS|ARSE|BITCH(?:E[SZ]{1,2})?|COCK(?:S|SUCKER)?|DICK(?:HEAD|SUCKER)?S?|CUCK(?:ER|ING|S)?|CUNTS?|DILDO|DOUCH|(?:M[OU]TH[AER]+)?F[UV]CK(?:ER[SYZ]{0,2}|HEAD|HOLE)|N[IL]G{2,}(?:A[HSZ]{0,3}|[AEIOU]{1,5}R[SZ]{0,2})|P[AE]DO(?:F|PH)ILE?|FAG(?:G[AIO]T)?|PENIS|CRAP(?:PY)?|SLUTS?|WHORES?|(?:BULL|DOG|HORSE|PIG)?SHITE?(?:HOLE|S|TI?ER|T?Y|T?ING)?|PUSS(?!YCAT|YFOOT|Y RIOT)A?Y|IDIOTS?|(?<!IT |THAT )WAS HERE|LOL)\b"; |
| characters := "(?:[asdfghjkl;]\s*){30}|[bcdfghjklmnpqrstvwxz]{8,}|\!{10,}"; | | characters := "(?:[asdfghjkl;]\s*){30}|[bcdfghjklmnpqrstvwxz]{8,}|\!{10,}"; |
| | | |
| ( | | ( |
| ccnorm(added_lines) rlike bad_words & | | ccnorm(added_lines) rlike bad_words & |
| !(ccnorm(removed_lines) rlike bad_words) | | !(ccnorm(removed_lines) rlike bad_words) |
| ) | ( | | ) | ( |
| added_lines irlike characters & | | added_lines irlike characters & |
| !(removed_lines irlike characters) & | | !(removed_lines irlike characters) & |
| !(added_lines contains "http") | | !(added_lines contains "http") |
| ) | | ) |
| ) | | ) |