March 2009

20 Mar

Flashy module: 100% open source Flash movie player for Drupal

in drupal, flash, flashy.module, swfembed.module

Yesterday, Crell and I released the Flashy module (http://drupal.org/project/flashy). This module provides Drupal with a fully open source Flash video player. Building on our previous work, we created Flashy using the SWF Embed module.

Interested in just the flash video player? It's also licensed under the GPL, and free for you to use however you want. Check out the official Google project: http://code.google.com/p/flashy/.

18 Mar

jQuery plugin and Drupal module for embedding Flash files

in drupal, javascript, jquery, php, swfembed, swfembed.module

Today, Palantir.net is releasing several module that we built as part of our client work. One of these modules is the SWF Embed module. With this module, developers can create tools that include flash objects.

This module makes use of both PHP code and JavaScript code in order to provide robust Flash integration used in projects like the Flashy Drupal video player. But from a developer's point of view, all you need to do to add Flash support is create an object and theme it. The SWF Embed handbook page describes this process in detail (not that there is a lot to describe).

But there is a hidden gem in there that may come in handy for your non-Drupal sites (if you believe in such a thing).

18 Mar

Precaching images in jQuery: A (slightly) better way

in javascript, jquery, programming

Matt Farina has suggested one method of precaching images using jQuery. But in some applications, this will not give the necessary cache lifetime (at least not in FF3) to warrant the extra network requests. Here, I suggest a slight modification that will make the cache last longer.

XDebug

XDebug

Setting a Breakpoint

Setting a Breakpoint

The MacGDBp Button Bar

The MacGDBp Button Bar

MacDBBp at a Glance

MacDBBp at a Glance

XDebug Example Stack Trace

XDebug Example Stack Trace
16 Mar

Debugging your PHP Code: XDebug on MAMP with TextMate and MacGDBp Support

in macgdbp, pecl, php, querypath, textmate, xdebug

As I see it, there are two major drawbacks to the otherwise-spectacular MAMP (MacOS Apache MySQL, PHP) package (three if you count the funky directory structuring):

  1. The .h files are all missing, so PECL doesn't work very well.
  2. There is no debugger.

The first issue is covered elsewhere. In this article, I will address the second by explaining how to setup XDebug on MAMP. XDebug is one of the two popular PHP debugging engines (With ZendDB being the other).

In this article we will cover the following:

  • Getting and installing XDebug
  • Using XDebug for basic stack tracing
  • Integrating XDebug with TextMate
  • Configuring XDebug and MacGDBp for client/server debugging
  • Using MacGDBp
15 Mar

PHP 5 Runkit for MAMP 1.7.2

in c, kitten.module, mac, mamp, os x, pecl, php, programming, runkit

Ever tried to get PHP's Runkit PECL extension running on the popular MAMP stack for Mac OS X? If you have tried, you will understand why it is difficult. There are two roadblocks that must be overcome before Runkit can be installed.

The first has to do with MAMP itself. While MAMP provides most of the tools that a web developer needs, it is generally incapable of dealing with PECL builds. The reason for this is simple: MAMP does not ship with header files for PHP. That means that extensions built from C source files cannot successfully compile. That is a problem.

The second difficulty has to do with Runkit, which (being basically feature complete) hasn't undergone a major revision in a couple of years. The official released version, in fact, will not run on PHP 5.2. Yes, that is the version that ships with MAMP. To get the fixed version, you will need to check out the latest source code from PHP.net's CVS repository and build it yourself.

Recently, I found a situation that demanded Runkit. (Okay, it might have been a contrived situation.) To accomplish the goal of my project, I built Runkit from source. If you want it, the runkit.so file is attached at the end of this post.

11 Mar

Drupal QueryPath 1.1 Module Released

in drupal, php, querypath


Today the QueryPath 1.1 Drupal module has been released. This module provides Drupal developers with access to the QueryPath library. In addition, it integrates Drupal's database library with QueryPath, making it possible to execute Drupal database queries and feed the results directly into QueryPath.

QueryPath Queries MusicBrainz, an XML Service

QueryPath Queries MusicBrainz, an XML Service

Public Twitter Feed, Fetched from QueryPath

Public Twitter Feed, Fetched from QueryPath

QP Sticky Demo

QP Sticky Demo

QueryPath logo

QueryPath logo
11 Mar

Twitterpated, TweetStock updated

in php, querypath, tweetstock, twitter, twitterpated

Today I uploaded a new version of Twitterpated to the QueryPath.org server. This new version is smaller in (network) size, and has a few minor bug fixes. Also released along with it is TweetStock. TweetStock is a Twitter search client for an iPhone. It's actually a very simple overlay on the official Twitter search page. Check it out at http://querypath.org/tweetstock

Both of these technologies are built on the QueryPath library (http://querypath.org).

03 Mar

Two improvements to CacheExclude

in drupal, php, programming, release

A few days ago, Crell and I released a new version of the CacheExclude module. This module makes it possible for Drupal administers to explicitly exclude pages or URL patterns from the Drupal page cache. With a little judicious use of this tool, you can gain the site-wide performance advantages of the page cache while still allowing those few "problematic" dynamic pages to function properly.

Twitterpated in Safari

Twitterpated supports user icon files, inline Twitpic pictures, arbitrary URLs, and more!

Twitterpated in Safari

Twitterpated

in iphone, javascript, php, querypath, twitterpated

Twitterpated is an iPhone web-based Twitter client. It works in any version of the iPhone or iPod touch. To use Twitterpated, simply open Safari on your iPhone and enter the URL http://querypath.org/tweet. You will be asked to log in. Use your normal Twitter login and password. This information is used only to connect to Twitter. Twitterpated does not keep its own account database.

Twitterpated has the following features: