SpamBlocker

Spam Blocker is a CakePHP Behavior that automatically before after a comment is made. Each comment is tested upon a point system to determine if it should be approved, set to pending (high points), or marked as spam / deleted (low points).

Decoda Version Logs

Package: Lightweight Markup Parser
Category: PHP

Below is a list of all files and every available version for the Decoda script.
Each file is accompanied by a change log. Be cautious in using older versions, they may buggy.

Version: 3.3.1
Requires: PHP 5.2
Tested On: PHP 5.3
Released: Sun, Apr 22nd 2012, 15:21

  • Fixed an XSS issue regarding [img] tags when passing multiple HTTP URLs
  • Updated [img] to only accept http://, https:// and removed ftp://, file://
  • Updated attribute parsing to exclude anything starting with javascript:

Version: 3.3
Requires: PHP 5.2
Tested On: PHP 5.3
Released: Wed, Feb 15th 2012, 22:44

  • Added DecodaFilter::setupHooks() to allow filters to initialize hook dependencies
  • Added DecodaHook::setupFilters() to allow hooks to initialize filter dependencies
  • Added CodeHook (CodeFilter dependency) that stops emoticons from being processed in code blocks [Issue #9]
  • Check for class or interface during autoload [Issue #10]
  • Made HTML escaping a boolean setting [Issue #11]
  • Switched CensorHook::afterParse() to beforeParse()

Version: 3.2
Requires: PHP 5.2
Tested On: PHP 5.3
Released: Wed, Feb 15th 2012, 22:42

  • Fixed XSS vulnerabilities
  • Trimmed inner tag content to fix newline rendering problem
  • Made disable() chainable
  • Made whitelist() accept an array or multiple arguments
  • Made Decoda::loadFile() public [Issue #6]

Version: 3.1
Requires: PHP 5.2
Tested On: PHP 5.3
Released: Sat, Nov 26th 2011, 12:46

  • Added a getErrors() method
  • Added a defined() checks for constants
  • Added a [center] tag to BlockFilter
  • Added an error system to detect incorrectly nested tags, unclosed tags and invalid scope types
  • Added a nl2br() method to Decoda
  • Fixed func_get_args() bug for PHP 5.2
  • Fixed a bug with nl2br() on PHP 5.2

Version: 3.0
Requires: PHP 5.2
Tested On: PHP 5.3
Released: Tue, Nov 1st 2011, 21:04

  • Rewrote from the ground up as a lexical parser (Not backwards compatible)
  • Added a powerful Filter and tag system
  • Added a utility Hook system
  • Implemented a templating system for complex tags
  • Converted configuration to JSON format
  • Removed GeSHI support

Version: 2.9
Requires: PHP 5.2
Tested On: PHP 5.3
Released: Wed, May 18th 2011, 20:24

  • Added a config class to handle the loading of emoticons and censored words
  • Altered quote parsing to only show the first child quote, and not all children
  • Fixed some censoring bugs

Version: 2.8
Requires: PHP 5.2
Tested On: PHP 5.3
Released: Sat, May 15th 2010, 20:23

  • Added new constants for specific paths
  • Added an emoticon smiley system
  • Added a childQuotes setting that removes or parses all child quotes
  • Move all config options to the $config property and all methods into configure()
  • Changed __cleanLinebreaks() to __cleanup()

Version: 2.7
Requires: PHP 5.2
Tested On: PHP 5.3
Released: Mon, Feb 1st 2010, 20:20

  • Changed CSS classes to use dashes
  • Fixed a problem with quotes timestamps breaking
  • Fixed a problem with unclosed or nested quotes
  • Rewrote parse() and moved all patterns to $markupCode and $markupResult
  • Added spoiler tags

Version: 2.6
Requires: PHP 5
Tested On: PHP 5.2.5
Released: Sat, Oct 3rd 2009, 16:22

  • Updated the PHP Doc blocks and variable, method names
  • Added a censored words system, can add words with addCensored()
  • Added a hide tag
  • Changed the b, i and u tags to use the regular HTML tags

Version: 2.5
Requires: PHP 5
Tested On: PHP 5.2.5
Released: Sun, Sep 20th 2009, 20:09

  • Added functionality for the GeSHi code highlighter
  • Added an attributes() method to deal with element attributes
  • Added the callbackCode(), processCode() and processGeshi() methods to manage the GeSHi implementation
  • Added the setupGeshi() and useGeshi() methods to apply GeSHi settings
  • Added a float markup type to float content left or right (must clear!)
  • Rewrote the div tags to use double quotes
  • Rewrote parse() to properly escape HTML
  • Rewrote makeClickable() and useShorthand()

Version: 2.4
Requires: PHP 5
Tested On: PHP 5.2.5
Released: Sat, Sep 19th 2009, 20:48

  • Added support for multi-byte and UTF-8 characters
  • Fixed a few problems with processQuotes() not parsing or returning the correct result
  • Fixed a bug with processLists()
  • Rewrote removeCode() because it didn't work to begin with

Version: 2.3
Requires: PHP 5
Tested On: PHP 5.2.5
Released: Fri, Jul 31st 2009, 14:53

  • Added an $allowed property to restrict what tags should be parsed
  • Added an allowed() method to deal with the restricted tags
  • Added a parseDefaults() method to deal with the $allowed
  • Replaced the $markup property with 2 standalone properties to work in sync with the new allowed system
  • Rewrote __construct(), addMarkup(), clickable() and parse()
  • Removed the title and alt attributes from emails and urls
  • Fixed an error with parse() not returning data when no [code] was found

Version: 2.2
Requires: PHP 5
Tested On: PHP 5.2.5
Released: Fri, Apr 10th 2009, 21:33

  • First initial release of Decoda