work rambling

Writing panels integration

I'm working on a project where I need to get some of my custom content into Panels. Having the Panels interface to manage things is obviously a huge boon, but I wanted to do more than create Drupal blocks- I wanted the same kind of integration that modules like Views and CCK are using.

Poking around, I didn't find much information on how to actually write your own Panels integration, so after a few fits and starts, I just started from block.inc as an example and then have abstracted it here.

Writing Extensible Drupal Modules, part 1

First in a 3 part series

In the past few months, I've spent a bit of time writing Drupal modules that are designed to have other modules interact with them. In some instances to add content, change configuration, modify display, or participate in module processes. Writing modules that do this turns out to be frighteningly easy. With Drupal, even more so.

Stripping EXIF data with Media Mover

After someone was discovered posting pictures to Flickr using an iPhone before it was officially released, it was fairly obvious to me that EXIF data could be used in ways that a user might not anticipate. Maybe I'm a bit behind the curve, but regardless, it struck me that it might be time to provide some tools that protect users from their cameras revealing who they are.

Drupal's Search

Doug Green is talking about Drupal's search engine over on CivicAction's blog. Some good information and all the more reason to move away from MySQL 3.

FlunkArnold.com Coverage

There's some interesting coverage of the flunkarnold.com website that I worked on back in September. It's pretty much a stock Drupal site with a custom video encoding script that I posted about awhile back.

Evil IE and CSS

Having issues with IE, css and blinking images. This is some good reading: fss | things about things

Unfortunately, given my page structure, double buffering isn't really an option. So, the apache fix is in order:


ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000

and lo! it works.

Certified Email Survey

Time to take the certified email survey. Here's some background on the issue:

Img_assist and JavaScript Popups

Ah the age old problem of having popup windows on your thumbnails. I figured out a good way to do this with some modifications of the img_assist plugin.

Change line 813:
$img_template = t($img_template, array('%caption' => $vars['caption'], '%node-link' => url("node/$image->nid"), '%img-link' => $image->filepath, '%alt' => check_plain($vars['alt']), '%width' => $width, '%height' => $height, '%src' => $src, '%image-class' => $class));

Wordpress 2.0.1 Released

Yes, of course it's all the rage, but WordPress 2.0.1 has been released. I just did an upgrade, it's painless. It also appears that file uploading has been fixed, so using an external editor is possible, which is nice!

Ecto is an interesting piece of software that allows an user to do publication via a nicely designed app, with integration for iTunes and iPhoto, another nice feature. Now that the XMLRPC bugs in WordPress appear to be fixed, it seems like it integrates rather seamlessly.

Syndicate content