]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/todo/bad_content_support.mdwn
does not seem possible
[git.ikiwiki.info.git] / doc / todo / bad_content_support.mdwn
index 30d19e22c20e96a87241a9afb0eab00fed93900d..e514d27951ed6c3d14fd2602c00232ef22e4b620 100644 (file)
@@ -8,4 +8,11 @@ I am not sure we should follow the MoinMoin mechanism, where the list is a wiki
 
 Failing that, it could also simply be a list in the `ikiwiki.setup`. But my experience with managing a block list of IP addresses there has not been fun: you need to context switch (to another branch, or to the ikiwiki.setup file) and rebuild the wiki at each change, which is rather disruptive... 
 
+The "pie-in-the-sky" plugin here would of course to just plug the checkcontent hook straight into spamassassin or something similar. Then you possibly get bayesian filtering, all sorts of rules, Razor, etc.
+
 -- [[anarcat]]
+
+
+> I looked into this briefly, and it seems like what I want (specifically: discard incoming comments if they have bad content) is fundamentally impossible with the current way the `checkcontent` hook is setup. When *pages* are inspected for content, yes, it's possible to just discard the submission, but not when *comments* are submitted, because the `IkiWiki::check_content` wrapper is called with `nonfatal => 1` which makes it skip any possible interception (returning a function or error message) that would abort submissions. This is because the comments module hardcodes the fact that a `checkcontent` failure is "soft" and means "this comment should be moderated"...
+>
+> So either a new hook needs to be written, or this one needs to be fixed, and either case it cannot be done simply with a plugin. I documented this odd behavior in [[plugins/write]]. --[[anarcat]]