Sha256: a5a8da7f3d30a74b03d3dbde029cad029958a7d4d5ada376bf6812e7d386cb85
Contents?: true
Size: 1.57 KB
Versions: 1
Compression:
Stored size: 1.57 KB
Contents
module DiscourseApi module API module Categories # :color and :text_color are RGB hexadecimal strings # :permissions is a hash with the group name and permission_type which is # an integer 1 = Full 2 = Create Post 3 = Read Only def create_category(args={}) args = API.params(args) .required(:name, :color, :text_color) .optional(:description, :permissions) .default(parent_category_id: nil) response = post("/categories", args) response['category'] end def categories(params={}) response = get('/categories.json', params) response[:body]['category_list']['categories'] end def category_latest_topics(args={}) params = API.params(args) .required(:category_slug) .optional(:page).to_h url = "/c/#{params[:category_slug]}/l/latest.json" if params.include?(:page) puts params[:page] url = "#{url}?page=#{params[:page]}" end response = get(url) response[:body]['topic_list']['topics'] end def category_top_topics(category_slug) response = get("/category/#{category_slug}/l/top.json") response[:body]['topic_list']['topics'] end def category_new_topics(category_slug) response = get("/category/#{category_slug}/l/new.json") response[:body]['topic_list']['topics'] end def category(id) response = get("/c/#{id}/show") response.body['category'] end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
discourse_api-0.5.0 | lib/discourse_api/api/categories.rb |