var ExpandoList = Class.create({
	initialize: function( element ) {
		this.element = $(element);
		this.handler = this.handleClick.bind( this );
		this.element.observe( 'click', this.handler );
	},

	handleClick: function( e ) {
		 var element = e.element();
		 if ( 'A' == element.tagName ) {
			 return;
		 }

		 if ( !element.hasClassName( 'toggle' ) ) {
			 element = element.ancestors().find( function( elt ) {
				 return elt.hasClassName( 'toggle' );
			 });
		 }
		 if ( element.hasClassName( 'expanded' ) ) {
			 element.removeClassName( 'expanded' );
			 element.addClassName( 'collapsed' );
			 expando = element.descendants().find( function( elt ) {
				 return elt.hasClassName( 'blog-expando' );
			 });
			 expando.update( '&#9658; ' );
		 } else {
			 element.removeClassName( 'collapsed' );
			 element.addClassName( 'expanded' );
			 expando = element.descendants().find( function( elt ) {
				 return elt.hasClassName( 'blog-expando' );
			 });
			 expando.update( '&#9660; ' );
		 }
	}
});
