From 28509899ad4385431a7281c5ac8f703f5d2d6c52 Mon Sep 17 00:00:00 2001 From: Magnus Henoch Date: Thu, 6 Mar 2014 18:54:26 +0000 Subject: [PATCH] Add `pivotal-set-owner' --- README.md | 1 + pivotal-tracker.el | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/README.md b/README.md index 2cc22b7..5b91a89 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,7 @@ or set it manually: ** example: pressing 2 followed by pressing E will assign a **2 pt** estimate for current story * C will prompt for a new comment * S will prompt for new status +* O will prompt for new story owner * T will prompt for a new task * F will mark the task (not the story) under the cursor as finished * + adds a new story diff --git a/pivotal-tracker.el b/pivotal-tracker.el index b815007..050c824 100644 --- a/pivotal-tracker.el +++ b/pivotal-tracker.el @@ -153,6 +153,22 @@ 'pivotal-update-current-story (format "%s" new-state)))) +(defun pivotal-set-owner (new-owner-id) + "set owner for the current story." + (interactive + (let ((member-name-id-alist (pivotal-project->member-name-id-alist *pivotal-current-project*))) + (list (cdr (assoc (completing-read "New owner: " + member-name-id-alist + nil + t + nil + 'pivotal-story-owner-history) + member-name-id-alist))))) + (pivotal-api (pivotal-url "projects" *pivotal-current-project* "stories" (pivotal-story-id-at-point)) + "PUT" + 'pivotal-update-current-story + (format "%s" new-owner-id))) + (defun pivotal-add-comment (comment) "prompt user for comment and add it to the current story" (interactive "sAdd Comment: ") @@ -287,6 +303,7 @@ (define-key pivotal-mode-map (kbd "E") 'pivotal-estimate-story) (define-key pivotal-mode-map (kbd "C") 'pivotal-add-comment) (define-key pivotal-mode-map (kbd "S") 'pivotal-set-status) + (define-key pivotal-mode-map (kbd "O") 'pivotal-set-owner) (define-key pivotal-mode-map (kbd "L") 'pivotal) (define-key pivotal-mode-map (kbd "T") 'pivotal-add-task) (define-key pivotal-mode-map (kbd "+") 'pivotal-add-story)