ish_manager 0.1.8.418 → 0.1.8.420

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 10e50889c4080362ba2acde217e981c548ee3d2a8883fb091dc55a544b5b19a0
4
- data.tar.gz: 1c707ff1cbdc29a75f492be0616c5939084e351eb91bd9d86801c56ad6b7c2ad
3
+ metadata.gz: 40b6609b30c07eabd56d2eb9c2ec69669abd4c57c87a502c96f69895e4f10925
4
+ data.tar.gz: e31726bba10b0c7bb6ef2f3cd65171dec1a2352926ae914c53b0cab386b13e18
5
5
  SHA512:
6
- metadata.gz: 504b46e66bd8a8cfed80ac43439e4e356b2c50713ec7608a06a33ae2c7ff3062223c41f1710f203534a74b01b4628d9ee1ba68cc3d808034313ede798cb65077
7
- data.tar.gz: a6b7eaed2bf22b43184ec6b77a8db9348f0405a7966ba336622461a8ad8e557e0d74f730d4d2ff700c498c838218fd90bc09304fdd20c2e0929e4a1df319dac0
6
+ metadata.gz: 9add72829e88a2b0e89e66e6ca5b0afea80d149524c2c3bf13c4e359f7d97f67fb2128e3398990c57cf91cef3d23b79e9649753ae062d23c5c9f5560dfc4d2bd
7
+ data.tar.gz: 4748a3a1adc0452c14f4a98e3a680442a11e432e3ff2385e82e0e1c30b2beb89788a71df3bb584a7c6e31567431664ad14edde730b67e12a635d8e1fb1aac106
@@ -2,6 +2,7 @@
2
2
  * Alphabetized : )
3
3
  *
4
4
  *= require ish_manager/jquery-ui
5
+ *= require ish_manager/kaminari_pagination
5
6
  *= require_self
6
7
  *
7
8
  *= require ish_manager/email_contexts
@@ -0,0 +1,40 @@
1
+
2
+ .pagination a, .pagination span.current, .pagination span.gap {
3
+ float: left;
4
+ padding: 0 14px;
5
+ line-height: 38px;
6
+ text-decoration: none;
7
+ background-color: white;
8
+ border: 1px solid #DDD;
9
+ border-left-width: 0;
10
+ }
11
+
12
+ .pagination {
13
+ border-left: 1px solid #ddd;
14
+ .first{
15
+ padding : 0;
16
+ float: none;
17
+ border: none;
18
+ }
19
+ .prev {
20
+ padding : 0;
21
+ float: none;
22
+ border: none;
23
+ }
24
+ .page{
25
+ padding : 0;
26
+ float: none;
27
+ border: none;
28
+ }
29
+ .next{
30
+ padding : 0;
31
+ float: none;
32
+ border: none;
33
+ }
34
+ .last{
35
+ padding : 0;
36
+ float: none;
37
+ border: none;
38
+ }
39
+ }
40
+
@@ -1,4 +1,8 @@
1
1
 
