wco_models 3.1.0.143 → 3.1.0.145

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: 7dcd0e6443ef46946446ff666738bc396e56de3ec322efbdb6883bae10a5300a
4
- data.tar.gz: c952c2ce1d2e7d4b01e4253e207b779196753cc343f8edeecbfd3ba5c42fabb1
3
+ metadata.gz: b33246a107d7069cc1805c1caee3a3897d4d46debcd43b8895f1f9ade01bbb69
4
+ data.tar.gz: f86ddbc8f6d908421e30549059c398e06f70cdd10a30a856659bcc60253b3516
5
5
  SHA512:
6
- metadata.gz: 218c4d18150413167875616b4e9b4af5158e7b13d4e41813e02f9521bdde33a1d42e81f0b801555cddf6c8ec7812a8ac80495d34f134cbc164a39bdac3734a0f
7
- data.tar.gz: acc8fe29b0fd09af799db9adeb5ec376c866f5d4a41b760c5191441240872f7a23343de78dd02d2ed050bd86a3b8c7194752e692089bcf971ba3924e9768ad0b
6
+ metadata.gz: b0e2dd7311c02468f60364f9ac0a3e8d23a3f23a631edaab4ea27464c4535b74603a23cb21e370d2a234bbda23c2c624167a86ee7bf61cd75693223df4283bc9
7
+ data.tar.gz: d60c0cc8b3cb816a0601017ed7fd8adba87f580205223c2f0c99c96ec793e1c7223d0dc0db3008d45598babc4bf246a6f1aab508ddd1b3d2f23234b461947466
@@ -1,3 +1,4 @@
1
+ # encoding: utf-8
1
2
 
2
3
  class WcoEmail::ApplicationMailer < ActionMailer::Base
3
4
 
@@ -49,15 +50,35 @@ class WcoEmail::ApplicationMailer < ActionMailer::Base
49
50
  @ctx = Ctx.find ctx_id
50
51
  @renderer = self.class.renderer ctx: @ctx
51
52
  rendered_str = @renderer.render_to_string("/wco_email/email_layouts/_#{@ctx.tmpl.layout}")
53
+
54
+
55
+ rendered_subject = ERB.new( @ctx.subject ).result( @ctx.get_binding )
56
+ if @ctx.lead.leadset.mangle_subject || @ctx.email_template.mangle_subject
57
+ ## From: https://www.ascii-code.com/
58
+ n1 = 33
59
+ n2 = 64
60
+ ch1 = ( rand(n2-n1)+n1 ).chr # ('UTF-8')
61
+ ch2 = ( rand(n2-n1)+n1 ).chr
62
+
63
+ if rendered_subject.last.ord >= n1 &&
64
+ rendered_subject.last.ord <= n2
65
+ space_idx = rendered_subject.rindex(/ /)
66
+ rendered_subject = rendered_subject[0...space_idx]
67
+ end
68
+
69
+ rendered_subject = "#{rendered_subject} #{ ch1 }#{ ch2 }"
70
+ end
71
+
52
72
  @ctx.update({
53
73
  rendered_str: rendered_str,
74
+ subject: rendered_subject,
54
75
  })
55
76
 
56
77
  mail( from: @ctx.from_email,
57
78
  to: @ctx.to_email,
58
79
  cc: @ctx.cc,
59
80
  bcc: "poxlovibb1@gmail.com",
60
- subject: ERB.new( @ctx.subject ).result( @ctx.get_binding ),
81
+ subject: rendered_subject,
61
82
  body: rendered_str,
62
83
  content_type: "text/html" )
63
84
  end
@@ -0,0 +1,18 @@
1
+ ## From: https://www.fileformat.info/info/unicode/char/a.htm
2
+ ## From: https://stackoverflow.com/questions/7019034/utf-8-encoding-in-ruby-using-a-variable
3
+ ## From: https://stackoverflow.com/questions/52654509/random-generate-a-valid-unicode-character-in-ruby
4
+ ## latin
5
+ # n1 = 0x192
6
+ # n2 = 0x687
7
+ ##
8
+ ## weird punctuation
9
+ # n1 = 0x133
10
+ # n2 = 0x255
11
+
12
+ # random_utf8 = Enumerator.new do |yielder|
13
+ # loop do
14
+ # yielder << ( rand(n2-n1)+n1 ).chr('UTF-8')
15
+ # rescue RangeError
16
+ # end
17
+ # end
18
+ # rendered_subject = "#{rendered_subject} #{ random_utf8.next }#{ random_utf8.next }"
@@ -31,6 +31,7 @@ class Wco::Leadset
31
31
 
32
32
 
33
33
  field :next_invoice_number, type: :integer, default: 100
34
+ field :mangle_subject, type: :boolean, default: false
34
35
 
35
36
  has_and_belongs_to_many :serverhosts, class_name: '::WcoHosting::Serverhost' # , inverse_of: :leadset
36
37
  def next_serverhost
@@ -40,6 +40,7 @@ class WcoEmail::EmailTemplate
40
40
  field :config_exe, default: "" ## unused! _vp_ 2023-09-24
41
41
  field :config_json, type: Object, default: '{}'
42
42
  field :layout, default: 'plain'
43
+ field :mangle_subject, type: :boolean, default: false
43
44
 
44
45
  DEFAULT_FROM_EMAIL = 'Victor Pudeyev <no-reply@wasya.co>'
45
46
  FROM_EMAILS = [
@@ -1,6 +1,6 @@
1
1
 
2
2
  .galleries-edit.maxwidth
3
- = render 'header_mini', gallery: @gallery
3
+ = render 'header', gallery: @gallery
4
4
  = render 'form', gallery: @gallery, :url => gallery_path( @gallery )
5
5
  = render 'thumbs', gallery: @gallery
6
6
  = render 'wco/photos/multinew', gallery: @gallery
@@ -12,7 +12,9 @@
12
12
  %li Name: #{@lead.name}
13
13
  %li Email: #{@lead.email}
14
14
  %li
15
- Leadset: #{ link_to @lead.leadset.company_url, leadset_path(@lead.leadset) }
15
+ Leadset:
16
+ = link_to @lead.leadset.company_url, leadset_path(@lead.leadset)
17
+ = link_to '[~]', edit_leadset_path(@lead.leadset)
16
18
  -# %li Rating: #{@lead.rating}
17
19
  - if @lead.phone
18
20
  %li Phone: #{@lead.phone}
@@ -10,6 +10,9 @@
10
10
  .input-field
11
11
  = f.label :email
12
12
  = f.text_field :email
13
+ .field
14
+ %label mangle_subject
15
+ = f.check_box :mangle_subject
13
16
 
14
17
  .input-field
15
18
  = f.label :next_invoice_number
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wco_models
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.0.143
4
+ version: 3.1.0.145
5
5
  platform: ruby
6
6
  authors:
7
7
  - Victor Pudeyev
@@ -434,6 +434,7 @@ files:
434
434
  - app/helpers/wco/application_helper.rb
435
435
  - app/jobs/wco_hosting/certbot_job.rb
436
436
  - app/mailers/wco_email/application_mailer.rb
437
+ - app/mailers/wco_email/application_mailer.rb-trash
437
438
  - app/models/ability.rb
438
439
  - app/models/wco/asset.rb
439
440
  - app/models/wco/gallery.rb