comee_core 0.2.51 → 0.2.52
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/mailers/comee/core/notification_mailer.rb +18 -0
- data/app/models/comee/core/email_setting.rb +13 -0
- data/app/models/comee/core/pod.rb +1 -0
- data/app/models/comee/core/user.rb +15 -0
- data/db/migrate/20240407083617_create_comee_core_email_settings.rb +20 -0
- data/lib/comee/core/version.rb +1 -1
- data/spec/factories/comee/core/email_settings.rb +13 -0
- metadata +7 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 77d65a7b04edc641f78ca618e99b2012c6af5bad03f540ebf3e9792f8ba9e4f8
|
4
|
+
data.tar.gz: a29faf7e98063e8cdf085edda635e59b5e93656ea65f88c82da658cbba79f9d4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cd1e0cd56613288784e43ea0fbf439ed27164035413d0147466b683e8d7d4be92242b2bf77388317df78e94ece7d34a0865f760399885c1478c5b50225c7d7ed
|
7
|
+
data.tar.gz: e6724f1710e3c5cf6197b89f5aa31c44039ab9b50a50a0568ef8fc13dcba5a22c66b9fb167f6e6475290f89b6f625cc17a1b70e98717a6a6d7ef9bdc0ce0ae8b
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module Comee
|
2
|
+
module Core
|
3
|
+
class NotificationMailer < ApplicationMailer
|
4
|
+
def notify
|
5
|
+
user = params[:user]
|
6
|
+
|
7
|
+
mail(
|
8
|
+
from: email_address_with_name(user.email, user.name),
|
9
|
+
to: params[:recipients],
|
10
|
+
subject: params[:subject],
|
11
|
+
body: params[:email_body],
|
12
|
+
content_type: "text/html",
|
13
|
+
delivery_method_options: user.delivery_options
|
14
|
+
)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Comee
|
2
|
+
module Core
|
3
|
+
class EmailSetting < ApplicationRecord
|
4
|
+
belongs_to :user
|
5
|
+
|
6
|
+
encrypts :smtp_password
|
7
|
+
|
8
|
+
validates :smtp_address, :smtp_port, :smtp_user, :smtp_password, :authentication, :open_timeout, :read_timeout,
|
9
|
+
presence: true
|
10
|
+
validates :open_timeout, :read_timeout, numericality: {greater_than: 0}
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -2,12 +2,27 @@ module Comee
|
|
2
2
|
module Core
|
3
3
|
class User < ApplicationRecord
|
4
4
|
enum :user_type, {supplier: 0, admin: 1, client: 2, clerk: 3, order_manager: 4}
|
5
|
+
has_one :email_setting
|
5
6
|
|
6
7
|
has_secure_password
|
7
8
|
has_many :notifications, as: :recipient, dependent: :destroy
|
8
9
|
|
9
10
|
validates :name, :email, :user_type, presence: true
|
10
11
|
validates :email, uniqueness: true
|
12
|
+
|
13
|
+
def delivery_options
|
14
|
+
setting = email_setting
|
15
|
+
{
|
16
|
+
address: setting.smtp_address,
|
17
|
+
port: setting.smtp_port,
|
18
|
+
user_name: setting.smtp_user,
|
19
|
+
password: setting.smtp_password,
|
20
|
+
authentication: setting.authentication,
|
21
|
+
enable_starttls_auto: setting.starttls_auto,
|
22
|
+
open_timeout: setting.open_timeout,
|
23
|
+
read_timeout: setting.read_timeout
|
24
|
+
}
|
25
|
+
end
|
11
26
|
end
|
12
27
|
end
|
13
28
|
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
class CreateComeeCoreEmailSettings < ActiveRecord::Migration[7.1]
|
2
|
+
def change
|
3
|
+
create_table :comee_core_email_settings do |t|
|
4
|
+
t.references :user,
|
5
|
+
null: false,
|
6
|
+
index: {name: "user_on_cces_indx"},
|
7
|
+
foreign_key: {to_table: :comee_core_users}
|
8
|
+
t.string :smtp_address, null: false
|
9
|
+
t.string :smtp_port, null: false
|
10
|
+
t.string :smtp_user, null: false
|
11
|
+
t.string :smtp_password, null: false
|
12
|
+
t.string :authentication, null: false, default: "plain"
|
13
|
+
t.boolean :starttls_auto, null: false, default: true
|
14
|
+
t.integer :open_timeout, null: false, default: 5
|
15
|
+
t.integer :read_timeout, null: false, default: 5
|
16
|
+
|
17
|
+
t.timestamps
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/comee/core/version.rb
CHANGED
@@ -0,0 +1,13 @@
|
|
1
|
+
FactoryBot.define do
|
2
|
+
factory :email_setting, class: "Comee::Core::EmailSetting" do
|
3
|
+
user
|
4
|
+
smtp_address { "smtp.gmail.com" }
|
5
|
+
smtp_port { "587" }
|
6
|
+
smtp_user { Faker::Internet.username }
|
7
|
+
smtp_password { Faker::Internet.password }
|
8
|
+
authentication { "plain" }
|
9
|
+
starttls_auto { true }
|
10
|
+
open_timeout { 5 }
|
11
|
+
read_timeout { 5 }
|
12
|
+
end
|
13
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: comee_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.52
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Henock L.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-04-
|
11
|
+
date: 2024-04-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: active_model_serializers
|
@@ -296,6 +296,7 @@ files:
|
|
296
296
|
- app/controllers/concerns/comee/core/pagination.rb
|
297
297
|
- app/jobs/comee_core/application_job.rb
|
298
298
|
- app/mailers/comee/core/application_mailer.rb
|
299
|
+
- app/mailers/comee/core/notification_mailer.rb
|
299
300
|
- app/mailers/comee/core/supplier_mailer.rb
|
300
301
|
- app/models/comee/core/additional_item.rb
|
301
302
|
- app/models/comee/core/agent.rb
|
@@ -313,6 +314,7 @@ files:
|
|
313
314
|
- app/models/comee/core/customs_detail.rb
|
314
315
|
- app/models/comee/core/delivery_note.rb
|
315
316
|
- app/models/comee/core/edi_order.rb
|
317
|
+
- app/models/comee/core/email_setting.rb
|
316
318
|
- app/models/comee/core/external_rfq.rb
|
317
319
|
- app/models/comee/core/fulfillment_center.rb
|
318
320
|
- app/models/comee/core/inventory.rb
|
@@ -445,6 +447,7 @@ files:
|
|
445
447
|
- db/migrate/20240328132454_create_comee_core_supplier_invoices.rb
|
446
448
|
- db/migrate/20240328132713_create_comee_core_payment_orders.rb
|
447
449
|
- db/migrate/20240328132921_create_comee_core_supplier_payments.rb
|
450
|
+
- db/migrate/20240407083617_create_comee_core_email_settings.rb
|
448
451
|
- lib/comee/core.rb
|
449
452
|
- lib/comee/core/engine.rb
|
450
453
|
- lib/comee/core/version.rb
|
@@ -465,6 +468,7 @@ files:
|
|
465
468
|
- spec/factories/comee/core/customs_details.rb
|
466
469
|
- spec/factories/comee/core/delivery_notes.rb
|
467
470
|
- spec/factories/comee/core/edi_orders.rb
|
471
|
+
- spec/factories/comee/core/email_settings.rb
|
468
472
|
- spec/factories/comee/core/external_rfqs.rb
|
469
473
|
- spec/factories/comee/core/fulfillment_centers.rb
|
470
474
|
- spec/factories/comee/core/inventories.rb
|
@@ -524,7 +528,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
524
528
|
- !ruby/object:Gem::Version
|
525
529
|
version: '0'
|
526
530
|
requirements: []
|
527
|
-
rubygems_version: 3.5.
|
531
|
+
rubygems_version: 3.5.7
|
528
532
|
signing_key:
|
529
533
|
specification_version: 4
|
530
534
|
summary: An engine for the COMee ERP.
|