bitballoon 0.0.3 → 0.0.4
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 +1 -1
- data/README.md +63 -9
- data/lib/bitballoon.rb +2 -3
- data/lib/bitballoon/file.rb +0 -2
- data/lib/bitballoon/model.rb +3 -1
- data/lib/bitballoon/site.rb +16 -1
- data/lib/bitballoon/snippet.rb +5 -0
- data/lib/bitballoon/snippets.rb +7 -0
- data/lib/bitballoon/submission.rb +1 -1
- data/lib/bitballoon/version.rb +1 -1
- metadata +3 -1
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -51,91 +51,145 @@ Sites
|
|
51
51
|
|
52
52
|
Getting a list of all sites you have access to:
|
53
53
|
|
54
|
+
```ruby
|
54
55
|
bitballoon.sites.each do |site|
|
55
56
|
puts site.url
|
56
57
|
end
|
58
|
+
```
|
57
59
|
|
58
60
|
Getting a specific site by id:
|
59
61
|
|
62
|
+
```ruby
|
60
63
|
site = bitballoon.sites.get(id)
|
64
|
+
```
|
61
65
|
|
62
66
|
Creating a site from a directory:
|
63
67
|
|
68
|
+
```ruby
|
64
69
|
site = bitballoon.sites.create(:dir => "/tmp/my-site")
|
70
|
+
```
|
65
71
|
|
66
72
|
Creating a site from a zip file:
|
67
73
|
|
74
|
+
```ruby
|
68
75
|
site = bitballoon.sites.create(:zip => "/tmp/my-site.zip")
|
76
|
+
```
|
69
77
|
|
70
78
|
Both methods will create the site and upload the files. The site will then be processing.
|
71
79
|
|
80
|
+
```ruby
|
72
81
|
site.state == "processing"
|
73
82
|
site.processing? == true
|
83
|
+
```
|
74
84
|
|
75
85
|
Refresh a site to update the state:
|
76
86
|
|
87
|
+
```ruby
|
77
88
|
site.refresh
|
89
|
+
```
|
78
90
|
|
79
91
|
Use `wait_until_ready` to wait until a site has finished processing.
|
80
92
|
|
93
|
+
```ruby
|
81
94
|
site = bitballoon.sites.create(:dir => "/tmp/my-site")
|
82
95
|
site.wait_for_ready
|
83
96
|
site.state == "ready"
|
97
|
+
```
|
84
98
|
|
85
99
|
Update the name of the site (its subdomain), the custom domain and the notification email for form submissions:
|
86
100
|
|
87
|
-
|
101
|
+
```ruby
|
102
|
+
site.update(:name => "my-site", :custom_domain => "www.example.com", :notification_email => "me@example.com")
|
103
|
+
```
|
88
104
|
|
89
105
|
Deleting a site:
|
90
106
|
|
107
|
+
```ruby
|
91
108
|
site.destroy!
|
109
|
+
```
|
92
110
|
|
93
111
|
Forms
|
94
112
|
=====
|
95
113
|
|
96
114
|
Access all forms you have access to:
|
97
115
|
|
98
|
-
|
116
|
+
```ruby
|
117
|
+
bitballoon.forms.all
|
118
|
+
```
|
99
119
|
|
100
120
|
Access forms for a specific site:
|
101
121
|
|
122
|
+
```ruby
|
102
123
|
site = bitballoon.sites.get(id)
|
103
|
-
site.forms
|
104
|
-
|
124
|
+
site.forms.all
|
125
|
+
```
|
126
|
+
|
105
127
|
Access a specific form:
|
106
128
|
|
129
|
+
```ruby
|
107
130
|
form = bitballoon.forms.get(id)
|
131
|
+
```
|
108
132
|
|
109
133
|
Access a list of all form submissions you have access to:
|
110
134
|
|
111
|
-
|
135
|
+
```ruby
|
136
|
+
bitballoon.submissions.all
|
137
|
+
```
|
112
138
|
|
113
139
|
Access submissions from a specific site
|
114
140
|
|
141
|
+
```ruby
|
115
142
|
site = bitballoon.sites.get(id)
|
116
|
-
site.submissions
|
143
|
+
site.submissions.all
|
144
|
+
```
|
117
145
|
|
118
146
|
Access submissions from a specific form
|
119
147
|
|
148
|
+
```ruby
|
120
149
|
form = bitballoon.forms.get(id)
|
121
|
-
form.submissions
|
150
|
+
form.submissions.all
|
151
|
+
```
|
122
152
|
|
123
153
|
Get a specific submission
|
124
154
|
|
155
|
+
```ruby
|
125
156
|
bitballoon.submissions.get(id)
|
157
|
+
```
|
126
158
|
|
127
159
|
Files
|
128
160
|
=====
|
129
161
|
|
130
162
|
Access all files in a site:
|
131
163
|
|
164
|
+
```ruby
|
132
165
|
site = bitballoon.sites.get(id)
|
133
|
-
site.files
|
166
|
+
site.files.all
|
167
|
+
```
|
134
168
|
|
135
169
|
Get a specific file:
|
136
170
|
|
171
|
+
```ruby
|
137
172
|
file = site.files.get(path) # Example paths: "/css/main.css", "/index.html"
|
173
|
+
```
|
138
174
|
|
139
175
|
Reading a file:
|
140
176
|
|
141
|
-
|
177
|
+
```ruby
|
178
|
+
file.read
|
179
|
+
```
|
180
|
+
|
181
|
+
Snippets
|
182
|
+
========
|
183
|
+
|
184
|
+
Snippets are small code snippets injected into all HTML pages of a site right before the closing head or body tag. To get all snippets for a site:
|
185
|
+
|
186
|
+
```ruby
|
187
|
+
site = bitballoon.sites.get(id)
|
188
|
+
site.snippets.all
|
189
|
+
```
|
190
|
+
|
191
|
+
Get a specific snippet
|
192
|
+
|
193
|
+
```ruby
|
194
|
+
site.snippets.get(0)
|
195
|
+
```
|
data/lib/bitballoon.rb
CHANGED
data/lib/bitballoon/file.rb
CHANGED
data/lib/bitballoon/model.rb
CHANGED
@@ -32,7 +32,9 @@ module BitBalloon
|
|
32
32
|
|
33
33
|
def process(attributes)
|
34
34
|
self.class.fields.each do |field|
|
35
|
-
|
35
|
+
if attributes.has_key?(field) || attributes.has_key?(field.to_s)
|
36
|
+
@attributes[field] = attributes[field] || attributes[field.to_s]
|
37
|
+
end
|
36
38
|
end
|
37
39
|
self
|
38
40
|
end
|
data/lib/bitballoon/site.rb
CHANGED
@@ -40,7 +40,9 @@ module BitBalloon
|
|
40
40
|
end
|
41
41
|
|
42
42
|
def update(attributes)
|
43
|
-
|
43
|
+
response = client.request(:put, path, :body => mutable_attributes(attributes))
|
44
|
+
process(response.parsed)
|
45
|
+
self
|
44
46
|
end
|
45
47
|
|
46
48
|
def destroy!
|
@@ -59,5 +61,18 @@ module BitBalloon
|
|
59
61
|
def files
|
60
62
|
Files.new(client, path)
|
61
63
|
end
|
64
|
+
|
65
|
+
def snippets
|
66
|
+
Snippets.new(client, path)
|
67
|
+
end
|
68
|
+
|
69
|
+
private
|
70
|
+
def mutable_attributes(attributes)
|
71
|
+
Hash[*[:name, :custom_domain, :notification_email].map {|key|
|
72
|
+
if attributes.has_key?(key) || attributes.has_key?(key.to_s)
|
73
|
+
[key, attributes[key] || attributes[key.to_s]]
|
74
|
+
end
|
75
|
+
}.compact.flatten]
|
76
|
+
end
|
62
77
|
end
|
63
78
|
end
|
data/lib/bitballoon/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bitballoon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -116,6 +116,8 @@ files:
|
|
116
116
|
- lib/bitballoon/model.rb
|
117
117
|
- lib/bitballoon/site.rb
|
118
118
|
- lib/bitballoon/sites.rb
|
119
|
+
- lib/bitballoon/snippet.rb
|
120
|
+
- lib/bitballoon/snippets.rb
|
119
121
|
- lib/bitballoon/submission.rb
|
120
122
|
- lib/bitballoon/submissions.rb
|
121
123
|
- lib/bitballoon/version.rb
|