Chapter Three LLC

Drupal for Firebug

Columbus Day? Drupal Day!

Josh Koenig

Hot on the heels of an awesome BADCamp, we decided to take the holiday of Columbus Day and turn it into a much-needed Drupal Day! A lot got accomplished, and I for one am very happy about the results.

Drupal Dojo

My single greatest personal contribution to the community thus far hasn’t been code, but rather an idea, some video content, and six months worth of organizing. Nearly two years ago, I started the Drupal Dojo to help incoming developers wrap their heads around the open source project we all know and love. Seemed like something that was needed, and it was tons of fun and a great success, but in 2008 I haven’t been able to do nearly as much, and the group has become less active.

But now, with more and more A-list contrib modules ready to roll and a bunch of number of other factors — e.g. Acquia Drupal — on the scene, it feels like the same kind of moment for Drupal 6. I predict explosive growth in the developer community. And so, once again, I’m getting back in the game and will start producing a new set of Dojo lessons starting in November.

6.0 Releases

I also had time to clear out some issues, test some patches, and finally commit some long awaited code. The result is three new Drupal 6.0 module releases:

  • Up/Down: in the spirit of solving obvious problems, this is a solid and serviceable implementation of a plus/minus voting widget for 6.0. With initial code from Greg Hines and awesome token support by dmitrig01, it’s stable, secure and ready to pick up where good old vote_up_down left off. I really hope to turn this into a widget on par with the excellence that is fivestar.
  • Menutrails: officially out for 6.0, this brings some common-sense usability goodness to your Drupal site. Keep navigation menu items active, bread-crumbs under control, and dynamically assign your many nodes to automagically show up under the right primary nav elements.
  • Textile: still my favorite HTML shorthand. This one was easy thanks to trevorwining for the patch that made this possible.
  • OG Panels: not all the way there yet, but my patch to bring this into 6.0 made some real progress this weekend.

But Wait, There’s More!

In other exciting Drupal news, my colleague Jon Skulski got a patch to the 7.0 core marked ready to be committed. It’s really great to see people who only started seriously working with the system in the Summer getting up to the “I kick ass” threshold. Jon brings a lot of skills to the table, and with any luck we’ll be seeing more amazing things from him in the months to come.

Also, I believe we’ve recieved enough positive reviews on the Drupal for Firebug FireFox extension that it can graduate from “experimental” status, which is key for our next release. Still, if you’d like to help us out, write a review so the Mozilla folks will be more inclined to let users install the plugin without first signing up for an account and going through a scary opt-in process.

With jQuery integrated in the 0.0.5 version, we’re now able to do the kind of UI work that’s really needed to make sense of all the data we can dredge out of the system. We’re also set to make asynchronous calls for more information. Basically, we should be able to make DFF the programatic ying to the Theme Developer module’s yang. We hope to make it another invaluable part of the professional Drupal developer’s toolset.

All in all, it’s hard to hope for more from a good Drupal Day. With any luck, these will start to become a regular occurrence around here at Chapter Three!

Drupal for Firebug: Firebug talking Drupal

Matt Cheney


Firebug is a hell of a thing and at Chapter Three we use it regularly - as many others do - to analyze and debug our web development work. It can do things like inspect the HTML, manipulate the CSS, execute and debug Javascript, and monitor site performance and download times. It is so great that we wished it spoke Drupal and knew our name - kind of like the cute girl at the dance. Things get a little better when people know your name.

It is in that spirit that that Drupal for Firebug was developed as a way to extend the capabilities of Firebug by mixing in a little Drupal. Drupal for Firebug is both a FireFox Extension and a Drupal Module. To celebrate Drupalcon Szeged there are now releases for both Drupal 5 and Drupal 6 available. Get the extension and download the module, check our the test and demonstration site, and watch the drupal magic happen right in your Firebug window:

With a copy of the module and the Firefox extension installed, a developer can see debug messages, examine the SQL query log (with Devel module), look at how a Drupal page load is handling a site’s users, views, nodes, and forms, and even execute PHP. The goal of the module and extension is to create a framework for centralizing Drupal development and debugging work using power of Firebug. The major features include:

  • More centralization of web development debugging information by moving that information from Drupal page view into separate Firebug window. This helps to provide a clean separation of development debug information from the rest of the site.
  • Clean and external debugging message text and dumpable PHPs arrays and objects which can be displayed in the Firebug debugging window using the handy firep() function where they can be viewed without disrupting the rest of the page flow. There is also a handy “debug message only” search feature which is helpful in locating specific pieces of information in the debugging output.
  • Integration with the wonderful Devel module is available to provide a Firebug accessible SQL query log. Since the Firebug debugging window can be resized, hidden, or broken out as a separate window, it provides additional options (beyond appending the log to the bottom of the screen) for viewing the SQL query log.
  • Complete information about each user and node and view and form that is accessed during a page load is available. This can be invaluable in determining what Drupal items are being referenced and what $op is being performed on them. There is awareness of the original and modified state of the view and form items and even smart color highlighting to tell you when additions, changes, or deletions have happened to the item during the hook_form_alter or hook_views callbacks.

This is only the initial release of the module and there are plenty of tweaks and improvements to make down the road. The real secret sauce will be figuring out what are the most useful pieces of information to display in the Firebug window and making some important XUL interface improvements to the Firefox Extension to increase usability around the viewing and sorting of debugging data. Think HTML browser style functionality for the User, Form, Node, and View arrays and objects. But for now, at least it speaks our language.

Syndicate content