i_reach 0.0.2 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +8 -8
  2. data/README.md +38 -17
  3. data/Rakefile +3 -0
  4. data/app/assets/javascripts/i_reach/application.js +2 -1
  5. data/app/assets/javascripts/i_reach/jquery-ui-timepicker-addon.js +2134 -0
  6. data/app/assets/stylesheets/i_reach/admin.css +4 -4
  7. data/app/assets/stylesheets/i_reach/application.css +3 -1
  8. data/app/assets/stylesheets/i_reach/nav.css +36 -211
  9. data/app/assets/stylesheets/i_reach/timepicker.css +11 -0
  10. data/app/controllers/i_reach/welcome_controller.rb +4 -0
  11. data/app/helpers/layout_helper.rb +24 -0
  12. data/app/views/admin/_admin_menu_navigation.html.erb +24 -0
  13. data/app/views/admin/admin_user/_form.html.erb +17 -0
  14. data/app/views/admin/admin_user/edit.html.erb +9 -0
  15. data/app/views/admin/admin_user/list.html.erb +26 -0
  16. data/app/views/admin/admin_user/new.html.erb +8 -0
  17. data/app/views/admin/admin_user/show.html.erb +8 -0
  18. data/app/views/admin/home/index.html.erb +1 -0
  19. data/app/views/admin/menu/_form.html.erb +28 -0
  20. data/app/views/admin/menu/edit.html.erb +9 -0
  21. data/app/views/admin/menu/export.html.erb +1 -0
  22. data/app/views/admin/menu/imp_exp.html.erb +11 -0
  23. data/app/views/admin/menu/import.html.erb +1 -0
  24. data/app/views/admin/menu/list.html.erb +33 -0
  25. data/app/views/admin/menu/new.html.erb +8 -0
  26. data/app/views/admin/menu/show.html.erb +8 -0
  27. data/app/views/admin/user/_form.html.erb +49 -0
  28. data/app/views/admin/user/edit.html.erb +9 -0
  29. data/app/views/admin/user/list.html.erb +27 -0
  30. data/app/views/admin/user/new.html.erb +8 -0
  31. data/app/views/admin/user/show.html.erb +8 -0
  32. data/app/views/client/index.html.erb +1 -0
  33. data/app/views/i_reach/welcome/index.html.erb +43 -0
  34. data/app/views/layouts/i_reach/admin.html.erb +131 -0
  35. data/app/views/layouts/i_reach/application.html.erb +64 -2
  36. data/app/views/public/index.html.erb +2 -0
  37. data/config/routes.rb +2 -0
  38. data/config/spring.rb +1 -0
  39. data/lib/i_reach/engine.rb +7 -0
  40. data/lib/i_reach/version.rb +1 -1
  41. data/lib/i_reach.rb +5 -1
  42. metadata +74 -2
