wco_email 0.1.1.9 → 0.1.1.11
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/controllers/wco_email/email_filters_controller.rb +2 -2
- data/app/jobs/wco_email/message_intake_job.rb +2 -1
- data/app/views/wco_email/contexts/_form.haml +1 -1
- data/app/views/wco_email/email_filters/_form.haml +3 -3
- data/app/views/wco_email/email_filters/index.haml +6 -5
- data/lib/tasks/wco_email_tasks.rake +6 -4
- metadata +2 -4
- data/app/mailers/wco_email/application_mailer.rb +0 -98
- data/app/views/layouts/wco_email/mailbox.haml-trash +0 -62
- /data/app/views/wco_email/application_mailer/{forwarder_notify.html.erb → forwarder_notify.html.erb-trash} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 57871044dbe34a83eb21daf21efce6e5f80f58a4d05002e335a5de68708c9db2
|
4
|
+
data.tar.gz: e3813b3170e891df5f8d49168b319823f7eaa935ca4aa2f4e21606eba5cbf49c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 67012b8a6f4a425ebc669e3b31aef2ae94305e59774052e1e122a98f9f1878a48d890dca3f2f1661e0a53e818abe76bfe4565b85c7c5e9bd9517c60d46e49750
|
7
|
+
data.tar.gz: e1958e70b7e6f17f4c3507dee615fd21567385d51097b51cbdaafd4493f76a40b7c94eae06e6da3057db4c2b54bbd0717157fe94e51e9ae0225c15acb3c3db50
|
@@ -34,7 +34,7 @@ class WcoEmail::EmailFiltersController < WcoEmail::ApplicationController
|
|
34
34
|
def index
|
35
35
|
authorize! :index, WcoEmail::EmailFilter.new
|
36
36
|
@email_filter = WcoEmail::EmailFilter.new
|
37
|
-
@email_filters = WcoEmail::EmailFilter.all
|
37
|
+
@email_filters = WcoEmail::EmailFilter.all.page( params[WcoEmail::EmailFilter::PAGE_PARAM_NAME] ).per( current_profile.per_page )
|
38
38
|
end
|
39
39
|
|
40
40
|
def new
|
@@ -60,7 +60,7 @@ class WcoEmail::EmailFiltersController < WcoEmail::ApplicationController
|
|
60
60
|
private
|
61
61
|
|
62
62
|
def set_lists
|
63
|
-
|
63
|
+
@tags_list = Wco::Tag.list
|
64
64
|
@email_templates_list = WcoEmail::EmailTemplate.list
|
65
65
|
@email_actions_list = WcoEmail::EmailAction.list
|
66
66
|
@email_action_templates_list = WcoEmail::EmailActionTemplate.list
|
@@ -2,6 +2,7 @@
|
|
2
2
|
require 'aws-sdk-s3'
|
3
3
|
require 'mail'
|
4
4
|
require 'sidekiq'
|
5
|
+
require 'exception_notification'
|
5
6
|
|
6
7
|
##
|
7
8
|
## 2023-02-26 _vp_ Let's go
|
@@ -40,7 +41,7 @@ class WcoEmail::MessageIntakeJob
|
|
40
41
|
stub.do_process
|
41
42
|
rescue => err
|
42
43
|
puts! err, "WcoEmail::MessageIntakeJob error"
|
43
|
-
ExceptionNotifier.notify_exception(
|
44
|
+
::ExceptionNotifier.notify_exception(
|
44
45
|
err,
|
45
46
|
data: { stub: stub }
|
46
47
|
)
|
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
.flex-row
|
8
8
|
= f.label :email_template_id
|
9
|
-
= f.select :email_template_id, options_for_select(@email_templates_list, selected: params[:email_template_id] || ctx.email_template_id
|
9
|
+
= f.select :email_template_id, options_for_select(@email_templates_list, selected: params[:email_template_id] || ctx.email_template_id ), {}, { class: 'select2', required: true }
|
10
10
|
- if ctx.email_template_id
|
11
11
|
= link_to '[view]', email_template_path( ctx.email_template_id ), target: :_blank, class: [ 'action-view' ]
|
12
12
|
= link_to '[~]', edit_email_template_path( ctx.email_template_id ), target: :_blank, class: [ 'action-view' ]
|
@@ -33,8 +33,8 @@
|
|
33
33
|
.field
|
34
34
|
= f.label :email_action_template
|
35
35
|
= f.select :email_action_template, options_for_select( @email_action_templates_list, selected: email_filter.email_action_template ), {}, class: 'select2'
|
36
|
-
|
37
|
-
|
38
|
-
|
36
|
+
.field
|
37
|
+
= f.label :tag
|
38
|
+
= f.select :tag, options_for_select( @tags_list, selected: email_filter.tag_id ), {}, class: 'select2'
|
39
39
|
.actions
|
40
40
|
= f.submit
|
@@ -12,6 +12,7 @@
|
|
12
12
|
= render 'form', email_filter: @email_filter
|
13
13
|
%hr
|
14
14
|
|
15
|
+
= paginate @email_filters, param_name: WcoEmail::EmailFilter::PAGE_PARAM_NAME, views_prefix: 'wco'
|
15
16
|
%table.bordered.data-table
|
16
17
|
%thead
|
17
18
|
%tr
|
@@ -23,9 +24,9 @@
|
|
23
24
|
%th Subject Exact
|
24
25
|
%th Body Exact
|
25
26
|
%th Kind
|
26
|
-
|
27
|
-
%th Email Action
|
28
|
-
|
27
|
+
%th Respond with <br />Email Template
|
28
|
+
%th Email Action <br />(template)
|
29
|
+
%th Tag
|
29
30
|
- @email_filters.each_with_index do |ef, idx|
|
30
31
|
|
31
32
|
%tr
|
@@ -43,8 +44,8 @@
|
|
43
44
|
%td= ef.subject_exact
|
44
45
|
%td= ef.body_exact
|
45
46
|
%td= ef.kind
|
46
|
-
|
47
|
+
%td= ef.email_template&.slug
|
47
48
|
%td= ef.email_action_template&.slug
|
48
|
-
|
49
|
+
%td= ef.tag&.slug
|
49
50
|
|
50
51
|
|
@@ -93,22 +93,24 @@ namespace :wco_email do
|
|
93
93
|
desc 'import objectkey list'
|
94
94
|
task import_objectkey_list: :environment do
|
95
95
|
|
96
|
-
bucket = 'ish-ses'
|
96
|
+
# bucket = 'ish-ses'
|
97
|
+
bucket = 'ish-test-2024'
|
97
98
|
client ||= Aws::S3::Client.new({
|
98
99
|
region: ::S3_CREDENTIALS[:region_ses],
|
99
100
|
access_key_id: ::S3_CREDENTIALS[:access_key_id_ses],
|
100
101
|
secret_access_key: ::S3_CREDENTIALS[:secret_access_key_ses],
|
101
102
|
})
|
102
103
|
|
103
|
-
lines = File.read( './data/20240110_ish-ses_objectkeys' )
|
104
|
+
# lines = File.read( './data/20240110_ish-ses_objectkeys' )
|
105
|
+
lines = File.read( './data/out_head' )
|
104
106
|
lines.split("\n").each_with_index do |line, idx|
|
105
107
|
|
106
108
|
object_key = line.split.last
|
107
109
|
stub = WcoEmail::MessageStub.create( object_key: object_key, bucket: bucket )
|
108
110
|
if stub.persisted?
|
109
|
-
print "#{idx}."
|
111
|
+
print "#{idx+1}."
|
110
112
|
else
|
111
|
-
|
113
|
+
puts! stub.errors.full_messages.join(", ")
|
112
114
|
end
|
113
115
|
|
114
116
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wco_email
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.1.
|
4
|
+
version: 0.1.1.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Victor Pudeyev
|
@@ -317,7 +317,6 @@ files:
|
|
317
317
|
- app/controllers/wco_email/unsubscribes_controller.rb
|
318
318
|
- app/helpers/wco_email/application_helper.rb
|
319
319
|
- app/jobs/wco_email/message_intake_job.rb
|
320
|
-
- app/mailers/wco_email/application_mailer.rb
|
321
320
|
- app/views/202212 Mailchimp Templates/202212 1col fixed-width.html
|
322
321
|
- app/views/202212 Mailchimp Templates/202212 1col full-width.html
|
323
322
|
- app/views/202212 Mailchimp Templates/202212 2col fixed-width 2.html
|
@@ -355,13 +354,12 @@ files:
|
|
355
354
|
- app/views/202310 Email Templates/_acknowledgement_of_document_receipt.html.erb
|
356
355
|
- app/views/202310 Email Templates/_support_ticket_created.html.erb
|
357
356
|
- app/views/layouts/wco_email/application.haml
|
358
|
-
- app/views/layouts/wco_email/mailbox.haml-trash
|
359
357
|
- app/views/wco_email/_analytics.erb
|
360
358
|
- app/views/wco_email/_main_header.haml
|
361
359
|
- app/views/wco_email/_sidebar.haml
|
362
360
|
- app/views/wco_email/application_mailer/_footer_unsubscribe.html.erb
|
363
361
|
- app/views/wco_email/application_mailer/_header_logo.html.erb
|
364
|
-
- app/views/wco_email/application_mailer/forwarder_notify.html.erb
|
362
|
+
- app/views/wco_email/application_mailer/forwarder_notify.html.erb-trash
|
365
363
|
- app/views/wco_email/contexts/_form.haml
|
366
364
|
- app/views/wco_email/contexts/_form_reply.haml
|
367
365
|
- app/views/wco_email/contexts/_header.haml
|
@@ -1,98 +0,0 @@
|
|
1
|
-
|
2
|
-
class WcoEmail::ApplicationMailer < ActionMailer::Base
|
3
|
-
|
4
|
-
default from: 'WasyaCo Consulting <no-reply@wco.com.de>'
|
5
|
-
helper(Wco::ApplicationHelper)
|
6
|
-
|
7
|
-
layout 'mailer'
|
8
|
-
|
9
|
-
|
10
|
-
def forwarder_notify msg_id
|
11
|
-
@msg = WcoEmail::Message.find msg_id
|
12
|
-
mail( to: "poxlovi@gmail.com",
|
13
|
-
subject: "POX::#{@msg.subject}" )
|
14
|
-
end
|
15
|
-
|
16
|
-
def shared_galleries profiles, gallery
|
17
|
-
return if profiles.count == 0
|
18
|
-
@gallery = gallery
|
19
|
-
@domain = Rails.application.config.action_mailer.default_url_options[:host]
|
20
|
-
@galleries_path = IshManager::Engine.routes.url_helpers.galleries_path
|
21
|
-
@gallery_path = IshManager::Engine.routes.url_helpers.gallery_path(@gallery.slug)
|
22
|
-
mail( :to => '314658@gmail.com',
|
23
|
-
:bcc => profiles.map { |p| p.email },
|
24
|
-
:subject => 'You got new shared galleries on pi manager' )
|
25
|
-
end
|
26
|
-
|
27
|
-
def option_alert option
|
28
|
-
@option = option
|
29
|
-
mail({
|
30
|
-
:to => option.profile.email,
|
31
|
-
:subject => "IshManager Option Alert :: #{option.ticker}",
|
32
|
-
})
|
33
|
-
end
|
34
|
-
|
35
|
-
def stock_alert watch_id
|
36
|
-
@watch = Iro::OptionWatch.find watch_id
|
37
|
-
mail({
|
38
|
-
to: @watch.profile.email,
|
39
|
-
subject: "Iro Watch Alert :: #{@watch.ticker} is #{@watch.direction} #{@watch.mark}."
|
40
|
-
})
|
41
|
-
end
|
42
|
-
|
43
|
-
def test_email
|
44
|
-
mail( to: DEFAULT_RECIPIENT, subject: "Test email at #{Time.now}" )
|
45
|
-
end
|
46
|
-
|
47
|
-
## 2023-04-02 _vp_ Continue.
|
48
|
-
## 2023-09-24 _vp_ Continue : )
|
49
|
-
def send_context_email ctx_id
|
50
|
-
@ctx = Ctx.find ctx_id
|
51
|
-
@lead = Wco::Lead.find @ctx.lead_id
|
52
|
-
@tmpl_config = OpenStruct.new JSON.parse( @ctx.tmpl[:config_json] )
|
53
|
-
|
54
|
-
@utm_tracking_str = {
|
55
|
-
'cid' => @ctx.lead_id,
|
56
|
-
'utm_campaign' => @ctx.tmpl.slug,
|
57
|
-
'utm_medium' => 'email',
|
58
|
-
'utm_source' => @ctx.tmpl.slug,
|
59
|
-
}.map { |k, v| "#{k}=#{v}" }.join("&")
|
60
|
-
|
61
|
-
# @origin = "https://#{Rails.application.config.action_mailer.default_url_options[:host]}"
|
62
|
-
|
63
|
-
@unsubscribe_url = WcoEmail::Engine.routes.url_helpers.unsubscribes_url({
|
64
|
-
template_id: @ctx.tmpl.id,
|
65
|
-
lead_id: @lead.id,
|
66
|
-
token: @lead.unsubscribe_token,
|
67
|
-
host: Rails.application.routes.default_url_options[:host],
|
68
|
-
})
|
69
|
-
# renderer = Tmp6Ctl.new
|
70
|
-
# renderer = IshManager::ApplicationController.new
|
71
|
-
# renderer.send( :include, ::IshManager::ApplicationHelper )
|
72
|
-
# renderer.send( :request, { host: 'test-host' } )
|
73
|
-
renderer = WcoEmail::ApplicationMailer.new
|
74
|
-
|
75
|
-
renderer.instance_variable_set( :@ctx, @ctx )
|
76
|
-
renderer.instance_variable_set( :@lead, @ctx.lead )
|
77
|
-
renderer.instance_variable_set( :@utm_tracking_str, @utm_tracking_str )
|
78
|
-
renderer.instance_variable_set( :@unsubscribe_url, @unsubscribe_url )
|
79
|
-
renderer.instance_variable_set( :@tmpl_config, @tmpl_config )
|
80
|
-
|
81
|
-
# eval( @ctx.tmpl.config_exe )
|
82
|
-
|
83
|
-
rendered_str = renderer.render_to_string("/wco_email/email_templates/_#{@ctx.tmpl.layout}")
|
84
|
-
@ctx.update({
|
85
|
-
rendered_str: rendered_str,
|
86
|
-
sent_at: Time.now.to_s,
|
87
|
-
})
|
88
|
-
|
89
|
-
mail( from: @ctx.from_email,
|
90
|
-
to: @ctx.to_email,
|
91
|
-
cc: @ctx.cc,
|
92
|
-
bcc: "poxlovi@gmail.com",
|
93
|
-
subject: ERB.new( @ctx.subject ).result( @ctx.get_binding ),
|
94
|
-
body: rendered_str,
|
95
|
-
content_type: "text/html" )
|
96
|
-
end
|
97
|
-
|
98
|
-
end
|
@@ -1,62 +0,0 @@
|
|
1
|
-
!!!
|
2
|
-
%html
|
3
|
-
%head
|
4
|
-
%title #{@page_title} | wco_email_rb-mailbox
|
5
|
-
%link{ :rel => 'icon', :href => "/favicon_#{ENV['RAILS_ENV']}.gif" }
|
6
|
-
%meta{ :name => :viewport, :content => 'width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=2' }
|
7
|
-
%meta{ :charset => 'UTF-8' }
|
8
|
-
%meta{ :description => @page_description }
|
9
|
-
|
10
|
-
= javascript_include_tag "//code.jquery.com/jquery-3.3.1.min.js"
|
11
|
-
|
12
|
-
%script{ :src => "//cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js" }
|
13
|
-
= stylesheet_link_tag "//cdn.datatables.net/1.10.16/css/jquery.dataTables.min.css"
|
14
|
-
|
15
|
-
= stylesheet_link_tag "//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css", :media => 'all'
|
16
|
-
= stylesheet_link_tag "//fonts.googleapis.com/icon?family=Material+Icons"
|
17
|
-
|
18
|
-
= stylesheet_link_tag "//cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/css/bootstrap.min.css"
|
19
|
-
= javascript_include_tag "//cdn.jsdelivr.net/npm/popper.js@1.14.7/dist/umd/popper.min.js"
|
20
|
-
= javascript_include_tag "//cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/js/bootstrap.min.js"
|
21
|
-
|
22
|
-
= stylesheet_link_tag "//cdn.jsdelivr.net/npm/select2@4.0.0/dist/css/select2.min.css"
|
23
|
-
= javascript_include_tag "//cdn.jsdelivr.net/npm/select2@4.0.0/dist/js/select2.min.js"
|
24
|
-
|
25
|
-
-# summernote
|
26
|
-
= stylesheet_link_tag "//cdn.jsdelivr.net/npm/summernote@0.8.18/dist/summernote.min.css"
|
27
|
-
= javascript_include_tag "//cdn.jsdelivr.net/npm/summernote@0.8.18/dist/summernote.min.js"
|
28
|
-
-# quill core
|
29
|
-
-# = stylesheet_link_tag "//cdn.quilljs.com/1.3.6/quill.core.css"
|
30
|
-
-# = javascript_include_tag "//cdn.quilljs.com/1.3.6/quill.core.js"
|
31
|
-
-# quill
|
32
|
-
-# = stylesheet_link_tag "//cdn.quilljs.com/1.3.6/quill.snow.css"
|
33
|
-
-# = javascript_include_tag "//cdn.quilljs.com/1.3.6/quill.min.js"
|
34
|
-
|
35
|
-
= javascript_include_tag "wco_email/application"
|
36
|
-
= stylesheet_link_tag "wco_email/application", media: "all"
|
37
|
-
= stylesheet_link_tag "wco/application", media: "all"
|
38
|
-
|
39
|
-
-# %script{crossorigin: "", src: "https://unpkg.com/react@18/umd/react.development.js"}
|
40
|
-
-# %script{crossorigin: "", src: "https://unpkg.com/react-dom@18/umd/react-dom.development.js"}
|
41
|
-
-# %script{src: "https://unpkg.com/prop-types@15.6/prop-types.min.js"}
|
42
|
-
-# %script{src: "https://unpkg.com/axios/dist/axios.min.js"}
|
43
|
-
-# %script{src: "https://unpkg.com/recharts/umd/Recharts.js"}
|
44
|
-
|
45
|
-
= csrf_meta_tags
|
46
|
-
%body{ class: [ params[:controller].gsub("wco_email/",""), "#{params[:controller].gsub("wco_email/","")}-#{params[:action]}", params[:action], "application-fullwidth" ] }
|
47
|
-
|
48
|
-
= render "/wco/main_header"
|
49
|
-
= render "/wco_email/main_header"
|
50
|
-
= render '/wco/alerts_notices' if notice || alert
|
51
|
-
%hr
|
52
|
-
|
53
|
-
.padded
|
54
|
-
.row
|
55
|
-
.col-md-2.border-right
|
56
|
-
= render 'wco_email/sidebar'
|
57
|
-
.col-md-10
|
58
|
-
%span.absolute.collapse-expand#mainW
|
59
|
-
= yield
|
60
|
-
|
61
|
-
= render '/wco/main_footer'
|
62
|
-
= render '/wco_email/analytics' if Rails.env.production?
|
File without changes
|