mountain-goat 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +84 -70
- data/generators/mg/mg_generator.rb +9 -3
- data/generators/mg/templates/create_mountain_goat_tables.rb +4 -0
- data/generators/mg/templates/mountain-goat.yml +1 -0
- data/lib/mountain-goat.rb +12 -12
- data/lib/mountain-goat/controllers/mg/mountain_goat_controller.rb +1 -1
- data/lib/mountain-goat/controllers/mg/report_items_controller.rb +5 -5
- data/lib/mountain-goat/controllers/mg/reports_controller.rb +28 -1
- data/lib/mountain-goat/metric_tracking.rb +4 -4
- data/lib/mountain-goat/models/mg/report.rb +4 -4
- data/lib/mountain-goat/models/mg/report_item.rb +2 -2
- data/lib/mountain-goat/models/mg/report_mailer.rb +7 -0
- data/lib/mountain-goat/public/jquery.raphael.js +25 -1
- data/lib/mountain-goat/public/mg.css +307 -316
- data/lib/mountain-goat/public/mg.js +17 -16
- data/lib/mountain-goat/public/mg.png +0 -0
- data/lib/mountain-goat/version.rb +1 -1
- data/lib/mountain-goat/views/mountain_goat/layouts/mountain_goat.html.erb +21 -20
- data/lib/mountain-goat/views/mountain_goat/mg/mountain_goat/login.html.erb +11 -19
- data/lib/mountain-goat/views/mountain_goat/mg/report_items/_report_item_form.html.erb +1 -1
- data/lib/mountain-goat/views/mountain_goat/mg/report_items/_report_item_pivot_form.html.erb +4 -4
- data/lib/mountain-goat/views/mountain_goat/mg/reports/_report_form.html.erb +7 -2
- data/lib/mountain-goat/views/mountain_goat/mg/reports/_report_report_items.html.erb +1 -1
- data/lib/mountain-goat/views/mountain_goat/mg/reports/edit.html.erb +27 -30
- data/lib/mountain-goat/views/mountain_goat/mg/reports/index.html.erb +24 -20
- data/lib/mountain-goat/views/mountain_goat/mg/reports/new.html.erb +14 -13
- data/lib/mountain-goat/views/mountain_goat/mg/reports/show.html.erb +10 -13
- data/mountain-goat.gemspec +2 -2
- metadata +31 -54
- data/lib/mountain-goat/controllers/mg/metric_variants_controller.rb +0 -81
- data/lib/mountain-goat/controllers/mg/metrics_controller.rb +0 -110
- data/lib/mountain-goat/controllers/mg/rallies_controller.rb +0 -43
- data/lib/mountain-goat/models/mg/ci_meta.rb +0 -10
- data/lib/mountain-goat/models/mg/convert.rb +0 -147
- data/lib/mountain-goat/models/mg/convert_meta_type.rb +0 -20
- data/lib/mountain-goat/models/mg/cs_meta.rb +0 -10
- data/lib/mountain-goat/models/mg/metric.rb +0 -8
- data/lib/mountain-goat/models/mg/metric_variant.rb +0 -25
- data/lib/mountain-goat/models/mg/rally.rb +0 -59
- data/lib/mountain-goat/views/mountain_goat/mg/converts/.tmp_show.html.erb.4433~ +0 -69
- data/lib/mountain-goat/views/mountain_goat/mg/converts/_convert_form.html.erb +0 -26
- data/lib/mountain-goat/views/mountain_goat/mg/converts/_convert_meta_type_form.html.erb +0 -27
- data/lib/mountain-goat/views/mountain_goat/mg/converts/edit.html.erb +0 -13
- data/lib/mountain-goat/views/mountain_goat/mg/converts/index.html.erb +0 -25
- data/lib/mountain-goat/views/mountain_goat/mg/converts/new.html.erb +0 -13
- data/lib/mountain-goat/views/mountain_goat/mg/converts/show.html.erb +0 -44
- data/lib/mountain-goat/views/mountain_goat/mg/metric_variants/_metric_variant_form.html.erb +0 -37
- data/lib/mountain-goat/views/mountain_goat/mg/metric_variants/edit.html.erb +0 -13
- data/lib/mountain-goat/views/mountain_goat/mg/metric_variants/index.html.erb +0 -34
- data/lib/mountain-goat/views/mountain_goat/mg/metric_variants/new.html.erb +0 -15
- data/lib/mountain-goat/views/mountain_goat/mg/metric_variants/show.html.erb +0 -30
- data/lib/mountain-goat/views/mountain_goat/mg/metrics/.tmp_show.html.erb.21270~ +0 -68
- data/lib/mountain-goat/views/mountain_goat/mg/metrics/_metric_form.html.erb +0 -24
- data/lib/mountain-goat/views/mountain_goat/mg/metrics/edit.html.erb +0 -13
- data/lib/mountain-goat/views/mountain_goat/mg/metrics/index.html.erb +0 -14
- data/lib/mountain-goat/views/mountain_goat/mg/metrics/new.html.erb +0 -14
- data/lib/mountain-goat/views/mountain_goat/mg/metrics/show.html.erb +0 -67
- data/lib/mountain-goat/views/mountain_goat/mg/rallies/.tmp__rally.html.erb.40484~ +0 -12
- data/lib/mountain-goat/views/mountain_goat/mg/rallies/_rallies.html.erb +0 -5
- data/lib/mountain-goat/views/mountain_goat/mg/rallies/_rallies_form.html.erb +0 -21
- data/lib/mountain-goat/views/mountain_goat/mg/rallies/_rally.html.erb +0 -12
- data/lib/mountain-goat/views/mountain_goat/mg/rallies/edit.html.erb +0 -13
- data/lib/mountain-goat/views/mountain_goat/mg/rallies/index.html.erb +0 -19
- data/lib/mountain-goat/views/mountain_goat/mg/rallies/new.html.erb +0 -13
- data/lib/mountain-goat/views/mountain_goat/mg/rallies/show.html.erb +0 -14
@@ -4,6 +4,7 @@
|
|
4
4
|
|
5
5
|
(function() {
|
6
6
|
$(document).ready(function () {
|
7
|
+
|
7
8
|
$('input.slider[type="checkbox"]').change(function() {
|
8
9
|
if ($(this).is(':checked')) {
|
9
10
|
$($(this).data('slider')).slideDown();
|
@@ -12,35 +13,35 @@
|
|
12
13
|
}
|
13
14
|
}).change();
|
14
15
|
|
15
|
-
if ($('.recent-
|
16
|
-
setTimeout(function() {
|
16
|
+
if ($('.recent-record[data-reload="true"]').size() > 0) {
|
17
|
+
setTimeout(function() { reloadRecords(); }, 4000);
|
17
18
|
}
|
18
19
|
|
19
|
-
$('.reload').click(function() {
|
20
|
+
$('.reload').click(function() { reloadRecords(); });
|
20
21
|
|
21
|
-
var
|
22
|
-
var
|
23
|
-
var
|
24
|
-
if (
|
22
|
+
var reloadRecords = function() {
|
23
|
+
var record_id = parseInt($('.recent-record').data('record-id'));
|
24
|
+
var goal_id = $('.recent-record').data('goal-id');
|
25
|
+
if (record_id) {
|
25
26
|
$.ajax({
|
26
|
-
url: '/mg/
|
27
|
-
data: { '
|
27
|
+
url: '/mg/records/new_records',
|
28
|
+
data: { 'recent_record': record_id, 'goal_id': goal_id },
|
28
29
|
success: function(json) {
|
29
30
|
if (!json.success) {
|
30
31
|
console.log('No new events');
|
31
32
|
} else {
|
32
|
-
$('.recent-
|
33
|
+
$('.recent-record').data('record-id', json.recent_record_id);
|
33
34
|
res = $(json.result);
|
34
|
-
res.hide().prependTo($('.
|
35
|
-
$('ul.
|
35
|
+
res.hide().prependTo($('.record-list')).fadeIn(3000);
|
36
|
+
$('ul.record-list > li.record:gt(100)').remove(); //only show 100 elements
|
36
37
|
|
37
|
-
if ($('.
|
38
|
-
$('.
|
38
|
+
if ($('.record-list abbr.time-ago').size() > 0) {
|
39
|
+
$('.record-list abbr.time-ago').timeago();
|
39
40
|
}
|
40
41
|
}
|
41
42
|
|
42
|
-
if ($('.recent-
|
43
|
-
setTimeout(function() {
|
43
|
+
if ($('.recent-record[data-reload="true"]').size() > 0) {
|
44
|
+
setTimeout(function() { reloadRecords(); }, 4000);
|
44
45
|
}
|
45
46
|
}
|
46
47
|
});
|
Binary file
|
@@ -26,6 +26,7 @@
|
|
26
26
|
<script src="/mg/public/g-dot-min_js" type="text/javascript"></script>
|
27
27
|
<script src="/mg/public/g-line-min_js" type="text/javascript"></script>
|
28
28
|
<script src="/mg/public/g-pie-min_js" type="text/javascript"></script>
|
29
|
+
<script src="/mg/public/g-funnel_js" type="text/javascript"></script>
|
29
30
|
<script src="/mg/public/jquery_flot_js" type="text/javascript"></script>
|
30
31
|
<script src="/mg/public/jquery_timeago_js" type="text/javascript"></script>
|
31
32
|
<script src="/mg/public/jquery_raphael_js" type="text/javascript"></script>
|
@@ -35,24 +36,25 @@
|
|
35
36
|
</head>
|
36
37
|
|
37
38
|
<body>
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
39
|
+
<div class="mg-header structure">
|
40
|
+
<div class="container-center">
|
41
|
+
<div class="header">
|
42
|
+
<a href="/mg" class="logo">
|
43
|
+
<img src="/mg/public/mg_png" />
|
44
|
+
</a>
|
45
|
+
<ul class="nav">
|
46
|
+
<li><a href="<%= mg_goals_url %>">Goals</a></li>
|
47
|
+
<li><a href="<%= mg_tests_url %>">Tests</a></li>
|
48
|
+
<li><a href="<%= mg_reports_url %>">Reports</a></li>
|
49
|
+
<li><a href="<%= mg_records_url %>">Records</a></li>
|
50
|
+
<li><a href="/">Exit</a></li>
|
51
|
+
</ul>
|
52
|
+
</div>
|
51
53
|
</div>
|
52
54
|
</div>
|
53
|
-
|
54
|
-
<div class="content">
|
55
|
-
<div class="
|
55
|
+
|
56
|
+
<div class="mg-content structure">
|
57
|
+
<div class="container-center">
|
56
58
|
<% if !flash[:notice].blank? || !flash[:error].blank? %>
|
57
59
|
<div class="flash">
|
58
60
|
<% if !flash[:error].blank? %>
|
@@ -66,10 +68,9 @@
|
|
66
68
|
<%= yield %>
|
67
69
|
</div>
|
68
70
|
</div>
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
</div>
|
71
|
+
|
72
|
+
<div class="mg-footer structure">
|
73
|
+
|
73
74
|
</div>
|
74
75
|
</body>
|
75
76
|
|
@@ -1,23 +1,15 @@
|
|
1
|
-
|
2
|
-
<
|
3
|
-
<
|
4
|
-
|
5
|
-
<
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
<
|
10
|
-
Below are a list of conversion goals. Each goal has a set of metrics designed to achieve that goal. For each metric, there is a list of variants, each coupled with its conversation rate.</span>
|
11
|
-
</span>
|
12
|
-
</div>
|
13
|
-
|
14
|
-
<div class="login-form">
|
15
|
-
|
16
|
-
<% form_tag mg_login_create_url do %>
|
17
|
-
<%= password_field_tag :password %>
|
1
|
+
<div id="container-main" class="mg-login">
|
2
|
+
<h1>Please login to Mountain Goat</h1>
|
3
|
+
<h3>Mountain Goat is your in-house analytics department. Track metrics, run tests, and monitor your site in real-time.</h3>
|
4
|
+
<div class="container-content">
|
5
|
+
<div class="login-form">
|
6
|
+
<% form_tag mg_login_create_url do %>
|
7
|
+
<%= password_field_tag :password %>
|
8
|
+
<label>Admin Password</label>
|
9
|
+
<div class="submit">
|
18
10
|
<%= submit_tag :Enter %>
|
19
|
-
|
20
|
-
|
11
|
+
</div>
|
12
|
+
<% end %>
|
21
13
|
</div>
|
22
14
|
</div>
|
23
15
|
</div>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<%# locals => f %>
|
2
2
|
<div class="item reportable">
|
3
3
|
<%= f.label :reportable, "Report Item" %>
|
4
|
-
<%= f.select :reportable, options_for_select( [[ "Select a Goal", "" ]] + Mg::
|
4
|
+
<%= f.select :reportable, options_for_select( [[ "Select a Goal", "" ]] + Mg::Goal.all.map { |goal| [ goal.name, "#{goal.id}-#{goal.class}" ] }, f.object.reportable.nil? ? "" : "#{f.object.reportable_id}-#{f.object.reportable_type}" ), {}, :'data-varies' => 'change', :'data-varies-path' => get_extra_mg_report_items_url, :'data-varies-res' => '#extra' %>
|
5
5
|
</div>
|
6
6
|
<div id="extra">
|
7
7
|
<% if !f.object.nil? && !f.object.reportable.nil? %>
|
@@ -2,13 +2,13 @@
|
|
2
2
|
|
3
3
|
<% pivot = nil if !local_assigns.has_key?(:pivot) %>
|
4
4
|
|
5
|
-
<% if reportable.instance_of?(Mg::
|
6
|
-
<%
|
5
|
+
<% if reportable.instance_of?(Mg::Goal) %>
|
6
|
+
<% gmts = reportable.mg_goal_meta_types %>
|
7
7
|
<% end %>
|
8
8
|
|
9
|
-
<% if !
|
9
|
+
<% if !gmts.nil? %>
|
10
10
|
<div class="item pivot">
|
11
11
|
<%= label_tag :'report_item[pivot]', "Pivot" %>
|
12
|
-
<%= select_tag :'report_item[pivot]', options_for_select( [[ "None", "" ]] +
|
12
|
+
<%= select_tag :'report_item[pivot]', options_for_select( [[ "None", "" ]] + gmts.map { |gmt| [ gmt.name, "#{gmt.id}-#{gmt.class}" ] }, pivot.nil? ? "" : "#{pivot.id}-#{pivot.type}" ) %>
|
13
13
|
</div>
|
14
14
|
<% end %>
|
@@ -7,12 +7,17 @@
|
|
7
7
|
|
8
8
|
<div class="item description">
|
9
9
|
<%= f.label :description %>
|
10
|
-
<%= f.
|
10
|
+
<%= f.text_field :description %>
|
11
|
+
</div>
|
12
|
+
|
13
|
+
<div class="item report_type">
|
14
|
+
<%= f.label :report_type, 'Report Type' %>
|
15
|
+
<%= f.select :report_type, options_for_select( [ [ 'Graph', 'graph' ], [ 'Funnel', 'funnel' ] ] ) %>
|
11
16
|
</div>
|
12
17
|
|
13
18
|
<div class="item delivert_set">
|
14
19
|
<%= f.label :delivery_set, 'Frequency' %>
|
15
|
-
<%= f.select :delivery_set, options_for_select( [ [ '
|
20
|
+
<%= f.select :delivery_set, options_for_select( [ [ 'Daily', 'daily' ], [ 'Weekly', 'weekly' ], [ 'Monthly', 'monthly' ], ['Never', 'never'] ] ) %>
|
16
21
|
</div>
|
17
22
|
|
18
23
|
<div class="item recipients">
|
@@ -1,36 +1,33 @@
|
|
1
|
-
|
2
|
-
<
|
3
|
-
<div class="
|
4
|
-
<
|
5
|
-
<li><a href="<%= mg_reports_url %>">Reports</a></li>
|
6
|
-
<li><a href="<%= mg_report_url @report.id %>"><%=h @report.title %></a></li>
|
7
|
-
</ul>
|
1
|
+
<div id="container-main" class="mg-report-edit">
|
2
|
+
<h1>Edit <%= @report.title %></h1>
|
3
|
+
<div class="container-content">
|
4
|
+
<div class="edit-form">
|
8
5
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
<div class="report-report-items">
|
15
|
-
<h4>Report Items</h4>
|
16
|
-
<%= render :partial => "mg/reports/report_report_items", :locals => { :report => @report } %>
|
17
|
-
</div>
|
18
|
-
|
19
|
-
<a href="javascript:void(0)" class="smallbutton redbutton remote-link" data-path="<%= new_mg_report_report_item_url(:report_id => @report.id) %>" data-res=".report-items-model .model">+ Add Item</a>
|
20
|
-
|
21
|
-
<%= render :partial => 'mg/reports/report_form', :locals => { :f => f } %>
|
22
|
-
|
23
|
-
<div class="item submit">
|
24
|
-
<%= f.submit 'Submit' %>
|
25
|
-
</div>
|
6
|
+
<% form_for :report, @report, :url => mg_report_url(:id => @report.id), :html => { :method => :put } do |f| %>
|
7
|
+
<%= f.error_messages %>
|
8
|
+
|
9
|
+
<%= render :partial => 'mg/reports/report_form', :locals => { :f => f } %>
|
26
10
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
11
|
+
<div class="report-report-items">
|
12
|
+
<h4>Report Items</h4>
|
13
|
+
|
14
|
+
<%= render :partial => "mg/reports/report_report_items", :locals => { :report => @report } %>
|
15
|
+
</div>
|
16
|
+
|
17
|
+
<div class="action-bar">
|
18
|
+
<a href="javascript:void(0)" class="button remote-link" data-path="<%= new_mg_report_report_item_url(:report_id => @report.id) %>" data-res=".report-items-model .model">Add Item</a>
|
19
|
+
|
20
|
+
<%= f.submit 'Submit' %>
|
21
|
+
</div>
|
22
|
+
|
23
|
+
<div class="report-items-model flash-model model">
|
24
|
+
<div class="jqmWindow">
|
25
|
+
<a href="#" class="jqmClose">Close</a>
|
26
|
+
<div class="model" data-model=".jqmWindow"></div>
|
27
|
+
</div>
|
31
28
|
</div>
|
32
|
-
|
33
|
-
|
29
|
+
<% end %>
|
30
|
+
</div>
|
34
31
|
</div>
|
35
32
|
</div>
|
36
33
|
|
@@ -1,26 +1,30 @@
|
|
1
|
-
|
2
|
-
<
|
3
|
-
<div class="
|
4
|
-
<
|
5
|
-
<
|
6
|
-
|
7
|
-
|
8
|
-
<div class="reports">
|
9
|
-
<div class="explanation">
|
10
|
-
<span class="inner">
|
11
|
-
All of your reports are listed here. Reports will be delivered to all recipients on the schedule indicated.
|
12
|
-
</span>
|
13
|
-
</div>
|
14
|
-
|
15
|
-
<div class="reports">
|
16
|
-
<% @reports.each do |report| %>
|
17
|
-
<h2><a href="<%= mg_report_url :id => report.id %>"><%=h report.title %></a> [<a href="<%= edit_mg_report_url :id => report.id %>">edit</a>]</h2>
|
18
|
-
<% end %>
|
19
|
-
</div>
|
1
|
+
<div id="container-main" class="mg-reports">
|
2
|
+
<h1>Your Reports</h1>
|
3
|
+
<div class="container-content">
|
4
|
+
<div class="title-bar">
|
5
|
+
<span class="category name">Report</span>
|
6
|
+
<span class="category frequency">Frequency</span>
|
7
|
+
<span class="category actions">Actions</span>
|
20
8
|
</div>
|
9
|
+
<ul class="listed">
|
10
|
+
<% @reports.each do |report| %>
|
11
|
+
<li class="report">
|
12
|
+
<span class="category name"><%=h report.title %></span>
|
13
|
+
<span class="category frequency"><%=h report.delivery_set.capitalize %></span>
|
14
|
+
<span class="category actions"><a href="<%= mg_report_url report %>">View</a><a href="<%= edit_mg_report_url :id => report.id %>">Edit</a> <a href="<%= hide_mg_report_url :id => report.id %>">Hide</a></span>
|
15
|
+
</li>
|
16
|
+
<% end %>
|
17
|
+
</ul>
|
21
18
|
|
22
|
-
<div class="
|
19
|
+
<div class="action-bar">
|
23
20
|
<a class="button" href="<%= new_mg_report_url %>">New Report</a>
|
24
21
|
</div>
|
22
|
+
|
23
|
+
<div class="hidden-reports">
|
24
|
+
<% @hidden_reports.each do |report| %>
|
25
|
+
<span class="name"><%=h report.title %></span>
|
26
|
+
<span class="unhide"><a href="<%= unhide_mg_report_url :id => report.id %>">Restore</a></span>
|
27
|
+
<% end %>
|
28
|
+
</div>
|
25
29
|
</div>
|
26
30
|
</div>
|
@@ -1,17 +1,18 @@
|
|
1
|
-
|
2
|
-
<
|
3
|
-
<div class="
|
4
|
-
<
|
1
|
+
<div id="container-main" class="mg-report-new">
|
2
|
+
<h1>Create New Report</h1>
|
3
|
+
<div class="container-content">
|
4
|
+
<div class="edit-form">
|
5
5
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
<%= render :partial => 'mg/reports/report_form', :locals => { :f => f } %>
|
10
|
-
|
11
|
-
<div class="item submit">
|
12
|
-
<%= f.submit 'Submit' %>
|
13
|
-
</div>
|
6
|
+
<% form_for :report, @report, :url => mg_reports_url do |f| %>
|
7
|
+
<%= f.error_messages %>
|
14
8
|
|
15
|
-
|
9
|
+
<%= render :partial => 'mg/reports/report_form', :locals => { :f => f } %>
|
10
|
+
|
11
|
+
<div class="item submit">
|
12
|
+
<%= f.submit 'Submit' %>
|
13
|
+
</div>
|
14
|
+
|
15
|
+
<% end %>
|
16
|
+
</div>
|
16
17
|
</div>
|
17
18
|
</div>
|
@@ -1,17 +1,14 @@
|
|
1
|
-
|
2
|
-
<
|
3
|
-
<div class="
|
4
|
-
<
|
5
|
-
<li><a href="<%= mg_reports_url %>">Reports</a></li>
|
6
|
-
<li><a href="<%= mg_report_url @report.id %>"><%=h @report.title %></a></li>
|
7
|
-
</ul>
|
1
|
+
<div id="container-main" class="mg-report-show">
|
2
|
+
<h1><%=h @report.title %></h1>
|
3
|
+
<div class="container-content">
|
4
|
+
<h3><%=h @report.description %></h3>
|
8
5
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
<% @report.
|
14
|
-
<%= render 'mg/report_items/
|
6
|
+
<% if @report.report_type == 'graph' %>
|
7
|
+
<% @report.mg_report_items.each do |report_item| %>
|
8
|
+
<%= render 'mg/report_items/chart', :report_item => report_item %>
|
9
|
+
<% end %>
|
10
|
+
<% elsif @report.report_type == 'funnel' %>
|
11
|
+
<%= render 'mg/report_items/funnel', :report => @report %>
|
15
12
|
<% end %>
|
16
13
|
|
17
14
|
<div class="actions">
|
data/mountain-goat.gemspec
CHANGED
@@ -6,8 +6,8 @@ Gem::Specification.new do |s|
|
|
6
6
|
s.name = "mountain-goat"
|
7
7
|
s.version = MountainGoat::VERSION
|
8
8
|
s.platform = Gem::Platform::RUBY
|
9
|
-
s.authors = ["Geoffrey Hayes", "
|
10
|
-
s.email = ["geoff@
|
9
|
+
s.authors = ["Geoffrey Hayes", "meloncard.com"]
|
10
|
+
s.email = ["geoff@meloncard.com"]
|
11
11
|
s.homepage = "http://github.com/hayesgm/mountain_goat"
|
12
12
|
s.summary = "A/B Testing to the edge"
|
13
13
|
s.description = "A/B test everything and get awesome in-house analytics"
|
metadata
CHANGED
@@ -1,33 +1,30 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mountain-goat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
4
|
+
prerelease: false
|
6
5
|
segments:
|
7
6
|
- 1
|
8
7
|
- 0
|
9
|
-
-
|
10
|
-
version: 1.0.
|
8
|
+
- 1
|
9
|
+
version: 1.0.1
|
11
10
|
platform: ruby
|
12
11
|
authors:
|
13
12
|
- Geoffrey Hayes
|
14
|
-
-
|
13
|
+
- meloncard.com
|
15
14
|
autorequire:
|
16
15
|
bindir: bin
|
17
16
|
cert_chain: []
|
18
17
|
|
19
|
-
date: 2011-09
|
18
|
+
date: 2011-10-09 00:00:00 -07:00
|
20
19
|
default_executable:
|
21
20
|
dependencies:
|
22
21
|
- !ruby/object:Gem::Dependency
|
23
22
|
name: rspec
|
24
23
|
prerelease: false
|
25
24
|
requirement: &id001 !ruby/object:Gem::Requirement
|
26
|
-
none: false
|
27
25
|
requirements:
|
28
26
|
- - ~>
|
29
27
|
- !ruby/object:Gem::Version
|
30
|
-
hash: 7
|
31
28
|
segments:
|
32
29
|
- 2
|
33
30
|
- 2
|
@@ -39,11 +36,9 @@ dependencies:
|
|
39
36
|
name: rack-test
|
40
37
|
prerelease: false
|
41
38
|
requirement: &id002 !ruby/object:Gem::Requirement
|
42
|
-
none: false
|
43
39
|
requirements:
|
44
40
|
- - ">="
|
45
41
|
- !ruby/object:Gem::Version
|
46
|
-
hash: 7
|
47
42
|
segments:
|
48
43
|
- 0
|
49
44
|
- 5
|
@@ -53,7 +48,7 @@ dependencies:
|
|
53
48
|
version_requirements: *id002
|
54
49
|
description: A/B test everything and get awesome in-house analytics
|
55
50
|
email:
|
56
|
-
- geoff@
|
51
|
+
- geoff@meloncard.com
|
57
52
|
executables: []
|
58
53
|
|
59
54
|
extensions: []
|
@@ -81,24 +76,14 @@ files:
|
|
81
76
|
- lib/mountain-goat.rb
|
82
77
|
- lib/mountain-goat/analytics.rb
|
83
78
|
- lib/mountain-goat/controllers/mg/converts_controller.rb
|
84
|
-
- lib/mountain-goat/controllers/mg/metric_variants_controller.rb
|
85
|
-
- lib/mountain-goat/controllers/mg/metrics_controller.rb
|
86
79
|
- lib/mountain-goat/controllers/mg/mg.rb
|
87
80
|
- lib/mountain-goat/controllers/mg/mountain_goat_controller.rb
|
88
81
|
- lib/mountain-goat/controllers/mg/playground_controller.rb
|
89
|
-
- lib/mountain-goat/controllers/mg/rallies_controller.rb
|
90
82
|
- lib/mountain-goat/controllers/mg/report_items_controller.rb
|
91
83
|
- lib/mountain-goat/controllers/mg/reports_controller.rb
|
92
84
|
- lib/mountain-goat/m_g.rb
|
93
85
|
- lib/mountain-goat/metric_tracking.rb
|
94
|
-
- lib/mountain-goat/models/mg/ci_meta.rb
|
95
|
-
- lib/mountain-goat/models/mg/convert.rb
|
96
|
-
- lib/mountain-goat/models/mg/convert_meta_type.rb
|
97
|
-
- lib/mountain-goat/models/mg/cs_meta.rb
|
98
|
-
- lib/mountain-goat/models/mg/metric.rb
|
99
|
-
- lib/mountain-goat/models/mg/metric_variant.rb
|
100
86
|
- lib/mountain-goat/models/mg/mountain_goat.rb
|
101
|
-
- lib/mountain-goat/models/mg/rally.rb
|
102
87
|
- lib/mountain-goat/models/mg/report.rb
|
103
88
|
- lib/mountain-goat/models/mg/report_item.rb
|
104
89
|
- lib/mountain-goat/models/mg/report_mailer.rb
|
@@ -127,34 +112,8 @@ files:
|
|
127
112
|
- lib/mountain-goat/views/mountain_goat/layouts/_pdf.html.erb
|
128
113
|
- lib/mountain-goat/views/mountain_goat/layouts/mountain_goat.html.erb
|
129
114
|
- lib/mountain-goat/views/mountain_goat/layouts/xhr.html.erb
|
130
|
-
- lib/mountain-goat/views/mountain_goat/mg/converts/.tmp_show.html.erb.4433~
|
131
|
-
- lib/mountain-goat/views/mountain_goat/mg/converts/_convert_form.html.erb
|
132
|
-
- lib/mountain-goat/views/mountain_goat/mg/converts/_convert_meta_type_form.html.erb
|
133
|
-
- lib/mountain-goat/views/mountain_goat/mg/converts/edit.html.erb
|
134
|
-
- lib/mountain-goat/views/mountain_goat/mg/converts/index.html.erb
|
135
|
-
- lib/mountain-goat/views/mountain_goat/mg/converts/new.html.erb
|
136
|
-
- lib/mountain-goat/views/mountain_goat/mg/converts/show.html.erb
|
137
|
-
- lib/mountain-goat/views/mountain_goat/mg/metric_variants/_metric_variant_form.html.erb
|
138
|
-
- lib/mountain-goat/views/mountain_goat/mg/metric_variants/edit.html.erb
|
139
|
-
- lib/mountain-goat/views/mountain_goat/mg/metric_variants/index.html.erb
|
140
|
-
- lib/mountain-goat/views/mountain_goat/mg/metric_variants/new.html.erb
|
141
|
-
- lib/mountain-goat/views/mountain_goat/mg/metric_variants/show.html.erb
|
142
|
-
- lib/mountain-goat/views/mountain_goat/mg/metrics/.tmp_show.html.erb.21270~
|
143
|
-
- lib/mountain-goat/views/mountain_goat/mg/metrics/_metric_form.html.erb
|
144
|
-
- lib/mountain-goat/views/mountain_goat/mg/metrics/edit.html.erb
|
145
|
-
- lib/mountain-goat/views/mountain_goat/mg/metrics/index.html.erb
|
146
|
-
- lib/mountain-goat/views/mountain_goat/mg/metrics/new.html.erb
|
147
|
-
- lib/mountain-goat/views/mountain_goat/mg/metrics/show.html.erb
|
148
115
|
- lib/mountain-goat/views/mountain_goat/mg/mountain_goat/login.html.erb
|
149
116
|
- lib/mountain-goat/views/mountain_goat/mg/playground/test.html.erb
|
150
|
-
- lib/mountain-goat/views/mountain_goat/mg/rallies/.tmp__rally.html.erb.40484~
|
151
|
-
- lib/mountain-goat/views/mountain_goat/mg/rallies/_rallies.html.erb
|
152
|
-
- lib/mountain-goat/views/mountain_goat/mg/rallies/_rallies_form.html.erb
|
153
|
-
- lib/mountain-goat/views/mountain_goat/mg/rallies/_rally.html.erb
|
154
|
-
- lib/mountain-goat/views/mountain_goat/mg/rallies/edit.html.erb
|
155
|
-
- lib/mountain-goat/views/mountain_goat/mg/rallies/index.html.erb
|
156
|
-
- lib/mountain-goat/views/mountain_goat/mg/rallies/new.html.erb
|
157
|
-
- lib/mountain-goat/views/mountain_goat/mg/rallies/show.html.erb
|
158
117
|
- lib/mountain-goat/views/mountain_goat/mg/report_items/_chart.html.erb
|
159
118
|
- lib/mountain-goat/views/mountain_goat/mg/report_items/_report_item_form.html.erb
|
160
119
|
- lib/mountain-goat/views/mountain_goat/mg/report_items/_report_item_pivot_form.html.erb
|
@@ -204,29 +163,47 @@ rdoc_options: []
|
|
204
163
|
require_paths:
|
205
164
|
- lib
|
206
165
|
required_ruby_version: !ruby/object:Gem::Requirement
|
207
|
-
none: false
|
208
166
|
requirements:
|
209
167
|
- - ">="
|
210
168
|
- !ruby/object:Gem::Version
|
211
|
-
hash: 3
|
212
169
|
segments:
|
213
170
|
- 0
|
214
171
|
version: "0"
|
215
172
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
216
|
-
none: false
|
217
173
|
requirements:
|
218
174
|
- - ">="
|
219
175
|
- !ruby/object:Gem::Version
|
220
|
-
hash: 3
|
221
176
|
segments:
|
222
177
|
- 0
|
223
178
|
version: "0"
|
224
179
|
requirements: []
|
225
180
|
|
226
181
|
rubyforge_project: mountain-goat
|
227
|
-
rubygems_version: 1.
|
182
|
+
rubygems_version: 1.3.6
|
228
183
|
signing_key:
|
229
184
|
specification_version: 3
|
230
185
|
summary: A/B Testing to the edge
|
231
|
-
test_files:
|
232
|
-
|
186
|
+
test_files:
|
187
|
+
- test/fixtures/mg_ci_metas.yml
|
188
|
+
- test/fixtures/mg_convert_meta_types.yml
|
189
|
+
- test/fixtures/mg_converts.yml
|
190
|
+
- test/fixtures/mg_cs_metas.yml
|
191
|
+
- test/fixtures/mg_deliveries.yml
|
192
|
+
- test/fixtures/mg_metric_variants.yml
|
193
|
+
- test/fixtures/mg_metrics.yml
|
194
|
+
- test/fixtures/mg_rallies.yml
|
195
|
+
- test/fixtures/mg_report_items.yml
|
196
|
+
- test/fixtures/mg_reports.yml
|
197
|
+
- test/mg_convert_test.rb
|
198
|
+
- test/mg_converts_controller_test.rb
|
199
|
+
- test/mg_metric_variants_controller_test.rb
|
200
|
+
- test/mg_metrics_controller_test.rb
|
201
|
+
- test/mg_mountain_goat_controller_test.rb
|
202
|
+
- test/mg_mountain_goat_test.rb
|
203
|
+
- test/mg_playground_controller_test.rb
|
204
|
+
- test/mg_rallies_controller_test.rb
|
205
|
+
- test/mg_report_item_test.rb
|
206
|
+
- test/mg_report_items_controller_test.rb
|
207
|
+
- test/mg_report_test.rb
|
208
|
+
- test/mg_reports_controller_test.rb
|
209
|
+
- test/test_helper.rb
|