i_reach 3.0.1 → 3.2.2
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.
- checksums.yaml +5 -13
- data/README.md +29 -17
- data/app/assets/images/i_reach/BottomRight.gif +0 -0
- data/app/assets/images/i_reach/MidRight.gif +0 -0
- data/app/assets/images/i_reach/{1topMidR.gif → TopCenter.gif} +0 -0
- data/app/assets/images/i_reach/TopRight.gif +0 -0
- data/app/assets/images/i_reach/iReach_logo.gif +0 -0
- data/app/assets/images/i_reach/topMid.gif +0 -0
- data/app/assets/javascripts/i_reach/application.js +2 -0
- data/app/assets/stylesheets/i_reach/admin.css +111 -57
- data/app/assets/stylesheets/i_reach/nav.css +44 -17
- data/app/assets/stylesheets/i_reach/timepicker.css +44 -1
- data/app/views/layouts/i_reach/application.html.erb +30 -55
- data/config/routes.rb +3 -2
- data/lib/generators/i_reach/layout_generator.rb +16 -0
- data/lib/i_reach/engine.rb +1 -0
- data/lib/i_reach/version.rb +1 -1
- metadata +31 -77
- data/app/assets/images/i_reach/1botLeft.gif +0 -0
- data/app/assets/images/i_reach/1botMid.gif +0 -0
- data/app/assets/images/i_reach/1botRight.gif +0 -0
- data/app/assets/images/i_reach/1midRight.gif +0 -0
- data/app/assets/images/i_reach/1topLeft.gif +0 -0
- data/app/assets/images/i_reach/1topMid.gif +0 -0
- data/app/assets/images/i_reach/1topRight.gif +0 -0
- data/app/assets/images/i_reach/HB2sunset.gif +0 -0
- data/app/assets/images/i_reach/Miracle-Ear-Logo.gif +0 -0
- data/app/assets/images/i_reach/bill_tracking.gif +0 -0
- data/app/assets/images/i_reach/bill_tracking2.gif +0 -0
- data/app/assets/images/i_reach/button_imgs/button.gif +0 -0
- data/app/assets/images/i_reach/button_imgs/button1.gif +0 -0
- data/app/assets/images/i_reach/button_imgs/button2.gif +0 -0
- data/app/assets/images/i_reach/button_imgs/end.gif +0 -0
- data/app/assets/images/i_reach/button_imgs/end1.gif +0 -0
- data/app/assets/images/i_reach/button_imgs/end2.gif +0 -0
- data/app/assets/images/i_reach/conference2009.gif +0 -0
- data/app/assets/images/i_reach/conv13_logo_harris.html +0 -0
- data/app/assets/images/i_reach/convention2009.gif +0 -0
- data/app/assets/images/i_reach/convention2009_sm.gif +0 -0
- data/app/assets/images/i_reach/haesly_fitting_client.tif +0 -0
- data/app/assets/images/i_reach/hr.gif +0 -0
- data/app/assets/images/i_reach/line.gif +0 -0
- data/app/assets/images/i_reach/menuArrow.gif +0 -0
- data/app/assets/images/i_reach/menuBot.gif +0 -0
- data/app/assets/images/i_reach/menuBotLeft.gif +0 -0
- data/app/assets/images/i_reach/menuBotMid.gif +0 -0
- data/app/assets/images/i_reach/menuBotRight.gif +0 -0
- data/app/assets/images/i_reach/menuMain.gif +0 -0
- data/app/assets/images/i_reach/menuMainLeft.gif +0 -0
- data/app/assets/images/i_reach/menuMidLeft.gif +0 -0
- data/app/assets/images/i_reach/menuMidRight.gif +0 -0
- data/app/assets/images/i_reach/menuMidRight2.gif +0 -0
- data/app/assets/images/i_reach/menuTopLeft.gif +0 -0
- data/app/assets/images/i_reach/menuTopMid.gif +0 -0
- data/app/assets/images/i_reach/menuTopRight.gif +0 -0
- data/app/assets/images/i_reach/menu_bg_bottom.gif +0 -0
- data/app/assets/images/i_reach/menu_bg_off.gif +0 -0
- data/app/assets/images/i_reach/menu_bg_over.gif +0 -0
- data/app/assets/images/i_reach/oldred_bar1.gif +0 -0
- data/app/assets/images/i_reach/red_bar1.gif +0 -0
- data/app/assets/images/i_reach/red_bar2.gif +0 -0
- data/app/assets/images/i_reach/redspace_long.gif +0 -0
- data/app/assets/images/i_reach/riverwalk_banner.html +0 -0
- data/app/assets/images/i_reach/small_arrow.gif +0 -0
- data/app/assets/images/i_reach/small_dot.gif +0 -0
- data/app/assets/images/i_reach/texas_flag_498_90.gif +0 -0
- data/app/assets/images/i_reach/top.gif +0 -0
- data/app/assets/images/i_reach/top_inner.gif +0 -0
- data/app/assets/images/i_reach/top_shaded.gif +0 -0
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
NzUwNTUzZDZkZjUwZGUwN2U1ZGE5ZGJkZDNlN2I2NzJhNDFlNjkwMw==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: ea564797f5bdaa0820ba85e4e01760f6ac0f8550
|
4
|
+
data.tar.gz: d453bbc775360982825a78b02de486c094957401
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
MjNkYmJjMDNmNjg1OTMyZWY5Njk3MWJmZGNlNTAxNjI0MjQzZWI1YjgzNjUx
|
11
|
-
M2NhNWY2YTM4ODJiZmQwN2YxYmFiOTFhNTg0NGRiMzlhN2RjNTU=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
Y2U4Y2M5MzQ1MjZkMmY0NTY0ZTI3ZWNiZWY3MzU4MzQwNjVhZDkxYmNlZjM2
|
14
|
-
OTk0OWQ4Mzg4MmM0ZmJjNTQ2NGNlNWUyZDA1NDc2ZGQ2NjE3MGZkMzZhNGFh
|
15
|
-
ZjlhY2U4NDk5OWRjZWEzZDIwZDFiMDM1ODAwYTA3MzEzMWMxNGE=
|
6
|
+
metadata.gz: 6ed827f61d091eb979122b48fa15473c73c85a374beea4a9d3d23a8bcba4a1a5546f015dd23f0845fd4f63236e427bb4646e48f2bbfc133870ab848e73547128
|
7
|
+
data.tar.gz: daf4ad9c4341244c0828ff0c8345b3d053538dbce7a491e28fea3431ed92b04c3ba6068c9a3054bf4500fadd22ba3d1975aa941bcba4660b97e9f43f36561478
|
data/README.md
CHANGED
@@ -9,62 +9,74 @@ Requirements
|
|
9
9
|
* Rails 3.2.x
|
10
10
|
* Ruby 1.9.3-x
|
11
11
|
* [Bundler](http://bundler.io)
|
12
|
+
* [Delayed::Job](https://github.com/collectiveidea/delayed_job/) - (currently the only queue job runner we support)
|
12
13
|
|
13
14
|
Optional Dependencies
|
14
15
|
---------------------
|
15
|
-
* [RVM](http://rvm.io)
|
16
|
+
* [RVM](http://rvm.io) - How we control our ruby environment(mainly concerns development)
|
16
17
|
|
17
18
|
Installation
|
18
19
|
-----------
|
19
20
|
* install rvm/ruby 1.9.3/bundler/rails 3.2.x then run the following or skip ahead to the next step if you already have a rails 3.2.x app
|
20
21
|
* new rails app where you want to not use 'test' and want to use mysql
|
21
|
-
|
22
|
+
|
23
|
+
rails new MyApp -T --skip-bundle -d mysql
|
22
24
|
* or optionally a default rails app
|
23
|
-
|
24
|
-
|
25
|
+
rails new MyApp
|
26
|
+
cd MyApp
|
25
27
|
|
26
28
|
* edit your Gemfile
|
27
|
-
|
29
|
+
|
30
|
+
gem 'i_reach'
|
28
31
|
* uncomment the ruby racer line ... or pick another JS gem
|
29
|
-
|
32
|
+
gem 'therubyracer', :platforms => :ruby`
|
30
33
|
* add any other gems you like
|
31
34
|
|
32
35
|
* bundle your gems
|
33
|
-
|
36
|
+
|
37
|
+
bundle install
|
34
38
|
|
35
39
|
* configure your database(unless already configured) edit config/database.yml
|
36
40
|
|
37
41
|
* NOTE: you may need to prefix everything with `bundle exec` assuming you're using bundler
|
38
42
|
|
39
43
|
* create(unless already created) the database
|
40
|
-
|
44
|
+
|
45
|
+
rake db:create # this doesn't always work... you may need to use your normal client & set up permissions
|
41
46
|
|
42
47
|
* configure [mail_manager](https://github.com/LoneStarInternet/mail_manager)
|
43
48
|
* generate and configure the mail manager settings file at config/mail_manager.yml: (replace table prefix with something... or nothing if you don't want to scope it)
|
44
|
-
|
49
|
+
|
50
|
+
rake mail_manager:default_app_config[table_prefix]
|
45
51
|
|
46
52
|
* generate migrations
|
47
|
-
|
53
|
+
|
54
|
+
rake mail_manager:import_migrations
|
48
55
|
|
49
56
|
* generate delayed_jobs (this is the only job runner we support right now)
|
50
|
-
|
57
|
+
|
58
|
+
rails g delayed_job:active_record
|
51
59
|
|
52
60
|
* NOTE: you need to create an email account that will receive bounces from your mailings(and allow POP)... configure in the following file:
|
53
61
|
|
54
62
|
* configure [newsletter](https://github.com/LoneStarInternet/newsletter)
|
55
63
|
* generate and configure the newsletter settings file at config/newsletter.yml: (replace table prefix with something... or nothing if you don't want to scope it)
|
56
|
-
|
64
|
+
|
65
|
+
rake newsletter:default_app_config[table_prefix]
|
57
66
|
|
58
67
|
* generate migrations
|
59
|
-
|
68
|
+
|
69
|
+
rake newsletter:import_migrations
|
60
70
|
|
61
71
|
* migrate the database
|
62
|
-
|
72
|
+
|
73
|
+
rake db:migrate
|
63
74
|
|
64
75
|
* create bounce job to check for emails that have bounced from your mailings
|
65
|
-
|
76
|
+
rake mail_manager:create_delayed_jobs
|
66
77
|
|
67
78
|
* mount IReach routes (you can say where by using at: /path) in config/routes.rb
|
68
|
-
|
69
|
-
|
79
|
+
|
80
|
+
mount IReach::Engine => "/"
|
81
|
+
root to: 'i_reach/welcome#index'
|
70
82
|
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -7,6 +7,21 @@ body {
|
|
7
7
|
background:#fdba59;
|
8
8
|
}
|
9
9
|
|
10
|
+
#top {
|
11
|
+
background-image: url('/assets/i_reach/topMid.gif');
|
12
|
+
height: 85px;
|
13
|
+
min-width: 766px;
|
14
|
+
}
|
15
|
+
|
16
|
+
.menu_expand {
|
17
|
+
cursor: pointer;
|
18
|
+
}
|
19
|
+
|
20
|
+
span.menu_expand:hover {
|
21
|
+
color: #fc6;
|
22
|
+
}
|
23
|
+
|
24
|
+
/*
|
10
25
|
img {
|
11
26
|
display: block;
|
12
27
|
}
|
@@ -26,13 +41,29 @@ img {
|
|
26
41
|
width:100%;
|
27
42
|
float:left;
|
28
43
|
}
|
29
|
-
|
44
|
+
*/
|
30
45
|
h1 {
|
31
46
|
font-size: 16pt;
|
32
47
|
color: #599c41;
|
33
48
|
}
|
34
49
|
|
50
|
+
h2.list_group {
|
51
|
+
padding-bottom: 0;
|
52
|
+
margin-bottom: 0;
|
53
|
+
font-size: 12pt;
|
54
|
+
}
|
55
|
+
|
56
|
+
#page_content {
|
57
|
+
overflow: hidden;
|
58
|
+
background-image: url('/assets/i_reach/MidRight.gif');
|
59
|
+
background-repeat: repeat-y;
|
60
|
+
background-position: right;
|
61
|
+
padding: 10px 40px 10px 10px;
|
62
|
+
min-height: 300px;
|
63
|
+
}
|
64
|
+
|
35
65
|
/*Content------------------------------------------------*/
|
66
|
+
/*
|
36
67
|
#content {
|
37
68
|
margin:0;
|
38
69
|
padding:10px 15px 15px 15px;
|
@@ -45,7 +76,7 @@ h1 {
|
|
45
76
|
font-family:Arial, Helvetica, sans-serif;
|
46
77
|
font-size: 14px;
|
47
78
|
}
|
48
|
-
|
79
|
+
*/
|
49
80
|
hr {
|
50
81
|
margin: 0 0 0 10px;
|
51
82
|
width: 620px;
|
@@ -114,6 +145,11 @@ label {font-size: 11pt;
|
|
114
145
|
font-weight: bold;
|
115
146
|
text-align: right;
|
116
147
|
color:#555;
|
148
|
+
width: 145px;
|
149
|
+
float:left;
|
150
|
+
display: block;
|
151
|
+
text-align: right;
|
152
|
+
padding: 7px 7px 0 0;
|
117
153
|
}
|
118
154
|
|
119
155
|
input, select, textarea {
|
@@ -129,72 +165,73 @@ input, select, textarea {
|
|
129
165
|
|
130
166
|
/*Input style buttons within table*/
|
131
167
|
|
168
|
+
|
132
169
|
input.button {
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
170
|
+
background: #ffd04f;
|
171
|
+
background-image: -webkit-linear-gradient(top, #ffd04f, #faeabe);
|
172
|
+
background-image: -moz-linear-gradient(top, #ffd04f, #faeabe);
|
173
|
+
background-image: -ms-linear-gradient(top, #ffd04f, #faeabe);
|
174
|
+
background-image: -o-linear-gradient(top, #ffd04f, #faeabe);
|
175
|
+
background-image: linear-gradient(to bottom, #ffd04f, #faeabe);
|
176
|
+
-webkit-border-radius: 12;
|
177
|
+
-moz-border-radius: 12;
|
178
|
+
border-radius: 10px;
|
179
|
+
padding: 0 10px;
|
180
|
+
border: solid #669421 1px;
|
140
181
|
text-decoration: none;
|
141
|
-
font-
|
182
|
+
font-size: 11pt;
|
142
183
|
font-weight: bold;
|
143
|
-
border: 0;
|
144
|
-
background: url(/assets/i_reach/button_imgs/button1.gif) no-repeat;
|
145
184
|
color: #555;
|
146
|
-
|
147
|
-
|
148
|
-
/* used to catch the buttonEnding */
|
149
|
-
position: relative;
|
150
|
-
cursor: pointer;
|
185
|
+
margin-right: 10px;
|
186
|
+
cursor: pointer;
|
151
187
|
}
|
152
188
|
|
153
189
|
input.button:hover {
|
154
|
-
|
190
|
+
background: #bafc56;
|
191
|
+
background-image: -webkit-linear-gradient(top, #bafc56, #f7ffeb);
|
192
|
+
background-image: -moz-linear-gradient(top, #bafc56, #f7ffeb);
|
193
|
+
background-image: -ms-linear-gradient(top, #bafc56, #f7ffeb);
|
194
|
+
background-image: -o-linear-gradient(top, #bafc56, #f7ffeb);
|
195
|
+
background-image: linear-gradient(to bottom, #bafc56, #f7ffeb);
|
196
|
+
text-decoration: none;
|
155
197
|
}
|
156
198
|
|
157
199
|
a.button:link, a.button:visited {
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
200
|
+
/* background: #a6f038;
|
201
|
+
background-image: -webkit-linear-gradient(top, #a6f038, #f4ffe3);
|
202
|
+
background-image: -moz-linear-gradient(top, #a6f038, #f4ffe3);
|
203
|
+
background-image: -ms-linear-gradient(top, #a6f038, #f4ffe3);
|
204
|
+
background-image: -o-linear-gradient(top, #a6f038, #f4ffe3);
|
205
|
+
background-image: linear-gradient(to bottom, #a6f038, #f4ffe3);*/
|
206
|
+
/* freaky orange background */
|
207
|
+
background: #ffd04f;
|
208
|
+
background-image: -webkit-linear-gradient(top, #ffd04f, #faeabe);
|
209
|
+
background-image: -moz-linear-gradient(top, #ffd04f, #faeabe);
|
210
|
+
background-image: -ms-linear-gradient(top, #ffd04f, #faeabe);
|
211
|
+
background-image: -o-linear-gradient(top, #ffd04f, #faeabe);
|
212
|
+
background-image: linear-gradient(to bottom, #ffd04f, #faeabe);
|
213
|
+
-webkit-border-radius: 10;
|
214
|
+
-moz-border-radius: 10;
|
215
|
+
border-radius: 10px;
|
216
|
+
padding: 2px 10px 1px 10px;
|
217
|
+
border: solid #669421 1px;
|
218
|
+
text-decoration: none;
|
162
219
|
font-size: 11pt;
|
163
220
|
font-weight: bold;
|
164
|
-
text-decoration: none;
|
165
|
-
border: 0;
|
166
|
-
background: url(/assets/i_reach/button_imgs/button1.gif) no-repeat;
|
167
221
|
color: #555;
|
168
|
-
|
169
|
-
/*
|
170
|
-
position: relative;
|
222
|
+
margin-right: 10px;
|
223
|
+
/* do I need this? */
|
171
224
|
cursor: pointer;
|
172
225
|
}
|
173
226
|
|
174
227
|
a.button:hover {
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
margin-left: -10px;
|
183
|
-
/* Firefox doesn't like the margin-top below */
|
184
|
-
margin-top: 6px;
|
185
|
-
width: 17px;
|
186
|
-
height: 22px;
|
187
|
-
background: url(/assets/i_reach/button_imgs/end1.gif) no-repeat;
|
188
|
-
}
|
189
|
-
|
190
|
-
div.linkbuttonEnding{
|
191
|
-
position: absolute;
|
192
|
-
display: inline;
|
193
|
-
margin-left: -6px;
|
194
|
-
margin-top: -3px;
|
195
|
-
width: 17px;
|
196
|
-
height: 22px;
|
197
|
-
background: url(/assets/i_reach/button_imgs/end1.gif) no-repeat;
|
228
|
+
background: #bafc56;
|
229
|
+
background-image: -webkit-linear-gradient(top, #bafc56, #f7ffeb);
|
230
|
+
background-image: -moz-linear-gradient(top, #bafc56, #f7ffeb);
|
231
|
+
background-image: -ms-linear-gradient(top, #bafc56, #f7ffeb);
|
232
|
+
background-image: -o-linear-gradient(top, #bafc56, #f7ffeb);
|
233
|
+
background-image: linear-gradient(to bottom, #bafc56, #f7ffeb);
|
234
|
+
text-decoration: none;
|
198
235
|
}
|
199
236
|
|
200
237
|
.newsletter_parts_group {
|
@@ -202,15 +239,32 @@ div.linkbuttonEnding{
|
|
202
239
|
padding: 0 5px 5px 15px;
|
203
240
|
border: thin dashed #599c41;
|
204
241
|
background-color: #eee;
|
242
|
+
width: 755px;
|
205
243
|
}
|
206
244
|
|
207
|
-
a:link{
|
245
|
+
a:link {
|
208
246
|
color: #F60;
|
209
|
-
text-decoration:none;
|
247
|
+
text-decoration:none;
|
248
|
+
}
|
210
249
|
|
211
|
-
a:visited{
|
250
|
+
a:visited {
|
212
251
|
color:#F60;
|
213
|
-
text-decoration:none;
|
252
|
+
text-decoration:none;
|
253
|
+
}
|
254
|
+
|
255
|
+
a:hover {
|
256
|
+
color: #efaa45;
|
257
|
+
}
|
258
|
+
|
259
|
+
.submit_button {
|
260
|
+
width: 500px;
|
261
|
+
text-align: right;
|
262
|
+
}
|
214
263
|
|
215
|
-
|
216
|
-
|
264
|
+
.mailing_lists_group {
|
265
|
+
margin-top: 10px;
|
266
|
+
padding: 0 5px 5px 15px;
|
267
|
+
border: thin dashed black;
|
268
|
+
background-color: #eee;
|
269
|
+
width: 500px;
|
270
|
+
}
|
@@ -8,31 +8,58 @@
|
|
8
8
|
|
9
9
|
}
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
11
|
+
#menu {font-size: 10pt;
|
12
|
+
float: left;
|
13
|
+
padding-left: 3px;
|
14
|
+
padding-bottom: 10px;
|
15
|
+
margin: 0 5px 5px 0;
|
16
|
+
/*border-right: 1px solid #fdba59;
|
17
|
+
border-bottom: 1px solid #fdba59;*/
|
18
|
+
font-family: helvetica, arial, sans-serif;
|
19
|
+
font-weight: bold;
|
20
|
+
line-height: 12pt;
|
21
|
+
color: #000000;
|
22
|
+
width:176px;
|
23
|
+
background: #8fc23f; /* Old browsers */
|
24
|
+
background: -moz-linear-gradient(top, #8fc23f 0%, #b2d57b 50%, #fffffe 100%); /* FF3.6+ */
|
25
|
+
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#8fc23f), color-stop(50%,#b2d57b), color-stop(100%,#fffffe)); /* Chrome,Safari4+ */
|
26
|
+
background: -webkit-linear-gradient(top, #8fc23f 0%,#b2d57b 50%,#fffffe 100%); /* Chrome10+,Safari5.1+ */
|
27
|
+
background: -o-linear-gradient(top, #8fc23f 0%,#b2d57b 50%,#fffffe 100%); /* Opera 11.10+ */
|
28
|
+
background: -ms-linear-gradient(top, #8fc23f 0%,#b2d57b 50%,#fffffe 100%); /* IE10+ */
|
29
|
+
background: linear-gradient(to bottom, #8fc23f 0%,#b2d57b 50%,#fffffe 100%); /* W3C */
|
30
|
+
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8fc23f', endColorstr='#fffffe',GradientType=0 ); /* IE6-9 */
|
31
|
+
}
|
32
|
+
|
33
|
+
#menu a:link { color: #000000; text-decoration: none; }
|
34
|
+
#menu a:visited { color: #000000; text-decoration: none; }
|
35
|
+
#menu a:active { color: #000000; text-decoration: none; }
|
36
|
+
#menu a:hover { color: #Fc6; text-decoration: none; }
|
37
|
+
|
38
|
+
#menu ul {
|
39
|
+
padding-left: 10px;
|
40
|
+
list-style: outside none none;
|
41
|
+
}
|
22
42
|
|
23
|
-
|
43
|
+
#menu ul li {
|
44
|
+
border-bottom: 1px solid #fff;
|
45
|
+
}
|
46
|
+
|
47
|
+
#menu ul li ul {
|
48
|
+
padding-left: 20px;
|
49
|
+
list-style: outside none none;
|
50
|
+
}
|
24
51
|
|
25
|
-
|
52
|
+
#menu ul li ul li {font-size: 9pt;
|
26
53
|
font-family: helvetica, arial, sans-serif;
|
27
54
|
font-weight: bold;
|
28
55
|
line-height: 12pt;
|
29
56
|
color: #a42529;
|
57
|
+
border: none;
|
30
58
|
|
31
59
|
}
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
.menuSM a:hover { color:#FC6; text-decoration: none; }
|
60
|
+
#menu ul li ul li a:link { color:#C18100; text-decoration: none; }
|
61
|
+
#menu ul li ul li a:visited { color:#a42529; text-decoration: none; }
|
62
|
+
#menu ul li ul li a:hover { color:#FC6; text-decoration: none; }
|
36
63
|
|
37
64
|
.table-bk {
|
38
65
|
background: url(/assets/i_reach/menuMain.gif) no-repeat top right;
|
@@ -8,4 +8,47 @@
|
|
8
8
|
.ui-timepicker-rtl{ direction: rtl; }
|
9
9
|
.ui-timepicker-rtl dl { text-align: right; padding: 0 5px 0 0; }
|
10
10
|
.ui-timepicker-rtl dl dt{ float: right; clear: right; }
|
11
|
-
.ui-timepicker-rtl dl dd { margin: 0 45% 10px 10px; }
|
11
|
+
.ui-timepicker-rtl dl dd { margin: 0 45% 10px 10px; }
|
12
|
+
.ui-tooltip, .arrow:after {
|
13
|
+
background: #285c00;
|
14
|
+
border: 2px solid #45930b;
|
15
|
+
}
|
16
|
+
.ui-tooltip {
|
17
|
+
padding: 10px 20px;
|
18
|
+
color: white;
|
19
|
+
border-radius: 20px;
|
20
|
+
font: bold 14px "Helvetica Neue", Sans-Serif;
|
21
|
+
box-shadow: 0 0 7px black;
|
22
|
+
}
|
23
|
+
.arrow {
|
24
|
+
width: 70px;
|
25
|
+
height: 16px;
|
26
|
+
overflow: hidden;
|
27
|
+
position: absolute;
|
28
|
+
left: 50%;
|
29
|
+
margin-left: -35px;
|
30
|
+
bottom: -16px;
|
31
|
+
}
|
32
|
+
.arrow.top {
|
33
|
+
top: -16px;
|
34
|
+
bottom: auto;
|
35
|
+
}
|
36
|
+
.arrow.left {
|
37
|
+
left: 20%;
|
38
|
+
}
|
39
|
+
.arrow:after {
|
40
|
+
content: "";
|
41
|
+
position: absolute;
|
42
|
+
left: 20px;
|
43
|
+
top: -20px;
|
44
|
+
width: 25px;
|
45
|
+
height: 25px;
|
46
|
+
box-shadow: 6px 5px 9px -9px black;
|
47
|
+
-webkit-transform: rotate(45deg);
|
48
|
+
-ms-transform: rotate(45deg);
|
49
|
+
transform: rotate(45deg);
|
50
|
+
}
|
51
|
+
.arrow.top:after {
|
52
|
+
bottom: -20px;
|
53
|
+
top: auto;
|
54
|
+
}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<!DOCTYPE html>
|
2
|
-
<html>
|
2
|
+
<html lang='en'>
|
3
3
|
<head>
|
4
|
-
<!-- iReach
|
5
|
-
<title><%= h(
|
4
|
+
<!-- iReach application.html.rb -->
|
5
|
+
<title><%= h(@page_title || "iReach Newsletter Manager") %></title>
|
6
6
|
<%= stylesheet_link_tag "i_reach/application", :media => "all" %>
|
7
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" />
|
8
8
|
<%= javascript_include_tag "i_reach/application" %>
|
@@ -10,44 +10,30 @@
|
|
10
10
|
<%= content_for :head %>
|
11
11
|
</head>
|
12
12
|
<body>
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
<
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
</
|
23
|
-
|
24
|
-
|
25
|
-
<
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
<span class="menuSM"><a href="/admin/mail_manager/mailings?menu_id=11">Mailings</a></span><br>
|
38
|
-
<span class="menuSM"><a href="/admin/mail_manager/mailing_lists?menu_id=11">Mailing Lists</a></span><br>
|
39
|
-
<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
|
-
|
13
|
+
<div id="top"><%= image_tag "i_reach/iReach_logo.gif", width: "269", height:"85", style: "float: left;" %><%= image_tag "i_reach/TopCenter.gif", width: "435", height: "85", style: "float: left;" %><%= image_tag "i_reach/TopRight.gif", width: "62", height: "85", style: "float: right;" %> </div>
|
14
|
+
<div style="background-color: #fff;">
|
15
|
+
<div id="menu">
|
16
|
+
<ul>
|
17
|
+
<li><a href="/admin">Home</a></li>
|
18
|
+
<li><span onClick="$('#setup_submenu').toggle();return false" class="menu_expand">Setup</span>
|
19
|
+
<ul id='setup_submenu' <%= ' style="display:none"'.html_safe unless request.path =~ %r#/newsletter/designs|setup# %>>
|
20
|
+
<%= content_tag(:li, link_to('Newsletter Designs', news.designs_path)) if can?(:manage, Newsletter::Design) %>
|
21
|
+
</ul>
|
22
|
+
</li>
|
23
|
+
<%= content_tag(:li, link_to('Newsletters', news.newsletters_path)) if can?(:manage, Newsletter::Newsletter) %>
|
24
|
+
<% if can?(:manage, MailManager::Mailing) %>
|
25
|
+
<li><span onClick="$('#mailings_submenu').toggle();return false" class="menu_expand">Mailings</span>
|
26
|
+
<ul id='mailings_submenu' <%= ' style="display:none"'.html_safe unless request.path =~ %r|/mail_manager| %>>
|
27
|
+
<%= content_tag(:li, link_to('Contacts', mail_manager.contacts_path)) if can?(:manage, MailManager::Contact) %>
|
28
|
+
<%= content_tag(:li, link_to('Mailings', mail_manager.mailings_path)) if can?(:manage, MailManager::Mailing) %>
|
29
|
+
<%= content_tag(:li, link_to('Mailing Lists', mail_manager.mailing_lists_path)) if can?(:manage, MailManager::MailingList) %>
|
30
|
+
<%= content_tag(:li, link_to('Bounces', mail_manager.bounces_path)) if can?(:manage, MailManager::Bounce) %>
|
31
|
+
</ul>
|
32
|
+
</li>
|
33
|
+
<% end %>
|
34
|
+
</ul>
|
35
|
+
</div>
|
36
|
+
<div id="page_content">
|
51
37
|
<% flash.each do |name, msg| -%>
|
52
38
|
<%= content_tag :div, msg, :id => "flash_#{name}" %>
|
53
39
|
<% end -%>
|
@@ -55,22 +41,11 @@
|
|
55
41
|
<% if show_title? -%>
|
56
42
|
<h1><%=h yield(:title) %></h1>
|
57
43
|
<% end -%>
|
58
|
-
|
59
44
|
<%= yield %>
|
60
45
|
|
61
46
|
<%= yield :page_navigation %>
|
62
|
-
</
|
63
|
-
|
64
|
-
|
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>
|
74
|
-
|
47
|
+
</div>
|
48
|
+
</div>
|
49
|
+
<%= image_tag "i_reach/BottomRight.gif", width: "62", height: "85", style: "float: right;" %>
|
75
50
|
</body>
|
76
51
|
</html>
|
data/config/routes.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
IReach::Engine.routes.draw do
|
2
|
-
mount MailManager::Engine
|
3
|
-
mount
|
2
|
+
mount MailManager::Engine => '/mail_manager'
|
3
|
+
# we mount at 'news' to not have a name conflict with newsletters controller
|
4
|
+
mount Newsletter::Engine => '/newsletter', as: 'news'
|
4
5
|
get '/admin' => 'welcome#index'
|
5
6
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'rails/generators/base'
|
2
|
+
|
3
|
+
module IReach
|
4
|
+
module Generators
|
5
|
+
class LayoutGenerator < Rails::Generators::Base
|
6
|
+
source_root IReach::PLUGIN_ROOT
|
7
|
+
|
8
|
+
desc "Copies IReach's default layout to your application."
|
9
|
+
|
10
|
+
def copy_layout
|
11
|
+
copy_file "app/views/layouts/i_reach/application.html.erb",
|
12
|
+
"app/views/layouts/application.html.erb"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/lib/i_reach/engine.rb
CHANGED
data/lib/i_reach/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: i_reach
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Christopher Hauboldt
|
@@ -9,118 +9,118 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-
|
12
|
+
date: 2015-04-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- - ~>
|
18
|
+
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: '3.2'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
|
-
- - ~>
|
25
|
+
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
version: '3.2'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: jquery-rails
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
|
-
- - ~>
|
32
|
+
- - "~>"
|
33
33
|
- !ruby/object:Gem::Version
|
34
34
|
version: '3.1'
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
|
-
- - ~>
|
39
|
+
- - "~>"
|
40
40
|
- !ruby/object:Gem::Version
|
41
41
|
version: '3.1'
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: jquery-ui-rails
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
|
-
- - ~>
|
46
|
+
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
48
|
version: '5.0'
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
|
-
- - ~>
|
53
|
+
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
55
|
version: '5.0'
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
57
|
name: jquery-ui-themes
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
|
-
- - ~>
|
60
|
+
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
62
|
version: '0.0'
|
63
63
|
type: :runtime
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
|
-
- - ~>
|
67
|
+
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
69
|
version: '0.0'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: mail_manager
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
|
-
- - ~>
|
74
|
+
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: '3.
|
76
|
+
version: '3.2'
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
|
-
- - ~>
|
81
|
+
- - "~>"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: '3.
|
83
|
+
version: '3.2'
|
84
84
|
- !ruby/object:Gem::Dependency
|
85
85
|
name: newsletter
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
|
-
- - ~>
|
88
|
+
- - "~>"
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version: '3.
|
90
|
+
version: '3.2'
|
91
91
|
type: :runtime
|
92
92
|
prerelease: false
|
93
93
|
version_requirements: !ruby/object:Gem::Requirement
|
94
94
|
requirements:
|
95
|
-
- - ~>
|
95
|
+
- - "~>"
|
96
96
|
- !ruby/object:Gem::Version
|
97
|
-
version: '3.
|
97
|
+
version: '3.2'
|
98
98
|
- !ruby/object:Gem::Dependency
|
99
99
|
name: cancancan
|
100
100
|
requirement: !ruby/object:Gem::Requirement
|
101
101
|
requirements:
|
102
|
-
- - ~>
|
102
|
+
- - "~>"
|
103
103
|
- !ruby/object:Gem::Version
|
104
104
|
version: '1.9'
|
105
105
|
type: :runtime
|
106
106
|
prerelease: false
|
107
107
|
version_requirements: !ruby/object:Gem::Requirement
|
108
108
|
requirements:
|
109
|
-
- - ~>
|
109
|
+
- - "~>"
|
110
110
|
- !ruby/object:Gem::Version
|
111
111
|
version: '1.9'
|
112
112
|
- !ruby/object:Gem::Dependency
|
113
113
|
name: mysql2
|
114
114
|
requirement: !ruby/object:Gem::Requirement
|
115
115
|
requirements:
|
116
|
-
- - ~>
|
116
|
+
- - "~>"
|
117
117
|
- !ruby/object:Gem::Version
|
118
118
|
version: '0.3'
|
119
119
|
type: :development
|
120
120
|
prerelease: false
|
121
121
|
version_requirements: !ruby/object:Gem::Requirement
|
122
122
|
requirements:
|
123
|
-
- - ~>
|
123
|
+
- - "~>"
|
124
124
|
- !ruby/object:Gem::Version
|
125
125
|
version: '0.3'
|
126
126
|
description: Combines the 'newsletter' and 'mail_manager' gems with viable admin,
|
@@ -134,61 +134,14 @@ files:
|
|
134
134
|
- MIT-LICENSE
|
135
135
|
- README.md
|
136
136
|
- Rakefile
|
137
|
-
- app/assets/images/i_reach/
|
138
|
-
- app/assets/images/i_reach/
|
139
|
-
- app/assets/images/i_reach/
|
140
|
-
- app/assets/images/i_reach/
|
141
|
-
- app/assets/images/i_reach/1topLeft.gif
|
142
|
-
- app/assets/images/i_reach/1topMid.gif
|
143
|
-
- app/assets/images/i_reach/1topMidR.gif
|
144
|
-
- app/assets/images/i_reach/1topRight.gif
|
145
|
-
- app/assets/images/i_reach/HB2sunset.gif
|
146
|
-
- app/assets/images/i_reach/Miracle-Ear-Logo.gif
|
147
|
-
- app/assets/images/i_reach/bill_tracking.gif
|
148
|
-
- app/assets/images/i_reach/bill_tracking2.gif
|
149
|
-
- app/assets/images/i_reach/button_imgs/button.gif
|
150
|
-
- app/assets/images/i_reach/button_imgs/button1.gif
|
151
|
-
- app/assets/images/i_reach/button_imgs/button2.gif
|
152
|
-
- app/assets/images/i_reach/button_imgs/end.gif
|
153
|
-
- app/assets/images/i_reach/button_imgs/end1.gif
|
154
|
-
- app/assets/images/i_reach/button_imgs/end2.gif
|
137
|
+
- app/assets/images/i_reach/BottomRight.gif
|
138
|
+
- app/assets/images/i_reach/MidRight.gif
|
139
|
+
- app/assets/images/i_reach/TopCenter.gif
|
140
|
+
- app/assets/images/i_reach/TopRight.gif
|
155
141
|
- app/assets/images/i_reach/calendar_date_select/calendar.gif
|
156
|
-
- app/assets/images/i_reach/
|
157
|
-
- app/assets/images/i_reach/conv13_logo_harris.html
|
158
|
-
- app/assets/images/i_reach/convention2009.gif
|
159
|
-
- app/assets/images/i_reach/convention2009_sm.gif
|
160
|
-
- app/assets/images/i_reach/haesly_fitting_client.tif
|
161
|
-
- app/assets/images/i_reach/hr.gif
|
162
|
-
- app/assets/images/i_reach/line.gif
|
163
|
-
- app/assets/images/i_reach/menuArrow.gif
|
164
|
-
- app/assets/images/i_reach/menuBot.gif
|
165
|
-
- app/assets/images/i_reach/menuBotLeft.gif
|
166
|
-
- app/assets/images/i_reach/menuBotMid.gif
|
167
|
-
- app/assets/images/i_reach/menuBotRight.gif
|
168
|
-
- app/assets/images/i_reach/menuMain.gif
|
169
|
-
- app/assets/images/i_reach/menuMainLeft.gif
|
170
|
-
- app/assets/images/i_reach/menuMidLeft.gif
|
171
|
-
- app/assets/images/i_reach/menuMidRight.gif
|
172
|
-
- app/assets/images/i_reach/menuMidRight2.gif
|
173
|
-
- app/assets/images/i_reach/menuTopLeft.gif
|
174
|
-
- app/assets/images/i_reach/menuTopMid.gif
|
175
|
-
- app/assets/images/i_reach/menuTopRight.gif
|
176
|
-
- app/assets/images/i_reach/menu_bg_bottom.gif
|
177
|
-
- app/assets/images/i_reach/menu_bg_off.gif
|
178
|
-
- app/assets/images/i_reach/menu_bg_over.gif
|
179
|
-
- app/assets/images/i_reach/oldred_bar1.gif
|
180
|
-
- app/assets/images/i_reach/red_bar1.gif
|
181
|
-
- app/assets/images/i_reach/red_bar2.gif
|
182
|
-
- app/assets/images/i_reach/redspace_long.gif
|
183
|
-
- app/assets/images/i_reach/riverwalk_banner.html
|
184
|
-
- app/assets/images/i_reach/small_arrow.gif
|
185
|
-
- app/assets/images/i_reach/small_dot.gif
|
142
|
+
- app/assets/images/i_reach/iReach_logo.gif
|
186
143
|
- app/assets/images/i_reach/spacer.gif
|
187
|
-
- app/assets/images/i_reach/texas_flag_498_90.gif
|
188
|
-
- app/assets/images/i_reach/top.gif
|
189
144
|
- app/assets/images/i_reach/topMid.gif
|
190
|
-
- app/assets/images/i_reach/top_inner.gif
|
191
|
-
- app/assets/images/i_reach/top_shaded.gif
|
192
145
|
- app/assets/javascripts/i_reach/application.js
|
193
146
|
- app/assets/javascripts/i_reach/jquery-ui-timepicker-addon.js
|
194
147
|
- app/assets/stylesheets/i_reach/admin.css
|
@@ -226,6 +179,7 @@ files:
|
|
226
179
|
- app/views/public/index.html.erb
|
227
180
|
- config/routes.rb
|
228
181
|
- config/spring.rb
|
182
|
+
- lib/generators/i_reach/layout_generator.rb
|
229
183
|
- lib/i_reach.rb
|
230
184
|
- lib/i_reach/engine.rb
|
231
185
|
- lib/i_reach/version.rb
|
@@ -240,17 +194,17 @@ require_paths:
|
|
240
194
|
- lib
|
241
195
|
required_ruby_version: !ruby/object:Gem::Requirement
|
242
196
|
requirements:
|
243
|
-
- -
|
197
|
+
- - ">="
|
244
198
|
- !ruby/object:Gem::Version
|
245
199
|
version: '0'
|
246
200
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
247
201
|
requirements:
|
248
|
-
- -
|
202
|
+
- - ">="
|
249
203
|
- !ruby/object:Gem::Version
|
250
204
|
version: '0'
|
251
205
|
requirements: []
|
252
206
|
rubyforge_project:
|
253
|
-
rubygems_version: 2.4.
|
207
|
+
rubygems_version: 2.4.6
|
254
208
|
signing_key:
|
255
209
|
specification_version: 4
|
256
210
|
summary: Newsletter and Mailing List manager
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|