Gravatar Zend Framework View Helper

I have worked on a Zend Framework these past couple of days and needed the ability to display a users avatar. This is easy by using Automattic’s gravatar project. The easiest way to add a users avatar is to use a (this) view helper. Basically in your view you just pass the user’s email address and a desired size and your all set. Make sure in the view helper you specify the default image if the user doesn’t have an avatar to display.

You can download the source here. Comments and improvements are always welcome.

<?php
/**
 *
 * @author Shaun Farrell
 * @version 1.0
 */
require_once 'Zend/View/Interface.php';

/**
 * Gravatar helper
 *
 * @uses viewHelper Zend_View_Helper
 */
class Zend_View_Helper_Gravatar {

	/**
	 * @var Zend_View_Interface
	 */
	public $view;
	/**
	 *
	 * @var unknown_type
	 */
	protected $_gravatarUrl = "http://www.gravatar.com/avatar.php?";
	/**
	 *
	 * @var unknown_type
	 */
	protected $_defaultImage = "http://everquest.allakhazam.com/pgfx/item_576.png";

	/**
	 *
	 * @param $emailAddress
	 * @param $size
	 * @param $imgAlt
	 */
	public function gravatar($emailAddress, $size = "40", $imgAlt = "")
	{
		$gravatarId = "gravatar_id=" . md5(strtolower(trim($emailAddress)));
		$url = $this->_gravatarUrl . $gravatarId . "&default=" . urlencode($this->_defaultImage) .
			"&size=" . $size;

		echo "<img src=\"$url\" alt=\"$imgAlt\" />";
		return null;
	}

	/**
	 * Sets the view field
	 * @param $view Zend_View_Interface
	 */
	public function setView(Zend_View_Interface $view) {
		$this->view = $view;
	}
}

After the Deadline (AtD)

Yesterday I had the great opportunity to here Raphael Mudge the creator of AtD present After the Deadline at DC PHP.  Below is a recording of the talk.  I hope to write some more about AtD after I play around with it more.