=================================================================== RCS file: /cvs/todotxt/Text-Todo-REST-API/lib/Text/Todo/REST/API.pm,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- todotxt/Text-Todo-REST-API/lib/Text/Todo/REST/API.pm 2010/01/26 06:03:11 1.16 +++ todotxt/Text-Todo-REST-API/lib/Text/Todo/REST/API.pm 2010/01/31 03:10:39 1.17 @@ -1,6 +1,6 @@ package Text::Todo::REST::API; -# $AFresh1: API.pm,v 1.15 2010/01/26 05:47:30 andrew Exp $ +# $AFresh1: API.pm,v 1.16 2010/01/26 06:03:11 andrew Exp $ use warnings; use strict; @@ -104,10 +104,7 @@ } if ( $options{action} eq 'entry' && @{ $options{args} } ) { - $options{entry} = shift @{ $options{args} }; - if ( @{ $options{args} } ) { - $options{action} .= q{_} . lc shift @{ $options{args} }; - } + $options{action} .= q{_} . lc shift @{ $options{args} }; } push @{ $options{args} }, @args; @@ -163,8 +160,9 @@ my ( $self, $path ) = @_; my %options = ( + action => 'files', list => undef, - action => undef, + entry => undef, args => [], ); @@ -175,24 +173,15 @@ $options{format} = $1; } - ( $options{list}, $options{action}, @{ $options{args} } ) = split '/', + ( $options{list}, $options{entry}, @{ $options{args} } ) = split '/', $path; if ( $options{list} ) { - $options{action} ||= 'list'; - - my $list = $options{list}; - - if ( ( lc $options{list} ) eq 'files' ) { - $options{action} = lc $list; - $list = q{}; - } - - $options{list} = $list; + $options{action} = 'list'; } - if ( @{ $options{args} } && ( lc $options{args}[0] ) eq 'entry' ) { - $options{action} = lc shift @{ $options{args} }; + if ( $options{entry} ) { + $options{action} = 'entry'; } return %options;