SpamFerret/tables/attempt

About

 * History:
 * 2009-08-05 Added ID_Archive
 * 2009-08-07 Added Edit
 * 2009-08-08 ID_Client -> Addr_Client
 * 2009-08-09 Addr_Client must be a *string*
 * Fields:
 * Code:
 * NULL = normal filter match
 * "AMP" = ampersandbot (to be eventually superceded by some kind of difference-pattern)
 * "THR" = throttled: too many spam attempts, temporary blacklist of IP address
 * MatchText: mainly useful for regex filters and (especially) non-listable offenses
 * ID_Pattern needs to allow NULL in order to log throttled saves with no pattern match
 * ID_Archive means the same thing as ID_Pattern, but refers to instead of . This is DEFAULT NULL for backward compatibility.
 * Edit: text of submitted edit
 * Diff: diff between submitted edit and existing text

SQL
CREATE TABLE `attempt` ( `ID`          INT         NOT NULL AUTO_INCREMENT,  `When`        DATETIME                 COMMENT "timestamp of attempt",  `ID_Pattern`  INT     DEFAULT NULL     COMMENT "(patterns.ID) pattern matched",  `ID_Archive`  INT     DEFAULT NULL     COMMENT "(pattern_archive.ID) pattern matched",  `Addr_Client` VARCHAR(15) NOT NULL     COMMENT "(client.Address) spamming client",  `IDS_Session` VARCHAR(255)             COMMENT "PHP session ID from session_id",  `Code`        VARCHAR(15)              COMMENT "type of attempt",  `PageServer`  VARCHAR(63)              COMMENT "identifier of wiki being attacked (usually domain)",  `PageName`    VARCHAR(255)             COMMENT "name of page where the spam would have displayed",  `didAllow`    TINYINT(1) DEFAULT FALSE COMMENT "edit was allowed",  `Edit`        MEDIUMTEXT               COMMENT "submitted text",  `Diff`        MEDIUMTEXT               COMMENT "difference between original and attempted edit", PRIMARY KEY(`ID`) ) ENGINE = MYISAM;