Recent Posts:

Tina MVC 0.4.9

Tina MVC for WordPress logo

Tina MVC version 0.4.9 is available from the WordPress plugin repository (see the Tina MVC for WordPress page). No news is, well, no news, but behind the scenes Tina MVC has been used in quite a few projects. The core code is now pretty mature and well tested.

Changes since 0.4.3 (when I last posted news)

  • Lots of small bug fixes (and some bigger ones)
  • New functions to help debugging code
  • New functions to manage view data more effectively
  • New functionality for WordPress Multisite – you can now have different app folders for each site
  • Two new helpers: a Pagination Helper (for creating a sortable, paged table of results from SQL) and a HTML Table Helper
  • Sample files to illustrate new functionality

The Tina MVC on-line documentation has also been updated.

Coming Soon

These are features that have been used commercially and will be ported back to the GPL version.

  • Image manipulation libraries for resizing, watermarking, etc.
  • Libraries for Paypal’s Express Checkout NVP API and for Google Checkout
  • A shopping cart helper

 

Frans Tracks

frans-tracks.crossen.org snapshotFrans Tracks

frans-tracks.crossen.org

A site to support my amateur recording hobby.

Following the end of the Left, Right & Centre residency at Frank Ryans Bar, I needed somewhere to put recordings that are not recorded there.

It is based on a free WordPress theme with customisations to support newer features like post thumbnails.

Free Music Courtesy of Frank Ryans and Left, Right and Centre

Left, Right & Centre play Frank Ryans BarEvery Thursday in Frank Ryan’s Bar of Queen Street, 5 Queen Street, Smithfield, Tadhg hosts a cracking blues band with some of Ireland’s best known session musicians – Noel Bridgeman, Ed Deane, Trevor Knight and John Quearney.

We did the website originally, but lately we have been recording the gigs using a rather nifty Zoom H1 recorder. With the permission of the musicians, the live recordings are available for free (under a Creative Commons license – free for any non-commercial use) in a new download area on the Frank Ryan’s web site.

Sometimes it just doesn’t feel like work – this was a real pleasure!

Tina MVC 0.4.3

Tina MVC for WordPress logoTina MVC version 0.4.2 0.4.3 is available from the WordPress plugin repository (see the Tina MVC for WordPress page).

Main addition is the ‘GMAP_LOCATION’ field type in the forms helper class, but there is also a security fix.

Changes since 0.4:

  • Enhancement: Added various MySQL date, time and datetime formatting functions
  • Bug Fix: Password was not being verified properly on the user change email form
  • Enhancement: Form helper gets a ‘GMAP_LOCATION’ field input type
  • Enhancement: Form helper only loads reCaptcha libs if you define a reCaptcha field

Next from Tina MVC  non-GPL:

  • Image manipulation libraries for resizing, watermarking, etc.
  • Paypal libraries for the Express Checkout NVP API

If you are interested in these features now, then feel free to drop me a line.

DSE Presentation for Ulisse Group

If you attended the talk in the Dublin School of English today, the presentation and code samples are available for download here.
Continue reading ‘DSE Presentation for Ulisse Group’ »

Tina MVC: 0.4 release

Tina MVC for WordPress logoTina MVC version 0.4 will soon be available from the WordPress plugin repository.

This is a major update. Since the last stable version numerous fixes and enhancements have been backported from the non-GPL version.

Changes since 0.3.2:

  • Bug fix: In tina_mvc_app_settings.php – setting the parent page for a Tina front end controller page was not working.
  • Bug fix: Various fixes ported from Tina MVC non-GPL version.
  • Bug fix: tina_mvc_functions.php – tina_mvc_get_GetPost() function.
  • Enhancement: Better form helper sample app.
  • Enhancement: HTML comments output before and after each parsed view file. Makes it easier for your designer to find a template.
  • Change: $tina_mvc_disable_wpautop setting is enabled by default (stops WordPress screwing with your HTML by inserting <br> and <p> tags).
  • Bug fix: Various small (and some not so small) bugs in the form helper.
  • Bug fix: in tina_mvc_get_GetPost().
  • Enhancement: A new test from to demonstrate all form helper functionality.
  • Bug fix: In certain cases, the form helper was not returning the correct variables after form was submitted.
  • Enhancement: Make it easier to change the name of the plugin folder name.
  • Enhancement: New app settings option: disable wpautop() for Tina MVC pages.
  • Enhancement: The form helper can manage file uploads now.
  • Enhancement: added a form_errors() method to the form helper class.

