Recent posts per category loop?

here is a quick one: (edit: I updated some forgotten punctuation).

<?php
/*
Plugin Name: Recent posts per category loop 
Plugin URI: http://en.bainternet.info
Description: answer to http://wordpress.stackexchange.com/questions/16616/recent-posts-per-category-loop
Author: Bainternet
Version: 1.0
Author URI: http://en.bainternet.info
*/

  // Initialization function
  function WP_Widget_display_widget_init() 
  {
    new WP_Widget_display_widget();
  }

  // Your Class
  class WP_Widget_display_widget extends WP_Widget 
  {
    // Constructor
    function WP_Widget_display_widget() 
    {
      $widget_ops = array('description' => __('recent-posts-per-category-loop', 'display_widget'));
      $this->WP_Widget('display_widget', __('Display_widget'), $widget_ops);
    }

    // Display Widget
    function widget($args, $instance) {
        extract($args);
        $title = attribute_escape($instance['title']);
        echo $before_widget.$before_title.$title.$after_title;
        display_widget();
        echo $after_widget;
    }

    // When Widget Control Form Is Posted
    function update($new_instance, $old_instance) 
    {
        if (!isset($new_instance['submit'])) 
        {
            return false;
        }
        $instance = $old_instance;
        $instance['title'] = strip_tags($new_instance['title']);
        return $instance;
    }

    /* Your custom code starts here */
    /* ---------------------------- */

    /* Your Function */
    function display_widget()
    {

      /* Your Code ----------------- */ 

      function display_widget(){
    //only run on home or category
    $args['post_status'] = 'published';
    $args['posts_per_page'] = 5;
    if (is_front_page()||is_home()|| is_category())
        return '';
    if (is_category()){
        $args['cat'] = (int)get_query_var('cat');
    }
    $po = new WP_Query( $args );
    $out="<ul>";
    while ($po->have_posts()){
        $po->the_post();
        $out .= '<li><a href="'. get_permalink($post->ID).'" title="'.get_the_title($post->ID).'">'.get_the_title($post->ID).'</a></li>';


    }
    $out .= '</ul>';
    echo $out;
}



    }
  }


  add_action('widgets_init', 'WP_Widget_display_widget_init');