NAME
    Net::Hiveminder - Perl interface to hiveminder.com

VERSION
    Version 0.05 released 17 Mar 08

SYNOPSIS
        use Net::Hiveminder;
        my $hm = Net::Hiveminder->new(use_config => 1);
        print $hm->todo;
        $hm->create_task("Boy these pretzels are making me thirsty [due tomorrow]");

DESCRIPTION
    Hiveminder is a collaborate todo list organizer, built with Jifty.

    This module uses Hiveminder's REST API to let you manage your tasks any
    way you want to.

    This module is built on top of Net::Jifty. Consult that module's
    documentation for the lower-level interface.

  display_tasks [ARGS], TASKS
    This will take a list of hash references, "TASKS", and convert each to a
    human-readable form.

    In scalar context it will return the readable forms of these tasks
    joined by newlines.

    Passing options into this is somewhat tricky, because tasks are
    currently regular hashes. You may pass arguments to this method as such:

        $hm->display_tasks([arg1 => 'val1', arg2 => 'val2'], @tasks)

    The arguments currently respected are:

    linkify_locator
        Make the record locator ("#foo") into an HTML link, pointing to the
        task on "site".

  get_tasks ARGS
    Runs a search with "ARGS" for tasks. There are no defaults here, so this
    can be used for anything.

    Returns a list of hash references, each one being a task. Use
    "display_tasks" if necessary.

  todo_tasks [ARGS]
    Returns a list of hash references, each one a task. This uses the same
    query that the home page of Hiveminder uses. The optional "ARGS" will be
    passed as well so you can narrow down your todo list.

  todo [ARGS]
    Returns a list of tasks in human-readable form. The optional "ARGS" will
    be passed as well so you can narrow down your todo list.

    In scalar context it will return the concatenation of the tasks.

  create_task SUMMARY, ARGS
    Creates a new task with "SUMMARY". You may also specify arguments such
    as what tags the task will have.

  read_task LOCATOR
    Load task "LOCATOR".

  update_task LOCATOR, ARGS
    Update task "LOCATOR" with "ARGS".

  delete_task LOCATOR
    Delete task "LOCATOR".

  bulk_update ARGS
    Bulk-updates the given tasks. You can pass tasks in with one or more of
    the following:

    tasks
        An array reference of task hashes or locators, or a space-delimited
        string of locators.

    ids An array reference or space-delimited string of task IDs.

  complete_tasks TASKS
    Marks the list of tasks or locators as complete.

  braindump TEXT[, ARGS]
    Braindumps "TEXT".

    Optional arguments:

    tokens => string | arrayref
        tokens may be used to provide default attributes to all the
        braindumped tasks (this is part of what the filter feature of
        Hiveminder's IM bot does).

    returns => 'ids' | 'tasks'
        Return the affected task IDs, or the tasks themselves, instead of a
        summary of the changes made.

  upload_text TEXT
    Uploads "TEXT" to BTDT::Action::UploadTasks.

  upload_file FILENAME
    Uploads "FILENAME" to BTDT::Action::UploadTasks.

  download_text
    Downloads your tasks. This also gets the metadata so that you can edit
    the text and upload it, and it'll make the same changes to your task
    list.

    This does not currently accept query arguments, because Hiveminder
    expects a "/not/owner/me/group/personal" type argument string, when all
    we can produce is "owner_not => 'me', group => 'personal'"

  download_file FILENAME
    Downloads your tasks and puts them into "FILENAME".

    This does not currently accept query arguments, because Hiveminder
    expects a "/not/owner/me/group/personal" type argument string, when all
    we can produce is "owner_not => 'me', group => 'personal'"

  priority (NUMBER | TASK) -> Maybe String
    Returns the "word" of a priority. One of: lowest, low, normal, high,
    highest. If the priority is out of range, "undef" will be returned.

  done LOCATORS
    Marks the given tasks as complete.

  loc2id (LOCATOR|TASK)s -> IDs
    Transforms the given record locators (or tasks) to regular IDs.

  id2loc IDs -> LOCATORs
    Transform the given IDs into record locators.

  comments_on TASK -> (String)s
    Returns a list of the comments on the given task.

  comment_on TASK, MESSAGE
    Add a comment to TASK.

    This method requires Email::Simple::Creator, which is an optional
    dependency of Net::Hiveminder. If Creator is unavailable, then this will
    throw an error.

SEE ALSO
    Jifty, Net::Jifty

AUTHOR
    Shawn M Moore, "<sartak at bestpractical.com>"

BUGS
    Please report any bugs or feature requests to "bug-net-hiveminder at
    rt.cpan.org", or through the web interface at
    <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Net-Hiveminder>.

COPYRIGHT & LICENSE
    Copyright 2007 Best Practical Solutions.

    This program is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself.