Sha256: e9319faf2746fe739631c3e78c20fb13062cffc6ecd4c883cc6b9832d77c8601
Contents?: true
Size: 998 Bytes
Versions: 1
Compression:
Stored size: 998 Bytes
Contents
module GSheets module V3 class SpreadSheet def initialize(session:, id:) @id = id @session = session end def worksheets list_work_sheets.keys.map do |title| WorkSheet.new(session: @session, id: @id, grid_id: list_work_sheets[title]) end end private def list_work_sheets result = {} document["feed"]["entry"].each do |e| result[get_title(e)] = get_grid_id_from_link(e["link"]) end result end def document JSON.parse(@session.get_worksheets(id: @id).body) end def get_title(entry) entry["title"]["$t"] end def get_self_link(link) link.select { |l| l["rel"] == "self" }.first["href"] end def get_grid_id(self_link) self_link.split("/").last end def get_grid_id_from_link(link) self_link = get_self_link(link) get_grid_id(self_link) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
g_sheets-0.2.0 | lib/g_sheets/v3/spread_sheet.rb |