wco_email 0.1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.txt +129 -0
- data/Rakefile +5 -0
- data/app/assets/config/wco_email_manifest.js +7 -0
- data/app/assets/javascript/vendor-trash/jquery-ui.min.js +13 -0
- data/app/assets/javascript/vendor-trash/jquery.fileupload.js +1482 -0
- data/app/assets/javascript/vendor-trash/jquery.iframe-transport.js +224 -0
- data/app/assets/javascript/vendor-trash/jquery.ui.widget.js +572 -0
- data/app/assets/javascript/vendor-trash/summernote-bs4.min.js +3 -0
- data/app/assets/javascript/wco_email/application.js +11 -0
- data/app/assets/javascript/wco_email/contexts.js +19 -0
- data/app/assets/javascript/wco_email/conversations.js +177 -0
- data/app/assets/javascript/wco_email/file_upload.js-trash +32 -0
- data/app/assets/javascript/wco_email/shared.js +22 -0
- data/app/assets/stylesheets/wco_email/application.scss +29 -0
- data/app/assets/stylesheets/wco_email/contexts.scss +63 -0
- data/app/assets/stylesheets/wco_email/conversations.scss +16 -0
- data/app/assets/stylesheets/wco_email/tags.scss +6 -0
- data/app/controllers/wco_email/application_controller.rb +16 -0
- data/app/controllers/wco_email/contexts_controller.rb +156 -0
- data/app/controllers/wco_email/conversations_controller.rb +129 -0
- data/app/controllers/wco_email/email_action_templates_controller.rb +77 -0
- data/app/controllers/wco_email/email_actions_controller.rb +55 -0
- data/app/controllers/wco_email/email_campaigns_controller.rb +73 -0
- data/app/controllers/wco_email/email_filters_controller.rb +72 -0
- data/app/controllers/wco_email/email_layouts_controller.rb +13 -0
- data/app/controllers/wco_email/email_templates_controller.rb +124 -0
- data/app/controllers/wco_email/message_stubs_controller.rb +14 -0
- data/app/controllers/wco_email/messages_controller.rb +28 -0
- data/app/controllers/wco_email/obfuscated_redirects_controller.rb +20 -0
- data/app/controllers/wco_email/sessions_controller.rb +19 -0
- data/app/controllers/wco_email/unsubscribes_controller.rb +40 -0
- data/app/helpers/wco_email/application_helper.rb +20 -0
- data/app/jobs/wco_email/message_intake_job.rb +54 -0
- data/app/mailers/wco_email/application_mailer.rb +98 -0
- data/app/views/202212 Mailchimp Templates/202212 1col fixed-width.html +863 -0
- data/app/views/202212 Mailchimp Templates/202212 1col full-width.html +906 -0
- data/app/views/202212 Mailchimp Templates/202212 2col fixed-width 2.html +1003 -0
- data/app/views/202212 Mailchimp Templates/202212 2col fixed-width.html +1082 -0
- data/app/views/202212 Mailchimp Templates/202212 2col full-width 2.html +1053 -0
- data/app/views/202212 Mailchimp Templates/202212 2col full-width.html +1147 -0
- data/app/views/202212 Mailchimp Templates/202212 3col fixed-width.html +1087 -0
- data/app/views/202212 Mailchimp Templates/202212 3col full-width.html +1136 -0
- data/app/views/202212 Mailchimp Templates/202212 catalog various-colors-1.html +1223 -0
- data/app/views/202212 Mailchimp Templates/202212 educate.html +1080 -0
- data/app/views/202212 Mailchimp Templates/202212 follow up.html +1001 -0
- data/app/views/202212 Mailchimp Templates/202212 make an announcement.html +1048 -0
- data/app/views/202212 Mailchimp Templates/202212 sell-a-product.html +977 -0
- data/app/views/202212 Mailchimp Templates/202212 tell a story.html +1168 -0
- data/app/views/202212 Mailchimp Templates/202212 theme art-newsletter.html +1612 -0
- data/app/views/202212 Mailchimp Templates/202212 theme caribou-xmas.html +856 -0
- data/app/views/202212 Mailchimp Templates/202212 theme colorbox.html +1027 -0
- data/app/views/202212 Mailchimp Templates/202212 theme competition-invitation.html +918 -0
- data/app/views/202212 Mailchimp Templates/202212 theme event-veerle.html +1132 -0
- data/app/views/202212 Mailchimp Templates/202212 theme fall-colors.html +1407 -0
- data/app/views/202212 Mailchimp Templates/202212 theme gift-giving.html +787 -0
- data/app/views/202212 Mailchimp Templates/202212 theme giftgiving-snowmen.html +731 -0
- data/app/views/202212 Mailchimp Templates/202212 theme heart-of-flowers.html +795 -0
- data/app/views/202212 Mailchimp Templates/202212 theme hero-card.html +915 -0
- data/app/views/202212 Mailchimp Templates/202212 theme hero-image.html +1148 -0
- data/app/views/202212 Mailchimp Templates/202212 theme monthly-contest.html +967 -0
- data/app/views/202212 Mailchimp Templates/202212 theme multiple-event.html +1189 -0
- data/app/views/202212 Mailchimp Templates/202212 theme postcard.html +914 -0
- data/app/views/202212 Mailchimp Templates/202212 theme snowy-fields.html +733 -0
- data/app/views/202212 Mailchimp Templates/202212 theme soft.html +849 -0
- data/app/views/202212 Mailchimp Templates/202212 theme sophisticated.html +1079 -0
- data/app/views/202212 Mailchimp Templates/202212 theme subtle.html +1218 -0
- data/app/views/202212 Mailchimp Templates/202212 theme ticket.html +1015 -0
- data/app/views/202212 Mailchimp Templates/202212 theme whale.html +888 -0
- data/app/views/202310 Email Templates/_acknowledgement_of_document_receipt.html.erb +23 -0
- data/app/views/202310 Email Templates/_support_ticket_created.html.erb +26 -0
- data/app/views/layouts/wco_email/application.haml +64 -0
- data/app/views/layouts/wco_email/mailbox.haml-trash +62 -0
- data/app/views/wco_email/_analytics.erb +16 -0
- data/app/views/wco_email/_main_header.haml +31 -0
- data/app/views/wco_email/_sidebar.haml +10 -0
- data/app/views/wco_email/application_mailer/_footer_unsubscribe.html.erb +24 -0
- data/app/views/wco_email/application_mailer/_header_logo.html.erb +12 -0
- data/app/views/wco_email/application_mailer/forwarder_notify.html.erb +17 -0
- data/app/views/wco_email/contexts/_form.haml +59 -0
- data/app/views/wco_email/contexts/_form_reply.haml +27 -0
- data/app/views/wco_email/contexts/_header.haml +22 -0
- data/app/views/wco_email/contexts/_index.haml +8 -0
- data/app/views/wco_email/contexts/edit.haml +8 -0
- data/app/views/wco_email/contexts/iframe_src.haml +3 -0
- data/app/views/wco_email/contexts/index.haml +51 -0
- data/app/views/wco_email/contexts/new.haml +5 -0
- data/app/views/wco_email/contexts/show.haml +34 -0
- data/app/views/wco_email/contexts/summary.csv.erb +4 -0
- data/app/views/wco_email/contexts/summary.haml +16 -0
- data/app/views/wco_email/conversations/_actions.haml +21 -0
- data/app/views/wco_email/conversations/_search.haml +14 -0
- data/app/views/wco_email/conversations/index.haml +43 -0
- data/app/views/wco_email/conversations/show.haml +27 -0
- data/app/views/wco_email/email_action_templates/_form.haml +45 -0
- data/app/views/wco_email/email_action_templates/_header.haml +8 -0
- data/app/views/wco_email/email_action_templates/edit.haml +7 -0
- data/app/views/wco_email/email_action_templates/index.haml +36 -0
- data/app/views/wco_email/email_action_templates/new.haml +9 -0
- data/app/views/wco_email/email_action_templates/show.haml +11 -0
- data/app/views/wco_email/email_actions/_form.haml +24 -0
- data/app/views/wco_email/email_actions/_form_mini.haml-trash +28 -0
- data/app/views/wco_email/email_actions/_header.haml +8 -0
- data/app/views/wco_email/email_actions/edit.haml +4 -0
- data/app/views/wco_email/email_actions/index.haml +31 -0
- data/app/views/wco_email/email_actions/new.haml +4 -0
- data/app/views/wco_email/email_actions/show.haml +0 -0
- data/app/views/wco_email/email_campaigns/_form.haml +33 -0
- data/app/views/wco_email/email_campaigns/_header.haml +5 -0
- data/app/views/wco_email/email_campaigns/edit.haml +5 -0
- data/app/views/wco_email/email_campaigns/index.haml +14 -0
- data/app/views/wco_email/email_campaigns/new.haml +5 -0
- data/app/views/wco_email/email_campaigns/show.haml +17 -0
- data/app/views/wco_email/email_filters/_form.haml +40 -0
- data/app/views/wco_email/email_filters/_header.haml +5 -0
- data/app/views/wco_email/email_filters/edit.haml +5 -0
- data/app/views/wco_email/email_filters/index.haml +48 -0
- data/app/views/wco_email/email_filters/new.haml +5 -0
- data/app/views/wco_email/email_templates/_form.haml +48 -0
- data/app/views/wco_email/email_templates/_form_mini.haml +9 -0
- data/app/views/wco_email/email_templates/_form_reply_mini.haml +8 -0
- data/app/views/wco_email/email_templates/_form_schedule_mini.haml +11 -0
- data/app/views/wco_email/email_templates/_header.haml +6 -0
- data/app/views/wco_email/email_templates/_index.haml +26 -0
- data/app/views/wco_email/email_templates/_index_expanded.haml +13 -0
- data/app/views/wco_email/email_templates/_m20221201react.html.erb +1202 -0
- data/app/views/wco_email/email_templates/_m20221222merryxmas.html.erb +766 -0
- data/app/views/wco_email/email_templates/_m202309_feedback.html.erb +1161 -0
- data/app/views/wco_email/email_templates/_m202309_ror4.html.erb +1068 -0
- data/app/views/wco_email/email_templates/_marketing_node_1.html.erb +984 -0
- data/app/views/wco_email/email_templates/_marketing_react_1.html +0 -0
- data/app/views/wco_email/email_templates/_marketing_react_2.html.erb +749 -0
- data/app/views/wco_email/email_templates/_marketing_react_3.html.erb +628 -0
- data/app/views/wco_email/email_templates/_marketing_ror_1.html +751 -0
- data/app/views/wco_email/email_templates/_marketing_ror_2.html.erb +755 -0
- data/app/views/wco_email/email_templates/_marketing_ror_3.html.erb +25 -0
- data/app/views/wco_email/email_templates/_marketing_ror_4.html.erb +25 -0
- data/app/views/wco_email/email_templates/_marketing_ror_5.html.erb +17 -0
- data/app/views/wco_email/email_templates/_marketing_wordpress_1.html +0 -0
- data/app/views/wco_email/email_templates/_marketing_wordpress_2.html +0 -0
- data/app/views/wco_email/email_templates/_meta.haml +6 -0
- data/app/views/wco_email/email_templates/_piousbox_roundborders.html.erb +1007 -0
- data/app/views/wco_email/email_templates/_piousbox_social.html.erb +181 -0
- data/app/views/wco_email/email_templates/_plain.haml +15 -0
- data/app/views/wco_email/email_templates/_rec_resume_shared_with_you.html.erb +39 -0
- data/app/views/wco_email/email_templates/_slug-1.html.erb +0 -0
- data/app/views/wco_email/email_templates/_slug-2.html.erb +0 -0
- data/app/views/wco_email/email_templates/_slug-3.html.erb +0 -0
- data/app/views/wco_email/email_templates/_tracking_footer.html.erb +13 -0
- data/app/views/wco_email/email_templates/_wasyaco_roundborders.html.erb +686 -0
- data/app/views/wco_email/email_templates/_wasyaco_social.html.erb +181 -0
- data/app/views/wco_email/email_templates/edit.haml +6 -0
- data/app/views/wco_email/email_templates/new.haml +6 -0
- data/app/views/wco_email/email_templates/show.haml +11 -0
- data/app/views/wco_email/email_templates/show_iframe.haml +2 -0
- data/app/views/wco_email/lead_action_templates/_header.haml +7 -0
- data/app/views/wco_email/lead_actions/_header.haml +8 -0
- data/app/views/wco_email/message_stubs/_index.haml +10 -0
- data/app/views/wco_email/messages/_form_reply.haml-trash +17 -0
- data/app/views/wco_email/messages/_meta.haml +30 -0
- data/app/views/wco_email/messages/show.haml +13 -0
- data/app/views/wco_email/messages/show_iframe.haml +5 -0
- data/app/views/wco_email/sessions/new.html.erb +4 -0
- data/app/views/wco_email/unsubscribes/_header.haml +4 -0
- data/app/views/wco_email/unsubscribes/_table.haml +22 -0
- data/config/initializers/assets.rb +10 -0
- data/config/routes.rb +49 -0
- data/lib/tasks/bjjcollective/sitemap.rb +50 -0
- data/lib/tasks/db_tasks.rake +12 -0
- data/lib/tasks/direct_mail_tasks.rake +35 -0
- data/lib/tasks/infinite_shelter/sitemap.rb +25 -0
- data/lib/tasks/piousbox/sitemap.rb +80 -0
- data/lib/tasks/publish2_wordpress_tasks.rake +54 -0
- data/lib/tasks/scrape_reddit_tasks.rake-bk +23 -0
- data/lib/tasks/trash/email_tasks.rake-trash +126 -0
- data/lib/tasks/trash/sitemap_tasks.rake-trash +146 -0
- data/lib/tasks/wasya_co/sitemap.rb +281 -0
- data/lib/tasks/wco_email_tasks.rake +117 -0
- data/lib/wco_email/README_email_actions.rb +7 -0
- data/lib/wco_email/README_email_contexts.rb +7 -0
- data/lib/wco_email/engine.rb +8 -0
- data/lib/wco_email.rb +19 -0
- metadata +493 -0
@@ -0,0 +1,181 @@
|
|
1
|
+
<table border="0" cellpadding="0" cellspacing="0" width="100%" class="mcnFollowBlock" style="min-width:100%;">
|
2
|
+
<tbody class="mcnFollowBlockOuter">
|
3
|
+
<tr>
|
4
|
+
<td align="center" valign="top" style="padding:9px" class="mcnFollowBlockInner">
|
5
|
+
<table border="0" cellpadding="0" cellspacing="0" width="100%" class="mcnFollowContentContainer"
|
6
|
+
style="min-width:100%;">
|
7
|
+
<tbody>
|
8
|
+
<tr>
|
9
|
+
<td align="center" style="padding-left:9px;padding-right:9px;">
|
10
|
+
<table border="0" cellpadding="0" cellspacing="0" width="100%" style="min-width:100%;"
|
11
|
+
class="mcnFollowContent">
|
12
|
+
<tbody>
|
13
|
+
<tr>
|
14
|
+
<td align="center" valign="top" style="padding-top:9px; padding-right:9px; padding-left:9px;">
|
15
|
+
<table align="center" border="0" cellpadding="0" cellspacing="0">
|
16
|
+
<tbody>
|
17
|
+
<tr>
|
18
|
+
<td align="center" valign="top">
|
19
|
+
<!--[if mso]>
|
20
|
+
<table align="center" border="0" cellspacing="0" cellpadding="0">
|
21
|
+
<tr>
|
22
|
+
<![endif]-->
|
23
|
+
|
24
|
+
<!--[if mso]>
|
25
|
+
<td align="center" valign="top">
|
26
|
+
<![endif]-->
|
27
|
+
|
28
|
+
|
29
|
+
<table align="left" border="0" cellpadding="0" cellspacing="0" style="display:inline;">
|
30
|
+
<tbody>
|
31
|
+
<tr>
|
32
|
+
<td valign="top" style="padding-right:10px; padding-bottom:9px;"
|
33
|
+
class="mcnFollowContentItemContainer">
|
34
|
+
<table border="0" cellpadding="0" cellspacing="0" width="100%"
|
35
|
+
class="mcnFollowContentItem">
|
36
|
+
<tbody>
|
37
|
+
<tr>
|
38
|
+
<td align="left" valign="middle"
|
39
|
+
style="padding-top:5px; padding-right:10px; padding-bottom:5px; padding-left:9px;">
|
40
|
+
<table align="left" border="0" cellpadding="0" cellspacing="0" width="">
|
41
|
+
<tbody>
|
42
|
+
<tr>
|
43
|
+
|
44
|
+
<td align="center" valign="middle" width="24"
|
45
|
+
class="mcnFollowIconContent">
|
46
|
+
<a href="mailto:victor@wasya.co" target="_blank"><img
|
47
|
+
src="https://cdn-images.mailchimp.com/icons/social-block-v2/color-forwardtofriend-48.png"
|
48
|
+
alt="Email" style="display:block;" height="24" width="24"
|
49
|
+
class=""></a>
|
50
|
+
</td>
|
51
|
+
|
52
|
+
|
53
|
+
</tr>
|
54
|
+
</tbody>
|
55
|
+
</table>
|
56
|
+
</td>
|
57
|
+
</tr>
|
58
|
+
</tbody>
|
59
|
+
</table>
|
60
|
+
</td>
|
61
|
+
</tr>
|
62
|
+
</tbody>
|
63
|
+
</table>
|
64
|
+
|
65
|
+
<!--[if mso]>
|
66
|
+
</td>
|
67
|
+
<![endif]-->
|
68
|
+
|
69
|
+
<!--[if mso]>
|
70
|
+
<td align="center" valign="top">
|
71
|
+
<![endif]-->
|
72
|
+
|
73
|
+
|
74
|
+
<table align="left" border="0" cellpadding="0" cellspacing="0" style="display:inline;">
|
75
|
+
<tbody>
|
76
|
+
<tr>
|
77
|
+
<td valign="top" style="padding-right:10px; padding-bottom:9px;"
|
78
|
+
class="mcnFollowContentItemContainer">
|
79
|
+
<table border="0" cellpadding="0" cellspacing="0" width="100%"
|
80
|
+
class="mcnFollowContentItem">
|
81
|
+
<tbody>
|
82
|
+
<tr>
|
83
|
+
<td align="left" valign="middle"
|
84
|
+
style="padding-top:5px; padding-right:10px; padding-bottom:5px; padding-left:9px;">
|
85
|
+
<table align="left" border="0" cellpadding="0" cellspacing="0" width="">
|
86
|
+
<tbody>
|
87
|
+
<tr>
|
88
|
+
|
89
|
+
<td align="center" valign="middle" width="24"
|
90
|
+
class="mcnFollowIconContent">
|
91
|
+
<a href="https://github.com/wasya-co" target="_blank"><img
|
92
|
+
src="https://cdn-images.mailchimp.com/icons/social-block-v2/color-github-48.png"
|
93
|
+
alt="Github" style="display:block;" height="24" width="24"
|
94
|
+
class=""></a>
|
95
|
+
</td>
|
96
|
+
|
97
|
+
|
98
|
+
</tr>
|
99
|
+
</tbody>
|
100
|
+
</table>
|
101
|
+
</td>
|
102
|
+
</tr>
|
103
|
+
</tbody>
|
104
|
+
</table>
|
105
|
+
</td>
|
106
|
+
</tr>
|
107
|
+
</tbody>
|
108
|
+
</table>
|
109
|
+
|
110
|
+
<!--[if mso]>
|
111
|
+
</td>
|
112
|
+
<![endif]-->
|
113
|
+
|
114
|
+
<!--[if mso]>
|
115
|
+
<td align="center" valign="top">
|
116
|
+
<![endif]-->
|
117
|
+
|
118
|
+
|
119
|
+
<table align="left" border="0" cellpadding="0" cellspacing="0" style="display:inline;">
|
120
|
+
<tbody>
|
121
|
+
<tr>
|
122
|
+
<td valign="top" style="padding-right:0; padding-bottom:9px;"
|
123
|
+
class="mcnFollowContentItemContainer">
|
124
|
+
<table border="0" cellpadding="0" cellspacing="0" width="100%"
|
125
|
+
class="mcnFollowContentItem">
|
126
|
+
<tbody>
|
127
|
+
<tr>
|
128
|
+
<td align="left" valign="middle"
|
129
|
+
style="padding-top:5px; padding-right:10px; padding-bottom:5px; padding-left:9px;">
|
130
|
+
<table align="left" border="0" cellpadding="0" cellspacing="0" width="">
|
131
|
+
<tbody>
|
132
|
+
<tr>
|
133
|
+
|
134
|
+
<td align="center" valign="middle" width="24"
|
135
|
+
class="mcnFollowIconContent">
|
136
|
+
<a href="https://www.instagram.com/wasya_co/"
|
137
|
+
target="_blank"><img
|
138
|
+
src="https://cdn-images.mailchimp.com/icons/social-block-v2/color-instagram-48.png"
|
139
|
+
alt="Instagram" style="display:block;" height="24"
|
140
|
+
width="24" class=""></a>
|
141
|
+
</td>
|
142
|
+
|
143
|
+
|
144
|
+
</tr>
|
145
|
+
</tbody>
|
146
|
+
</table>
|
147
|
+
</td>
|
148
|
+
</tr>
|
149
|
+
</tbody>
|
150
|
+
</table>
|
151
|
+
</td>
|
152
|
+
</tr>
|
153
|
+
</tbody>
|
154
|
+
</table>
|
155
|
+
|
156
|
+
<!--[if mso]>
|
157
|
+
</td>
|
158
|
+
<![endif]-->
|
159
|
+
|
160
|
+
<!--[if mso]>
|
161
|
+
</tr>
|
162
|
+
</table>
|
163
|
+
<![endif]-->
|
164
|
+
|
165
|
+
</td>
|
166
|
+
</tr>
|
167
|
+
</tbody>
|
168
|
+
</table>
|
169
|
+
</td>
|
170
|
+
</tr>
|
171
|
+
</tbody>
|
172
|
+
</table>
|
173
|
+
</td>
|
174
|
+
</tr>
|
175
|
+
</tbody>
|
176
|
+
</table>
|
177
|
+
|
178
|
+
</td>
|
179
|
+
</tr>
|
180
|
+
</tbody>
|
181
|
+
</table>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
|
2
|
+
.email-templates-show
|
3
|
+
.header
|
4
|
+
%h2.title
|
5
|
+
= @tmpl.slug
|
6
|
+
= link_to '[~]', edit_email_template_path( @tmpl )
|
7
|
+
= link_to 'src', email_template_iframe_path(@tmpl.slug), target: :_blank
|
8
|
+
-# = link_to '[preview ^]', '#'
|
9
|
+
-# = link_to '[use]', '#'
|
10
|
+
|
11
|
+
%iframe{ src: email_template_iframe_path(@tmpl.slug), width: '100%', height: '100%' }
|
@@ -0,0 +1,17 @@
|
|
1
|
+
|
2
|
+
.email-contexts--form-reply.form-mini
|
3
|
+
= form_for WcoEmail::Context.new, url: email_contexts_path do |f|
|
4
|
+
= hidden_field_tag 'ish_email_context[lead_id]', lead.id
|
5
|
+
To: #{lead.email}
|
6
|
+
.field
|
7
|
+
-# = f.label :template
|
8
|
+
= f.select :email_template_id, options_for_select( @email_templates_list )
|
9
|
+
.action
|
10
|
+
= f.submit 'Reply'
|
11
|
+
|
12
|
+
.field.send-at
|
13
|
+
-# = f.label :send_at
|
14
|
+
= f.text_field :send_at, placeholder: 'YYYY-MM-DD', value: 1.business_day.after(Time.now).strftime('%Y-%m-%d'), size: 10, class: 'input-date'
|
15
|
+
|
16
|
+
.action
|
17
|
+
= f.submit 'Schedule'
|
@@ -0,0 +1,30 @@
|
|
1
|
+
|
2
|
+
.messages--meta.flex-row
|
3
|
+
%ul
|
4
|
+
%li <b>froms:</b> #{message.froms}
|
5
|
+
%li <b>tos:</b> #{message.tos}
|
6
|
+
%li <b>ccs:</b> #{message.ccs}
|
7
|
+
%li <b>bccs:</b> #{message.bccs}
|
8
|
+
%li <b>logs:</b> #{message.logs}
|
9
|
+
%ul
|
10
|
+
%li
|
11
|
+
<b>date:</b> #{message.date}
|
12
|
+
%li
|
13
|
+
<b>id:</b> #{link_to message.id, message_path(message)}
|
14
|
+
%li
|
15
|
+
<b>message_id:</b> #{message.message_id}
|
16
|
+
%li
|
17
|
+
<b>object_key:</b> #{message.object_key}
|
18
|
+
%li <b>in_reply_to_id:</b> #{message.in_reply_to_id}
|
19
|
+
%li
|
20
|
+
<b>n_images:</b> #{message.photos.length}
|
21
|
+
%br
|
22
|
+
- message.photos.each do |photo|
|
23
|
+
= image_tag photo.photo.url(:thumb)
|
24
|
+
%li
|
25
|
+
<b>n_assets:</b> #{message.assets.length}
|
26
|
+
- if !message.assets.blank?
|
27
|
+
%ol
|
28
|
+
- message.assets.each do |asset|
|
29
|
+
%li
|
30
|
+
= link_to asset.filename, asset.object.url(:original), target: :_blank
|
@@ -0,0 +1,13 @@
|
|
1
|
+
|
2
|
+
.messages-show
|
3
|
+
%h5
|
4
|
+
Message
|
5
|
+
<b>Subject:</b>
|
6
|
+
= link_to @message.conversation.subject, email_conversation_path(@message.conversation)
|
7
|
+
(#{@message.conversation.messages.length})
|
8
|
+
|
9
|
+
= render 'meta', message: @message
|
10
|
+
%iframe.message-iframe{ src: message_iframe_path(@message) }
|
11
|
+
= render '/wco_email/contexts/form_reply', lead_id: @message.lead_id, message: @message
|
12
|
+
|
13
|
+
|
@@ -0,0 +1,22 @@
|
|
1
|
+
|
2
|
+
- unsubscribes ||= @unsubscribes
|
3
|
+
|
4
|
+
.unsubscribes-index.maxwidth
|
5
|
+
%h5 Unsubscribes
|
6
|
+
|
7
|
+
%table.bordered.data-table
|
8
|
+
%thead
|
9
|
+
%tr
|
10
|
+
%td Lead
|
11
|
+
%td Date
|
12
|
+
%td campaign_id
|
13
|
+
%td template_id
|
14
|
+
|
15
|
+
|
16
|
+
- unsubscribes.each do |uuu|
|
17
|
+
%tr
|
18
|
+
%td= uuu.lead
|
19
|
+
%td= uuu.unsubscribed_at
|
20
|
+
%td= uuu.campaign
|
21
|
+
%td= uuu.template
|
22
|
+
|
data/config/routes.rb
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
|
2
|
+
WcoEmail::Engine.routes.draw do
|
3
|
+
# root to: '/wco_email/email_conversations#index'
|
4
|
+
root to: redirect('/email/conversations')
|
5
|
+
|
6
|
+
get 'analytics', to: 'application#analytics'
|
7
|
+
get 'tinymce', to: 'application#tinymce', as: :application_tinymce
|
8
|
+
|
9
|
+
# get 'conversations', to: '/wco_email/conversations#index', as: :email_conversations
|
10
|
+
get 'conversations/in/:tagname', to: '/wco_email/conversations#index', as: :email_conversations_in
|
11
|
+
get 'conversations/not-in/:tagname_not', to: '/wco_email/conversations#index', as: :email_conversations_in_not
|
12
|
+
get 'conversations/:id', to: '/wco_email/conversations#show', as: :email_conversation
|
13
|
+
post 'conversations/:id1/merge/:id2', to: '/wco_email/conversations#merge', as: :merge_email_conversations
|
14
|
+
post 'conversations/addtag', to: 'conversations#addtag'
|
15
|
+
post 'conversations/addtag/:slug', to: 'conversations#addtag'
|
16
|
+
post 'conversations/rmtag', to: 'conversations#rmtag'
|
17
|
+
post 'conversations/rmtag/:slug', to: 'conversations#rmtag'
|
18
|
+
resources :conversations
|
19
|
+
|
20
|
+
resources :email_action_templates
|
21
|
+
resources :email_actions
|
22
|
+
resources :email_campaigns
|
23
|
+
resources :email_layouts
|
24
|
+
|
25
|
+
get 'contexts/iframe_src/:id', to: 'contexts#iframe_src', as: :context_iframe
|
26
|
+
get 'contexts/summary', to: 'contexts#summary'
|
27
|
+
post 'contexts/send_immediate/:id', to: 'contexts#send_immediate', as: :send_context
|
28
|
+
resources :contexts
|
29
|
+
resources :email_filters
|
30
|
+
get 'email_templates/:id/iframe', to: 'email_templates#show_iframe', as: :email_template_iframe
|
31
|
+
resources :email_templates
|
32
|
+
|
33
|
+
resources :lead_action_templates
|
34
|
+
resources :lead_actions
|
35
|
+
|
36
|
+
get 'messages/:id/iframe', to: 'messages#show_iframe', as: :message_iframe
|
37
|
+
resources :messages
|
38
|
+
|
39
|
+
post 'message_stub/:id/churn', to: 'message_stubs#churn', as: :churn_message_stub
|
40
|
+
resources :message_stubs
|
41
|
+
|
42
|
+
get '/obf/:id', to: 'obfuscated_redirects#show', as: :obf
|
43
|
+
|
44
|
+
|
45
|
+
|
46
|
+
resources :unsubscribes
|
47
|
+
|
48
|
+
|
49
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
|
2
|
+
module Bjjc
|
3
|
+
end
|
4
|
+
|
5
|
+
class Bjjc::Sitemap
|
6
|
+
|
7
|
+
DEFAULT_ORIGIN = 'https://bjjcollective.com'
|
8
|
+
|
9
|
+
def checks
|
10
|
+
out = [
|
11
|
+
# { path: '/2022/09/sturfee-build-pipeline', selector: 'article.wco-id-100' },
|
12
|
+
# ]; tmp = [
|
13
|
+
|
14
|
+
|
15
|
+
{ path: '/en/locations/show/tomorrowland', selector: 'body' },
|
16
|
+
{ path: '/en/locations/show/florida', selector: 'body' },
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
# /technique/guards
|
21
|
+
# /technique/guards/closed-guard
|
22
|
+
# /technique/guards/open-guard
|
23
|
+
# /technique/guards/butterfly-guard
|
24
|
+
# /technique/guards/rubber-guard
|
25
|
+
# /technique/guards/de-la-riva
|
26
|
+
# /technique/guards/reverse-de-la-riva-guard
|
27
|
+
# /technique/guards/sleeve-and-collar-guards
|
28
|
+
# /technique/guards/spider-guard
|
29
|
+
# /technique/guards/turtle-guard
|
30
|
+
# /technique/guards/x-guard
|
31
|
+
# /technique/guards/half-guard
|
32
|
+
# /technique/guards/inverted-guards
|
33
|
+
# /technique/guards/koala-guard
|
34
|
+
# /technique/guards/misc-guards
|
35
|
+
# /technique/mounts
|
36
|
+
# /technique/stand-up-gi
|
37
|
+
# /technique/stand-up-no-gi
|
38
|
+
# /technique/submission-escapes-finishes
|
39
|
+
# /technique/sweeps
|
40
|
+
# /technique/sweeps/butterfly-sweep
|
41
|
+
# /technique/misc
|
42
|
+
|
43
|
+
|
44
|
+
]
|
45
|
+
return out
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
|
50
|
+
|
@@ -0,0 +1,12 @@
|
|
1
|
+
|
2
|
+
namespace :db do
|
3
|
+
|
4
|
+
desc "seed"
|
5
|
+
task seed: :environment do
|
6
|
+
inbox = Wco::Tag.find_or_create_by({ slug: 'inbox' })
|
7
|
+
trash = Wco::Tag.find_or_create_by({ slug: 'trash' })
|
8
|
+
|
9
|
+
poxlovi = Wco::Lead.find_or_create_by!({ email: 'poxlovi@gmail.com' })
|
10
|
+
end
|
11
|
+
|
12
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
|
2
|
+
namespace :office do
|
3
|
+
|
4
|
+
desc "20221118 - churn envelopes"
|
5
|
+
task :churn_20231118 => :environment do
|
6
|
+
props = {
|
7
|
+
from: {
|
8
|
+
name: 'Wasya Co',
|
9
|
+
address_2: '201 W 5th St 11th Fl',
|
10
|
+
address_3: 'Austin, TX 78701',
|
11
|
+
},
|
12
|
+
tos: [],
|
13
|
+
}
|
14
|
+
## 0 1 2 3 4 5 6
|
15
|
+
## first name, last name, company name, address, city, state, zipcode
|
16
|
+
inns = CSV.read('data/20231118_402_marketing.csv', headers: true).each do |row|
|
17
|
+
props[:tos].push({
|
18
|
+
name: "#{row[0]} #{row[1]}, #{row[2]}",
|
19
|
+
address_2: row[3],
|
20
|
+
address_3: "#{row[4]}, #{row[5]} #{row[6]}",
|
21
|
+
})
|
22
|
+
end
|
23
|
+
|
24
|
+
pdf = Office::DirectmailEnvelope.list_to_envelopes props
|
25
|
+
path = '/tmp/envelopes.pdf'
|
26
|
+
# File.write(path, pdf)
|
27
|
+
pdf.render_file path
|
28
|
+
`mv /tmp/envelopes.pdf ~/Desktop/`
|
29
|
+
puts 'ok'
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
|
35
|
+
|
@@ -0,0 +1,25 @@
|
|
1
|
+
|
2
|
+
module Ish
|
3
|
+
end
|
4
|
+
|
5
|
+
class Ish::Sitemap
|
6
|
+
|
7
|
+
DEFAULT_ORIGIN = 'https://infiniteshelter.com'
|
8
|
+
|
9
|
+
def checks
|
10
|
+
out = [
|
11
|
+
# { path: '/2022/09/sturfee-build-pipeline', selector: 'article.wco-id-100' },
|
12
|
+
# ]; tmp = [
|
13
|
+
|
14
|
+
|
15
|
+
{ path: '/en/locations/show/tomorrowland', selector: 'body' },
|
16
|
+
{ path: '/en/locations/show/florida', selector: 'body' },
|
17
|
+
|
18
|
+
|
19
|
+
]
|
20
|
+
return out
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
|
25
|
+
|
@@ -0,0 +1,80 @@
|
|
1
|
+
|
2
|
+
module Pi
|
3
|
+
end
|
4
|
+
|
5
|
+
class Pi::Sitemap
|
6
|
+
|
7
|
+
DEFAULT_ORIGIN = 'https://piousbox.com'
|
8
|
+
|
9
|
+
def checks
|
10
|
+
out = [
|
11
|
+
# { path: '/2022/09/sturfee-build-pipeline', selector: 'article.wco-id-100' },
|
12
|
+
# ]; tmp = [
|
13
|
+
|
14
|
+
##
|
15
|
+
## numbers
|
16
|
+
##
|
17
|
+
{ path: '/2021/06/2399', selector: 'article.post-2399' },
|
18
|
+
{ path: '/2022/03/bundler-and-private-repositories', redirect_to: 'https://wasyaco.com/2022/03/bundler-and-private-repositories' },
|
19
|
+
{ path: '/2022/03/ruby-on-rails-allow-parameters-to-have-dot', redirect_to: 'https://wasyaco.com/2022/03/ruby-on-rails-allow-parameters-to-have-dot' },
|
20
|
+
{ path: '/2022/03/ruby-on-rails-allow-parameters-to-have-dot/', redirect_to: 'https://wasyaco.com/2022/03/ruby-on-rails-allow-parameters-to-have-dot' },
|
21
|
+
{ path: '/2022/12/japan-securities-clearing-corp-jscc-issues-emergency-margin-call/', selector: 'article.post-7033' },
|
22
|
+
{ path: '/2022/08/convert-wireframe-edges-to-a-model-in-maya/', selector: 'article.post-5854' },
|
23
|
+
{ path: '/2023/10/does-using-cannabis-lower-blood-pressure', selector: 'article[data-history-node-id="68"]' },
|
24
|
+
|
25
|
+
{ path: '/2023/08/what-stocks/', selector: 'article[data-history-node-id="88"]' },
|
26
|
+
|
27
|
+
# /2023/08/fed-chair-jerome-powell-we-have-tightened-policy-significantly-over-the-past-year-inflation-has-moved-down-from-its-peak-it-remains-too-high-we-are-prepared-to-raise-rates-further-if-app/
|
28
|
+
# /2023/08/sam-zeloof-makes-cpus-in-his-garage/
|
29
|
+
# /2023/04/the-letter-to-pause-ai-development-is-a-power-grab-by-the-elites/
|
30
|
+
|
31
|
+
# /2023/01/a-gentle-minimalist-intro-to-machine-learning
|
32
|
+
|
33
|
+
##
|
34
|
+
## A
|
35
|
+
##
|
36
|
+
|
37
|
+
# /about
|
38
|
+
|
39
|
+
##
|
40
|
+
## C
|
41
|
+
##
|
42
|
+
|
43
|
+
{ path: '/contact-us', selector: 'article[data-history-node-id="82"]' },
|
44
|
+
|
45
|
+
##
|
46
|
+
## I
|
47
|
+
##
|
48
|
+
{ path: '/index.php?p=2399', redirect_to: '/2021/06/2399' },
|
49
|
+
{ path: '/index.php?p=7033', redirect_to: '/2022/12/japan-securities-clearing-corp-jscc-issues-emergency-margin-call/' },
|
50
|
+
|
51
|
+
{ path: '/issues/2023q4-issue', selector: 'article[data-history-node-id="4"]' },
|
52
|
+
|
53
|
+
##
|
54
|
+
## P
|
55
|
+
##
|
56
|
+
|
57
|
+
# /pages/recruiter-intake-form
|
58
|
+
{ path: '/pages/bookshelf', selector: 'article[data-history-node-id="83"]' },
|
59
|
+
|
60
|
+
##
|
61
|
+
## S
|
62
|
+
##
|
63
|
+
|
64
|
+
# /sections/technology
|
65
|
+
# /sections/ai-ml
|
66
|
+
# /sections/markets-trading
|
67
|
+
|
68
|
+
##
|
69
|
+
## T
|
70
|
+
##
|
71
|
+
|
72
|
+
{ path: '/tags/health', selector: '#taxonomy-term-47' },
|
73
|
+
|
74
|
+
]
|
75
|
+
return out
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
|
80
|
+
|