aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArtur Malabarba <bruce.connor.am@gmail.com>2015-01-15 16:26:36 -0200
committerArtur Malabarba <bruce.connor.am@gmail.com>2015-01-15 16:26:36 -0200
commit94096714aef5088cce1a1c75aadf925e82d82a40 (patch)
treec31bea519c93f8c93d56bc808f2e55afa7c4898e
parenta212dc9a11540446cbdda24cf84387171cb989e7 (diff)
Implement question-get-from-comment
-rw-r--r--sx-question.el20
1 files changed, 20 insertions, 0 deletions
diff --git a/sx-question.el b/sx-question.el
index 1adbc24..35eabc8 100644
--- a/sx-question.el
+++ b/sx-question.el
@@ -72,6 +72,26 @@ If ANSWER-ID doesn't exist on SITE, raise an error."
(error "Couldn't find answer %S in %S"
answer-id site))))
+(defun sx-question-get-from-comment (site comment-id)
+ "Get question from SITE to which COMMENT-ID belongs.
+If COMMENT-ID doesn't exist on SITE, raise an error.
+
+Note this requires two API requests. One for the comment and one
+for the post."
+ (let ((res (sx-method-call 'comments
+ :id comment-id
+ :site site
+ :auth t
+ :filter sx-browse-filter)))
+ (unless (vectorp res)
+ (error "Couldn't find comment %S in %S" comment-id site))
+ (sx-assoc-let (elt res 0)
+ (funcall (if (string= .post_type "answer")
+ #'sx-question-get-from-answer
+ #'sx-question-get-question)
+ .site_par
+ .post_id))))
+
;;; Question Properties