#set( $jira = $xmlrpc.connect("swizzletester:swizzle","http://jira.codehaus.org/rpc/xmlrpc") )
#set( $projects = $jira.getProjects().matches("name", "Maven 2.*Plugin") )

        
#foreach( $project in $projects )
#set( $url = "http://jira.codehaus.org/secure/IssueNavigator.jspa?view=rss&&pid=${project.id}&status=1&sorter/field=issuekey&sorter/order=DESC&tempMax=100&reset=true&decorator=none" )
#set( $jirarss = $rss.fetch( $url ) )
#set( $project.attributes.totalVotes = $jirarss.issues.sum("votes") )
## keep the issues in case you want them later
#set( $project.attributes.issues = $jirarss.issues )
#end

#foreach( $project in $projects.descending("@totalVotes") )
  $project.attributes.totalVotes  $project.name
#foreach( $issue in $project.attributes.issues.descending("votes") )
    ($issue.votes)  $issue.key $issue.summary
#end

#end
