papercall 0.11.0 → 0.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/papercall/analysis.rb +15 -13
- data/lib/papercall/rest_fetcher.rb +10 -4
- data/lib/papercall/version.rb +1 -1
- data/papercall.gemspec +2 -0
- metadata +30 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5f26c16e050d54577249551aed1a2f49730f3e5e
|
4
|
+
data.tar.gz: ee2e887df4e006967f3e83483c58cec12d217e26
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 59a12802cd6f7562f98f8017af415601547bf74a456b85aec1824d34ebd51857201dcc07ce8c7eb331c499b36ee9ea89148f6e0b3bddca59ab284523eed9fc62
|
7
|
+
data.tar.gz: 819b0049819e300ca868e15a208929a0be9507a3004e4390d23d9e7c79f445399d26a903666df5889e3d1f8103403b5562e40036ab723f0d8333c73a7047ba78
|
data/lib/papercall/analysis.rb
CHANGED
@@ -18,28 +18,30 @@ module Papercall
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def analyze
|
21
|
-
|
21
|
+
startTime = Time.now
|
22
|
+
print "Performing analysis..."
|
22
23
|
@analysis['submissions'].each do |submission|
|
23
24
|
submission["ratings"].each do |rating|
|
24
25
|
unless(@analysis['reviewers'].include?(rating["user"]["name"]))
|
25
26
|
@analysis['reviewers'][rating["user"]["name"]] = [{:id => rating["submission_id"]}]
|
26
27
|
else
|
27
|
-
@analysis['reviewers'][rating['user']['name']]
|
28
|
+
@analysis['reviewers'][rating['user']['name']] << {:id => rating["submission_id"]}
|
28
29
|
end
|
29
30
|
end
|
30
|
-
@analysis['talksWithoutReviews']
|
31
|
-
@analysis['talksWithFourOrMoreReviews']
|
32
|
-
@analysis['talksWithLessThanThreeReviews']
|
33
|
-
@analysis['talksWithoutFeedback']
|
34
|
-
@analysis['highlyRated']
|
35
|
-
@analysis['lowRated']
|
36
|
-
@analysis['maybe']
|
37
|
-
@analysis['accepted']
|
38
|
-
@analysis['waitlist']
|
39
|
-
@analysis['rejected']
|
40
|
-
@analysis['confirmed']
|
31
|
+
@analysis['talksWithoutReviews'] << {:id => submission["id"]} if submission["ratings"].empty?
|
32
|
+
@analysis['talksWithFourOrMoreReviews'] << {:id => submission["id"]} if submission["ratings"].size >= 4
|
33
|
+
@analysis['talksWithLessThanThreeReviews'] << {:id => submission["id"]} if submission["ratings"].size < 3
|
34
|
+
@analysis['talksWithoutFeedback'] << {:id => submission["id"]} if submission["feedback"].empty?
|
35
|
+
@analysis['highlyRated'] << {:id => submission["id"], :submission => submission} if highlyRated? submission
|
36
|
+
@analysis['lowRated'] << {:id => submission["id"], :submission => submission} if lowRated? submission
|
37
|
+
@analysis['maybe'] << {:id => submission["id"], :submission => submission} if maybe? submission
|
38
|
+
@analysis['accepted'] << {:id => submission["id"], :submission => submission} if accepted? submission
|
39
|
+
@analysis['waitlist'] << {:id => submission["id"], :submission => submission} if waitlisted? submission
|
40
|
+
@analysis['rejected'] << {:id => submission["id"], :submission => submission} if rejected? submission
|
41
|
+
@analysis['confirmed'] << {:id => submission["id"], :submission => submission} if confirmed? submission
|
41
42
|
end
|
42
43
|
@analysis['summary'] = summary
|
44
|
+
puts "finished in #{Time.now - startTime} seconds."
|
43
45
|
@analysis
|
44
46
|
end
|
45
47
|
|
@@ -16,7 +16,7 @@ module Papercall
|
|
16
16
|
@declined = []
|
17
17
|
end
|
18
18
|
|
19
|
-
def submission_url(state, per_page:
|
19
|
+
def submission_url(state, per_page: 150)
|
20
20
|
"#{SUBMISSIONS_URL}?state=#{state}&per_page=#{per_page}"
|
21
21
|
end
|
22
22
|
|
@@ -32,8 +32,10 @@ module Papercall
|
|
32
32
|
states = [[:submitted, :accepted, :rejected, :waitlist, :declined]] if states == [[:all]]
|
33
33
|
states.flatten.each do |state|
|
34
34
|
if state
|
35
|
-
|
35
|
+
startTime = Time.now
|
36
|
+
print "Fetching #{state} submissions from PaperCall API..."
|
36
37
|
instance_variable_set("@#{state}", papercall(submission_url(state.to_s)))
|
38
|
+
puts "finished in #{Time.now - startTime} seconds."
|
37
39
|
end
|
38
40
|
end
|
39
41
|
fetch_ratings
|
@@ -41,23 +43,27 @@ module Papercall
|
|
41
43
|
end
|
42
44
|
|
43
45
|
def fetch_ratings
|
44
|
-
|
46
|
+
startTime = Time.now
|
47
|
+
print "Fetching ratings for all submissions from Papercall API..."
|
45
48
|
analysis.each do |submission|
|
46
49
|
unless submission['ratings']
|
47
50
|
ratings_url = "#{SUBMISSIONS_URL}/#{submission['id']}/ratings"
|
48
51
|
submission['ratings'] = papercall(ratings_url)
|
49
52
|
end
|
50
53
|
end
|
54
|
+
puts "finished in #{Time.now - startTime} seconds."
|
51
55
|
end
|
52
56
|
|
53
57
|
def fetch_feedback
|
54
|
-
|
58
|
+
startTime = Time.now
|
59
|
+
print "Fetching feedback for all submissions from Papercall API..."
|
55
60
|
analysis.each do |submission|
|
56
61
|
unless submission['feedback']
|
57
62
|
feedback_url = "#{SUBMISSIONS_URL}/#{submission['id']}/feedback"
|
58
63
|
submission['feedback'] = papercall(feedback_url)
|
59
64
|
end
|
60
65
|
end
|
66
|
+
puts "finished in #{Time.now - startTime} seconds."
|
61
67
|
end
|
62
68
|
end
|
63
69
|
end
|
data/lib/papercall/version.rb
CHANGED
data/papercall.gemspec
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: papercall
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.12.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jørn Ølmheim
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-01-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -148,6 +148,34 @@ dependencies:
|
|
148
148
|
- - ">="
|
149
149
|
- !ruby/object:Gem::Version
|
150
150
|
version: 2.0.2
|
151
|
+
- !ruby/object:Gem::Dependency
|
152
|
+
name: activesupport
|
153
|
+
requirement: !ruby/object:Gem::Requirement
|
154
|
+
requirements:
|
155
|
+
- - "~>"
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: '5.0'
|
158
|
+
type: :runtime
|
159
|
+
prerelease: false
|
160
|
+
version_requirements: !ruby/object:Gem::Requirement
|
161
|
+
requirements:
|
162
|
+
- - "~>"
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: '5.0'
|
165
|
+
- !ruby/object:Gem::Dependency
|
166
|
+
name: i18n
|
167
|
+
requirement: !ruby/object:Gem::Requirement
|
168
|
+
requirements:
|
169
|
+
- - "~>"
|
170
|
+
- !ruby/object:Gem::Version
|
171
|
+
version: 0.9.1
|
172
|
+
type: :runtime
|
173
|
+
prerelease: false
|
174
|
+
version_requirements: !ruby/object:Gem::Requirement
|
175
|
+
requirements:
|
176
|
+
- - "~>"
|
177
|
+
- !ruby/object:Gem::Version
|
178
|
+
version: 0.9.1
|
151
179
|
description: Small client library for the PaperCall API. With some analytics for the
|
152
180
|
submissions.
|
153
181
|
email:
|