Coming soon from Tina MVC  non-GPL:

  • The form helper gets a Google Map field type. This allows your users to enter longitude and latitude coordinates by zooming into a Google Map and clicking on a point.
  • Image manipulation libraries for resizing, watermarking, etc.
  • Paypal libraries for the Express Checkout NVP API

If you are interested in these features now, then feel free to drop me a line.

Decommissioning of VPS_LON01

Following downtime (since yesterday morning) and a complete lack of support from the hosting provider, I have completed migrating all accounts from the VPS_LON01 server.

All VPS hosting has been migrated to a new provider (who answer their support lines!).

If you are using our VPS hosting and have any difficulties with your web site please call immediately. I apologise for the downtime (up to 3 hours for some of you).

Tina MVC: 0.3 release

Tina MVC for WordPress logoTina MVC 0.3 will be available for download from the WordPress plugin repository.

This release includes numerous changes and enhancements:

  • Complete reorganisation of core files
  • Rewrite of core page controllers and views
  • the form helper is not autoloaded any more. Use tina_mvc_include_helper(‘tina_mvc_form_helper’) first
  • new function tina_mvc_call_page_controller() for use in your apps or theme template files
  • can use custom folder locations for page controllers `tina_mvc_call_page_controller()` and views `tina_mvc_base_page_class->load_view()` to separate core code from your own apps
  • tina_mvc_user_has_role() and tina_mvc_user_has_capability() accept comma seperated list or arrays
  • Added app_bootstrap feature – allows you to enqueue styles and scripts before page output begins when using widgets or shortcodes
  • Added app_init_bootstrap feature – allows you to run code (e.g. to register a custom post) at the init action hook
  • Changed how shortcodes are run – now we go before wp_texturizer()
  • The contents of a non self-enclosing shortcode are available to the page controller now
  • Added ‘app_install_remove’ to allow running arbitrary code on plugin install/remove. See tina_mvc_admin_install()/tina_mvc_admin_remove() in tina_mvc_admin_functions.php
  • Added a basic framework for unit tests (unfinished)
  • Removed the phpDocumentor tutorials folder.
  • Bug fix: tina_mvc_form_helper_class->validate_as_REGEXP() was broken
  • Fixed a possible XSS attack vector

There is also a new tutorial on using the custom code application hooks. These allow you to run arbitrary code at the ‘init’, ‘the_posts’ and when Tina MVC is activated or removed.

Read all about it on the Tina MVC for WordPress page.

Tina MVC: 0.2 release and 0.3 development branch

Tina MVC for WordPress logoStable version 0.2.

This is a roll-up of recent fixes and enhancements. At this stage all development is on the 0.3 branch. Unless bugs appear before I’m ready with 0.3, there will be no further releases prior to 0.3.

Get it from the Tina MVC for WordPress page.

Development version 0.3.

A complete reorganisation of the plugin folder structure and some functional enhancements. Check out at the version 0.3 development branch at the WordPress plugin repository. This will be released shortly.

If you are evaluating Tina MVC then the 0.3 branch is where to go.

Westmoreland College

westmorelandcollege-snapshotWestmoreland College

WestmorelandCollege.ie

Largely a brochure web site with some customisations.

This is the first real outing for Tina MVC (our in-house WordPress plugin framework). WordPress manages all content and templating, making ongoing maintenance a breeze.

Customisations are coded using Tina MVC:

  • contact us form
  • page widgets for showing sub pages of the current page
  • page widgets for random testimonials

The result is a much accelerated development time. Not including the content (which will always be supplied by the client) development time was just a few days.

Forcing Linux To Shutdown Or Reboot

shutdown -r NOW
halt
reboot

not working for you?
To force a shutdown:

echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger

And for a reboot:

echo 1 > /proc/sys/kernel/sysrq
echo o > /proc/sysrq-trigger

Thanks to Nasser Heidari for the tip.

Continue reading ‘Forcing Linux To Shutdown Or Reboot’ »

Choosing a VPS Web Hosting Provider

You would think that many of your worries are reduced when you move from shared web hosting to a virtual private server (VPS) but as my experiences testify, there is are some pretty frightening stories out there.
I have dealt with 3 VPS providers in the past year and this post goes through some of my [...]

Continue reading ‘Choosing a VPS Web Hosting Provider’ »

PHP mail() with Ubuntu Desktop and Gmail