@@ -0,0 +1,8 @@
1
+ <h1>New user</h1>
2
+
3
+ <% form_tag :action => 'create' do %>
4
+ <%= render :partial => 'form' %>
5
+ <%= submit_tag "Create" %>
6
+ <% end %>
7
+
8
+ <%= link_to 'Back', :action => 'list' %>
@@ -0,0 +1,8 @@
1
+ <% for column in User.content_columns %>
2
+ <p>
3
+ <b><%= column.human_name %>:</b> <%=h @user.send(column.name) %>
4
+ </p>
5
+ <% end %>
6
+
7
+ <%= link_to 'Edit', :action => 'edit', :id => @user %> |
8
+ <%= link_to 'Back', :action => 'list' %>
@@ -0,0 +1 @@
1
+ Client Home
@@ -0,0 +1,43 @@
1
+ <p><b>Welcome to the administrative interface for IReach.</b></p>
2
+
3
+ <p><b>Steps to create a newsletter</b>
4
+ <ul>
5
+ <li>Select &quot;Newsletters&quot; from the left menu</li>
6
+ <li>Select the &quot;New Newsletter&quot; link
7
+ <ul><li>Enter a unique name for the newsletter and click &quot;Save&quot;</li></ul></li>
8
+ <li>Click on the &quot;Edit&quot; button for the new newsletter
9
+ <ul><li>You will probably want to add the &quot;Navigation Bar&quot; element first
10
+ <ul><li>Select &quot;Add Element&quot; next to the Nav Bar &quot;Navigation Bar&quot; element</li>
11
+ <li>Enter the Spacer Width, and the link text and urls for the navigation bar and select &quot;Submit&quot;</li></ul></li>
12
+ <li>Next add a Newsletter Title / Subtitle to your newsletter
13
+ <ul><li>Select &quot;Newsletter Title / Subtitle&quot; from the dropdown next the &quot;Main area&quot; section, then select &quot;Add Element&quot;</li>
14
+ <li>Enter your Title text, Title Font Size, Subtitle text, and Subtitle Font Size values and select &quot;Submit&quot;</li></ul></li>
15
+ <li>Next add articles to your newsletter
16
+ <ul><li>Select &quot;Add Element&quot; next to the Main area &quot;Article&quot; element</li>
17
+ <li>Browse and select any images for the left and/or right image.</li>
18
+ <li>Cut and paste the article content from your text editor (notepad probably).</li>
19
+ <li>When you're done, select &quot;Submit&quot; to create the article.</li></ul></li></ul></li>
20
+ <li>When you're done editing the newsletter, the next step is to create a Mailing</li>
21
+ </ul></p>
22
+
23
+ <p><b>Steps to create a mailing</b>
24
+ <ul>
25
+ <li>Select &quot;Mailings&quot; from the left menu</li>
26
+ <li>Select the &quot;New Mailing&quot; button
27
+ <ul><li>Enter an email subject</li>
28
+ <li>You may modify the From email address if you wish</li>
29
+ <li>Select the unique newsletter name you entered when you created the newsletter for the mailable item</li>
30
+ <li>Select a date and time for your mailing to occur</li>
31
+ <li>If you uncheck the &quot;Include images&quot; checkbox, the email will be sent with links to the images on the web site and the user will need to select &quot;Load images&quot; in their email program to view the images. Otherwise the images are sent with the email as attachments.</li>
32
+ <li>Select the checkboxes for the mailing lists you wish to deliver the mailing to</li>
33
+ <li>When you're done, select &quot;Submit&quot; to create the mailing</li></ul></li>
34
+ <li>At this point the mailing is &quot;Pending&quot;</li>
35
+ <li>You should send yourself a test email using the &quot;Send Test&quot; button</li>
36
+ <li>When you have tested the mailing and are ready to schedule the mailing select the &quot;Schedule&quot; button</li>
37
+ <li>While the mailing is being sent the Status for the mailing should be &quot;processing&quot;. (NOTE: the page must be &quot;refreshed&quot; to see changes to the mailing status. Select &quot;Mailings&quot; in the left navigation to refresh the page and update the mailing status.)</li>
38
+ <li>When the mailing is done, the Status should change to &quot;completed&quot;</li>
39
+ </ul>
40
+ </p>
41
+ <p>When you have successfully completed the mailing, you should have a nice glass of single malt Scotch to congratulate yourself on your technical prowess.</p>
42
+
43
+
@@ -0,0 +1,131 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <!-- iReach template -->
5
+ <title><%= h(yield(:title) || "iReach Newsletter Manager") %></title>
6
+ <%= stylesheet_link_tag "i_reach/application", :media => "all" %>
7
+ <%= stylesheet_link_tag jqueryui_css_google_cdn('le-frog', '1.10.3') %>
8
+ <%= javascript_include_tag "i_reach/application" %>
9
+ <%= csrf_meta_tags %>
10
+
11
+ <% begin %>
12
+ <% if admin_nav_menu.present? %>
13
+ <script>
14
+ function showMenu(id, id2) {
15
+ <% for menuitem in admin_nav_menu %>
16
+ <% if menuitem.admin_menu && menuitem.admin_menu.length > 0 && menuitem.is_visible %>
17
+ elem = document.getElementById("menu_<%= menuitem.id %>")
18
+ if (elem) elem.style.display = "none";
19
+ <% for submenuitem in menuitem.admin_menu.order("menu_order ASC") %>
20
+ <% if submenuitem.admin_menu && submenuitem.admin_menu.length > 0 && submenuitem.is_visible %>
21
+ elem = document.getElementById("menu_<%= submenuitem.id %>")
22
+ if (elem) elem.style.display = "none";
23
+ <% end %>
24
+ <% end %>
25
+ <% end %>
26
+ <% end %>
27
+ document.getElementById("menu_"+id).style.display = "inline";
28
+ if (id2) document.getElementById("menu_"+id2).style.display = "inline";
29
+ }
30
+ </script>
31
+ <% end %>
32
+ <% rescue => e %>
33
+ <!-- Error building JS Menu <%= e.message %> <%= e.backtrace.join("\n") %> -->
34
+ <% end %>
35
+
36
+ <%= content_for :head %>
37
+ </head>
38
+ <body>
39
+
40
+
41
+
42
+ <table width="100%" border="0" cellspacing="0" cellpadding="0">
43
+ <tr>
44
+ <td><%= image_tag "i_reach/1topLeft.gif", width: "269", height:"85" %></td>
45
+ <td width="100%" align="left" background="/assets/i_reach/topMid.gif"><%= image_tag "i_reach/1topMidR.gif", width: "435", height: "85" %></td>
46
+ <td align="right"><%= image_tag "i_reach/1topRight.gif", width: "62", height: "85" %></td>
47
+ </tr>
48
+ </table>
49
+
50
+
51
+ <table width="100%" border="0" cellspacing="0" cellpadding="0">
52
+
53
+ <tr>
54
+ <td valign="top" bgcolor="#FFFFFF">
55
+ <table border="0" cellspacing="0" cellpadding="0" class="menu">
56
+ <tr>
57
+ <td valign="top"><%= image_tag "i_reach/menuMainLeft.gif", width: "7", height: "257" %></td>
58
+ <td valign="top" class="table-bk">
59
+ <!-- Start Admin Menu <%= @admin_nav_menu.inspect %> -->
60
+ <% begin %>
61
+ <% if admin_nav_menu.present? %>
62
+ <% for menuitem in admin_nav_menu %>
63
+ <% if menuitem.admin_menu && menuitem.admin_menu.length > 0 && menuitem.is_visible && menuitem.authorized(session[:admin][:user_id]) %>
64
+ <span class="category" onClick="javascript:showMenu(<%= menuitem.id %>, 0)" style="cursor:pointer"><%= menuitem.description %></span><br/>
65
+ <div id="menu_<%= menuitem.id %>" style="display:<%= (params[:menu_id].to_i == menuitem.id) ? 'inline' : 'none' %>">
66
+ <% for submenuitem in menuitem.admin_menu %>
67
+ <% if submenuitem.is_visible and submenuitem.authorized(session[:admin][:user_id]) %>
68
+ <% if submenuitem.admin_menu && submenuitem.admin_menu.length > 0 && submenuitem.is_visible && submenuitem.authorized(session[:admin][:user_id]) %>
69
+ &nbsp;&nbsp;&nbsp;<span class="menuSM" onClick="javascript:showMenu(<%= menuitem.id %>, <%= submenuitem.id %>)" style="cursor:pointer"><%= submenuitem.description %></span><br/>
70
+ <div id="menu_<%= submenuitem.id %>" style="display:<%= (params[:submenu_id].to_i == submenuitem.id) ? 'inline' : 'none' %>">
71
+ <% for subsubmenuitem in submenuitem.admin_menu %>
72
+ <% if subsubmenuitem.is_visible and subsubmenuitem.authorized(session[:admin][:user_id]) %>
73
+ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="menuSM"><%= link_to menuitem.description, "/#{submenuitem.path}?menu_id=#{submenuitem.id}" %></span><br/>
74
+ <% end %>
75
+ <% end %>
76
+ </div>
77
+ <% elsif submenuitem.is_visible and submenuitem.authorized(session[:admin][:user_id]) %>
78
+ &nbsp;&nbsp;&nbsp;<span class="menuSM"><%= link_to submenuitem.description, "/#{submenuitem.path}?menu_id=#{menuitem.id}" %></span><br/>
79
+ <% end %>
80
+ <% end %>
81
+ <% end %>
82
+ </div>
83
+ <hr class="line" />
84
+ <% elsif menuitem.is_visible and menuitem.authorized(session[:admin][:user_id]) %>
85
+ <%= link_to menuitem.description, "/#{menuitem.path}" %><br/>
86
+ <hr class="line" />
87
+ <% end %>
88
+ <% end %>
89
+ <% end %>
90
+ <% rescue => e %>
91
+ <!-- Error building Menu <%= e.message %> <%= e.backtrace.join("\n") %> -->
92
+ <% end %>
93
+ </td>
94
+ </tr>
95
+ <tr>
96
+ <td><%= image_tag "i_reach/menuBotLeft.gif", width: "7", height: "8" %></td>
97
+ <td><%= image_tag "i_reach/menuBot.gif", width: "176", height: "8" %></td></tr>
98
+ </table>
99
+
100
+
101
+
102
+
103
+ </td>
104
+ <td width="100%" valign="top" bgcolor="#FFFFFF" class="main">
105
+
106
+ <% flash.each do |name, msg| -%>
107
+ <%= content_tag :div, msg, :id => "flash_#{name}" %>
108
+ <% end -%>
109
+
110
+ <% if show_title? -%>
111
+ <h1><%=h yield(:title) %></h1>
112
+ <% end -%>
113
+
114
+ <%= yield %>
115
+
116
+ <%= yield :page_navigation %>
117
+ </td>
118
+
119
+ <td background="/assets/i_reach/1midRight.gif"><%= image_tag "i_reach/1midRight.gif", width: "62", height: "19" %></td>
120
+ </tr>
121
+ </table>
122
+
123
+ <table width="100%" border="0" cellspacing="0" cellpadding="0">
124
+ <tr>
125
+ <td width="100%" background="/assets/i_reach/1botMid.gif"><%= image_tag "i_reach/1botMid.gif", width: "13", height: "39" %></td>
126
+ <td align="right"><%= image_tag "i_reach/1botRight.gif", width: "62", height: "39" %></td>
127
+ </tr>
128
+ </table>
129
+
130
+ </body>
131
+ </html>
@@ -1,14 +1,76 @@
1
1
  <!DOCTYPE html>
