Microblog-PlugIn for Seredipity (S9Y)

Complete rewritten plugin to show and backup microblog entries (like Twitter or identi.ca) in the sidebar.

Features:

* Actual works with Twitter and identi.ca, but can easily be extended with other Twitter API-compatible services.
  (future releases may have the service-URLs configureable to meet special needs without hacking the plugin code)
* Two versions:
  1. Client side JavaScript version for lower server load with all meaningful features. Minified to only 10KB with YUI Compressor.
  2. PHP version for server side API handling.
* Fully templateable HTML output using a Smarty templating mechanism. Comes with two bundled templates and works with both JavaScript and PHP versions.
  (future releases may have a template-editor right inside the config page to avoid FTPing of new templates)
* Clickable URLs, @names, #hashtags and !groups (!groups are only supportet with identi.ca) as you know from your favourite Twitter-client. Alternatively using built-in RegEx logic or native Twitter-API entities.
* Can show or hide native retweets.
* A nice readable and internationalized timestamp (i.e. "2 minutes ago" or "Thursday at 02:46 PM").
  (for now, only german and english language files are built in, feel free to add your language)
* "via SOURCE" and clickable "in reply to USERNAME" metadata for each entry.
* Two layered caching mechanism for optimized speed:
  1. Server side API calls of the PHP version can be cached for a configureable amount of time (set 0 to disable).
  2. The whole output can be cached (30s for the PHP version or until the next config change for the JavaScript version).
* Backup feature for microblog entries.
* Reasonable errorhandling with logfiles for backup-events and output-errors.
* Stable and well documentated PHP5 OOP based codebase. Utilizes a stable TwitterApi class from another project (SimpleLifestream).
* Works with cURL for better errorhandling and support for "allow_url_fopen = off" PHP setting. Alternatively uses "file_get_contents()" as a fallback, if cURL is not available.
* Backwards compatible with former Twitter plugin (but check the config after update)

Requirements:

* PHP 5.2 or greater
* write access to S9Ys templates_c cache directory for cache- and logfiles
* cURL and JSON extension loaded. If cURL is not available, "allow_url_fopen" must be set to "on" in the php.ini.
* JavaScript version works in all modern browsers (tested with IE6+, Firefox 3+, Opera 9.6+, Safari 3.1+ and Chrome 1+)

Notice:

* Backup feature is experimental! It may stop the first time backup due to script runtime limits or API problems, so check the logfile! It it has stopped the first time backup (or another backup with more than 100 new entries), the missing old entries will never be added. This relys on a limitation of Twitter's API, which only returns the entries in descending order.