ishapi 0.1.8.291 → 0.1.8.292

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: 43ce4a2424f89a52445feed0a9eb1ec84c960aed3820bf98e1acd8338337a67a
4
- data.tar.gz: a85fa506200f1e92aaf39eb333556aefe621f1420773ade7a519278aa78d7202
3
+ metadata.gz: f0eccc109ec40b082e8f36531cda0b97d004b21dd4ecaa6e5631614fdc8d9051
4
+ data.tar.gz: de11d35fa75d9752c32dc8d6e0ee83b31a3cbfc5df3d05e11305931bb34ca555
5
5
  SHA512:
6
- metadata.gz: 808696b157e630761b8405a82ccb98006b1078a1199a1653fba6f7920e1ce4f1a6a09c423db19417eb920d39605fef6d8df383ee4e71c0e75f85189d62b083b1
7
- data.tar.gz: 578585f583cc1a941675d278b281f67cbe6c0344baa6861a627197e9712c92b68f0a3e6c136cc7dbb91d4ed6f214e5b0cf51f6507a8e1889ecf15ba0ed50c101
6
+ metadata.gz: c1b9e369a9dd15f3aa8dbba842bddf94ab5ea3c3d99df44f452b90da7b906a9f65e69475814aaf7cf04d78c79c7d1862047b3138e1b7d0d27b6ed411b8e952b0
7
+ data.tar.gz: 8d461fc7c5ba44dc92c1e27bb1a5ede8188b9387578341a5848cd0d29155aa30b6e004b4cdac4cd580a756561c4b4c45d80a13562a3665dd8855975b244c600a
@@ -44,6 +44,28 @@ class Ishapi::EmailMessageIntakeJob < Ishapi::ApplicationJob
44
44
  end
45
45
  end
46
46
 
47
+ ## From: https://stackoverflow.com/questions/24672834/how-do-i-remove-emoji-from-string/24673322
48
+ def strip_emoji(text)
49
+ text = text.force_encoding('utf-8').encode
50
+ clean = ""
51
+
52
+ # symbols & pics
53
+ regex = /[\u{1f300}-\u{1f5ff}]/
54
+ clean = text.gsub regex, ""
55
+
56
+ # enclosed chars
57
+ regex = /[\u{2500}-\u{2BEF}]/ # I changed this to exclude chinese char
58
+ clean = clean.gsub regex, ""
59
+
60
+ # emoticons
61
+ regex = /[\u{1f600}-\u{1f64f}]/
62
+ clean = clean.gsub regex, ""
63
+
64
+ #dingbats
65
+ regex = /[\u{2702}-\u{27b0}]/
66
+ clean = clean.gsub regex, ""
67
+ end
68
+
47
69
  def perform id
48
70
  stub = ::Office::EmailMessageStub.find id
49
71
  if !Rails.env.test?
@@ -69,6 +91,10 @@ class Ishapi::EmailMessageIntakeJob < Ishapi::ApplicationJob
69
91
  the_mail.to = [ 'NO-RECIPIENT' ]
70
92
  end
71
93
 
94
+
95
+ subject = strip_emoji the_mail.subject
96
+ subject ||= '(wco no subject)'
97
+
72
98
  @message = ::Office::EmailMessage.where( message_id: message_id ).first
73
99
  @message ||= ::Office::EmailMessage.new
74
100
  @message.assign_attributes({
@@ -80,7 +106,7 @@ class Ishapi::EmailMessageIntakeJob < Ishapi::ApplicationJob
80
106
  object_key: stub.object_key,
81
107
  # object_path: stub.object_path,
82
108
 
83
- subject: the_mail.subject || '(wco no subject)',
109
+ subject: subject,
84
110
  date: the_mail.date,
85
111
 
86
112
  from: the_mail.from ? the_mail.from[0] : "nobody@unknown.domain",
@@ -139,7 +165,7 @@ class Ishapi::EmailMessageIntakeJob < Ishapi::ApplicationJob
139
165
  in_reply_to_msg = ::Office::EmailMessage.where({ message_id: in_reply_to_id }).first
140
166
  if !in_reply_to_msg
141
167
  conv = ::Office::EmailConversation.find_or_create_by({
142
- subject: the_mail.subject,
168
+ subject: @message.subject,
143
169
  })
144
170
  in_reply_to_msg = ::Office::EmailMessage.find_or_create_by({
145
171
  message_id: in_reply_to_id,
@@ -149,7 +175,7 @@ class Ishapi::EmailMessageIntakeJob < Ishapi::ApplicationJob
149
175
  conv = in_reply_to_msg.email_conversation
150
176
  else
151
177
  conv = ::Office::EmailConversation.find_or_create_by({
152
- subject: the_mail.subject,
178
+ subject: @message.subject,
153
179
  })
154
180
  end
155
181
  @message.update_attributes({ email_conversation_id: conv.id })
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ishapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8.291
4
+ version: 0.1.8.292
5
5
  platform: ruby
6
6
  authors:
7
7
  - piousbox
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-24 00:00:00.000000000 Z
11
+ date: 2023-09-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails