Sha256: 4b8b302c9e2365976564df40c312d2d7c93fc0528c02972feb3a5ede89c0f637
Contents?: true
Size: 1.59 KB
Versions: 1
Compression:
Stored size: 1.59 KB
Contents
module DiscourseApi module API module Topics # :category OPTIONAL name of category, not ID # :skip_validations OPTIONAL boolean # :auto_track OPTIONAL boolean def create_topic(args={}) args = API.params(args) .required(:title, :raw) .optional(:skip_validations, :category, :auto_track) post("/posts", args.to_h) end def latest_topics(params={}) response = get('/latest.json', params) response[:body]['topic_list']['topics'] end def new_topics(params={}) response = get("/new.json", params) response[:body]['topic_list']['topics'] end def rename_topic(topic_id, title) put("/t/#{topic_id}.json", { topic_id: topic_id, title: title }) end def recategorize_topic(topic_id, category_id) put("/t/#{topic_id}.json", { topic_id: topic_id, category_id: category_id }) end def topic(id, params={}) response = get("/t/#{id}.json", params) response[:body] end def topics_by(username, params={}) response = get("/topics/created-by/#{username}.json", params) response[:body]['topic_list']['topics'] end def delete_topic(id) delete("/t/#{id}.json") end def topic_posts(topic_id, post_ids=[]) url = "/t/#{topic_id}/posts.json" if posts_ids.count > 0 url << '?' post_ids.each do |id| url << "post_ids[]=#{id}&" end end response = get(url) response[:body] end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
discourse_api-0.6.0 | lib/discourse_api/api/topics.rb |