2
2
  <html>
3
3
  <head>
4
- <title>IReach</title>
4
+ <!-- iReach template -->
5
+ <title><%= h(yield(:title) || "iReach Newsletter Manager") %></title>
5
6
  <%= stylesheet_link_tag "i_reach/application", :media => "all" %>
7
+ <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/themes/le-frog/jquery-ui.css" media="screen" rel="stylesheet" type="text/css" />
6
8
  <%= javascript_include_tag "i_reach/application" %>
7
9
  <%= csrf_meta_tags %>
10
+ <%= content_for :head %>
8
11
  </head>
9
12
  <body>
10
13
 
11
- <%= yield %>
14
+
15
+
16
+ <table width="100%" border="0" cellspacing="0" cellpadding="0">
17
+ <tr>
18
+ <td><%= image_tag "i_reach/1topLeft.gif", width: "269", height:"85" %></td>
19
+ <td width="100%" align="left" background="/assets/i_reach/topMid.gif"><%= image_tag "i_reach/1topMidR.gif", width: "435", height: "85" %></td>
20
+ <td align="right"><%= image_tag "i_reach/1topRight.gif", width: "62", height: "85" %></td>
21
+ </tr>
22
+ </table>
23
+
24
+
25
+ <table width="100%" border="0" cellspacing="0" cellpadding="0">
26
+
27
+ <tr>
28
+ <td valign="top" bgcolor="#FFFFFF">
29
+ <table border="0" cellspacing="0" cellpadding="0" class="menu">
30
+ <tr>
31
+ <td valign="top"><%= image_tag "i_reach/menuMainLeft.gif", width: "7", height: "257" %></td>
32
+ <td valign="top" class="table-bk">
33
+ <div id="menu" style="display: inline;">
34
+ &nbsp;&nbsp;&nbsp;<span class="menuSM"><a href="/admin/newsletter/newsletters?menu_id=11">Newsletters</a></span><br>
35
+ &nbsp;&nbsp;&nbsp;<span class="menuSM"><a href="/admin/newsletter/designs?menu_id=11">Designs</a></span><br>
36
+ &nbsp;&nbsp;&nbsp;<span class="menuSM"><a href="/admin/mail_manager/contacts?menu_id=11">Contacts</a></span><br>
37
+ &nbsp;&nbsp;&nbsp;<span class="menuSM"><a href="/admin/mail_manager/mailings?menu_id=11">Mailings</a></span><br>
38
+ &nbsp;&nbsp;&nbsp;<span class="menuSM"><a href="/admin/mail_manager/mailing_lists?menu_id=11">Mailing Lists</a></span><br>
39
+ &nbsp;&nbsp;&nbsp;<span class="menuSM"><a href="/admin/mail_manager/bounces?menu_id=11">Bounces</a></span><br>
40
+ </div>
41
+ </td>
42
+ </tr>
43
+ <tr>
44
+ <td><%= image_tag "i_reach/menuBotLeft.gif", width: "7", height: "8" %></td>
45
+ <td><%= image_tag "i_reach/menuBot.gif", width: "176", height: "8" %></td>
46
+ </tr>
47
+ </table>
48
+ </td>
49
+ <td width="100%" valign="top" bgcolor="#FFFFFF" class="main">
50
+
51
+ <% flash.each do |name, msg| -%>
52
+ <%= content_tag :div, msg, :id => "flash_#{name}" %>
53
+ <% end -%>
54
+
55
+ <% if show_title? -%>
56
+ <h1><%=h yield(:title) %></h1>
57
+ <% end -%>
58
+
59
+ <%= yield %>
60
+
61
+ <%= yield :page_navigation %>
62
+ </td>
63
+
64
+ <td background="/assets/i_reach/1midRight.gif"><%= image_tag "i_reach/1midRight.gif", width: "62", height: "19" %></td>
65
+ </tr>
66
+ </table>
67
+
68
+ <table width="100%" border="0" cellspacing="0" cellpadding="0">
69
+ <tr>
70
+ <td width="100%" background="/assets/i_reach/1botMid.gif"><%= image_tag "i_reach/1botMid.gif", width: "13", height: "39" %></td>
71
+ <td align="right"><%= image_tag "i_reach/1botRight.gif", width: "62", height: "39" %></td>
72
+ </tr>
73
+ </table>
12
74
 
