From 74d577e7015aea1b4ceb1f83aab54c29d1924b0b Mon Sep 17 00:00:00 2001 From: jluehrs2 Date: Fri, 9 May 2008 03:43:16 -0500 Subject: add decline --- lib/App/Hiveminder/Command/Decline.pm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 lib/App/Hiveminder/Command/Decline.pm diff --git a/lib/App/Hiveminder/Command/Decline.pm b/lib/App/Hiveminder/Command/Decline.pm new file mode 100644 index 0000000..da34aac --- /dev/null +++ b/lib/App/Hiveminder/Command/Decline.pm @@ -0,0 +1,32 @@ +#!/usr/bin/perl +package App::Hiveminder::Command::Decline; +use Moose; +use App::Hiveminder::Utils qw/parse_args display_tasks/; +extends 'App::Hiveminder::Command'; + +=head2 NAME + +App::Hiveminder::Command::Decline - Decline offered tasks + +=cut + +sub command_names { qw/decline/ } + +sub command { + my $self = shift; + + return unless @_ > 0; + my $ret = ''; + for my $task ($hm->get_tasks(%{ parse_args @_ })) { + my $updated_task = $hm->update_task($task, accepted => 0); + # we get a task hash with each field undef if it succeeds + if (!defined $updated_task->{id}) { + $ret .= "Declined " . display_tasks($task) . "\n"; + } + } + + return $ret; +} + +__PACKAGE__->meta()->make_immutable(); +1; -- cgit v1.2.3