// post · 618

Site Upgrade

·

This site has just been upgraded to Bluetrait 2. I expect that there will be a few errors.

I may need to disable comments as I haven't written any spam filtering yet!

RSS feeds should be better as they now use the pubDate tag (meaning you shouldn't be seeing the same post over and over again in your rss reader).

Categories should work too, plus you can append /rss/ to the end of a category link and it should display just the posts for that category.

And there is a little bit of jquery used for the "Click for comments help." section.

If you find any bugs please send me an email via the contact link.

// post · 615

Bluetrait 2 development update

·

Just a quick development update.


The following is a list of the major changes that have happened since Code Example 1:


  • Commenting Support

  • Future Posting Support (via cron)

  • Cron Support

  • Basic Adding Post Support (with Categories)

  • RSS Comments on Posts (with user detail support)

  • Database Session Support (all sessions are stored in the database)

  • Jquery

  • SQLite database support now mostly works

  • Contact Form (will be a default plugin) + Mailer Class

  • Improvements to custom content

There are a couple of things that need doing before I can upgrade this site to Bluetrait 2:


  • Spam Filtering

  • Search

  • Content Support (for my projects page etc)

  • Admin Page (yes I haven't started on it yet!)

  • Migration Script (to upgrade database)

The cron support is pretty cool and really easy to use. It will be used in future to handle update notifications, session garbage collection and "monthly database maintenance".


On another note this site is now accessible via IPv6 (2001:388:c021::20), which has already seen traffic!


 

// post · 609

Bluetrait 2 development update

·

I've been doing a fair bit of Bluetrait 2 coding since my last post about it, so I thought I'd post an update of where I am up to.


Category support is now working. Which is awesome, because it includes full breadcrumb support:


Bluetrait 2 categories support


I will expand this to include browsing through the full breadcrumb. This will improve navigation throughout the site.


Other features that I have been working on include:


  • Full 404 handling support with custom styles

  • Plugin support that can add custom content types

  • Customizable peramlink formats

  • Overriding site details with a settings file (i.e. domain name etc)

  • Pluggable functions

  • MySQL and SQLite support

  • RSS support

  • Templating Tags

  • UTF-8 support

  • Theme support

  • Graceful error handling (i.e on database failure generate an email to the site admin)

  • Event Logging

So there is a stack of stuff that has been done. I can't wait until enough has been done so that I can upgrade this site!


Subversion access can be found here (please note it isn't ready to be used on any website yet).

// post · 605

Bluetrait 2

·

I've decided to rewrite Bluetrait.


It's had a good run.


Getnews (the blog script that I wrote before Bluetrait) was aimed at providing a very basic blog with commenting support. It did this well, but a lot of it was hardcoded to my domain/style so it wasn't really useful for anyone else.


I wrote Bluetrait 1 as to allow others to easily use/install it. It had/has a very basic template type system. Over the revisions it has been slowly upgraded and now includes:


  • Good spam filtering. I think I'll finally got to a stage where I'm happy with it.

  • Awesome looking admin panel thanks to Stuart.

  • Event Viewer (which I really like having)

  • Basic RSS support

  • User management.

It has worked well on my site for almost 3 years! But it has some limitations that are starting to annoy me. The biggest problem I currently have with it is the way the CMS side works.


There is no way to categories pages and as my project page grows it is becoming an issue.


So I'm going to take what I've learnt with Bluetrait 1 and rewrite it.


I'm aiming to make Bluetrait 2 able to cope with all kinds of content for example:


  • RSS

  • Atom

  • Content/CMS

  • Blog

The idea is that the core of Bluetrait will have a section that allows people to design their own plugins which allows the system to handle any kind of data output.


Bluetrait 2 will also require PHP 5 as I'm using the PDO database class to allow for almost any kind of database (mysql, sql lite etc).


So the coding has started. Plugin support is almost done. I don't expect to have anything finished this year, hopefully early next year.

// post · 601

What data is being sent to Akismet?

·

I just read an interesting post here about what data is sent to the Akismet servers. A surprising amount, including the whole $_SERVER array!


I wouldn't be too happy with that myself. Bluetrait's implementation of the Akismet client sends the following information:


Comment Author

Comment Author Email Address

Comment Author Website Address

Content of Comment

Author's IP Address

Type of Comment (i.e Trackback, Comment etc)


Bluetrait's implementation sends the following information:


Comment Author

Comment Author Email Address

Comment Author Website Address

Content of Comment

Author's IP Address

Type of Comment (i.e Trackback, Comment etc)


Plus the $_SERVER array with the following information removed:


'HTTP_COOKIE',

'HTTP_X_FORWARDED_FOR',

'HTTP_X_FORWARDED_HOST',

'HTTP_MAX_FORWARDS',

'HTTP_X_FORWARDED_SERVER',

'REDIRECT_STATUS',

'SERVER_PORT',

'PATH',

'DOCUMENT_ROOT',

'SERVER_ADMIN',

'QUERY_STRING',

'PHP_SELF' ;


Unfortunately this is more than I first stated, I'm going to review the data being sent. It shouldn't contain any extra data that is personal.


EDIT: Some more info here. Looks like Akismet sends the all cookies that are from that domain. i.e anything the client (the person posting the comment) is logged into. The post is a bit old (2005) so this behavior may have changed.


EDIT2: I just checked the source code from WordPress 2.1.2 it looks like cookies are no longer sent, everything else still is.

// post · 582

Spam

·

Argh. Too much spam is getting through again; even with Akismet. So I'm in the process of writing a new spam class. The aim is to build a comment score (similar to email spam filtering programs) based on the following:
  • Email Address/Name/Website

  • Comment Body (number of links etc)

  • If the user is registered

  • If the user has successfully posted a comment before

  • white and black lists

  • response from akismet

  • how old and how many comments a post has


So hopefully I can cut down the spam.