2
+ .doc {
3
+ max-width: 555px;
4
+ }
5
+
2
6
  .manager-leads-index {
3
7
  th.company-url {
4
8
  width: 10px;
@@ -10,5 +10,11 @@ class ::IshManager::CategoriesController < IshManager::ApplicationController
10
10
  @tags = Category.all_tags
11
11
  end
12
12
 
13
+ def show
14
+ @category = WpTag.find params[:id]
15
+ authorize! :show, @category
16
+
17
+ end
18
+
13
19
  end
14
20
 
@@ -38,19 +38,10 @@ class ::IshManager::EmailTemplatesController < ::IshManager::ApplicationControll
38
38
  @ctx = Ctx.new({ email_template: @tmpl, lead_id: 999 })
39
39
 
40
40
  @utm_tracking_str = {
41
- # 'v' => 1,
42
- # 'tid' => 'UA-53077236-2',
43
- 'cid' => @ctx.lead_id,
44
- # 'uid' => @ctx.lead_id,
45
- # 't' => 'event',
46
- # 'ec' => 'email',
47
- # 'ea' => 'open',
48
- # 'cn' => @campaign.slug,
49
- # 'ci' => @campaign.slug,
50
- # 'cm' => 'email',
51
- # 'utm_source' => @campaign.slug,
41
+ 'cid' => @ctx.lead_id,
42
+ 'utm_campaign' => @ctx.tmpl.slug,
52
43
  'utm_medium' => 'email',
53
- 'utm_campaign' => 'campaign-1', # @campaign.slug,
44
+ 'utm_source' => @ctx.tmpl.slug,
54
45
  }.map { |k, v| "#{k}=#{v}" }.join("&")
55
46
 
56
47
  render layout: false
@@ -51,65 +51,37 @@ class ::IshManager::LeadsController < IshManager::ApplicationController
51
51
  authorize! :edit, @lead
52
52
  end
53
53
 
54
- ## 0 1 2 3 4 5 6 7
55
- ## Fields: id, date, name, email, tag, phone, linkedin, comment
56
54
  def import
57
55
  authorize! :import, ::Lead
58
56
  file = params[:csv_file]
59
- flags = []
60
- errors = []
61
- CSV.read(file.path, headers: true).each do |row|
62
-
63
- leadset = ::Leadset.find_or_create_by({ company_url: row[3].split('@')[1] })
64
- lead = ::Lead.new({
65
- name: row[2].presence || row[3].split('@')[0],
66
- full_name: row[2].presence || row[3].split('@')[0],
67
- email: row[3],
68
- m3_leadset_id: leadset.id,
69
- phone: row[5],
70
- })
71
- flag = lead.save
72
- flags << flag
73
- if !flag
74
- errors << lead.errors.full_messages.join(", ")
75
- end
76
57
 
77
- if row[4].present?
78
- tags = row[4].split(",").map do |tag_name|
79
- WpTag.my_find_or_create({ name: tag_name })
80
- end
81
- puts! tags, 'tags'
82
- tags.each do |tag|
83
- LeadTag.create({ wp_tag: tag, lead: lead })
84
- end
85
- end
58
+ ## 2023-04-08
59
+ flags = Lead.import_v1( file )
86
60
 
87
- end
88
61
  flash[:notice] = "Result: #{flags.inspect}."
89
- flash[:alert] = errors
90
62
  redirect_to action: 'new'
91
63
  end
92
64
 
93
65
  def index
94
66
  authorize! :index, ::Lead
95
- @leads = ::Lead.kept.includes( :company )
96
- lead_emails = @leads.map( &:email ).compact.reject(&:empty?)
97
-
98
- map = %Q{
99
- function() {
100
- emit(this.to_email, {count: 1})
101
- }
102
- }
103
- reduce = %Q{
104
- function(key, values) {
105
- var result = {count: 0};
106
- values.forEach(function(value) {
107
- result.count += value.count;
108
- });
109
- return result;
110
- }
111
- }
67
+ @leads = ::Lead.kept.includes( :company ).page( params[:leads_page ] ).per( current_profile.per_page )
68
+
112
69
  @email_contexts = {}
70
+ # lead_emails = @leads.map( &:email ).compact.reject(&:empty?)
71
+ # map = %Q{
72
+ # function() {
73
+ # emit(this.to_email, {count: 1})
74
+ # }
75
+ # }
76
+ # reduce = %Q{
77
+ # function(key, values) {
78
+ # var result = {count: 0};
79
+ # values.forEach(function(value) {
80
+ # result.count += value.count;
81
+ # });
82
+ # return result;
83
+ # }
84
+ # }
113
85
  # tmp_contexts = Ish::EmailContext.all.where( :to_email.in => lead_emails
114
86
  # ).map_reduce( map, reduce
115
87
  # ).out( inline: 1 ## From: https://www.mongodb.com/docs/mongoid/current/reference/map-reduce/
@@ -60,8 +60,9 @@ class IshManager::OfficeMailer < IshManager::ApplicationMailer
60
60
 
61
61
  @utm_tracking_str = {
62
62
  'cid' => @ctx.lead_id,
63
- 'utm_medium' => 'email',
64
63
  'utm_campaign' => @ctx.tmpl.slug,
64
+ 'utm_medium' => 'email',
65
+ 'utm_source' => @ctx.tmpl.slug,
65
66
  }.map { |k, v| "#{k}=#{v}" }.join("&")
66
67
 
67
68
  ac = ActionController::Base.new
@@ -8,7 +8,7 @@
8
8
  Account & Session
9
9
  .a
10
10
  .row
11
- .col-sm-6
11
+ .col-sm-4
12
12
  %ul
13
13
  %li <b>Email:</b> #{@current_profile.email}
14
14
  %li <b>Role name:</b> #{@current_profile.role_name}
@@ -21,8 +21,13 @@
21
21
  %li= Time.now.to_s
22
22
  -# <pre>#{@changelog}</pre>
23
23
 
24
- .col-sm-2
25
- = button_to 'Logout', main_app.destroy_user_session_path, :method => :delete
24
+ .col-sm-4
25
+ = button_to 'Logout', main_app.destroy_user_session_path, :method => :delete, data: { confirm: 'Are you sure?' }
26
+ = form_for @current_profile, url: profile_path(@current_profile), as: :profile do |f|
27
+ .flex-row
28
+ = f.label :per_page
29
+ = f.select :per_page, options_for_select([ 10, 25, 50, 100, 250, 500, 1000], selected: @current_profile.per_page)
30
+ = f.submit 'Go'
26
31
 
27
32
  .c
28
33
  = render 'debug' if !Rails.env.production?
@@ -1,8 +1,8 @@
1
1
 
2
2
  -## provides local vars: subtree, config
3
3
 
4
- - puts! config, 'config'
5
- - puts! subtree, 'subtree'
4
+ -# - puts! config, 'config'
5
+ -# - puts! subtree, 'subtree'
6
6
 
7
7
  %ul
8
8
  - subtree.select { |c| c[5] == config[:parent_id] }.each do |c|
@@ -9,4 +9,7 @@
9
9
  %h1 Tags
10
10
  %ul
11
11
  - @tags.each do |tag|
12
- %li= tag[:name]
12
+ %li
13
+ = tag[:taxonomy]
14
+ \::
15
+ = link_to tag[:name], category_path( tag[:id] )
@@ -0,0 +1,10 @@
1
+
2
+ .categories-show.max-width
3
+ .header
4
+ %h2.title Category/Tag `#{@category.slug}`
5
+
6
+ .leads
7
+ %h3 Leads (#{@category.leads.length})
8
+ %ol
9
+ - @category.leads.each do |lead|
10
+ %li= link_to lead.email, lead_path(lead)
@@ -0,0 +1,749 @@
1
+ <!doctype html>
2
+ <html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office">
3
+ <head>
4
+ <!--[if gte mso 15]>
5
+ <xml>
6
+ <o:OfficeDocumentSettings>
7
+ <o:AllowPNG/>
8
+ <o:PixelsPerInch>96</o:PixelsPerInch>
9
+ </o:OfficeDocumentSettings>
10
+ </xml>
11
+ <![endif]-->
12
+ <meta charset="UTF-8">
13
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
14
+ <meta name="viewport" content="width=device-width, initial-scale=1">
15
+ <title><%= @ctx.subject -%></title>
16
+
17
+ <style type="text/css">
18
+ p{
19
+ margin:10px 0;
20
+ padding:0;
21
+ }
22
+ table{
23
+ border-collapse:collapse;
24
+ }
25
+ h1,h2,h3,h4,h5,h6{
26
+ display:block;
27
+ margin:0;
28
+ padding:0;
29
+ }
30
+ img,a img{
31
+ border:0;
32
+ height:auto;
33
+ outline:none;
34
+ text-decoration:none;
35
+ }
36
+ body,#bodyTable,#bodyCell{
37
+ height:100%;
38
+ margin:0;
39
+ padding:0;
40
+ width:100%;
41
+ }
42
+ .mcnPreviewText{
43
+ display:none !important;
44
+ }
45
+ #outlook a{
46
+ padding:0;
47
+ }
48
+ img{
49
+ -ms-interpolation-mode:bicubic;
50
+ }
51
+ table{
52
+ mso-table-lspace:0pt;
53
+ mso-table-rspace:0pt;
54
+ }
55
+ .ReadMsgBody{
56
+ width:100%;
57
+ }
58
+ .ExternalClass{
59
+ width:100%;
60
+ }
61
+ p,a,li,td,blockquote{
62
+ mso-line-height-rule:exactly;
63
+ }
64
+ a[href^=tel],a[href^=sms]{
65
+ color:inherit;
66
+ cursor:default;
67
+ text-decoration:none;
68
+ }
69
+ p,a,li,td,body,table,blockquote{
70
+ -ms-text-size-adjust:100%;
71
+ -webkit-text-size-adjust:100%;
72
+ }
73
+ .ExternalClass,.ExternalClass p,.ExternalClass td,.ExternalClass div,.ExternalClass span,.ExternalClass font{
74
+ line-height:100%;
75
+ }
76
+ a[x-apple-data-detectors]{
77
+ color:inherit !important;
78
+ text-decoration:none !important;
79
+ font-size:inherit !important;
80
+ font-family:inherit !important;
81
+ font-weight:inherit !important;
82
+ line-height:inherit !important;
83
+ }
84
+ #bodyCell{
85
+ padding:10px;
86
+ }
87
+ .templateContainer{
88
+ max-width:600px !important;
89
+ }
90
+ a.mcnButton{
91
+ display:block;
92
+ }
93
+ .mcnImage,.mcnRetinaImage{
94
+ vertical-align:bottom;
95
+ }
96
+ .mcnTextContent{
97
+ word-break:break-word;
98
+ }
99
+ .mcnTextContent img{
100
+ height:auto !important;
101
+ }
102
+ .mcnDividerBlock{
103
+ table-layout:fixed !important;
104
+ }
105
+ /*
106
+ @tab Page
107
+ @section Background Style
108
+ @tip Set the background color and top border for your email. You may want to choose colors that match your company's branding.
109
+ */
110
+ body,#bodyTable{
111
+ /*@editable*/background-color:#FAFAFA;
112
+ }
113
+ /*
114
+ @tab Page
115
+ @section Background Style
116
+ @tip Set the background color and top border for your email. You may want to choose colors that match your company's branding.
117
+ */
118
+ #bodyCell{
119
+ /*@editable*/border-top:0;
120
+ }
121
+ /*
122
+ @tab Page
123
+ @section Email Border
124
+ @tip Set the border for your email.
125
+ */
126
+ .templateContainer{
127
+ /*@editable*/border:0;
128
+ }
129
+ /*
130
+ @tab Page
131
+ @section Heading 1
132
+ @tip Set the styling for all first-level headings in your emails. These should be the largest of your headings.
133
+ @style heading 1
134
+ */
135
+ h1{
136
+ /*@editable*/color:#202020;
137
+ /*@editable*/font-family:Helvetica;
138
+ /*@editable*/font-size:26px;
139
+ /*@editable*/font-style:normal;
140
+ /*@editable*/font-weight:bold;
141
+ /*@editable*/line-height:125%;
142
+ /*@editable*/letter-spacing:normal;
143
+ /*@editable*/text-align:left;
144
+ }
145
+ /*
146
+ @tab Page
147
+ @section Heading 2
148
+ @tip Set the styling for all second-level headings in your emails.
149
+ @style heading 2
150
+ */
151
+ h2{
152
+ /*@editable*/color:#202020;
153
+ /*@editable*/font-family:Helvetica;
154
+ /*@editable*/font-size:22px;
155
+ /*@editable*/font-style:normal;
156
+ /*@editable*/font-weight:bold;
157
+ /*@editable*/line-height:125%;
158
+ /*@editable*/letter-spacing:normal;
159
+ /*@editable*/text-align:left;
160
+ }
161
+ /*
162
+ @tab Page
163
+ @section Heading 3
164
+ @tip Set the styling for all third-level headings in your emails.
165
+ @style heading 3
166
+ */
167
+ h3{
168
+ /*@editable*/color:#202020;
169
+ /*@editable*/font-family:Helvetica;
170
+ /*@editable*/font-size:20px;
171
+ /*@editable*/font-style:normal;
172
+ /*@editable*/font-weight:bold;
173
+ /*@editable*/line-height:125%;
174
+ /*@editable*/letter-spacing:normal;
175
+ /*@editable*/text-align:left;
176
+ }
177
+ /*
178
+ @tab Page
179
+ @section Heading 4
180
+ @tip Set the styling for all fourth-level headings in your emails. These should be the smallest of your headings.
181
+ @style heading 4
182
+ */
183
+ h4{
184
+ /*@editable*/color:#202020;
185
+ /*@editable*/font-family:Helvetica;
186
+ /*@editable*/font-size:18px;
187
+ /*@editable*/font-style:normal;
188
+ /*@editable*/font-weight:bold;
189
+ /*@editable*/line-height:125%;
190
+ /*@editable*/letter-spacing:normal;
191
+ /*@editable*/text-align:left;
192
+ }
193
+ /*
194
+ @tab Preheader
195
+ @section Preheader Style
196
+ @tip Set the background color and borders for your email's preheader area.
197
+ */
198
+ #templatePreheader{
199
+ /*@editable*/background-color:#FAFAFA;
200
+ /*@editable*/background-image:none;
201
+ /*@editable*/background-repeat:no-repeat;
202
+ /*@editable*/background-position:center;
203
+ /*@editable*/background-size:cover;
204
+ /*@editable*/border-top:0;
205
+ /*@editable*/border-bottom:0;
206
+ /*@editable*/padding-top:9px;
207
+ /*@editable*/padding-bottom:9px;
208
+ }
209
+ /*
210
+ @tab Preheader
211
+ @section Preheader Text
212
+ @tip Set the styling for your email's preheader text. Choose a size and color that is easy to read.
213
+ */
214
+ #templatePreheader .mcnTextContent,#templatePreheader .mcnTextContent p{
215
+ /*@editable*/color:#656565;
216
+ /*@editable*/font-family:Helvetica;
217
+ /*@editable*/font-size:12px;
218
+ /*@editable*/line-height:150%;
219
+ /*@editable*/text-align:left;
220
+ }
221
+ /*
222
+ @tab Preheader
223
+ @section Preheader Link
224
+ @tip Set the styling for your email's preheader links. Choose a color that helps them stand out from your text.
225
+ */
226
+ #templatePreheader .mcnTextContent a,#templatePreheader .mcnTextContent p a{
227
+ /*@editable*/color:#656565;
228
+ /*@editable*/font-weight:normal;
229
+ /*@editable*/text-decoration:underline;
230
+ }
231
+ /*
232
+ @tab Header
233
+ @section Header Style
234
+ @tip Set the background color and borders for your email's header area.
235
+ */
236
+ #templateHeader{
237
+ /*@editable*/background-color:#FFFFFF;
238
+ /*@editable*/background-image:none;
239
+ /*@editable*/background-repeat:no-repeat;
240
+ /*@editable*/background-position:center;
241
+ /*@editable*/background-size:cover;
242
+ /*@editable*/border-top:0;
243
+ /*@editable*/border-bottom:0;
244
+ /*@editable*/padding-top:9px;
245
+ /*@editable*/padding-bottom:0;
246
+ }
247
+ /*
248
+ @tab Header
249
+ @section Header Text
250
+ @tip Set the styling for your email's header text. Choose a size and color that is easy to read.
251
+ */
252
+ #templateHeader .mcnTextContent,#templateHeader .mcnTextContent p{
253
+ /*@editable*/color:#202020;
254
+ /*@editable*/font-family:Helvetica;
255
+ /*@editable*/font-size:16px;
256
+ /*@editable*/line-height:150%;
257
+ /*@editable*/text-align:left;
258
+ }
259
+ /*
260
+ @tab Header
261
+ @section Header Link
262
+ @tip Set the styling for your email's header links. Choose a color that helps them stand out from your text.
263
+ */
264
+ #templateHeader .mcnTextContent a,#templateHeader .mcnTextContent p a{
265
+ /*@editable*/color:#007C89;
266
+ /*@editable*/font-weight:normal;
267
+ /*@editable*/text-decoration:underline;
268
+ }
269
+ /*
270
+ @tab Body
271
+ @section Body Style
272
+ @tip Set the background color and borders for your email's body area.
273
+ */
274
+ #templateBody{
275
+ /*@editable*/background-color:#FFFFFF;
276
+ /*@editable*/background-image:none;
277
+ /*@editable*/background-repeat:no-repeat;
278
+ /*@editable*/background-position:center;
279
+ /*@editable*/background-size:cover;
280
+ /*@editable*/border-top:0;
281
+ /*@editable*/border-bottom:2px solid #EAEAEA;
282
+ /*@editable*/padding-top:0;
283
+ /*@editable*/padding-bottom:9px;
284
+ }
285
+ /*
286
+ @tab Body
287
+ @section Body Text
288
+ @tip Set the styling for your email's body text. Choose a size and color that is easy to read.
289
+ */
290
+ #templateBody .mcnTextContent,#templateBody .mcnTextContent p{
291
+ /*@editable*/color:#202020;
292
+ /*@editable*/font-family:Helvetica;
293
+ /*@editable*/font-size:16px;
294
+ /*@editable*/line-height:150%;
295
+ /*@editable*/text-align:left;
296
+ }
297
+ /*
298
+ @tab Body
299
+ @section Body Link
300
+ @tip Set the styling for your email's body links. Choose a color that helps them stand out from your text.
301
+ */
302
+ #templateBody .mcnTextContent a,#templateBody .mcnTextContent p a{
303
+ /*@editable*/color:#007C89;
304
+ /*@editable*/font-weight:normal;
305
+ /*@editable*/text-decoration:underline;
306
+ }
307
+ /*
308
+ @tab Footer
309
+ @section Footer Style
310
+ @tip Set the background color and borders for your email's footer area.
311
+ */
312
+ #templateFooter{
313
+ /*@editable*/background-color:#FAFAFA;
314
+ /*@editable*/background-image:none;
315
+ /*@editable*/background-repeat:no-repeat;
316
+ /*@editable*/background-position:center;
317
+ /*@editable*/background-size:cover;
318
+ /*@editable*/border-top:0;
319
+ /*@editable*/border-bottom:0;
320
+ /*@editable*/padding-top:9px;
321
+ /*@editable*/padding-bottom:9px;
322
+ }
323
+ /*
324
+ @tab Footer
325
+ @section Footer Text
326
+ @tip Set the styling for your email's footer text. Choose a size and color that is easy to read.
327
+ */
328
+ #templateFooter .mcnTextContent,#templateFooter .mcnTextContent p{
329
+ /*@editable*/color:#656565;
330
+ /*@editable*/font-family:Helvetica;
331
+ /*@editable*/font-size:12px;
332
+ /*@editable*/line-height:150%;
333
+ /*@editable*/text-align:center;
334
+ }
335
+ /*
336
+ @tab Footer
337
+ @section Footer Link
338
+ @tip Set the styling for your email's footer links. Choose a color that helps them stand out from your text.
339
+ */
340
+ #templateFooter .mcnTextContent a,#templateFooter .mcnTextContent p a{
341
+ /*@editable*/color:#656565;
342
+ /*@editable*/font-weight:normal;
343
+ /*@editable*/text-decoration:underline;
344
+ }
345
+ @media only screen and (min-width:768px){
346
+ .templateContainer{
347
+ width:600px !important;
348
+ }
349
+
350
+ } @media only screen and (max-width: 480px){
351
+ body,table,td,p,a,li,blockquote{
352
+ -webkit-text-size-adjust:none !important;
353
+ }
354
+
355
+ } @media only screen and (max-width: 480px){
356
+ body{
357
+ width:100% !important;
358
+ min-width:100% !important;
359
+ }
360
+
361
+ } @media only screen and (max-width: 480px){
362
+ .mcnRetinaImage{
363
+ max-width:100% !important;
364
+ }
365
+
366
+ } @media only screen and (max-width: 480px){
367
+ .mcnImage{
368
+ width:100% !important;
369
+ }
370
+
371
+ } @media only screen and (max-width: 480px){
372
+ .mcnCartContainer,.mcnCaptionTopContent,.mcnRecContentContainer,.mcnCaptionBottomContent,.mcnTextContentContainer,.mcnBoxedTextContentContainer,.mcnImageGroupContentContainer,.mcnCaptionLeftTextContentContainer,.mcnCaptionRightTextContentContainer,.mcnCaptionLeftImageContentContainer,.mcnCaptionRightImageContentContainer,.mcnImageCardLeftTextContentContainer,.mcnImageCardRightTextContentContainer,.mcnImageCardLeftImageContentContainer,.mcnImageCardRightImageContentContainer{
373
+ max-width:100% !important;
374
+ width:100% !important;
375
+ }
376
+
377
+ } @media only screen and (max-width: 480px){
378
+ .mcnBoxedTextContentContainer{
379
+ min-width:100% !important;
380
+ }
381
+
382
+ } @media only screen and (max-width: 480px){
383
+ .mcnImageGroupContent{
384
+ padding:9px !important;
385
+ }
386
+
387
+ } @media only screen and (max-width: 480px){
388
+ .mcnCaptionLeftContentOuter .mcnTextContent,.mcnCaptionRightContentOuter .mcnTextContent{
389
+ padding-top:9px !important;
390
+ }
391
+
392
+ } @media only screen and (max-width: 480px){
393
+ .mcnImageCardTopImageContent,.mcnCaptionBottomContent:last-child .mcnCaptionBottomImageContent,.mcnCaptionBlockInner .mcnCaptionTopContent:last-child .mcnTextContent{
394
+ padding-top:18px !important;
395
+ }
396
+
397
+ } @media only screen and (max-width: 480px){
398
+ .mcnImageCardBottomImageContent{
399
+ padding-bottom:9px !important;
400
+ }
401
+
402
+ } @media only screen and (max-width: 480px){
403
+ .mcnImageGroupBlockInner{
404
+ padding-top:0 !important;
405
+ padding-bottom:0 !important;
406
+ }
407
+
408
+ } @media only screen and (max-width: 480px){
409
+ .mcnImageGroupBlockOuter{
410
+ padding-top:9px !important;
411
+ padding-bottom:9px !important;
412
+ }
413
+
414
+ } @media only screen and (max-width: 480px){
415
+ .mcnTextContent,.mcnBoxedTextContentColumn{
416
+ padding-right:18px !important;
417
+ padding-left:18px !important;
418
+ }
419
+
420
+ } @media only screen and (max-width: 480px){
421
+ .mcnImageCardLeftImageContent,.mcnImageCardRightImageContent{
422
+ padding-right:18px !important;
423
+ padding-bottom:0 !important;
424
+ padding-left:18px !important;
425
+ }
426
+
427
+ } @media only screen and (max-width: 480px){
428
+ .mcpreview-image-uploader{
429
+ display:none !important;
430
+ width:100% !important;
431
+ }
432
+
433
+ } @media only screen and (max-width: 480px){
434
+ /*
435
+ @tab Mobile Styles
436
+ @section Heading 1
437
+ @tip Make the first-level headings larger in size for better readability on small screens.
438
+ */
439
+ h1{
440
+ /*@editable*/font-size:22px !important;
441
+ /*@editable*/line-height:125% !important;
442
+ }
443
+
444
+ } @media only screen and (max-width: 480px){
445
+ /*
446
+ @tab Mobile Styles
447
+ @section Heading 2
448
+ @tip Make the second-level headings larger in size for better readability on small screens.
449
+ */
450
+ h2{
451
+ /*@editable*/font-size:20px !important;
452
+ /*@editable*/line-height:125% !important;
453
+ }
454
+
455
+ } @media only screen and (max-width: 480px){
456
+ /*
457
+ @tab Mobile Styles
458
+ @section Heading 3
459
+ @tip Make the third-level headings larger in size for better readability on small screens.
460
+ */
461
+ h3{
462
+ /*@editable*/font-size:18px !important;
463
+ /*@editable*/line-height:125% !important;
464
+ }
465
+
466
+ } @media only screen and (max-width: 480px){
467
+ /*
468
+ @tab Mobile Styles
469
+ @section Heading 4
470
+ @tip Make the fourth-level headings larger in size for better readability on small screens.
471
+ */
472
+ h4{
473
+ /*@editable*/font-size:16px !important;
474
+ /*@editable*/line-height:150% !important;
475
+ }
476
+
477
+ } @media only screen and (max-width: 480px){
478
+ /*
479
+ @tab Mobile Styles
480
+ @section Boxed Text
481
+ @tip Make the boxed text larger in size for better readability on small screens. We recommend a font size of at least 16px.
482
+ */
483
+ .mcnBoxedTextContentContainer .mcnTextContent,.mcnBoxedTextContentContainer .mcnTextContent p{
484
+ /*@editable*/font-size:14px !important;
485
+ /*@editable*/line-height:150% !important;
486
+ }
487
+
488
+ } @media only screen and (max-width: 480px){
489
+ /*
490
+ @tab Mobile Styles
491
+ @section Preheader Visibility
492
+ @tip Set the visibility of the email's preheader on small screens. You can hide it to save space.
493
+ */
494
+ #templatePreheader{
495
+ /*@editable*/display:block !important;
496
+ }
497
+
498
+ } @media only screen and (max-width: 480px){
499
+ /*
500
+ @tab Mobile Styles
501
+ @section Preheader Text
502
+ @tip Make the preheader text larger in size for better readability on small screens.
503
+ */
504
+ #templatePreheader .mcnTextContent,#templatePreheader .mcnTextContent p{
505
+ /*@editable*/font-size:14px !important;
506
+ /*@editable*/line-height:150% !important;
507
+ }
508
+
509
+ } @media only screen and (max-width: 480px){
510
+ /*
511
+ @tab Mobile Styles
512
+ @section Header Text
513
+ @tip Make the header text larger in size for better readability on small screens.
514
+ */
515
+ #templateHeader .mcnTextContent,#templateHeader .mcnTextContent p{
516
+ /*@editable*/font-size:16px !important;
517
+ /*@editable*/line-height:150% !important;
518
+ }
519
+
520
+ } @media only screen and (max-width: 480px){
521
+ /*
522
+ @tab Mobile Styles
523
+ @section Body Text
524
+ @tip Make the body text larger in size for better readability on small screens. We recommend a font size of at least 16px.
525
+ */
526
+ #templateBody .mcnTextContent,#templateBody .mcnTextContent p{
527
+ /*@editable*/font-size:16px !important;
528
+ /*@editable*/line-height:150% !important;
529
+ }
530
+
531
+ } @media only screen and (max-width: 480px){
532
+ /*
533
+ @tab Mobile Styles
534
+ @section Footer Text
535
+ @tip Make the footer content text larger in size for better readability on small screens.
536
+ */
537
+ #templateFooter .mcnTextContent,#templateFooter .mcnTextContent p{
538
+ /*@editable*/font-size:14px !important;
539
+ /*@editable*/line-height:150% !important;
540
+ }
541
+
542
+ }</style></head>
543
+ <body>
544
+ <!--[if !gte mso 9]><!----><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;"><%= @ctx.preview_str -%></span><!--<![endif]-->
545
+ <center>
546
+ <table align="center" border="0" cellpadding="0" cellspacing="0" height="100%" width="100%" id="bodyTable">
547
+ <tr>
548
+ <td align="center" valign="top" id="bodyCell">
549
+ <!-- BEGIN TEMPLATE // -->
550
+ <!--[if (gte mso 9)|(IE)]>
551
+ <table align="center" border="0" cellspacing="0" cellpadding="0" width="600" style="width:600px;">
552
+ <tr>
553
+ <td align="center" valign="top" width="600" style="width:600px;">
554
+ <![endif]-->
555
+ <table border="0" cellpadding="0" cellspacing="0" width="100%" class="templateContainer">
556
+
557
+
558
+
559
+
560
+
561
+
562
+ <!-- herehere begin -->
563
+ <tr>
564
+ <td valign="top" id="templateColumns">
565
+ <!--[if (gte mso 9)|(IE)]>
566
+ <table align="center" border="0" cellspacing="0" cellpadding="0" width="600" style="width:600px;">
567
+ <tr>
568
+ <td align="center" valign="top" width="300" style="width:300px;">
569
+ <![endif]-->
570
+ <table align="left" border="0" cellpadding="0" cellspacing="0" width="300" class="columnWrapper">
571
+ <tbody>
572
+ <tr>
573
+ <td valign="top" class="columnContainer">
574
+ <table border="0" cellpadding="0" cellspacing="0" width="100%" class="mcnImageCardBlock">
575
+ <tbody class="mcnImageCardBlockOuter">
576
+ <tr>
577
+ <td class="mcnImageCardBlockInner" valign="top" style="padding-top:9px; padding-right:18px; padding-bottom:9px; padding-left:18px;">
578
+
579
+ <table align="left" border="0" cellpadding="0" cellspacing="0" class="mcnImageCardBottomContent" width="100%" >
580
+ <tbody><tr>
581
+ <td class="mcnImageCardBottomImageContent" align="right" valign="top" style="padding-top:0px; padding-right:0px; padding-bottom:0; padding-left:0px;">
582
+
583
+ </td>
584
+ </tr>
585
+ <tr>
586
+ <td class="mcnTextContent" valign="top" style="padding: 9px 18px; font-family: Helvetica; font-size: 14px; font-weight: normal; text-align: center;" width="246" height="300" >
587
+
588
+
589
+ <img align="right" alt="Poster Illustration" src="https://d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2023/04/07125339/168x300-poster-2rmT.png" width="168" style="max-width: 200px; padding-bottom: 0; display: inline !important; vertical-align: bottom;" alt="Illustrated Poster" class="mcnImage">
590
+
591
+
592
+ </td>
593
+ </tr></tbody>
594
+ </table>
595
+
596
+ </td>
597
+ </tr>
598
+ </tbody>
599
+ </table>
600
+ </td>
601
+ </tr>
602
+ </tbody>
603
+ </table>
604
+ <!--[if (gte mso 9)|(IE)]>
605
+ </td>
606
+ <td align="center" valign="top" width="300" style="width:300px;">
607
+ <![endif]-->
608
+ <table align="left" border="0" cellpadding="0" cellspacing="0" width="300" class="columnWrapper">
609
+ <tbody>
610
+ <tr>
611
+ <td valign="top" class="columnContainer"><table border="0" cellpadding="0" cellspacing="0" width="100%" class="mcnImageCardBlock">
612
+ <tbody class="mcnImageCardBlockOuter">
613
+ <tr>
614
+ <td class="mcnImageCardBlockInner" valign="top" style="padding-top:9px; padding-right:18px; padding-bottom:9px; padding-left:18px;">
615
+
616
+
617
+ <table align="left" border="0" cellpadding="0" cellspacing="0" width="100%" >
618
+ <tbody>
619
+ <tr>
620
+ <td valign="bottom" style="padding: 9px 18px; font-family: Helvetica; font-size: 14px; font-weight: normal;" width="246" height="300" >
621
+
622
+ <a href="https://wasya.co?<%= @utm_tracking_str -%>" target="_blank" >
623
+ <img src="https://d15g8hc4183yn4.cloudfront.net/wp-content/uploads/2022/09/29185755/259x66-WasyaCo-Logo-YellowShadow.png" width=228 alt="Wasya Co" />
624
+ </a>
625
+ <h1 style="margin-left: 14px" >ReactJS</h1>
626
+ <i style="color: #666; margin-left: 14px;">Web Application Development</i>
627
+ &nbsp;<br />&nbsp;<br />&nbsp;<br />
628
+ </td>
629
+ </tr>
630
+ </tbody>
631
+ </table>
632
+
633
+
634
+
635
+
636
+ </td>
637
+ </tr>
638
+ </tbody>
639
+ </table></td>
640
+ </tr>
641
+ </tbody>
642
+ </table>
643
+ <!--[if (gte mso 9)|(IE)]>
644
+ </td>
645
+ </tr>
646
+ </table>
647
+ <![endif]-->
648
+ </td>
649
+ </tr>
650
+ <!-- herehere end -->
651
+
652
+
653
+
654
+
655
+ <!-- herehere another begin -->
656
+ <tr>
657
+ <td valign="top" id="templateFooter"><table border="0" cellpadding="0" cellspacing="0" width="100%" style="min-width:100%;">
658
+ <tbody>
659
+ <tr>
660
+ <td align="center" valign="top" style="padding:9px" class="mcnFollowBlockInner">
661
+ <table border="0" cellpadding="0" cellspacing="0" width="100%" class="mcnFollowContentContainer" style="min-width:100%;">
662
+ <tbody><tr>
663
+ <td width="100" >&nbsp;</td>
664
+ <td align="center" style="padding-left: 50px; padding-right: 9px; ">
665
+
666
+ <h3><a href="https://wasya.co/our-services-2?<%= @utm_tracking_str %>" style="color: #00c8cc;" target="_blank" >https://wasya.co/w/our-services</a></h3>
667
+ <br />
668
+ <h3><a href="https://wasya.co/contact-us-2?<%= @utm_tracking_str %>" style="color: #00c8cc;" target="_blank" >https://wasya.co/w/contact-us</a></h3>
669
+
670
+ </td>
671
+ </tr>
672
+ </tbody></table>
673
+
674
+ </td>
675
+ </tr>
676
+ </tbody>
677
+ </table><table border="0" cellpadding="0" cellspacing="0" width="100%" class="mcnDividerBlock" style="min-width:100%;">
678
+ <tbody class="mcnDividerBlockOuter">
679
+ <tr>
680
+ <td class="mcnDividerBlockInner" style="min-width: 100%; padding: 10px 18px 25px;">
681
+ <table class="mcnDividerContent" border="0" cellpadding="0" cellspacing="0" width="100%" style="min-width: 100%;border-top: 2px solid #EEEEEE;">
682
+ <tbody><tr>
683
+ <td>
684
+ <span></span>
685
+ </td>
686
+ </tr>
687
+ </tbody></table>
688
+
689
+ </td>
690
+ </tr>
691
+ </tbody>
692
+ </table><table border="0" cellpadding="0" cellspacing="0" width="100%" class="mcnTextBlock" style="min-width:100%;">
693
+ <tbody class="mcnTextBlockOuter">
694
+ <tr>
695
+ <td valign="top" class="mcnTextBlockInner" style="padding-top:9px;">
696
+ <!--[if mso]>
697
+ <table align="left" border="0" cellspacing="0" cellpadding="0" width="100%" style="width:100%;">
698
+ <tr>
699
+ <![endif]-->
700
+
701
+ <!--[if mso]>
702
+ <td valign="top" width="600" style="width:600px;">
703
+ <![endif]-->
704
+ <table align="left" border="0" cellpadding="0" cellspacing="0" style="max-width:100%; min-width:100%;" width="100%" class="mcnTextContentContainer">
705
+ <tbody><tr>
706
+
707
+ <td valign="top" class="mcnTextContent" style="padding-top:0; padding-right:18px; padding-bottom:9px; padding-left:18px;">
708
+
709
+ <em>Copyright © 2023 Wasya Co</em>
710
+ <br>
711
+ <strong>Our mailing address is:</strong>
712
+
713
+ 201 W 5th St 11th Floor, Austin, TX 78701
714
+
715
+ <br>
716
+ Want to change how you receive these emails?
717
+ You can <a href="https://wasya.co/unsubscribe-1?<%= @utm_tracking_str -%>">click to unsubscribe</a>.
718
+
719
+ </td>
720
+ </tr>
721
+ </tbody></table>
722
+ <!--[if mso]>
723
+ </td>
724
+ <![endif]-->
725
+
726
+ <!--[if mso]>
727
+ </tr>
728
+ </table>
729
+ <![endif]-->
730
+ </td>
731
+ </tr>
732
+ </tbody>
733
+ </table></td>
734
+ </tr>
735
+ <!-- herehere another end -->
736
+
737
+ </table>
738
+ <!--[if (gte mso 9)|(IE)]>
739
+ </td>
740
+ </tr>
741
+ </table>
742
+ <![endif]-->
743
+ <!-- // END TEMPLATE -->
744
+ </td>
745
+ </tr>
746
+ </table>
747
+ </center>
748
+ </body>
749
+ </html>
@@ -1,11 +1,11 @@
1
1
 
