wco_models 3.1.0.51 → 3.1.0.53
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/stylesheets/wco/pagination.scss +2 -1
- data/app/assets/stylesheets/wco/utils.scss +8 -0
- data/app/models/wco/gallery.rb +7 -12
- data/app/models/wco/photo.rb +1 -5
- data/app/models/wco/tag.rb +7 -0
- data/app/models/wco_email/message.rb +3 -1
- data/app/models/wco_email/message_stub.rb +6 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7e600845398a0cd10bcd4683dfd01a7f3793ba4b1dc9e086df508d1845fc8127
|
4
|
+
data.tar.gz: a8f500decf7e7f67716cdcf3e53231239bedb36e3ee8098a0a27063ef80068f9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a5649ea010caf2ecba1b71bfdd800f4674320a5c36ac95c7aab2f0b9266d19eedfbb37ed3a91785c9e4bc8a80c4aeccc848e3709018d81c3bc427ddee740dbde
|
7
|
+
data.tar.gz: 8a7e153a876fe7f28c411c056e838f08e204f1d4647add4a72c68718474b8dc971af71105d7cd455bb4934b43a62560f752e29da1ac4d8f1f12475718f074cf0
|
@@ -26,6 +26,13 @@ textarea {
|
|
26
26
|
border-right: 1px solid red !important;
|
27
27
|
}
|
28
28
|
|
29
|
+
.bordered {
|
30
|
+
border: 1px solid gray;
|
31
|
+
border-radius: 5px;
|
32
|
+
|
33
|
+
padding: 0.5em;
|
34
|
+
}
|
35
|
+
|
29
36
|
table.bordered {
|
30
37
|
table-layout:fixed;
|
31
38
|
width: 100%;
|
@@ -94,6 +101,7 @@ textarea.monospace {
|
|
94
101
|
.gray,
|
95
102
|
.grey {
|
96
103
|
color: grey;
|
104
|
+
display: inline-block;
|
97
105
|
}
|
98
106
|
|
99
107
|
.green {
|
data/app/models/wco/gallery.rb
CHANGED
@@ -7,23 +7,24 @@ class Wco::Gallery
|
|
7
7
|
include Wco::Utils
|
8
8
|
store_in collection: 'galleries'
|
9
9
|
|
10
|
-
PER_PAGE = 6
|
11
10
|
|
12
11
|
field :name
|
13
12
|
validates :name, :uniqueness => true
|
14
13
|
index({ :name => -1 }) ## 2023-09-23 removed uniqueness
|
15
14
|
|
15
|
+
field :slug
|
16
|
+
index({ :slug => -1 }, { :unique => true })
|
17
|
+
validates :slug, presence: true, uniqueness: true
|
18
|
+
before_validation :set_slug, :on => :create
|
19
|
+
|
16
20
|
field :subhead
|
17
21
|
field :descr, :as => :description
|
18
22
|
|
19
23
|
field :is_public, type: Boolean, default: false
|
20
24
|
# has_and_belongs_to_many :shared_profiles, :class_name => 'Wco::Profile', :inverse_of => :shared_galleries
|
21
25
|
|
22
|
-
field :is_trash, type: Boolean, default: false
|
23
|
-
field :is_done, type: Boolean, default: false
|
24
|
-
|
25
26
|
def published
|
26
|
-
where({ :is_public => true
|
27
|
+
where({ :is_public => true }).order_by({ :created_at => :desc })
|
27
28
|
end
|
28
29
|
|
29
30
|
field :x, :type => Float
|
@@ -31,15 +32,9 @@ class Wco::Gallery
|
|
31
32
|
field :z, :type => Float
|
32
33
|
|
33
34
|
field :lang, :default => 'en'
|
34
|
-
# field :username
|
35
|
-
# field :lead_id, type: :integer
|
36
35
|
|
37
|
-
field :slug
|
38
|
-
index({ :slug => -1 }, { :unique => true })
|
39
|
-
validates :slug, presence: true, uniqueness: true
|
40
|
-
before_validation :set_slug, :on => :create
|
41
36
|
|
42
|
-
def self.list conditions = {
|
37
|
+
def self.list conditions = {}
|
43
38
|
out = self.unscoped.where( conditions ).order_by( :created_at => :desc )
|
44
39
|
[['', nil]] + out.map { |item| [ "#{item.created_at.strftime('%Y%m%d')} #{item.name}", item.id ] }
|
45
40
|
end
|
data/app/models/wco/photo.rb
CHANGED
@@ -51,14 +51,10 @@ class Wco::Photo
|
|
51
51
|
s3_region: ::S3_CREDENTIALS[:region]
|
52
52
|
validates_attachment_content_type :photo, :content_type => ["image/webp", "image/jpg", "image/jpeg", "image/png", "image/gif", 'application/octet-stream' ]
|
53
53
|
|
54
|
-
def self.n_per_manager_gallery
|
55
|
-
25
|
56
|
-
end
|
57
|
-
|
58
54
|
def export_fields
|
59
55
|
%w|
|
60
56
|
gallery_id
|
61
|
-
name descr weight
|
57
|
+
name descr weight
|
62
58
|
|
63
59
|
photo_file_name photo_content_type photo_file_size photo_updated_at photo_fingerprint
|
64
60
|
|
|
data/app/models/wco/tag.rb
CHANGED
@@ -20,7 +20,14 @@ class Wco::Tag
|
|
20
20
|
has_and_belongs_to_many :logs
|
21
21
|
|
22
22
|
INBOX = 'inbox'
|
23
|
+
def self.inbox
|
24
|
+
find_or_create_by({ slug: INBOX })
|
25
|
+
end
|
26
|
+
|
23
27
|
TRASH = 'trash'
|
28
|
+
def self.trash
|
29
|
+
find_or_create_by({ slug: TRASH })
|
30
|
+
end
|
24
31
|
|
25
32
|
def self.list
|
26
33
|
[[nil,nil]] + all.map { |p| [ p.slug, p.id ] }
|
@@ -17,7 +17,9 @@ class WcoEmail::Message
|
|
17
17
|
|
18
18
|
field :in_reply_to_id, type: :string
|
19
19
|
|
20
|
-
field
|
20
|
+
field :bucket, default: 'ish-ses'
|
21
|
+
|
22
|
+
field :object_key ## aka 'filename', use with bucket name + prefix. I need this!
|
21
23
|
validates :object_key, presence: true, uniqueness: true
|
22
24
|
index({ object_key: 1 }, { unique: true, name: "object_key_idx" })
|
23
25
|
|
@@ -17,6 +17,8 @@ class WcoEmail::MessageStub
|
|
17
17
|
field :status, default: STATUS_PENDING
|
18
18
|
scope :pending, ->{ where( status: 'status_pending' ) }
|
19
19
|
|
20
|
+
field :bucket # 'ish-ses', 'ish-ses-2024'
|
21
|
+
|
20
22
|
field :object_key
|
21
23
|
validates :object_key, presence: true, uniqueness: true
|
22
24
|
index({ object_key: 1 }, { unique: true, name: "object_key_idx" })
|
@@ -35,14 +37,16 @@ class WcoEmail::MessageStub
|
|
35
37
|
key = the_mail.message_id || "no-key-#{Time.now.to_i}.#{rand(1000)}"
|
36
38
|
|
37
39
|
@stub = WcoEmail::MessageStub.create({
|
40
|
+
bucket: ::S3_CREDENTIALS[:bucket_ses],
|
38
41
|
object_key: key,
|
39
42
|
status: WcoEmail::MessageStub::STATUS_PENDING,
|
40
43
|
tags: [ @tag ],
|
41
44
|
})
|
42
45
|
if @stub.persisted?
|
43
|
-
@client.put_object({
|
44
|
-
key: key,
|
46
|
+
@client.put_object({
|
45
47
|
body: message,
|
48
|
+
bucket: ::S3_CREDENTIALS[:bucket_ses],
|
49
|
+
key: key,
|
46
50
|
})
|
47
51
|
else
|
48
52
|
msg = @stub.errors.full_messages.join(", ")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wco_models
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.1.0.
|
4
|
+
version: 3.1.0.53
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Victor Pudeyev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-01-
|
11
|
+
date: 2024-01-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-s3
|