web47core 3.2.3.27 → 3.2.3.29
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
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: da5eed78b518a4431c3c388673c767af0fe35ca33395656d37515a369d97bed5
|
|
4
|
+
data.tar.gz: 5970b5bf1240b5672761df3509eb33b50191fc8ef28246aa471ce5b34c5f4303
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3cfbd7379b539f47a66b25103f1b94b6b3fa41be032fc596c94ef48485bfba803c89f5e47cf0346057ed71d028dd8ebf72e541f9de3a1be0faf5f9060b7d619a
|
|
7
|
+
data.tar.gz: b7e01bda72d4461e54881206ca07be39d37724cb5a9d8a909540e638439c1a983398e5f376e99606af7ee34080d57877e33df980d442f1f03ff9bd6483e4006a
|
|
@@ -5,17 +5,25 @@
|
|
|
5
5
|
#
|
|
6
6
|
module CoreApplicationHelper
|
|
7
7
|
# @abstract Return the current user
|
|
8
|
-
# @return [User] - The current user that is logged in
|
|
8
|
+
# @return [User, nil] - The current user that is logged in
|
|
9
9
|
def current_user
|
|
10
10
|
@current_user
|
|
11
11
|
end
|
|
12
12
|
|
|
13
13
|
# @abstract Return the current member
|
|
14
|
-
# @return [Member] - The current user that is logged in
|
|
14
|
+
# @return [Member, nil] - The current user that is logged in
|
|
15
15
|
def current_member
|
|
16
16
|
@current_member
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
+
# @abstract return the user or member depending on configuration
|
|
20
|
+
# @return [Member, User, nil]
|
|
21
|
+
def current_member_user
|
|
22
|
+
send("current_#{Web47core.audit_model}")
|
|
23
|
+
rescue StandardError
|
|
24
|
+
current_user || current_member
|
|
25
|
+
end
|
|
26
|
+
|
|
19
27
|
# @abstract Return the referrer url without deleting it out of the session
|
|
20
28
|
# @param [String] default_url - The URL to use if the referrer session is not there
|
|
21
29
|
# @return [String] the session[:referrer] or the default_url if not found
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
module CoreDataGridHelper
|
|
2
|
+
def data_grid_tag(model, fields: [], except: [])
|
|
3
|
+
fields = model.class.allowed_param_names(except) + model.class::STANDARD_FIELDS if fields.blank?
|
|
4
|
+
|
|
5
|
+
content_tag(:div, class: 'datagrid') do
|
|
6
|
+
fields.sort.each do |field|
|
|
7
|
+
next if %w[_id _type].include?(field)
|
|
8
|
+
next unless model.respond_to?(field)
|
|
9
|
+
next if model.send(field).blank?
|
|
10
|
+
|
|
11
|
+
concat(data_grid_item(field, data_grid_field_value(model, field)))
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def data_grid_item(title, content)
|
|
18
|
+
content_tag(:div, class: 'datagrid-item') do
|
|
19
|
+
concat(content_tag(:div, class: 'datagrid-title') { title })
|
|
20
|
+
concat(content_tag(:div, class: 'datagrid-content') { content })
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def data_grid_url(title, url)
|
|
25
|
+
url = content_tag(:a, href: url) { url }
|
|
26
|
+
data_grid_item(title, url)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def data_grid_mask(title, secret_content)
|
|
30
|
+
data_grid_item(title, mask_value(secret_content))
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def data_grid_field_value(model, field_name)
|
|
34
|
+
value = model.respond_to?(field_name) ? model.send(field_name) : nil
|
|
35
|
+
case value
|
|
36
|
+
when BSON::ObjectId
|
|
37
|
+
if field_name.eql?('_id')
|
|
38
|
+
value.to_s
|
|
39
|
+
else
|
|
40
|
+
related_model = fetch_related_model(model, field_name.chomp('_id'))
|
|
41
|
+
related_model.present? ? related_model.name : 'N/A'
|
|
42
|
+
end
|
|
43
|
+
when FalseClass
|
|
44
|
+
'No'
|
|
45
|
+
when TrueClass
|
|
46
|
+
'Yes'
|
|
47
|
+
when Mongoid::Boolean
|
|
48
|
+
value ? 'Yes' : 'No'
|
|
49
|
+
when Date, DateTime, Time
|
|
50
|
+
current_member_user&.local_time(value, :medium) || value.to_s
|
|
51
|
+
when Integer, Array
|
|
52
|
+
value.to_s
|
|
53
|
+
when String
|
|
54
|
+
value
|
|
55
|
+
else
|
|
56
|
+
'N/S'
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
@@ -34,7 +34,7 @@ module CoreMenuHelper
|
|
|
34
34
|
def menu_link(name, action_path, classes: [], badge_count: 0, icon_name: '')
|
|
35
35
|
classes << 'menu-link'
|
|
36
36
|
content_tag(:a, href: action_path, class: classes.join(' ')) do
|
|
37
|
-
concat(
|
|
37
|
+
concat(svg_icon(icon_name)) if icon_name.present?
|
|
38
38
|
concat(menu_name(name))
|
|
39
39
|
concat(menu_count_badge(name, badge_count)) if badge_count.positive?
|
|
40
40
|
end
|
|
@@ -17,7 +17,7 @@ module ApiTokenable
|
|
|
17
17
|
# call back to reset the api token.
|
|
18
18
|
before_save :assign_api_token, if: :reset_api_token
|
|
19
19
|
# set the index on api token
|
|
20
|
-
index({ api_token:
|
|
20
|
+
index({ api_token: Mongo::Index::ASCENDING }, background: true)
|
|
21
21
|
|
|
22
22
|
def cycle_api_token
|
|
23
23
|
set api_token: SecureRandom.urlsafe_base64
|
data/lib/web47core/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: web47core
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.2.3.
|
|
4
|
+
version: 3.2.3.29
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Chris Schroeder
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2025-12-
|
|
11
|
+
date: 2025-12-23 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activemodel
|
|
@@ -536,6 +536,7 @@ files:
|
|
|
536
536
|
- app/helpers/core_avatar_helper.rb
|
|
537
537
|
- app/helpers/core_breadcrumb_helper.rb
|
|
538
538
|
- app/helpers/core_card_nav_items_helper.rb
|
|
539
|
+
- app/helpers/core_data_grid_helper.rb
|
|
539
540
|
- app/helpers/core_dropdown_helper.rb
|
|
540
541
|
- app/helpers/core_flash_toast_helper.rb
|
|
541
542
|
- app/helpers/core_floating_action_button_helper.rb
|