module Qiita::NekosogiStocker
Constants
- PAGE_UNIT
- VERSION
Public Class Methods
stock(user_id, debug_not_stock = false)
click to toggle source
# File lib/qiita_nekosogi_stocker/qiita_nekosogi_stocker.rb, line 8 def stock(user_id, debug_not_stock = false) Dotenv.load client = Qiita::Client.new(access_token: ENV['access_token']) page = 1 ltsvs = [] loop { response = client.list_user_items(user_id, per_page: PAGE_UNIT, page: page) response.body.each do |item| next if stock?(client, item['id']) client.stock_item(item['id']) unless debug_not_stock ltsvs = append_ltsvs(ltsvs, item) end page += 1 break unless response.next_page_url } return '' if ltsvs.size == 0 ltsvs.map { |e|"title: #{e[:title]} url: #{e[:url]}" }.join("\n") end
Private Class Methods
append_ltsvs(ltsvs, item)
click to toggle source
# File lib/qiita_nekosogi_stocker/qiita_nekosogi_stocker.rb, line 34 def append_ltsvs(ltsvs, item) ltsv = {} ltsv[:id] = item['id'] ltsv[:title] = item['title'] ltsv[:url] = item['url'] ltsvs << ltsv ltsvs end
stock?(client, item_id)
click to toggle source
# File lib/qiita_nekosogi_stocker/qiita_nekosogi_stocker.rb, line 29 def stock?(client, item_id) response = client.get_item_stock(item_id) response.status == 204 end