2
- = form_tag leads_import_path, multipart: true do
3
- .doc
4
- %ul
5
- %li Fields: id, date, name, email, tag, phone, linkedin, comment
6
- .field
7
- %label File
8
- = file_field_tag :csv_file
2
+ .Card
3
+ = form_tag leads_import_path, multipart: true do
4
+ .doc
5
+ %pre= Lead.import_v1_fields
6
+ .field
7
+ %label File
8
+ = file_field_tag :csv_file
9
9
 
10
- .actions
11
- = submit_tag 'Submit'
10
+ .actions
11
+ = submit_tag 'Submit'
@@ -1,22 +1,23 @@
1
1
 
2
- .leads-index
2
+ .leads-index.padded
3
3
  .header
4
4
  %h2.title
5
5
  #{link_to 'Kept Leads', leads_path} (#{::Lead.kept.count}, #{::Lead.all.count})
6
6
  = link_to raw("<i class='fa fa-plus-square'></i>"), new_lead_path
7
7
 
8
+ = paginate @leads, param_name: :leads_page
8
9
  = form_tag leads_bulkop_path do
9
10
  = label_tag 'Act on Selected:'
10
11
  = select_tag :op, options_for_select( [[nil,nil]] + Lead::OPS )
11
12
  = select_tag :email_campaign_id, options_for_select( @email_campaigns_list )
