reparty 0.1.3 → 0.2.0
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/.travis.yml +6 -0
- data/History.md +4 -0
- data/app/views/report_mailer/_active_record.html.erb +2 -2
- data/app/views/report_mailer/daily.html.erb +49 -12
- data/lib/reparty/report/active_record.rb +2 -0
- data/lib/reparty/report.rb +3 -2
- data/lib/reparty/version.rb +1 -1
- data/spec/report/active_record_spec.rb +10 -9
- data/spec/report_spec.rb +4 -0
- metadata +4 -4
data/.travis.yml
CHANGED
@@ -1,3 +1,9 @@
|
|
1
1
|
language: ruby
|
2
2
|
rvm:
|
3
3
|
- 1.9.3
|
4
|
+
notifications:
|
5
|
+
hipchat:
|
6
|
+
rooms:
|
7
|
+
- secure: "NzBO5IvnxXlCi0mduolO51uDOICzx7kH2ULFFG+YOj8OL8fIFP+n5nETAID8\nmTqjQZBra8gd7s1lCk0H2KOLjuozZHICZQEbu9O9lURpnd0CwzrquHkrvr0U\n+CsTtJ6FO0cRIo5F4uuzS66DyLH6dz25pkp9bk3FydtIT6WkOCI="
|
8
|
+
on_success: always
|
9
|
+
on_failure: always
|
data/History.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
<table width="
|
1
|
+
<table width="545" cellpadding="0" cellspacing="25" border="0">
|
2
2
|
<tr>
|
3
3
|
<td align="left">
|
4
4
|
<h3 style="margin:0"><%= report.title %></h3>
|
@@ -9,6 +9,6 @@
|
|
9
9
|
</td>
|
10
10
|
</tr>
|
11
11
|
<tr>
|
12
|
-
<td align="center"><%= image_tag attachments["#{report.hash}.png"].url, align: "center" %></td>
|
12
|
+
<td align="center"><%= image_tag attachments["#{report.hash}.png"].url, border: 0, align: "center" %></td>
|
13
13
|
</tr>
|
14
14
|
</table>
|
@@ -1,20 +1,57 @@
|
|
1
|
-
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
|
2
|
+
<html lang="en">
|
2
3
|
<head>
|
3
4
|
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
|
4
5
|
<style type="text/css">
|
5
|
-
body { font-family: Helvetica, Arial, sans-serif; }
|
6
|
+
body { margin: 0; padding: 0; background: #eeeeee; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; }
|
7
|
+
|
8
|
+
.title h1 { margin: 0; color: #999999; font-weight: normal; font-size: 25px; text-shadow: 0 1px 0 #ffffff; }
|
9
|
+
|
10
|
+
.report h3 { margin: 0; color: #444444; font-size: 16px; line-height: 24px; }
|
11
|
+
.report ul { margin-top: 5px; margin-bottom: 0; list-style-type: square; }
|
12
|
+
.report ul li { color: #888888; font-size: 14px; line-height: 20px; }
|
6
13
|
</style>
|
7
14
|
</head>
|
8
|
-
<body>
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
<
|
15
|
-
|
16
|
-
|
17
|
-
|
15
|
+
<body bgcolor="#eeeeee" topmargin="0" leftmargin="0" marginheight="0" marginwidth="0">
|
16
|
+
|
17
|
+
<table width="100%" cellpadding="0" cellspacing="0" border="0" bgcolor="#eeeeee">
|
18
|
+
<tr>
|
19
|
+
<td bgcolor="#eeeeee" width="100%">
|
20
|
+
|
21
|
+
<table width="600" cellpadding="0" cellspacing="0" border="0" align="center" class="main">
|
22
|
+
<tr><td><img border="0" src="<%= attachments["spacer.gif"].url %>" width="1" height="25"><br></td></tr>
|
23
|
+
|
24
|
+
<tr>
|
25
|
+
<td width="600" class="title">
|
26
|
+
<h1><%= @title %></h1>
|
27
|
+
</td>
|
28
|
+
</tr>
|
29
|
+
|
30
|
+
<tr><td><img border="0" src="<%= attachments["spacer.gif"].url %>" width="1" height="25"><br></td></tr>
|
31
|
+
|
32
|
+
<% @reports.each do |report| -%>
|
33
|
+
<tr>
|
34
|
+
<td bgcolor="#ffffff">
|
35
|
+
|
36
|
+
<table width="600" cellpadding="0" cellspacing="0" border="0" align="center">
|
37
|
+
<tr>
|
38
|
+
<td bgcolor="<%= report.color %>" nowrap><img border="0" src="<%= attachments["spacer.gif"].url %>" width="5" height="1"></td>
|
39
|
+
<td class="report">
|
40
|
+
<%= render partial: report.class.name.demodulize.underscore, locals:{report:report} %>
|
41
|
+
</td>
|
42
|
+
</tr>
|
43
|
+
</table>
|
44
|
+
|
45
|
+
</td>
|
46
|
+
</tr>
|
47
|
+
|
48
|
+
<tr><td><img border="0" src="<%= attachments["spacer.gif"].url %>" width="1" height="25"><br></td></tr>
|
49
|
+
<% end -%>
|
50
|
+
</table>
|
51
|
+
|
52
|
+
</td>
|
53
|
+
</tr>
|
18
54
|
</table>
|
55
|
+
|
19
56
|
</body>
|
20
57
|
</html>
|
data/lib/reparty/report.rb
CHANGED
@@ -2,11 +2,12 @@ require 'gruff'
|
|
2
2
|
|
3
3
|
module Reparty
|
4
4
|
class Report
|
5
|
-
attr_reader :title
|
5
|
+
attr_reader :title, :color
|
6
6
|
|
7
7
|
def initialize(title)
|
8
8
|
raise "Report: title must be defined" if title.blank?
|
9
9
|
@title = title
|
10
|
+
@color = "#832701"
|
10
11
|
end
|
11
12
|
|
12
13
|
def attach(attachments)
|
@@ -16,7 +17,7 @@ module Reparty
|
|
16
17
|
protected
|
17
18
|
|
18
19
|
def build_daily_graph
|
19
|
-
g = Gruff::Line.new(
|
20
|
+
g = Gruff::Line.new(545)
|
20
21
|
g.title = @title
|
21
22
|
g.labels = Hash[*(1..7).map{|x| [x-1, (DateTime.now - (8-x)).strftime("%-m/%-d")] }.flatten]
|
22
23
|
g
|
data/lib/reparty/version.rb
CHANGED
@@ -4,13 +4,13 @@ describe Reparty::Report::ActiveRecord do
|
|
4
4
|
before(:each) do
|
5
5
|
User.delete_all
|
6
6
|
[
|
7
|
-
{:name => "Someone", :score => 7, :created_at => DateTime.now - 2},
|
8
|
-
{:name => "Sometwo", :score => 4, :created_at => DateTime.now - 2},
|
9
|
-
{:name => "Somethree", :score => 6, :created_at => DateTime.now - 4},
|
10
|
-
{:name => "Somefour", :score => 8, :created_at => DateTime.now - 5},
|
11
|
-
{:name => "Somefive", :score => 2, :created_at => DateTime.now - 6},
|
12
|
-
{:name => "Somesix", :score => 4, :created_at => DateTime.now - 7},
|
13
|
-
{:name => "Someseven", :score => 5, :created_at => DateTime.now - 8},
|
7
|
+
{:name => "Someone", :score => 7, :created_at => DateTime.now.utc - 2},
|
8
|
+
{:name => "Sometwo", :score => 4, :created_at => DateTime.now.utc - 2},
|
9
|
+
{:name => "Somethree", :score => 6, :created_at => DateTime.now.utc - 4},
|
10
|
+
{:name => "Somefour", :score => 8, :created_at => DateTime.now.utc - 5},
|
11
|
+
{:name => "Somefive", :score => 2, :created_at => DateTime.now.utc - 6},
|
12
|
+
{:name => "Somesix", :score => 4, :created_at => DateTime.now.utc - 7},
|
13
|
+
{:name => "Someseven", :score => 5, :created_at => DateTime.now.utc - 8},
|
14
14
|
].each{|u| User.create!(u) }
|
15
15
|
end
|
16
16
|
|
@@ -20,6 +20,7 @@ describe Reparty::Report::ActiveRecord do
|
|
20
20
|
end
|
21
21
|
Reparty.reports.last.should be_kind_of(Reparty::Report::ActiveRecord)
|
22
22
|
Reparty.reports.last.field.should == :updated_at
|
23
|
+
Reparty.reports.last.color.should == "#85bdad"
|
23
24
|
end
|
24
25
|
|
25
26
|
describe "when configured" do
|
@@ -31,7 +32,7 @@ describe Reparty::Report::ActiveRecord do
|
|
31
32
|
end
|
32
33
|
end
|
33
34
|
|
34
|
-
its(:daily_dataset) { should == [1,1,1,1,0,2
|
35
|
+
its(:daily_dataset) { should == [1,1,1,1,1,0,2] }
|
35
36
|
its(:yesterday) { should == 0 }
|
36
37
|
its(:total) { should == 7 }
|
37
38
|
|
@@ -42,6 +43,6 @@ describe Reparty::Report::ActiveRecord do
|
|
42
43
|
config.add_report Reparty::Report::ActiveRecord, "Users", User.where("score > 2")
|
43
44
|
end
|
44
45
|
|
45
|
-
Reparty.reports.first.daily_dataset.should == [1,0,1,1,0,2
|
46
|
+
Reparty.reports.first.daily_dataset.should == [1,1,0,1,1,0,2]
|
46
47
|
end
|
47
48
|
end
|
data/spec/report_spec.rb
CHANGED
metadata
CHANGED
@@ -2,14 +2,14 @@
|
|
2
2
|
name: reparty
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.
|
5
|
+
version: 0.2.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Tim Dorr
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-05-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: railties
|
@@ -236,7 +236,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
236
236
|
- !ruby/object:Gem::Version
|
237
237
|
segments:
|
238
238
|
- 0
|
239
|
-
hash:
|
239
|
+
hash: 3162642364766815676
|
240
240
|
version: '0'
|
241
241
|
none: false
|
242
242
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
@@ -245,7 +245,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
245
245
|
- !ruby/object:Gem::Version
|
246
246
|
segments:
|
247
247
|
- 0
|
248
|
-
hash:
|
248
|
+
hash: 3162642364766815676
|
249
249
|
version: '0'
|
250
250
|
none: false
|
251
251
|
requirements: []
|