ish_manager 0.1.8.385 → 0.1.8.386
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 +4 -4
- data/app/assets/javascripts/ish_manager/email_contexts.js +1 -15
- data/app/assets/javascripts/ish_manager/email_templates.js +1 -1
- data/app/assets/stylesheets/ish_manager/application.scss +1 -0
- data/app/assets/stylesheets/ish_manager/email_contexts.scss +0 -4
- data/app/assets/stylesheets/ish_manager/email_templates.scss +1 -1
- data/app/controllers/ish_manager/email_contexts_controller.rb +10 -9
- data/app/views/ish_manager/email_contexts/_form.haml +17 -23
- data/app/views/ish_manager/email_contexts/edit.haml +3 -1
- data/app/views/ish_manager/email_contexts/iframe_src.haml +4 -0
- data/app/views/ish_manager/email_contexts/index.haml +0 -4
- data/app/views/ish_manager/email_contexts/new.haml +3 -1
- data/app/views/ish_manager/email_contexts/show.haml +7 -6
- data/app/views/ish_manager/email_conversations/show.haml +2 -1
- data/app/views/ish_manager/email_templates/_form.haml +3 -0
- data/app/views/ish_manager/email_templates/_plain.haml +3 -0
- data/app/views/ish_manager/email_templates/_wasyaco_roundborders.html.erb +3 -319
- data/app/views/ish_manager/email_templates/iframe_src.haml +1 -2
- data/lib/tasks/office_tasks.rake +9 -8
- metadata +4 -3
- data/app/views/ish_manager/email_templates/_plain.html.erb +0 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ad5f6ecf804df03a3acafbff94f1136e5372aed88b43e0949603620cfeb87c30
|
|
4
|
+
data.tar.gz: 7d49e60a9d8ad7f9bd732f02d03ea313232262cb44e56365d671c5665a87f5a9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3e2b8b77466307c9e709209632a7013851900dccc7ed29b65e627170ec20be937b9ce58229e76a8d32101b6698516757065927f23b0cb0f8521a89c9ae558054
|
|
7
|
+
data.tar.gz: a16b163f1ba2a29dd335711c8c508104ecf06812661cb82b50460bfc61f64acea6a1346d77643da3ef8cc613f1001c811994c1960bae26246453411dba9f86d0
|
|
@@ -3,26 +3,12 @@
|
|
|
3
3
|
$(document).ready(() => {
|
|
4
4
|
|
|
5
5
|
if ($(".email-contexts--form").length) {
|
|
6
|
+
|
|
6
7
|
$("#ish_email_context_email_template_id").on('change', (ev) => {
|
|
7
8
|
const val = ev.target.value
|
|
8
9
|
window.location.href = AppRouter.new_email_context_with_template_path(val)
|
|
9
10
|
})
|
|
10
11
|
|
|
11
|
-
$("#ish_email_context_type").on('change', (ev) => {
|
|
12
|
-
const val = ev.target.value
|
|
13
|
-
if (val == 'TYPE_CAMPAIGN') {
|
|
14
|
-
$(".email-contexts--form .TYPE_SINGLE").css('display', 'none')
|
|
15
|
-
} else {
|
|
16
|
-
$(".email-contexts--form .TYPE_SINGLE").css('display', 'block')
|
|
17
|
-
}
|
|
18
|
-
})
|
|
19
|
-
// on page load:
|
|
20
|
-
if ($("#ish_email_context_type").val() == 'TYPE_CAMPAIGN') {
|
|
21
|
-
$(".email-contexts--form .TYPE_SINGLE").css('display', 'none')
|
|
22
|
-
} else {
|
|
23
|
-
$(".email-contexts--form .TYPE_SINGLE").css('display', 'block')
|
|
24
|
-
}
|
|
25
|
-
|
|
26
12
|
}
|
|
27
13
|
|
|
28
14
|
})
|
|
@@ -6,8 +6,7 @@ class ::IshManager::EmailContextsController < ::IshManager::ApplicationControlle
|
|
|
6
6
|
before_action :set_lists
|
|
7
7
|
|
|
8
8
|
def create
|
|
9
|
-
|
|
10
|
-
@ctx = ::Ish::EmailContext.new pparams
|
|
9
|
+
@ctx = ::Ish::EmailContext.new params[:ctx].permit!
|
|
11
10
|
@tmpl = ::Ish::EmailTemplate.find @ctx.email_template_id
|
|
12
11
|
|
|
13
12
|
@ctx.from_email ||= @tmpl.from_email
|
|
@@ -57,9 +56,12 @@ class ::IshManager::EmailContextsController < ::IshManager::ApplicationControlle
|
|
|
57
56
|
def iframe_src
|
|
58
57
|
@ctx = @email_context = Ish::EmailContext.find params[:id]
|
|
59
58
|
authorize! :iframe_src, @ctx
|
|
59
|
+
|
|
60
60
|
@tmpl = @email_template = @ctx.email_template
|
|
61
61
|
@lead = @ctx.lead
|
|
62
|
-
|
|
62
|
+
@body = @ctx.body
|
|
63
|
+
|
|
64
|
+
render layout: false
|
|
63
65
|
end
|
|
64
66
|
|
|
65
67
|
def index
|
|
@@ -80,10 +82,10 @@ class ::IshManager::EmailContextsController < ::IshManager::ApplicationControlle
|
|
|
80
82
|
authorize! :new, ::Ish::EmailContext
|
|
81
83
|
@tmpl = @email_template = Ish::EmailTemplate.where( slug: params[:template_slug] ).first || Ish::EmailTemplate.where( id: params[:template_slug] ).first
|
|
82
84
|
attrs = {}
|
|
83
|
-
if @
|
|
84
|
-
attrs = @
|
|
85
|
+
if @tmpl
|
|
86
|
+
attrs = @tmpl.attributes.slice( :subject, :body, :from_email )
|
|
85
87
|
end
|
|
86
|
-
@ctx = ::Ish::EmailContext.new( { email_template: @
|
|
88
|
+
@ctx = ::Ish::EmailContext.new( { email_template: @tmpl }.merge(attrs) )
|
|
87
89
|
end
|
|
88
90
|
|
|
89
91
|
def show
|
|
@@ -94,11 +96,10 @@ class ::IshManager::EmailContextsController < ::IshManager::ApplicationControlle
|
|
|
94
96
|
def update
|
|
95
97
|
@ctx = ::Ish::EmailContext.find params[:id]
|
|
96
98
|
authorize! :update, @ctx
|
|
97
|
-
pparams = params[:ish_email_context].permit!
|
|
98
99
|
|
|
99
|
-
if @ctx.update_attributes
|
|
100
|
+
if @ctx.update_attributes params[:ctx].permit!
|
|
100
101
|
flash[:notice] = 'Saved.'
|
|
101
|
-
redirect_to action: '
|
|
102
|
+
redirect_to action: 'edit', id: @ctx.id
|
|
102
103
|
return
|
|
103
104
|
else
|
|
104
105
|
flash[:alert] = "Could not save: #{@ctx.errors.full_messages.join(', ')}"
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
.email-contexts--form
|
|
3
|
-
.header
|
|
4
|
-
%h2.title Email Context
|
|
5
|
-
|
|
6
3
|
- url = ctx.new_record? ? email_contexts_path : email_context_path(ctx)
|
|
7
|
-
= form_for ctx, url: url do |f|
|
|
8
|
-
.row
|
|
9
|
-
= f.submit 'Save'
|
|
4
|
+
= form_for ctx, as: :ctx, url: url do |f|
|
|
10
5
|
.row
|
|
11
6
|
.col-md-6
|
|
12
7
|
.field.field-template
|
|
@@ -15,36 +10,35 @@
|
|
|
15
10
|
- if ctx.email_template_id
|
|
16
11
|
= link_to 'view', email_template_path( ctx.email_template_id ), target: :_blank, class: [ 'action-view' ]
|
|
17
12
|
= link_to '~', edit_email_template_path( ctx.email_template_id ), target: :_blank, class: [ 'action-view' ]
|
|
18
|
-
|
|
19
|
-
-# = f.label :slug
|
|
20
|
-
-# = f.text_field :slug
|
|
13
|
+
layout: #{ctx.tmpl.layout}
|
|
21
14
|
|
|
22
15
|
.field
|
|
23
16
|
= f.label "From"
|
|
24
17
|
= f.select :from_email, options_for_select(Ish::EmailContext.from_email_list, selected: ctx.from_email)
|
|
25
18
|
|
|
26
|
-
-# .col-md-6
|
|
27
|
-
-# %h5 Context
|
|
28
|
-
-# %div Commonly: name, companyName
|
|
29
|
-
-# .field
|
|
30
|
-
-# = f.text_area :tmpl, value: JSON.pretty_generate( ctx.tmpl )
|
|
31
19
|
.row
|
|
32
20
|
.col-md-4
|
|
33
|
-
.field
|
|
21
|
+
.field.flex-row
|
|
34
22
|
= f.label "To lead"
|
|
35
|
-
= f.select :lead_id, options_for_select( @leads_list ), {}, { class: 'select2' }
|
|
23
|
+
= f.select :lead_id, options_for_select( @leads_list, selected: ctx.lead_id ), {}, { class: 'select2' }
|
|
36
24
|
.col-md-8
|
|
37
25
|
.field.field-subject
|
|
38
26
|
= f.label :subject
|
|
39
27
|
= f.text_field :subject
|
|
40
28
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
.
|
|
46
|
-
|
|
47
|
-
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
.tab-labels
|
|
32
|
+
%a.label-raw{ href: "javascript: void(0)", data: { ref: '.tab-raw' } } Raw
|
|
33
|
+
%a.label-preview.active{ href: "javascript: void(0)", data: { ref: '.tab-preview' } } Preview
|
|
34
|
+
.label-save-preview= f.submit 'Save & Preview'
|
|
35
|
+
.tabs
|
|
36
|
+
.tab-raw
|
|
37
|
+
= f.text_area :body
|
|
38
|
+
.tab-preview
|
|
39
|
+
%iframe{ src: email_context_iframe_path(ctx), width: '100%', height: '100%' }
|
|
40
|
+
|
|
41
|
+
|
|
48
42
|
.actions
|
|
49
43
|
.left
|
|
50
44
|
= f.submit 'Preview'
|
|
@@ -20,8 +20,6 @@
|
|
|
20
20
|
%th.to To
|
|
21
21
|
%th.subject Subject
|
|
22
22
|
%th.template Template
|
|
23
|
-
%th.created_at Created at
|
|
24
|
-
%th.updated_at Updated at
|
|
25
23
|
%tbody
|
|
26
24
|
- @ctxs.each do |ctx|
|
|
27
25
|
%tr
|
|
@@ -38,8 +36,6 @@
|
|
|
38
36
|
= link_to email_context_path(ctx) do
|
|
39
37
|
= ctx.subject ? ctx.subject : "t| #{ctx.tmpl.subject}"
|
|
40
38
|
%td= ctx.email_template.slug
|
|
41
|
-
%td= ctx.created_at.strftime('%Y-%m-%d %l:%M%P %:z')
|
|
42
|
-
%td= ctx.updated_at.strftime('%Y-%m-%d %l:%M%P %:z')
|
|
43
39
|
|
|
44
40
|
|
|
45
41
|
= render 'paginate', resource: @ctxs, param_name: :email_contexts_page, views_prefix: :ish_manager
|
|
@@ -23,10 +23,11 @@
|
|
|
23
23
|
= button_to 'Send', email_context_send_path(@ctx), form_class: 'inline', :data => { :confirm => 'Are you sure?' }
|
|
24
24
|
= link_to '[~]', edit_email_context_path(@ctx)
|
|
25
25
|
|
|
26
|
-
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
.max-width
|
|
27
|
+
- if @ctx.sent_at
|
|
28
|
+
= raw @ctx.rendered_str
|
|
29
|
+
-# = @ctx.tmpl
|
|
29
30
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
- else
|
|
32
|
+
-# = link_to 'i-src', email_context_iframe_path(@ctx), target: :_blank
|
|
33
|
+
%iframe{ src: email_context_iframe_path(@ctx), width: '100%', height: '100%' }
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
= f.label :preview_str
|
|
24
24
|
= f.text_field :preview_str
|
|
25
25
|
|
|
26
|
+
|
|
26
27
|
.tab-labels
|
|
27
28
|
%a.label-raw{ href: "javascript: void(0)", data: { ref: '.tab-raw' } } Raw
|
|
28
29
|
%a.label-preview.active{ href: "javascript: void(0)", data: { ref: '.tab-preview' } } Preview
|
|
@@ -34,6 +35,8 @@
|
|
|
34
35
|
- if email_template.persisted?
|
|
35
36
|
-# .descr= render "ish_manager/email_templates/#{email_template.layout}", ctx: Ish::EmailContext.new, tmpl: email_template
|
|
36
37
|
%iframe{ src: email_template_iframe_path(email_template), width: '100%', height: '100%' }
|
|
38
|
+
|
|
39
|
+
|
|
37
40
|
.actions
|
|
38
41
|
= f.submit 'Save'
|
|
39
42
|
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
<meta charset="UTF-8">
|
|
14
14
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
15
15
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
16
|
-
<title><%= @ctx.preview_str %></title>
|
|
16
|
+
<title><%= @ctx&.preview_str.presence || @tmpl&.preview_str %></title>
|
|
17
17
|
|
|
18
18
|
<style type="text/css">
|
|
19
19
|
.mcnTextBlock {
|
|
@@ -155,369 +155,166 @@ a.mcnButton {
|
|
|
155
155
|
table-layout: fixed !important;
|
|
156
156
|
}
|
|
157
157
|
|
|
158
|
-
/*
|
|
159
|
-
@tab Page
|
|
160
|
-
@section Background Style
|
|
161
|
-
@tip Set the background color and top border for your email. You may want to choose colors that match your company's branding.
|
|
162
|
-
*/
|
|
163
158
|
body,
|
|
164
159
|
#bodyTable {
|
|
165
|
-
/*@editable*/
|
|
166
160
|
background-color: #fff;
|
|
167
161
|
}
|
|
168
162
|
|
|
169
|
-
/*
|
|
170
|
-
@tab Page
|
|
171
|
-
@section Background Style
|
|
172
|
-
@tip Set the background color and top border for your email. You may want to choose colors that match your company's branding.
|
|
173
|
-
*/
|
|
174
163
|
#bodyCell {
|
|
175
|
-
/*@editable*/
|
|
176
164
|
border-top: 0;
|
|
177
165
|
}
|
|
178
166
|
|
|
179
|
-
/*
|
|
180
|
-
@tab Page
|
|
181
|
-
@section Email Border
|
|
182
|
-
@tip Set the border for your email.
|
|
183
|
-
*/
|
|
184
|
-
.templateContainer {
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
/*
|
|
188
|
-
@tab Page
|
|
189
|
-
@section Heading 1
|
|
190
|
-
@tip Set the styling for all first-level headings in your emails. These should be the largest of your headings.
|
|
191
|
-
@style heading 1
|
|
192
|
-
*/
|
|
193
167
|
h1 {
|
|
194
|
-
|
|
195
|
-
/*@editable*/
|
|
196
168
|
font-family: Helvetica;
|
|
197
|
-
/*@editable*/
|
|
198
169
|
font-size: 26px;
|
|
199
|
-
/*@editable*/
|
|
200
170
|
font-style: normal;
|
|
201
|
-
/*@editable*/
|
|
202
171
|
font-weight: bold;
|
|
203
|
-
/*@editable*/
|
|
204
172
|
line-height: 125%;
|
|
205
|
-
/*@editable*/
|
|
206
173
|
letter-spacing: normal;
|
|
207
|
-
/*@editable*/
|
|
208
174
|
text-align: left;
|
|
209
175
|
}
|
|
210
176
|
|
|
211
|
-
/*
|
|
212
|
-
@tab Page
|
|
213
|
-
@section Heading 2
|
|
214
|
-
@tip Set the styling for all second-level headings in your emails.
|
|
215
|
-
@style heading 2
|
|
216
|
-
*/
|
|
217
177
|
h2 {
|
|
218
|
-
/*@editable*/
|
|
219
178
|
color: #202020;
|
|
220
|
-
/*@editable*/
|
|
221
179
|
font-family: Helvetica;
|
|
222
|
-
/*@editable*/
|
|
223
180
|
font-size: 22px;
|
|
224
|
-
/*@editable*/
|
|
225
181
|
font-style: normal;
|
|
226
|
-
/*@editable*/
|
|
227
182
|
font-weight: bold;
|
|
228
|
-
/*@editable*/
|
|
229
183
|
line-height: 125%;
|
|
230
|
-
/*@editable*/
|
|
231
184
|
letter-spacing: normal;
|
|
232
|
-
/*@editable*/
|
|
233
185
|
text-align: left;
|
|
234
186
|
}
|
|
235
187
|
|
|
236
|
-
/*
|
|
237
|
-
@tab Page
|
|
238
|
-
@section Heading 3
|
|
239
|
-
@tip Set the styling for all third-level headings in your emails.
|
|
240
|
-
@style heading 3
|
|
241
|
-
*/
|
|
242
188
|
h3 {
|
|
243
|
-
/*@editable*/
|
|
244
189
|
color: #202020;
|
|
245
|
-
/*@editable*/
|
|
246
190
|
font-family: Helvetica;
|
|
247
|
-
/*@editable*/
|
|
248
191
|
font-size: 20px;
|
|
249
|
-
/*@editable*/
|
|
250
192
|
font-style: normal;
|
|
251
|
-
/*@editable*/
|
|
252
193
|
font-weight: bold;
|
|
253
|
-
/*@editable*/
|
|
254
194
|
line-height: 125%;
|
|
255
|
-
/*@editable*/
|
|
256
195
|
letter-spacing: normal;
|
|
257
|
-
/*@editable*/
|
|
258
196
|
text-align: left;
|
|
259
197
|
}
|
|
260
198
|
|
|
261
|
-
/*
|
|
262
|
-
@tab Page
|
|
263
|
-
@section Heading 4
|
|
264
|
-
@tip Set the styling for all fourth-level headings in your emails. These should be the smallest of your headings.
|
|
265
|
-
@style heading 4
|
|
266
|
-
*/
|
|
267
199
|
h4 {
|
|
268
|
-
/*@editable*/
|
|
269
200
|
color: #202020;
|
|
270
|
-
/*@editable*/
|
|
271
201
|
font-family: Helvetica;
|
|
272
|
-
/*@editable*/
|
|
273
202
|
font-size: 18px;
|
|
274
|
-
/*@editable*/
|
|
275
203
|
font-style: normal;
|
|
276
|
-
/*@editable*/
|
|
277
204
|
font-weight: bold;
|
|
278
|
-
/*@editable*/
|
|
279
205
|
line-height: 125%;
|
|
280
|
-
/*@editable*/
|
|
281
206
|
letter-spacing: normal;
|
|
282
|
-
/*@editable*/
|
|
283
207
|
text-align: left;
|
|
284
208
|
}
|
|
285
209
|
|
|
286
|
-
/*
|
|
287
|
-
@tab Preheader
|
|
288
|
-
@section Preheader Style
|
|
289
|
-
@tip Set the background color and borders for your email's preheader area.
|
|
290
|
-
*/
|
|
291
210
|
#templatePreheader {
|
|
292
|
-
/*@editable*/
|
|
293
211
|
background-color: transparent;
|
|
294
|
-
/*@editable*/
|
|
295
212
|
background-image: none;
|
|
296
|
-
/*@editable*/
|
|
297
213
|
background-repeat: no-repeat;
|
|
298
|
-
/*@editable*/
|
|
299
214
|
background-position: center;
|
|
300
|
-
/*@editable*/
|
|
301
215
|
background-size: cover;
|
|
302
|
-
/*@editable*/
|
|
303
216
|
border-top: 0;
|
|
304
|
-
/*@editable*/
|
|
305
217
|
border-bottom: 0;
|
|
306
|
-
/*@editable*/
|
|
307
218
|
padding-top: 9px;
|
|
308
|
-
/*@editable*/
|
|
309
219
|
padding-bottom: 9px;
|
|
310
220
|
}
|
|
311
221
|
|
|
312
|
-
/*
|
|
313
|
-
@tab Preheader
|
|
314
|
-
@section Preheader Text
|
|
315
|
-
@tip Set the styling for your email's preheader text. Choose a size and color that is easy to read.
|
|
316
|
-
*/
|
|
317
222
|
#templatePreheader .mcnTextContent,
|
|
318
223
|
#templatePreheader .mcnTextContent p {
|
|
319
|
-
/*@editable*/
|
|
320
224
|
color: #656565;
|
|
321
|
-
/*@editable*/
|
|
322
225
|
font-family: Helvetica;
|
|
323
|
-
/*@editable*/
|
|
324
226
|
font-size: 12px;
|
|
325
|
-
/*@editable*/
|
|
326
227
|
line-height: 150%;
|
|
327
|
-
/*@editable*/
|
|
328
228
|
text-align: left;
|
|
329
229
|
}
|
|
330
230
|
|
|
331
|
-
/*
|
|
332
|
-
@tab Preheader
|
|
333
|
-
@section Preheader Link
|
|
334
|
-
@tip Set the styling for your email's preheader links. Choose a color that helps them stand out from your text.
|
|
335
|
-
*/
|
|
336
231
|
#templatePreheader .mcnTextContent a,
|
|
337
232
|
#templatePreheader .mcnTextContent p a {
|
|
338
|
-
/*@editable*/
|
|
339
233
|
color: #656565;
|
|
340
|
-
/*@editable*/
|
|
341
234
|
font-weight: normal;
|
|
342
|
-
/*@editable*/
|
|
343
235
|
text-decoration: underline;
|
|
344
236
|
}
|
|
345
237
|
|
|
346
|
-
/*
|
|
347
|
-
@tab Header
|
|
348
|
-
@section Header Style
|
|
349
|
-
@tip Set the background color and borders for your email's header area.
|
|
350
|
-
*/
|
|
351
238
|
#templateHeader {
|
|
352
|
-
/*@editable*/
|
|
353
239
|
background-color: #FFFFFF;
|
|
354
|
-
/*@editable*/
|
|
355
240
|
background-image: none;
|
|
356
|
-
/*@editable*/
|
|
357
241
|
background-repeat: no-repeat;
|
|
358
|
-
/*@editable*/
|
|
359
242
|
background-position: center;
|
|
360
|
-
/*@editable*/
|
|
361
243
|
background-size: cover;
|
|
362
|
-
/*@editable*/
|
|
363
244
|
border-top: 0;
|
|
364
|
-
/*@editable*/
|
|
365
245
|
border-bottom: 0;
|
|
366
|
-
/*@editable*/
|
|
367
246
|
padding-top: 9px;
|
|
368
|
-
/*@editable*/
|
|
369
247
|
padding-bottom: 0;
|
|
370
248
|
}
|
|
371
249
|
|
|
372
|
-
/*
|
|
373
|
-
@tab Header
|
|
374
|
-
@section Header Text
|
|
375
|
-
@tip Set the styling for your email's header text. Choose a size and color that is easy to read.
|
|
376
|
-
*/
|
|
377
250
|
#templateHeader .mcnTextContent,
|
|
378
251
|
#templateHeader .mcnTextContent p {
|
|
379
|
-
/*@editable*/
|
|
380
252
|
color: #202020;
|
|
381
|
-
/*@editable*/
|
|
382
253
|
font-family: Helvetica;
|
|
383
|
-
/*@editable*/
|
|
384
254
|
font-size: 16px;
|
|
385
|
-
/*@editable*/
|
|
386
255
|
line-height: 150%;
|
|
387
|
-
/*@editable*/
|
|
388
256
|
text-align: left;
|
|
389
257
|
}
|
|
390
258
|
|
|
391
|
-
/*
|
|
392
|
-
@tab Header
|
|
393
|
-
@section Header Link
|
|
394
|
-
@tip Set the styling for your email's header links. Choose a color that helps them stand out from your text.
|
|
395
|
-
*/
|
|
396
259
|
#templateHeader .mcnTextContent a,
|
|
397
260
|
#templateHeader .mcnTextContent p a {
|
|
398
|
-
/*@editable*/
|
|
399
261
|
color: #007C89;
|
|
400
|
-
/*@editable*/
|
|
401
262
|
font-weight: normal;
|
|
402
|
-
/*@editable*/
|
|
403
263
|
text-decoration: underline;
|
|
404
264
|
}
|
|
405
265
|
|
|
406
|
-
/*
|
|
407
|
-
@tab Body
|
|
408
|
-
@section Body Style
|
|
409
|
-
@tip Set the background color and borders for your email's body area.
|
|
410
|
-
*/
|
|
411
266
|
#templateBody {
|
|
412
|
-
/*@editable*/
|
|
413
267
|
background-color: #FFFFFF;
|
|
414
|
-
/*@editable*/
|
|
415
268
|
background-image: none;
|
|
416
|
-
/*@editable*/
|
|
417
269
|
background-repeat: no-repeat;
|
|
418
|
-
/*@editable*/
|
|
419
270
|
background-position: center;
|
|
420
|
-
/*@editable*/
|
|
421
271
|
background-size: cover;
|
|
422
|
-
/*@editable*/
|
|
423
272
|
border-top: 0;
|
|
424
|
-
/*@editable*/
|
|
425
273
|
border-bottom: 2px solid #EAEAEA;
|
|
426
|
-
/*@editable*/
|
|
427
274
|
padding-top: 0;
|
|
428
|
-
/*@editable*/
|
|
429
275
|
padding-bottom: 9px;
|
|
430
276
|
}
|
|
431
277
|
|
|
432
|
-
/*
|
|
433
|
-
@tab Body
|
|
434
|
-
@section Body Text
|
|
435
|
-
@tip Set the styling for your email's body text. Choose a size and color that is easy to read.
|
|
436
|
-
*/
|
|
437
278
|
#templateBody .mcnTextContent,
|
|
438
279
|
#templateBody .mcnTextContent p {
|
|
439
|
-
/*@editable*/
|
|
440
280
|
color: #202020;
|
|
441
|
-
/*@editable*/
|
|
442
281
|
font-family: Helvetica;
|
|
443
|
-
/*@editable*/
|
|
444
282
|
font-size: 16px;
|
|
445
|
-
/*@editable*/
|
|
446
283
|
line-height: 150%;
|
|
447
|
-
/*@editable*/
|
|
448
284
|
text-align: left;
|
|
449
285
|
}
|
|
450
286
|
|
|
451
|
-
/*
|
|
452
|
-
@tab Body
|
|
453
|
-
@section Body Link
|
|
454
|
-
@tip Set the styling for your email's body links. Choose a color that helps them stand out from your text.
|
|
455
|
-
*/
|
|
456
287
|
#templateBody .mcnTextContent a,
|
|
457
288
|
#templateBody .mcnTextContent p a {
|
|
458
|
-
/*@editable*/
|
|
459
289
|
color: #007C89;
|
|
460
|
-
/*@editable*/
|
|
461
290
|
font-weight: normal;
|
|
462
|
-
/*@editable*/
|
|
463
291
|
text-decoration: underline;
|
|
464
292
|
}
|
|
465
293
|
|
|
466
|
-
/*
|
|
467
|
-
@tab Footer
|
|
468
|
-
@section Footer Style
|
|
469
|
-
@tip Set the background color and borders for your email's footer area.
|
|
470
|
-
*/
|
|
471
294
|
#templateFooter {
|
|
472
|
-
/*@editable*/
|
|
473
295
|
background-color: #FAFAFA;
|
|
474
|
-
/*@editable*/
|
|
475
296
|
background-image: none;
|
|
476
|
-
/*@editable*/
|
|
477
297
|
background-repeat: no-repeat;
|
|
478
|
-
/*@editable*/
|
|
479
298
|
background-position: center;
|
|
480
|
-
/*@editable*/
|
|
481
299
|
background-size: cover;
|
|
482
|
-
/*@editable*/
|
|
483
300
|
border-top: 0;
|
|
484
|
-
/*@editable*/
|
|
485
301
|
border-bottom: 0;
|
|
486
|
-
/*@editable*/
|
|
487
302
|
padding-top: 9px;
|
|
488
|
-
/*@editable*/
|
|
489
303
|
padding-bottom: 9px;
|
|
490
304
|
}
|
|
491
305
|
|
|
492
|
-
/*
|
|
493
|
-
@tab Footer
|
|
494
|
-
@section Footer Text
|
|
495
|
-
@tip Set the styling for your email's footer text. Choose a size and color that is easy to read.
|
|
496
|
-
*/
|
|
497
306
|
#templateFooter .mcnTextContent,
|
|
498
307
|
#templateFooter .mcnTextContent p {
|
|
499
|
-
/*@editable*/
|
|
500
308
|
color: #656565;
|
|
501
|
-
/*@editable*/
|
|
502
309
|
font-family: Helvetica;
|
|
503
|
-
/*@editable*/
|
|
504
310
|
font-size: 12px;
|
|
505
|
-
/*@editable*/
|
|
506
311
|
line-height: 150%;
|
|
507
312
|
}
|
|
508
313
|
|
|
509
|
-
/*
|
|
510
|
-
@tab Footer
|
|
511
|
-
@section Footer Link
|
|
512
|
-
@tip Set the styling for your email's footer links. Choose a color that helps them stand out from your text.
|
|
513
|
-
*/
|
|
514
314
|
#templateFooter .mcnTextContent a,
|
|
515
315
|
#templateFooter .mcnTextContent p a {
|
|
516
|
-
/*@editable*/
|
|
517
316
|
color: #656565;
|
|
518
|
-
/*@editable*/
|
|
519
317
|
font-weight: normal;
|
|
520
|
-
/*@editable*/
|
|
521
318
|
text-decoration: underline;
|
|
522
319
|
}
|
|
523
320
|
|
|
@@ -525,11 +322,9 @@ h4 {
|
|
|
525
322
|
.templateContainer {
|
|
526
323
|
width: 600px !important;
|
|
527
324
|
}
|
|
528
|
-
|
|
529
325
|
}
|
|
530
326
|
|
|
531
327
|
@media only screen and (max-width: 480px) {
|
|
532
|
-
|
|
533
328
|
body,
|
|
534
329
|
table,
|
|
535
330
|
td,
|
|
@@ -539,7 +334,6 @@ h4 {
|
|
|
539
334
|
blockquote {
|
|
540
335
|
-webkit-text-size-adjust: none !important;
|
|
541
336
|
}
|
|
542
|
-
|
|
543
337
|
}
|
|
544
338
|
|
|
545
339
|
@media only screen and (max-width: 480px) {
|
|
@@ -547,25 +341,18 @@ h4 {
|
|
|
547
341
|
width: 100% !important;
|
|
548
342
|
min-width: 100% !important;
|
|
549
343
|
}
|
|
550
|
-
|
|
551
344
|
}
|
|
552
345
|
|
|
553
346
|
@media only screen and (max-width: 480px) {
|
|
554
347
|
.mcnRetinaImage {
|
|
555
348
|
max-width: 100% !important;
|
|
556
349
|
}
|
|
557
|
-
|
|
558
350
|
}
|
|
559
351
|
|
|
560
352
|
@media only screen and (max-width: 480px) {
|
|
561
353
|
.mcnImage {
|
|
562
354
|
width: 100% !important;
|
|
563
355
|
}
|
|
564
|
-
|
|
565
|
-
}
|
|
566
|
-
|
|
567
|
-
@media only screen and (max-width: 480px) {
|
|
568
|
-
|
|
569
356
|
.mcnCartContainer,
|
|
570
357
|
.mcnCaptionTopContent,
|
|
571
358
|
.mcnRecContentContainer,
|
|
@@ -591,40 +378,33 @@ h4 {
|
|
|
591
378
|
.mcnBoxedTextContentContainer {
|
|
592
379
|
min-width: 100% !important;
|
|
593
380
|
}
|
|
594
|
-
|
|
595
381
|
}
|
|
596
382
|
|
|
597
383
|
@media only screen and (max-width: 480px) {
|
|
598
384
|
.mcnImageGroupContent {
|
|
599
385
|
padding: 9px !important;
|
|
600
386
|
}
|
|
601
|
-
|
|
602
387
|
}
|
|
603
388
|
|
|
604
389
|
@media only screen and (max-width: 480px) {
|
|
605
|
-
|
|
606
390
|
.mcnCaptionLeftContentOuter .mcnTextContent,
|
|
607
391
|
.mcnCaptionRightContentOuter .mcnTextContent {
|
|
608
392
|
padding-top: 9px !important;
|
|
609
393
|
}
|
|
610
|
-
|
|
611
394
|
}
|
|
612
395
|
|
|
613
396
|
@media only screen and (max-width: 480px) {
|
|
614
|
-
|
|
615
397
|
.mcnImageCardTopImageContent,
|
|
616
398
|
.mcnCaptionBottomContent:last-child .mcnCaptionBottomImageContent,
|
|
617
399
|
.mcnCaptionBlockInner .mcnCaptionTopContent:last-child .mcnTextContent {
|
|
618
400
|
padding-top: 18px !important;
|
|
619
401
|
}
|
|
620
|
-
|
|
621
402
|
}
|
|
622
403
|
|
|
623
404
|
@media only screen and (max-width: 480px) {
|
|
624
405
|
.mcnImageCardBottomImageContent {
|
|
625
406
|
padding-bottom: 9px !important;
|
|
626
407
|
}
|
|
627
|
-
|
|
628
408
|
}
|
|
629
409
|
|
|
630
410
|
@media only screen and (max-width: 480px) {
|
|
@@ -632,7 +412,6 @@ h4 {
|
|
|
632
412
|
padding-top: 0 !important;
|
|
633
413
|
padding-bottom: 0 !important;
|
|
634
414
|
}
|
|
635
|
-
|
|
636
415
|
}
|
|
637
416
|
|
|
638
417
|
@media only screen and (max-width: 480px) {
|
|
@@ -640,28 +419,23 @@ h4 {
|
|
|
640
419
|
padding-top: 9px !important;
|
|
641
420
|
padding-bottom: 9px !important;
|
|
642
421
|
}
|
|
643
|
-
|
|
644
422
|
}
|
|
645
423
|
|
|
646
424
|
@media only screen and (max-width: 480px) {
|
|
647
|
-
|
|
648
425
|
.mcnTextContent,
|
|
649
426
|
.mcnBoxedTextContentColumn {
|
|
650
427
|
padding-right: 18px !important;
|
|
651
428
|
padding-left: 18px !important;
|
|
652
429
|
}
|
|
653
|
-
|
|
654
430
|
}
|
|
655
431
|
|
|
656
432
|
@media only screen and (max-width: 480px) {
|
|
657
|
-
|
|
658
433
|
.mcnImageCardLeftImageContent,
|
|
659
434
|
.mcnImageCardRightImageContent {
|
|
660
435
|
padding-right: 18px !important;
|
|
661
436
|
padding-bottom: 0 !important;
|
|
662
437
|
padding-left: 18px !important;
|
|
663
438
|
}
|
|
664
|
-
|
|
665
439
|
}
|
|
666
440
|
|
|
667
441
|
@media only screen and (max-width: 480px) {
|
|
@@ -669,170 +443,80 @@ h4 {
|
|
|
669
443
|
display: none !important;
|
|
670
444
|
width: 100% !important;
|
|
671
445
|
}
|
|
672
|
-
|
|
673
446
|
}
|
|
674
447
|
|
|
675
448
|
@media only screen and (max-width: 480px) {
|
|
676
|
-
|
|
677
|
-
/*
|
|
678
|
-
@tab Mobile Styles
|
|
679
|
-
@section Heading 1
|
|
680
|
-
@tip Make the first-level headings larger in size for better readability on small screens.
|
|
681
|
-
*/
|
|
682
449
|
h1 {
|
|
683
|
-
/*@editable*/
|
|
684
450
|
font-size: 22px !important;
|
|
685
|
-
/*@editable*/
|
|
686
451
|
line-height: 125% !important;
|
|
687
452
|
}
|
|
688
|
-
|
|
689
453
|
}
|
|
690
454
|
|
|
691
455
|
@media only screen and (max-width: 480px) {
|
|
692
|
-
|
|
693
|
-
/*
|
|
694
|
-
@tab Mobile Styles
|
|
695
|
-
@section Heading 2
|
|
696
|
-
@tip Make the second-level headings larger in size for better readability on small screens.
|
|
697
|
-
*/
|
|
698
456
|
h2 {
|
|
699
|
-
/*@editable*/
|
|
700
457
|
font-size: 20px !important;
|
|
701
|
-
/*@editable*/
|
|
702
458
|
line-height: 125% !important;
|
|
703
459
|
}
|
|
704
|
-
|
|
705
460
|
}
|
|
706
461
|
|
|
707
462
|
@media only screen and (max-width: 480px) {
|
|
708
|
-
|
|
709
|
-
/*
|
|
710
|
-
@tab Mobile Styles
|
|
711
|
-
@section Heading 3
|
|
712
|
-
@tip Make the third-level headings larger in size for better readability on small screens.
|
|
713
|
-
*/
|
|
714
463
|
h3 {
|
|
715
|
-
/*@editable*/
|
|
716
464
|
font-size: 18px !important;
|
|
717
|
-
/*@editable*/
|
|
718
465
|
line-height: 125% !important;
|
|
719
466
|
}
|
|
720
|
-
|
|
721
467
|
}
|
|
722
468
|
|
|
723
469
|
@media only screen and (max-width: 480px) {
|
|
724
|
-
|
|
725
|
-
/*
|
|
726
|
-
@tab Mobile Styles
|
|
727
|
-
@section Heading 4
|
|
728
|
-
@tip Make the fourth-level headings larger in size for better readability on small screens.
|
|
729
|
-
*/
|
|
730
470
|
h4 {
|
|
731
|
-
/*@editable*/
|
|
732
471
|
font-size: 16px !important;
|
|
733
|
-
/*@editable*/
|
|
734
472
|
line-height: 150% !important;
|
|
735
473
|
}
|
|
736
|
-
|
|
737
474
|
}
|
|
738
475
|
|
|
739
476
|
@media only screen and (max-width: 480px) {
|
|
740
|
-
|
|
741
|
-
/*
|
|
742
|
-
@tab Mobile Styles
|
|
743
|
-
@section Boxed Text
|
|
744
|
-
@tip Make the boxed text larger in size for better readability on small screens. We recommend a font size of at least 16px.
|
|
745
|
-
*/
|
|
746
477
|
.mcnBoxedTextContentContainer .mcnTextContent,
|
|
747
478
|
.mcnBoxedTextContentContainer .mcnTextContent p {
|
|
748
|
-
/*@editable*/
|
|
749
479
|
font-size: 14px !important;
|
|
750
|
-
/*@editable*/
|
|
751
480
|
line-height: 150% !important;
|
|
752
481
|
}
|
|
753
|
-
|
|
754
482
|
}
|
|
755
483
|
|
|
756
484
|
@media only screen and (max-width: 480px) {
|
|
757
|
-
|
|
758
|
-
/*
|
|
759
|
-
@tab Mobile Styles
|
|
760
|
-
@section Preheader Visibility
|
|
761
|
-
@tip Set the visibility of the email's preheader on small screens. You can hide it to save space.
|
|
762
|
-
*/
|
|
763
485
|
#templatePreheader {
|
|
764
|
-
/*@editable*/
|
|
765
486
|
display: block !important;
|
|
766
487
|
}
|
|
767
|
-
|
|
768
488
|
}
|
|
769
489
|
|
|
770
490
|
@media only screen and (max-width: 480px) {
|
|
771
|
-
|
|
772
|
-
/*
|
|
773
|
-
@tab Mobile Styles
|
|
774
|
-
@section Preheader Text
|
|
775
|
-
@tip Make the preheader text larger in size for better readability on small screens.
|
|
776
|
-
*/
|
|
777
491
|
#templatePreheader .mcnTextContent,
|
|
778
492
|
#templatePreheader .mcnTextContent p {
|
|
779
|
-
/*@editable*/
|
|
780
493
|
font-size: 14px !important;
|
|
781
|
-
/*@editable*/
|
|
782
494
|
line-height: 150% !important;
|
|
783
495
|
}
|
|
784
|
-
|
|
785
496
|
}
|
|
786
497
|
|
|
787
498
|
@media only screen and (max-width: 480px) {
|
|
788
|
-
|
|
789
|
-
/*
|
|
790
|
-
@tab Mobile Styles
|
|
791
|
-
@section Header Text
|
|
792
|
-
@tip Make the header text larger in size for better readability on small screens.
|
|
793
|
-
*/
|
|
794
499
|
#templateHeader .mcnTextContent,
|
|
795
500
|
#templateHeader .mcnTextContent p {
|
|
796
|
-
/*@editable*/
|
|
797
501
|
font-size: 16px !important;
|
|
798
|
-
/*@editable*/
|
|
799
502
|
line-height: 150% !important;
|
|
800
503
|
}
|
|
801
|
-
|
|
802
504
|
}
|
|
803
505
|
|
|
804
506
|
@media only screen and (max-width: 480px) {
|
|
805
|
-
|
|
806
|
-
/*
|
|
807
|
-
@tab Mobile Styles
|
|
808
|
-
@section Body Text
|
|
809
|
-
@tip Make the body text larger in size for better readability on small screens. We recommend a font size of at least 16px.
|
|
810
|
-
*/
|
|
811
507
|
#templateBody .mcnTextContent,
|
|
812
508
|
#templateBody .mcnTextContent p {
|
|
813
|
-
/*@editable*/
|
|
814
509
|
font-size: 16px !important;
|
|
815
|
-
/*@editable*/
|
|
816
510
|
line-height: 150% !important;
|
|
817
511
|
}
|
|
818
|
-
|
|
819
512
|
}
|
|
820
513
|
|
|
821
514
|
@media only screen and (max-width: 480px) {
|
|
822
|
-
|
|
823
|
-
/*
|
|
824
|
-
@tab Mobile Styles
|
|
825
|
-
@section Footer Text
|
|
826
|
-
@tip Make the footer content text larger in size for better readability on small screens.
|
|
827
|
-
*/
|
|
828
515
|
#templateFooter .mcnTextContent,
|
|
829
516
|
#templateFooter .mcnTextContent p {
|
|
830
|
-
/*@editable*/
|
|
831
517
|
font-size: 14px !important;
|
|
832
|
-
/*@editable*/
|
|
833
518
|
line-height: 150% !important;
|
|
834
519
|
}
|
|
835
|
-
|
|
836
520
|
}
|
|
837
521
|
</style>
|
|
838
522
|
</head>
|
|
@@ -842,7 +526,7 @@ h4 {
|
|
|
842
526
|
|
|
843
527
|
<!--[if !gte mso 9]>-->
|
|
844
528
|
<span class="mcnPreviewText" style="display:none; font-size:0px; line-height:0px; max-height:0px; max-width:0px; opacity:0; overflow:hidden; visibility:hidden; mso-hide:all;"
|
|
845
|
-
><%= @ctx.preview_str %></span>
|
|
529
|
+
><%= @ctx&.preview_str.presence || @tmpl&.preview_str %></span>
|
|
846
530
|
<!--<![endif]-->
|
|
847
531
|
|
|
848
532
|
<center>
|
|
@@ -906,7 +590,7 @@ h4 {
|
|
|
906
590
|
<![endif]-->
|
|
907
591
|
|
|
908
592
|
<div style="border: 2px solid #999; border-radius: 4px; padding: 1em; margin-bottom: 1em;">
|
|
909
|
-
<%== @
|
|
593
|
+
<%== ERB.new( @ctx&.body.presence || @tmpl&.body ).result %>
|
|
910
594
|
</div>
|
|
911
595
|
|
|
912
596
|
<!--[if mso]>
|
data/lib/tasks/office_tasks.rake
CHANGED
|
@@ -7,7 +7,7 @@ end
|
|
|
7
7
|
namespace :office do
|
|
8
8
|
|
|
9
9
|
desc 'schheduled email actions, rolling perform'
|
|
10
|
-
task :
|
|
10
|
+
task schs: :environment do
|
|
11
11
|
while true do
|
|
12
12
|
|
|
13
13
|
Sch.active.where({ :perform_at.lte => Time.now }).each do |sch|
|
|
@@ -21,10 +21,11 @@ namespace :office do
|
|
|
21
21
|
})
|
|
22
22
|
ctx.save!
|
|
23
23
|
|
|
24
|
-
# schedule
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
# schedule next actions & update the action
|
|
25
|
+
sch.act.ties.each do |tie|
|
|
26
|
+
next_act = tie.next_email_action
|
|
27
|
+
next_at = eval(tie.next_at_exe)
|
|
28
|
+
next_sch = Sch.find_or_initialize_by({
|
|
28
29
|
lead_id: sch.lead_id,
|
|
29
30
|
email_action_id: nxt.id,
|
|
30
31
|
})
|
|
@@ -33,18 +34,18 @@ namespace :office do
|
|
|
33
34
|
sch_nxt.save!
|
|
34
35
|
end
|
|
35
36
|
|
|
36
|
-
print '
|
|
37
|
+
print '+'
|
|
37
38
|
|
|
38
39
|
end
|
|
39
40
|
|
|
40
41
|
# sleep 1.minute
|
|
41
42
|
sleep 10.seconds
|
|
42
|
-
print '
|
|
43
|
+
print '.'
|
|
43
44
|
end
|
|
44
45
|
end
|
|
45
46
|
|
|
46
47
|
desc "send emails"
|
|
47
|
-
task :
|
|
48
|
+
task email_worker: :environment do
|
|
48
49
|
while true do
|
|
49
50
|
|
|
50
51
|
ctxs = ::Ish::EmailContext.scheduled.unsent
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ish_manager
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.8.
|
|
4
|
+
version: 0.1.8.386
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- piousbox
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2023-03-
|
|
11
|
+
date: 2023-03-25 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rails
|
|
@@ -405,6 +405,7 @@ files:
|
|
|
405
405
|
- app/views/ish_manager/email_contexts/_form.haml
|
|
406
406
|
- app/views/ish_manager/email_contexts/_form_reply.haml
|
|
407
407
|
- app/views/ish_manager/email_contexts/edit.haml
|
|
408
|
+
- app/views/ish_manager/email_contexts/iframe_src.haml
|
|
408
409
|
- app/views/ish_manager/email_contexts/index.haml
|
|
409
410
|
- app/views/ish_manager/email_contexts/new.haml
|
|
410
411
|
- app/views/ish_manager/email_contexts/show.haml
|
|
@@ -434,7 +435,7 @@ files:
|
|
|
434
435
|
- app/views/ish_manager/email_templates/_marketing_wordpress_2.html
|
|
435
436
|
- app/views/ish_manager/email_templates/_piousbox_roundborders.html.erb
|
|
436
437
|
- app/views/ish_manager/email_templates/_piousbox_social.html.erb
|
|
437
|
-
- app/views/ish_manager/email_templates/_plain.
|
|
438
|
+
- app/views/ish_manager/email_templates/_plain.haml
|
|
438
439
|
- app/views/ish_manager/email_templates/_slug-1.html.erb
|
|
439
440
|
- app/views/ish_manager/email_templates/_slug-2.html.erb
|
|
440
441
|
- app/views/ish_manager/email_templates/_slug-3.html.erb
|