Bug #6000
Anti Spam solution failures
| Status: | Closed | Start date: | 2010-01-13 | ||
|---|---|---|---|---|---|
| Priority: | Must have | Due date: | |||
| Assignee: | Reinhard Führicht | % Done: | 80% |
||
| Category: | Interceptor | ||||
| Target version: | Beta 3 (v0.9.5) | Estimated time: | 0.50 hour | ||
| Votes: | 0 |
Description
I found some errors when setting up the built-in SPAM protection AntiSpamFormTime and IPBlocking.
IP Blocking has no logging class support, so it wont report anything to the db.
If *Form Time recognize SPAM and redirection is activated it wont work cause of missing return value (script wont stop). The log component method log doesn't exist anymore, so i have to modify it to method init and process.
Please note that enabling built-in SPAM protection and these fixes could lead to an increase of logged messages (even if they are marked as spam). Could be nice of you add a checkbox in BE module to hide spam marked entries.
Furthermore there is a error in the LoggerDB class which prevents recognized spam to be marked as SPAM (no red color int the BE module). Please see diff.
History
Updated by Reinhard Führicht over 3 years ago
- Assignee set to Reinhard Führicht
Patches for AntiSpamFormTime and Logger_DB committed to trunk.
I found out that Interceptor_IPBlocking actually logs into the reportLog table. But I don't think it is possible to show the content of this table in BE (without phpmyadmin).
I have to think about rewriting the BE module anyway, so I will keep this logging thing in mind and maybe I come up with a better solution.
Updated by Felix Nagel over 3 years ago
Reinhard Führicht wrote:
I found out that Interceptor_IPBlocking actually logs into the reportLog table. But I don't think it is possible to show the content of this table in BE (without phpmyadmin).
Thats right, but its only internal to check how often a form is loaded. Also there is logging with t3lib_div::devLog but you need something like devlog extension to see these messages. AFAIK there is no native recording of this dev messages in typo3.
Perhaps it would be nice to choose: Record SPAM only in the t3lib_div::devLog or log it in the BE module with marked as SPAM attribute. Actually its not very consistently.
Updated by Reinhard Führicht over 3 years ago
Perhaps it would be nice to choose: Record SPAM only in the t3lib_div::devLog or log it in the BE module with marked as SPAM attribute. Actually its not very consistently.
You are definetely right about that.
Maybe I should just add a Logger_DevLog which can be assigned to the Interceptors or the whole form itself. Than you can choose yourself how to log that stuff.
I am thinking about something like this:
plugin.Tx_Formhandler.settings {
loggers.1.class = Logger_DB
interceptors {
1 {
class = Interceptor_IPBlocking
config {
# I don't want to log that into DB
loggers.1 {
class = Logger_DevLog
}
}
}
2 {
class = Interceptor_AntiSpamFormTime
config {
# I want to log that into DB and DevLog
loggers.1 {
class = Logger_DB
}
loggers.2 {
class = Logger_DevLog
}
}
}
}
}
Updated by Felix Nagel over 3 years ago
Thats perfect and would be pretty cool to work with. Sometimes its nice to have every message -- even if it could be SPAM.
Updated by Reinhard Führicht over 3 years ago
OK, I just committed this changes to trunk. The TypoScript should work exactly as described above.
I did some testing and it seems to work perfectly.
Only severe change: Logger_DB is required now for the global configuration and will be added by Controller_Form automatically.
Updated by Reinhard Führicht over 3 years ago
- Target version set to Beta 3 (v0.9.5)
Updated by Reinhard Führicht over 3 years ago
- Status changed from New to Closed
Changes are included in current version in TER (0.9.5).
Please open a new issue, if you find any problems.