Recently I was adapting a newsletter plugin for WordPress and needed the PHP mail() function for testing. However an Ubuntu desktop install is missing Sendmail – the MTA that PHP expects to find on a Linux PC.
I use a local Apache/MySQL server on a laptop to do a lot of my development – I don’t [...]

Continue reading ‘PHP mail() with Ubuntu Desktop and Gmail’ »

Imagine Wi-Max: Three Weeks On

Imagine LogoI have now been using the product for 3 weeks and have 21 days worth of upload, download and ping data. The latest graphs have been added to the end of the post: Imagine Wi-Max: One Week On.

PHP: The include() include_once() performance debate

The conventional wisdom always said that PHP’s include()/require() was quicker than include_once()/require_once(), but recently I came across an interesting post by Arin Sarkissian which suggests otherwise.

Also I found more commentary on the performance benefit of using relative versus absolute paths in include()/require() and include_once()/require_once() statements (although the main article’s conclusions contradict Arin’s experiments). The Drupal developers discussed and benchmarked the relative/absolute include() issue too.

So in keeping with the spirit of quick and dirty experimentation I hacked up some code and ran some tests on include()/require() against include_once()/require_once() and on the relative/absolute path issue. The results are pretty surprising and I love to hear some views.

Continue reading ‘PHP: The include() include_once() performance debate’ »

Imagine Wi-Max: One Week On

Imagine LogoThis is a follow up to my initial review of the Imagine Wi-Max product 2 weeks ago.

Updated on 2010-06-15 (see end of article for 3 weeks worth of test data).

My last post referred to some shortcomings with how the Wi-Max modem was shipped with an inaccessible control panel, making it all but useless to anyone but the casual home/non-technical/non-business user.

Since then I have:

BT Ireland – Just the Fax Ma’am

BT LogoWarning: do not host your DNS with BT Ireland.

Hard to believe, but get a load of BT Irelands policy on DNS changes…

  1. Fax a request into them on company headed paper (“for security, don’t you know?!”)
  2. Wait for 24 hours (“we only reload our DNS twice a day”).

In fact they are so protective of their DNS servers that they will not break their 2-reloads-a-day rule even in cases where they have made a mistake.

Exercise for the reader:

Figure out how to spoof a DNS change request to BT Ireland using nothing but a PC, a screen grabber and an Internet connection (you shouldn’t even need a physical fax machine).

The ultimate irony: Security guru Bruce Schneier is the Chief Security Technology Officer for BT (but I bet he doesn’t know about the fax-on-headed-paper security initiative)!

Update on getting stale DNS entries removed:

Four days! After becoming frustrated with tech support drones, I had to escalate it to the complaints department.

Beware: ISP’s as Hosting Companies – watch your DNS

The symptom

You cease your contract with your hosting company, cancel your contract and move your web site. People start to complain that they cannot reach your web site. Nothing seems out of order.

The problem:

You were hosting with a major ISP (like Eircom, Magnet or BT Ireland). They put DNS entries into their servers for your web site. When you cancel your contract they should remove these entries. Magnet and BT Ireland are two companies that are negligent in this regard. If they don’t remove these DNS entries, then their customers can have problems reaching your new web site.

Continue reading ‘Beware: ISP’s as Hosting Companies – watch your DNS’ »

Imagine Wi-Max Initial Review

Last weekend I received a Wi-Max box from Imagine to replace my current DSL connection. Here are my initial thoughts on the device, the set-up and configuration, performance and some serious reservations about how Imagine have crippled the modem.


Continue reading ‘Imagine Wi-Max Initial Review’ »

Eircom WEP Cracker is Back by Popular Demand

Eircom logoIn October 2007 Electric News reported that a vulnerability had been discovered with Eircom supplied DSL modem/routers. This was based on some clever investigative work by Kevin Devine in September of that year. It allowed an attacker to deduce the password used to encrypt traffic between a PC and the Wi-Fi access point.

To be fair calling it a vulnerability is being overly generous – the method used to generate the passwords was totally flawed. I would expect more from a 16 year old script kiddie with a Corn Flakes packet code wheel.

As an academic exercise and to publicise the vulnerability we converted some Perl scripts to PHP and published them to our web site. Believe it or not, almost four years hence, there are still a load of routers that are vulnerable. You can even get an iPhone app for it!

If you suspect you are affected, then follow the link below and see if we can deduce your password. If you are affected contact us and we will be happy to help. You can also find DIY instructions on how to secure your Netopia router here.

Go to the Eircom WEP password cracker page here.