12
13
  = submit_tag 'Go'
13
14
 
14
- %table.bordered.data-table
15
+ %table.bordered
15
16
  %thead
16
17
  %tr
17
18
  %th &nbsp;
18
19
  %th Name/Email
19
- %th Company
20
+ %th.company Company
20
21
  %th Phone
21
22
  %th Tag
22
23
  %th created_at
@@ -28,7 +29,10 @@
28
29
  %tr
29
30
  %td= check_box_tag 'lead_ids[]', lead.id
30
31
  %td= link_to "#{lead.name} <#{lead.email}>", lead_path( lead )
31
- %td= lead.company.company_url
32
+ %td.company
33
+ = lead.company.company_url
34
+ - if lead.company.name.present?
35
+ <br /><b>#{lead.company.name}</b>
32
36
  %td= lead.phone
33
37
  %td= lead.wp_tags.map(&:name).join(", ")
34
38
  %td= lead.created_at.to_s[0..10]
@@ -42,7 +46,8 @@
42
46
  -# %li
43
47
  -# = link_to sch_a.email_action.slug, edit_scheduled_email_action_path( sch_a )
44
48
  -# [x]
45
-
49
+ .c
50
+ = paginate @leads, param_name: :leads_page
46
51
 
47
52
 
48
53
 
