Drupal Modules

I recently completed a project for a customer that afforded me the opportunity to dive into Drupal on better terms. On my first introduction to the software several years back (and Joomla for that matter) I determined I would be able to use my cross-browser theming skills more effectively if I chose WordPress as a base CMS.

This time around I was able to spend a considerable chunk of time reading the documentation (especially around the Theming Guide) and examples on other’s sites. Some topics online seemed incomplete so I did end up reviewing some chapters in a few books on Drupal 7 in particular. In my mind it seems like the developers of WordPress and Drupal are migrating toward each other in feature sets, but delivering solutions from different perspectives. WordPress appears to be geared more toward out of the box social publishing, with an easy installer, and an easy updater. It can be pushed in almost any direction, but doesn’t seem to be the goal of the software creators. Drupal on the other hand feels more like a collection of building blocks for a web database. While Drupal has fields, blocks, regions, views, and fine grained permissions with roles… URL aliases require a module to automate their selection. There’s even a module to hook up Filemaker Pro and Drupal.

Back to the modules:

I utilized the following:

For spam free contact forms (almost):

For easy page editing:

For dynamic content:

For development and style:

Mobile WebApp Frameworks

So I went digging for mobile webapp frameworks, and I found a nice list to investigate at a later time. While I have used iUI in the past, and it worked well for my purposes… I have read a few reasons why you may consider others (CiUI). Also, I seem to think that there would be some obvious advantages (and disadvantages) to using a cross-platform mobile webapp framework like PhoneGap and others.

Here the list I came up with:

I also wonder about any IDE’s out there, like Dashcode from Apple.

Update (2010-08-13). I just found this article: Announcing the jQuery Mobile Project

Once they get up and running, I imagine it will be a serious contender with the others.

Update (2010-08-18). Here’s an article from Mashable about some of the frameworks and libraries talked about above (and others): HOW TO: Make Your Mobile Websites Act More Like Native Apps

iUI and the iPhone

My employer recently purchased a set of iPhones from AT&T for those in the workforce that have a need for such a thing. One of our first priorities was getting our rolodex accessible (read only) from the road. The main problem is that the data is in a restrictive, old school database. Until we can find time to move it into a more open platform I did the following:

  • Set up a routine for dumping the rolodex into a flat xml file monthly
  • Coded the searching of the the data using PHP and SimpleXML
  • Coded the cookie management (sessions) and most important, a “remember me” feature (because Safari doesn’t remember passwords on the iPhone)
  • Found this lovely library for creating iPhone compatible user intarfaces via the web (read, looks like a native app): iUI (User Interface Library for Safari development on iPhone)

Checkout the screenshots:

Login  Search  Results  Info

It’s pretty cool, because if the contact in the rolodex has a telephone number, address, email address, or webpage associated with them, the data will be displayed and linked to iPhone friendly functions… For example, the telephone number, when clicked on will provide a call button. An address clicked on will link to the built in maps app. Email links open up directly in the built in mail app. Finally, of course, webpages openup in Safari.

So here’s for getting the world more connected… one app at at time.

Watching MooFlow

karlherrickcom-mooflow-demo-480×231.jpg

I’ve been hacking around with and watching the development of MooFlow over the last few days. It looks and works pretty nice in most browsers and has quite a few options to play with. In this MooFlow demo posted, most options are enabled and the images are imported from page.html.

Other examples at the MooFlow site showcase some of the other features, like images that have external links attached to special buttons, drop down descriptions that float over the image, and the ability to get your images via JSON.

The development version still has a few noticeable bugs:

In Firefox 2.0.0.12: When resizing the stage (bottom right button), the quicklook button shows. When pressed, the image appears under the stage. The user may not realize this until the stage is restored to it’s normal size.

In IE7: When clicking the quicklook button, the image is not zoomed to full size.

Even though there are a few bugs to be worked out, MooFlow already looks great. Not to mention all of the ways it could be used. It even accepts keyboard and mouse scroll input. What’s not to like?

reCAPTCHA plugin error messages

By default, on two of my installs of reCAPTCHA Plugin for WordPress – v2.7, I receive no error message if the captcha is entered incorrectly… the user of the weblog is to assume that they made a mistake I guess…

That is until I wrote this script to check for error messages being passed around on the URL by the plugin:

if (window.location.search != "") {
	var searchArray = window.location.search.split("&");
	for (var i=0; i < searchArray.length; i++) {
		var searchSubArray = searchArray[i].split("=");
		if (searchSubArray[0] == "rerror" && 
		searchSubArray[1] == "incorrect-captcha-sol") {
			document.write(&quot;<p>The two words in the picture were 
			typed incorrectly.</p>");
		}				
	}
}

Just drop that snippet into your “comments.php” template. When the captcha is filled in incorrectly, the plugin adds “rerror=incorrect-captcha-sol” to the url. This checks for that string, and if found, writes an error message in red.