13
75
  </body>
14
76
  </html>
@@ -0,0 +1,2 @@
1
+ Public Home
2
+ <%= yield %>
data/config/routes.rb CHANGED
@@ -1,3 +1,5 @@
1
1
  IReach::Engine.routes.draw do
2
2
  mount MailManager::Engine, at: '/admin/mail_manager'
3
+ mount Newsletter::Engine, at: '/admin/newsletter'
4
+ get '/admin' => 'welcome#index'
3
5
  end
data/config/spring.rb ADDED
@@ -0,0 +1 @@
1
+ Spring.application_root = './spec/dummy'
@@ -3,3 +3,10 @@ module IReach
3
3
  isolate_namespace IReach
4
4
  end
5
5
  end
6
+ IReach::Engine.config.to_prepare do
7
+ ApplicationController.helper(LayoutHelper)
8
+ MailManager::ApplicationController.layout('i_reach/application')
9
+ MailManager::ApplicationController.helper(LayoutHelper)
10
+ Newsletter::ApplicationController.layout('i_reach/application')
11
+ Newsletter::ApplicationController.helper(LayoutHelper)
12
+ end
@@ -1,3 +1,3 @@
1
1
  module IReach
2
- VERSION = "0.0.2"
2
+ VERSION = "0.1.0"
3
3
  end
