From 99536b415331169cef8f26edc6a2832b83418774 Mon Sep 17 00:00:00 2001 From: Andrew Chilton Date: Sun, 20 Apr 2008 08:48:39 +1200 Subject: [PATCH] Added command 'summary' --- bin/cil | 53 ++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 44 insertions(+), 9 deletions(-) diff --git a/bin/cil b/bin/cil index 7b104e8..13329d3 100755 --- a/bin/cil +++ b/bin/cil @@ -14,6 +14,7 @@ use File::Basename; my $COMMANDS = { init => 1, list => 1, + summary => 1, add => 1, show => 1, edit => 1, @@ -54,9 +55,12 @@ EOF init($path); } elsif ( $command eq 'list' ) { - my ($issue_name) = @ARGV; list(); + } + elsif ( $command eq 'summary' ) { + summary(); + } elsif ( $command eq 'show' ) { my ($issue_name) = @ARGV; @@ -122,21 +126,28 @@ sub init { sub list { check_paths(); - my @issues; - # find all the issues - my @filenames = ; - foreach my $filename ( sort @filenames ) { - push @issues, CIL::Issue->new_load_issue( basename($filename, '.yaml') ); - } - @issues = sort { $a->Inserted cmp $b->Inserted } @issues; + my $issues = get_all_issues(); separator(); - foreach my $issue ( @issues ) { + foreach my $issue ( @$issues ) { display_issue_short($issue); } separator(); } +sub summary { + check_paths(); + + # find all the issues + my $issues = get_all_issues(); + separator(); + title('Summary'); + foreach my $issue ( @$issues ) { + display_issue_summary($issue); + } + separator(); +} + sub show { my ($issue_name) = @_; @@ -275,9 +286,33 @@ sub check_paths { } } +sub get_all_issues { + my @issues; + my @filenames = ; + foreach my $filename ( sort @filenames ) { + push @issues, CIL::Issue->new_load_issue( basename($filename, '.yaml') ); + } + @issues = sort { $a->Inserted cmp $b->Inserted } @issues; + return \@issues; +} + ## ---------------------------------------------------------------------------- # input/output +sub display_issue_summary { + my ($issue) = @_; + + my $msg = $issue->Name; + $msg .= "\t"; + $msg .= $issue->Status; + $msg .= "\t"; + $msg .= $issue->CreatedBy; + $msg .= "\t"; + $msg .= $issue->Summary; + + msg($msg); +} + sub display_issue_short { my ($issue) = @_; -- 2.39.5