aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Leech-Pepin <jonathan.leechpepin@gmail.com>2014-11-20 13:18:44 -0500
committerJonathan Leech-Pepin <jonathan.leechpepin@gmail.com>2014-11-20 13:18:44 -0500
commite63d08fe75cff6e4b713a477408203351cc14e57 (patch)
tree989a586aaab421ba17d701858ec1e572f5a4148b
parent6b94d5f8c2c5b187a458c1256d9b496a0378770f (diff)
Uses of `sx-method-call` have been updated to use new format.
sx-question now includes 2 authentication requiring parameters, `question.upvoted` and `question.downvoted`. These will only be used if access token exists. sx-favorites still uses site-workaround pending #82.
-rw-r--r--sx-favorites.el8
-rw-r--r--sx-networks.el9
-rw-r--r--sx-question.el20
-rw-r--r--sx-site.el7
4 files changed, 24 insertions, 20 deletions
diff --git a/sx-favorites.el b/sx-favorites.el
index 3aa96dd..55ebf49 100644
--- a/sx-favorites.el
+++ b/sx-favorites.el
@@ -55,10 +55,10 @@ Added as hook to initialization."
(defun sx-favorites--retrieve-favorites (site)
"Obtain list of starred QUESTION_IDs for SITE."
- (sx-method-call (format "me/favorites?site=%s" site)
- nil
- sx-favorite-list-filter
- 'warn))
+ (sx-method-call 'me
+ :submethod (format "favorites?site=%s" site)
+ :filter sx-favorite-list-filter
+ :auth 'warn))
(defun sx-favorites--update-site-favorites (site)
"Update list of starred QUESTION_IDs for SITE.
diff --git a/sx-networks.el b/sx-networks.el
index 755d62c..ff5a630 100644
--- a/sx-networks.el
+++ b/sx-networks.el
@@ -67,10 +67,11 @@ If cache is not available, retrieve current data."
Sets cache and then uses `sx-network--get-associated' to update
the variables."
(sx-cache-set 'network-user
- (sx-method-call "me/associated"
- '((types . (main_site meta_site)))
- sx-network--user-filter
- 'warn))
+ (sx-method-call 'me
+ :submethod 'associated
+ :keywords '((types . (main_site meta_site)))
+ :filter sx-network--user-filter
+ :auth 'warn))
(sx-network--get-associated))
(defun sx-network--initialize ()
diff --git a/sx-question.el b/sx-question.el
index 972e9d9..d040bad 100644
--- a/sx-question.el
+++ b/sx-question.el
@@ -35,6 +35,8 @@
question.last_editor
question.accepted_answer_id
question.link
+ question.upvoted
+ question.downvoted
user.display_name
comment.owner
comment.body_markdown
@@ -50,18 +52,18 @@
"Get the page PAGE of questions from SITE."
(mapcar
(lambda (question) (cons (cons 'site site) question))
- (sx-method-call
- "questions"
- `((site . ,site)
- (page . ,page))
- sx-question-browse-filter)))
+ (sx-method-call 'questions
+ :keywords `((page . ,page))
+ :site site
+ :auth t
+ :filter sx-question-browse-filter)))
(defun sx-question-get-question (site id)
"Get the question ID from SITE."
- (let ((res (sx-method-call
- (format "questions/%s" id)
- `((site . ,site))
- sx-question-browse-filter)))
+ (let ((res (sx-method-call 'questions
+ :id id
+ :site site
+ :filter sx-question-browse-filter)))
(if (vectorp res)
(elt res 0)
(error "Couldn't find question %S in %S" id site))))
diff --git a/sx-site.el b/sx-site.el
index 6bef91f..6928ea8 100644
--- a/sx-site.el
+++ b/sx-site.el
@@ -48,9 +48,10 @@
(defun sx-site--get-site-list ()
(sx-cache-get
'site-list
- '(sx-method-call
- "sites" '((pagesize . 999))
- sx-site-browse-filter)))
+ '(sx-method-call 'sites
+ :keywords '((pagesize . 999))
+ :filter sx-site-browse-filter
+ :auth 'warn)))
(defcustom sx-site-favorites
nil