data/config/routes.rb CHANGED
@@ -3,7 +3,8 @@ IshManager::Engine.routes.draw do
3
3
 
4
4
  root :to => 'application#home'
5
5
 
6
- get 'categories', to: 'categories#index'
6
+ # get 'categories', to: 'categories#index'
7
+ resources :categories
7
8
 
8
9
  resources 'events'
9
10
 
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.418
4
+ version: 0.1.8.420
5
5
  platform: ruby
6
6
  authors:
7
7
  - piousbox
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-04-07 00:00:00.000000000 Z
11
+ date: 2023-04-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -271,6 +271,7 @@ files:
271
271
  - app/assets/stylesheets/ish_manager/galleries.scss
272
272
  - app/assets/stylesheets/ish_manager/iro.scss
273
273
  - app/assets/stylesheets/ish_manager/jquery-ui.css
274
+ - app/assets/stylesheets/ish_manager/kaminari_pagination.scss
274
275
  - app/assets/stylesheets/ish_manager/leads_leadsets.scss
275
276
  - app/assets/stylesheets/ish_manager/maps.scss
276
277
  - app/assets/stylesheets/ish_manager/markers.scss
@@ -377,6 +378,7 @@ files:
377
378
  - app/views/ish_manager/application_mailer/welcome.html.erb
378
379
  - app/views/ish_manager/categories/_subtree.haml
379
380
  - app/views/ish_manager/categories/index.haml
381
+ - app/views/ish_manager/categories/show.haml
380
382
  - app/views/ish_manager/email_actions/_form.haml
381
383
  - app/views/ish_manager/email_actions/edit.haml
382
384
  - app/views/ish_manager/email_actions/index.haml
@@ -419,6 +421,7 @@ files:
419
421
  - app/views/ish_manager/email_templates/_m20221222merryxmas.html.erb
420
422
  - app/views/ish_manager/email_templates/_marketing_react_1.html
421
423
  - app/views/ish_manager/email_templates/_marketing_react_2.html.erb
424
+ - app/views/ish_manager/email_templates/_marketing_react_3.html.erb
422
425
  - app/views/ish_manager/email_templates/_marketing_ror_1.html
423
426
  - app/views/ish_manager/email_templates/_marketing_ror_2.html.erb
424
427
  - app/views/ish_manager/email_templates/_marketing_wordpress_1.html