data/lib/i_reach.rb CHANGED
@@ -1,4 +1,8 @@
1
1
  require "i_reach/engine"
2
-
2
+ require 'jquery-rails'
3
+ require 'jquery-ui-rails'
4
+ require 'jquery-ui-themes'
5
+ require 'mail_manager'
6
+ require 'newsletter'
3
7
  module IReach
4
8
  end
metadata CHANGED
@@ -1,14 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: i_reach
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christopher Hauboldt
8
+ - Ken Biggs
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-09-30 00:00:00.000000000 Z
12
+ date: 2014-10-09 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: rails
@@ -24,6 +25,48 @@ dependencies:
24
25
  - - ~>
25
26
  - !ruby/object:Gem::Version
26
27
  version: 3.2.19
28
+ - !ruby/object:Gem::Dependency
29
+ name: jquery-rails
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ! '>='
33
+ - !ruby/object:Gem::Version
34
+ version: '0'
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ! '>='
40
+ - !ruby/object:Gem::Version
41
+ version: '0'
42
+ - !ruby/object:Gem::Dependency
43
+ name: jquery-ui-rails
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ! '>='
47
+ - !ruby/object:Gem::Version
48
+ version: '0'
49
+ type: :runtime
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: jquery-ui-themes
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ! '>='
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
27
70
  - !ruby/object:Gem::Dependency
