gsmetrics 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile.lock +12 -11
- data/README.md +2 -2
- data/gsmetrics.gemspec +2 -2
- data/lib/gsmetrics/gsmetrics.rb +16 -10
- metadata +6 -8
data/Gemfile.lock
CHANGED
@@ -1,29 +1,30 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
gsmetrics (0.1.
|
5
|
-
|
4
|
+
gsmetrics (0.1.1)
|
5
|
+
google_drive (~> 0.3.1)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
specs:
|
9
|
-
|
10
|
-
faraday (0.7.6)
|
11
|
-
addressable (~> 2.2)
|
9
|
+
faraday (0.8.2)
|
12
10
|
multipart-post (~> 1.1)
|
13
|
-
|
14
|
-
google-spreadsheet-ruby (0.2.1)
|
11
|
+
google_drive (0.3.1)
|
15
12
|
nokogiri (>= 1.4.4, != 1.5.2, != 1.5.1)
|
16
13
|
oauth (>= 0.3.6)
|
17
14
|
oauth2 (>= 0.5.0)
|
18
15
|
httpauth (0.1)
|
19
|
-
|
16
|
+
jwt (0.1.5)
|
17
|
+
multi_json (>= 1.0)
|
18
|
+
multi_json (1.3.6)
|
20
19
|
multipart-post (1.1.5)
|
21
|
-
nokogiri (1.5.
|
20
|
+
nokogiri (1.5.5)
|
22
21
|
oauth (0.4.6)
|
23
|
-
oauth2 (0.
|
24
|
-
faraday (~> 0.
|
22
|
+
oauth2 (0.8.0)
|
23
|
+
faraday (~> 0.8)
|
25
24
|
httpauth (~> 0.1)
|
25
|
+
jwt (~> 0.1.4)
|
26
26
|
multi_json (~> 1.0)
|
27
|
+
rack (~> 1.2)
|
27
28
|
rack (1.4.1)
|
28
29
|
|
29
30
|
PLATFORMS
|
data/README.md
CHANGED
@@ -11,8 +11,8 @@ Development was started so we could run a cron job in regular intervals and push
|
|
11
11
|
Create a new GSMetrics Session and a worksheet, then append to it and create as many rows as you like:
|
12
12
|
|
13
13
|
```ruby
|
14
|
-
session = GSMetrics::Session.new("YOUR_GOOGLE_USERNAME, "YOUR_GOOGLE_PASSWORD")
|
15
|
-
session.worksheet "SPREADSHEET_TITLE, "WORKSHEET_TITLE"
|
14
|
+
session = GSMetrics::Session.new("YOUR_GOOGLE_USERNAME", "YOUR_GOOGLE_PASSWORD")
|
15
|
+
session.worksheet "SPREADSHEET_TITLE", "WORKSHEET_TITLE"
|
16
16
|
worksheet << 1
|
17
17
|
worksheet.append(5)
|
18
18
|
worksheet.next_row
|
data/gsmetrics.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = "gsmetrics"
|
3
|
-
s.version = "0.1.
|
3
|
+
s.version = "0.1.1"
|
4
4
|
s.platform = Gem::Platform::RUBY
|
5
5
|
s.authors = ["Florian Motlik"]
|
6
6
|
s.email = ["flo@railsonfire.com"]
|
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
|
|
12
12
|
s.required_rubygems_version = ">= 1.3.6"
|
13
13
|
|
14
14
|
# If you have runtime dependencies, add them here
|
15
|
-
s.add_dependency("
|
15
|
+
s.add_dependency("google_drive", "~> 0.3.1")
|
16
16
|
|
17
17
|
# If you have development dependencies, add them here
|
18
18
|
# s.add_development_dependency "another", "= 0.9"
|
data/lib/gsmetrics/gsmetrics.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require '
|
1
|
+
require 'google_drive'
|
2
2
|
|
3
3
|
module GSMetrics
|
4
4
|
class Session
|
@@ -8,7 +8,7 @@ module GSMetrics
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def worksheet doc_title, worksheet_id
|
11
|
-
Worksheet.new doc_title, worksheet_id,
|
11
|
+
Worksheet.new doc_title, worksheet_id, GoogleDrive.login(@email, @password)
|
12
12
|
end
|
13
13
|
end
|
14
14
|
|
@@ -16,7 +16,9 @@ private
|
|
16
16
|
class Worksheet
|
17
17
|
attr_accessor :check_worksheet_size
|
18
18
|
def initialize doc_title, worksheet_title, session
|
19
|
-
@
|
19
|
+
@doc_title = doc_title
|
20
|
+
@worksheet_title = worksheet_title
|
21
|
+
@session = session
|
20
22
|
@items = []
|
21
23
|
@rows = []
|
22
24
|
end
|
@@ -30,27 +32,31 @@ private
|
|
30
32
|
end
|
31
33
|
|
32
34
|
def next_row
|
33
|
-
@rows << @items
|
35
|
+
@rows << @items
|
34
36
|
@items = []
|
35
37
|
end
|
36
38
|
|
37
39
|
def save row_id = nil
|
38
40
|
next_row
|
39
|
-
row_id ||=
|
41
|
+
row_id ||= worksheet.num_rows + 1
|
40
42
|
|
41
|
-
|
43
|
+
worksheet.max_rows = row_id + @rows.size
|
42
44
|
|
43
45
|
@rows.each_with_index do |items, row_index|
|
44
46
|
items.each_with_index do |item, item_index|
|
45
|
-
|
47
|
+
worksheet[row_id + row_index, item_index + 1] = item
|
46
48
|
end
|
47
49
|
end
|
48
|
-
put "Save failed" unless
|
50
|
+
put "Save failed" unless worksheet.save
|
49
51
|
@items = []
|
50
52
|
end
|
51
53
|
|
52
54
|
def set_worksheet_size size
|
53
|
-
|
55
|
+
worksheet.max_rows = size
|
56
|
+
end
|
57
|
+
|
58
|
+
def worksheet
|
59
|
+
@worksheet ||= @session.spreadsheet_by_title(@doc_title).worksheet_by_title(@worksheet_title)
|
54
60
|
end
|
55
61
|
end
|
56
|
-
end
|
62
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gsmetrics
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,16 +9,16 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-08-21 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
15
|
+
name: google_drive
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.
|
21
|
+
version: 0.3.1
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -26,7 +26,7 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ~>
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: 0.
|
29
|
+
version: 0.3.1
|
30
30
|
description: Simple Way to open a Session with Google Docs and push data into a Google
|
31
31
|
Spreadsheet Worksheet. We use it primarily for metrics, but it can be used for basically
|
32
32
|
anything regarding google spreadsheets.
|
@@ -58,9 +58,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
58
58
|
- - ! '>='
|
59
59
|
- !ruby/object:Gem::Version
|
60
60
|
version: '0'
|
61
|
-
segments:
|
62
|
-
- 0
|
63
|
-
hash: 2891853343761736090
|
64
61
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
65
62
|
none: false
|
66
63
|
requirements:
|
@@ -74,3 +71,4 @@ signing_key:
|
|
74
71
|
specification_version: 3
|
75
72
|
summary: Gem for pushing data to Google Docs
|
76
73
|
test_files: []
|
74
|
+
has_rdoc:
|