28
71
  name: mail_manager
29
72
  requirement: !ruby/object:Gem::Requirement
@@ -133,13 +176,42 @@ files:
133
176
  - app/assets/images/i_reach/top_inner.gif
134
177
  - app/assets/images/i_reach/top_shaded.gif
135
178
  - app/assets/javascripts/i_reach/application.js
179
+ - app/assets/javascripts/i_reach/jquery-ui-timepicker-addon.js
136
180
  - app/assets/stylesheets/i_reach/admin.css
137
181
  - app/assets/stylesheets/i_reach/application.css
138
182
  - app/assets/stylesheets/i_reach/nav.css
183
+ - app/assets/stylesheets/i_reach/timepicker.css
139
184
  - app/controllers/i_reach/application_controller.rb
185
+ - app/controllers/i_reach/welcome_controller.rb
140
186
  - app/helpers/i_reach/application_helper.rb
187
+ - app/helpers/layout_helper.rb
188
+ - app/views/admin/_admin_menu_navigation.html.erb
189
+ - app/views/admin/admin_user/_form.html.erb
190
+ - app/views/admin/admin_user/edit.html.erb
191
+ - app/views/admin/admin_user/list.html.erb
192
+ - app/views/admin/admin_user/new.html.erb
193
+ - app/views/admin/admin_user/show.html.erb
194
+ - app/views/admin/home/index.html.erb
195
+ - app/views/admin/menu/_form.html.erb
196
+ - app/views/admin/menu/edit.html.erb
197
+ - app/views/admin/menu/export.html.erb
198
+ - app/views/admin/menu/imp_exp.html.erb
199
+ - app/views/admin/menu/import.html.erb
200
+ - app/views/admin/menu/list.html.erb
201
+ - app/views/admin/menu/new.html.erb
202
+ - app/views/admin/menu/show.html.erb
203
+ - app/views/admin/user/_form.html.erb
204
+ - app/views/admin/user/edit.html.erb
205
+ - app/views/admin/user/list.html.erb
206
+ - app/views/admin/user/new.html.erb
207
+ - app/views/admin/user/show.html.erb
208
+ - app/views/client/index.html.erb
209
+ - app/views/i_reach/welcome/index.html.erb
210
+ - app/views/layouts/i_reach/admin.html.erb
141
211
  - app/views/layouts/i_reach/application.html.erb
212
+ - app/views/public/index.html.erb
142
213
  - config/routes.rb
214
+ - config/spring.rb
143
215
  - lib/i_reach.rb
144
216
  - lib/i_reach/engine.rb
145
217
  - lib/i_reach/version.rb