loggable_activity 0.1.53 → 0.1.54
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +2 -0
- data/CHANGELOG.md +6 -0
- data/GETTING-STARTED.md +3 -10
- data/README.md +2 -0
- data/docs/LoggableActivity/UpdatePayloadsBuilder.html +2 -2
- data/docs/created.rid +4 -4
- data/docs/js/search_index.js.gz +0 -0
- data/help/loggable_activity_help.txt +19 -0
- data/lib/generators/loggable_activity/.DS_Store +0 -0
- data/lib/generators/loggable_activity/install_generator.rb +94 -6
- data/lib/generators/loggable_activity/install_templates_generator.rb +61 -0
- data/lib/generators/loggable_activity/templates/.DS_Store +0 -0
- data/lib/generators/loggable_activity/templates/binary_ids/create_loggable_activities.rb +31 -0
- data/lib/generators/loggable_activity/templates/create_loggable_activities.rb +16 -0
- data/lib/loggable_activity/version.rb +1 -1
- metadata +6 -6
- data/lib/generators/loggable_activity/templates/create_loggable_encryption_keys.rb +0 -11
- data/lib/generators/loggable_activity/templates/create_loggable_payloads.rb +0 -15
- /data/lib/generators/loggable_activity/templates/config/{loggable_activity.yml → loggable_activity.yaml} +0 -0
- /data/lib/generators/loggable_activity/templates/{loggable_activity.en.yml → loggable_activity.en.yaml} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4e3c72b18d402ce0870b6882beeb7438e46f4955e38ca9182c02bbe8b945ea23
|
4
|
+
data.tar.gz: e2484e4bec3907cff1d3974b9c58cde65e9c5b48dfd91cc0ab9302ced561d6b7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c39842b15b3fe0ea14970a381ba4b17222549884d90c4b96236d3bffd5a23ed97803011bef1aea4da1586fae6cdba7ab010a6ebe0e4f229b666fe174a49a4748
|
7
|
+
data.tar.gz: d44d7c04e0b5fcde4f7c8609da270ad7989bae25e84b5d6adaa2428ba5226284fb6e4187320eaa8fb8cbbe697c7804b3ec5b4fd4c9a78afc22d09084582fc305
|
data/.rubocop.yml
CHANGED
@@ -38,3 +38,5 @@ Metrics/AbcSize:
|
|
38
38
|
Exclude:
|
39
39
|
- lib/loggable_activity/encryption.rb
|
40
40
|
- lib/loggable_activity/update_payloads_builder.rb
|
41
|
+
- lib/generators/loggable_activity/templates/binary_ids/create_loggable_activities.rb
|
42
|
+
- lib/generators/loggable_activity/templates/create_loggable_activities.rb
|
data/CHANGELOG.md
CHANGED
data/GETTING-STARTED.md
CHANGED
@@ -26,17 +26,9 @@ This will install the following files
|
|
26
26
|
- config/loggable_activity.yml
|
27
27
|
- config/locales/loggable_activity.en.yml
|
28
28
|
- db/migrate/xxxxxxxxxxxxxx_create_loggable_activities
|
29
|
-
- db/migrate/xxxxxxxxxxxxxx_create_loggable_payloads
|
30
|
-
- db/migrate/xxxxxxxxxxxxxx_create_loggable_encryption_keys
|
31
29
|
|
32
|
-
Then we have to run
|
33
|
-
```
|
34
|
-
$ bundle install
|
35
|
-
```
|
36
|
-
|
37
|
-
## Add hoks to models you want to be logged
|
38
|
-
Include hooks to the model we want to log.
|
39
30
|
|
31
|
+
## Add hoks to models to be logged
|
40
32
|
```
|
41
33
|
class User < ApplicationRecord
|
42
34
|
include LoggableActivity::Hooks
|
@@ -67,8 +59,9 @@ This file defines:
|
|
67
59
|
*Here is an example of content for the config/loggable_activity.yaml file*
|
68
60
|
```
|
69
61
|
Demo::Club:
|
70
|
-
record_display_name:
|
62
|
+
record_display_name: email
|
71
63
|
loggable_attrs:
|
64
|
+
- email
|
72
65
|
- name
|
73
66
|
auto_log:
|
74
67
|
- create
|
data/README.md
CHANGED
@@ -4,6 +4,8 @@ Secure protect data and log how it is handled
|
|
4
4
|
- Protect and secure the privacy of data stored in Activity Logs
|
5
5
|
- Prepare for General Data Protection Regulation (GDPR) compliance.
|
6
6
|
- Handles activities that involves more than one table in the DB.
|
7
|
+
- Encrypt data stored in the activity log
|
8
|
+
- Support binary_ids
|
7
9
|
|
8
10
|
### Important!
|
9
11
|
This project is under development and not ready for production. There might be breaking changes, so please consult the CHANGELOG.md
|
@@ -230,7 +230,7 @@
|
|
230
230
|
<div class="method-source-code" id="build_relation_update_for_has_many-source">
|
231
231
|
<pre><span class="ruby-comment"># File lib/loggable_activity/update_payloads_builder.rb, line 64</span>
|
232
232
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_relation_update_for_has_many</span>(<span class="ruby-identifier">relation_config</span>)
|
233
|
-
<span class="ruby-comment">#
|
233
|
+
<span class="ruby-comment"># NOTE: This method is not implemented yet.</span>
|
234
234
|
<span class="ruby-comment"># It requires that there is a form where it is possible to change</span>
|
235
235
|
<span class="ruby-comment"># the related records. This is not implemented yet. in the Demo app</span>
|
236
236
|
<span class="ruby-comment"># puts relation_config['has_many']</span>
|
@@ -256,7 +256,7 @@
|
|
256
256
|
<div class="method-source-code" id="build_relation_update_for_has_one-source">
|
257
257
|
<pre><span class="ruby-comment"># File lib/loggable_activity/update_payloads_builder.rb, line 71</span>
|
258
258
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_relation_update_for_has_one</span>(<span class="ruby-identifier">relation_config</span>)
|
259
|
-
<span class="ruby-comment">#
|
259
|
+
<span class="ruby-comment"># NOTE: This method is not implemented yet.</span>
|
260
260
|
<span class="ruby-comment"># It requires that there is a form where it is possible to change</span>
|
261
261
|
<span class="ruby-comment"># the related records. This is not implemented yet. in the Demo app</span>
|
262
262
|
<span class="ruby-comment"># puts relation_config['has_many']</span>
|
data/docs/created.rid
CHANGED
@@ -1,10 +1,10 @@
|
|
1
|
-
|
1
|
+
Sat, 24 Feb 2024 15:48:31 +0100
|
2
2
|
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/activity.rb Wed, 21 Feb 2024 12:58:24 +0100
|
3
3
|
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/configuration.rb Mon, 19 Feb 2024 15:59:34 +0100
|
4
4
|
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/encryption.rb Fri, 16 Feb 2024 15:03:24 +0100
|
5
5
|
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/encryption_key.rb Wed, 21 Feb 2024 12:58:24 +0100
|
6
6
|
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/hooks.rb Wed, 21 Feb 2024 12:58:24 +0100
|
7
7
|
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/payload.rb Wed, 21 Feb 2024 12:58:24 +0100
|
8
|
-
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/payloads_builder.rb
|
9
|
-
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/update_payloads_builder.rb
|
10
|
-
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/version.rb
|
8
|
+
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/payloads_builder.rb Thu, 22 Feb 2024 17:26:16 +0100
|
9
|
+
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/update_payloads_builder.rb Thu, 22 Feb 2024 17:26:16 +0100
|
10
|
+
/Users/maxgronlund/Documents/Max/open-source/LoggableActivity/lib/loggable_activity/version.rb Thu, 22 Feb 2024 17:26:42 +0100
|
data/docs/js/search_index.js.gz
CHANGED
Binary file
|
@@ -0,0 +1,19 @@
|
|
1
|
+
Loggable Activity Generator Help
|
2
|
+
--------------------------------
|
3
|
+
|
4
|
+
Description:
|
5
|
+
This generator creates files and configurations for integrating the Loggable Activity gem into your Rails application.
|
6
|
+
|
7
|
+
Usage:
|
8
|
+
rails generate loggable_activity [options]
|
9
|
+
|
10
|
+
Options:
|
11
|
+
-h, [--help], [--no-help] # Display usage instructions (this message)
|
12
|
+
-m, [--uuid] # Use uuids for primary_keys
|
13
|
+
|
14
|
+
Examples:
|
15
|
+
rails generate loggable_activity --uuid # Generate loggable activity migration files with uuids for primary_keys
|
16
|
+
|
17
|
+
Note:
|
18
|
+
- This generator assumes that you have already installed the Loggable Activity gem.
|
19
|
+
- Ensure that your database schema supports UUIDs if using them as primary keys.
|
Binary file
|
@@ -6,17 +6,27 @@ require 'rails/generators/named_base'
|
|
6
6
|
module LoggableActivity
|
7
7
|
module Generators
|
8
8
|
class InstallGenerator < Rails::Generators::Base
|
9
|
+
def self.banner
|
10
|
+
'rails generate loggable_activity:install [options]'
|
11
|
+
end
|
12
|
+
|
13
|
+
desc 'This generator configures LoggableActivity by creating migration files and initializing necessary configuration files.'
|
14
|
+
|
9
15
|
source_root File.expand_path('templates', __dir__)
|
16
|
+
class_option :uuid, type: :boolean, desc: 'use UUID for primary keys'
|
10
17
|
|
11
18
|
FILE_NAMES = %w[activity payload encryption_key].freeze
|
12
19
|
TIME = Time.now
|
13
20
|
|
14
|
-
def
|
21
|
+
def install
|
22
|
+
binary_ids = options['uuid'] ? true : false
|
15
23
|
time = Time.now.utc
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
24
|
+
timestamp = time.strftime('%Y%m%d%H%M%S')
|
25
|
+
migration_file_name = 'create_loggable_activities.rb'
|
26
|
+
destination = File.join('db', 'migrate', "#{timestamp}_#{migration_file_name}")
|
27
|
+
if binary_ids
|
28
|
+
template "binary_ids/#{migration_file_name}", destination
|
29
|
+
else
|
20
30
|
template migration_file_name, destination
|
21
31
|
end
|
22
32
|
end
|
@@ -26,12 +36,90 @@ module LoggableActivity
|
|
26
36
|
end
|
27
37
|
|
28
38
|
def create_config_file
|
29
|
-
copy_file 'config/loggable_activity.
|
39
|
+
copy_file 'config/loggable_activity.yaml', 'config/loggable_activity.yaml'
|
30
40
|
end
|
31
41
|
|
32
42
|
def create_current_user_concern
|
33
43
|
copy_file 'current_user.rb', 'app/controllers/concerns/loggable_activity/current_user.rb'
|
34
44
|
end
|
45
|
+
|
46
|
+
def completion_message
|
47
|
+
message = <<~MESSAGE
|
48
|
+
------------------------------------------------
|
49
|
+
___ _ _ _ _#{' '}
|
50
|
+
|_ _| _ __ ___| |_ __ _| | __ _| |_(_) ___ _ __#{' '}
|
51
|
+
| | | '_ \\/ __| __/ _` | |/ _` | __| |/ _ \\| '_ \\#{' '}
|
52
|
+
| | | | | \\__ \\ || (_| | | (_| | |_| | (_) | | | |
|
53
|
+
|___| |_| |_|___/\\__\\__,_|_|\\__,_|\\__|_|\\___/|_| |_|
|
54
|
+
____ _ _ _#{' '}
|
55
|
+
/ ___| ___ _ __ ___ _ __ | | ___| |_ ___ __| |
|
56
|
+
| | / _ \\| '_ ` _ \\| '_ \\| |/ _ \\ __/ _ \\/ _` |
|
57
|
+
| |___ | (_) | | | | | | |_) | | __/ || __/ (_| |
|
58
|
+
\\____| \\___/|_| |_| |_| .__/|_|\\___|\\__\\___|\\__,_|
|
59
|
+
|_|#{' '}
|
60
|
+
|
61
|
+
LoggableActivity installation completed successfully!
|
62
|
+
|
63
|
+
Quick Start:
|
64
|
+
|
65
|
+
1. include hooks to the model we want to log.
|
66
|
+
class MY_MODEL < ApplicationRecord
|
67
|
+
include LoggableActivity::Hooks
|
68
|
+
|
69
|
+
2. Update `config/application.rb
|
70
|
+
config.loggable_activity = ActiveSupport::OrderedOptions.new
|
71
|
+
config.loggable_activity.actor_display_name = :email
|
72
|
+
config.loggable_activity.current_user_model_name = 'User'
|
73
|
+
LoggableActivity::Configuration.load_config_file('config/loggable_activity.yaml')
|
74
|
+
|
75
|
+
3. Include current_user ApplicationController
|
76
|
+
class ApplicationController < ActionController::Base
|
77
|
+
include LoggableActivity::CurrentUser
|
78
|
+
|
79
|
+
4. Update the 'config/loggable_activity.yaml' file with the necessary configuration.
|
80
|
+
|
81
|
+
5. Run the migration to create the necessary tables.
|
82
|
+
|
83
|
+
|
84
|
+
For more information, please visit:
|
85
|
+
https://github.com/maxgronlund/LoggableActivity/blob/main/GETTING-STARTED.md
|
86
|
+
|
87
|
+
Install templates
|
88
|
+
$ rails generate loggable_activity:install_templates
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
------------------------------------------------
|
93
|
+
MESSAGE
|
94
|
+
|
95
|
+
puts message
|
96
|
+
end
|
97
|
+
|
98
|
+
private
|
99
|
+
|
100
|
+
def create_migration_files
|
101
|
+
binary_ids = options['uuid'] ? true : false
|
102
|
+
time = Time.now.utc
|
103
|
+
timestamp = time.strftime('%Y%m%d%H%M%S')
|
104
|
+
migration_file_name = 'create_loggable_activities.rb'
|
105
|
+
destination = File.join('db', 'migrate', "#{timestamp}_#{migration_file_name}")
|
106
|
+
if binary_ids
|
107
|
+
# Copy binary_id migration file
|
108
|
+
template "binary_ids/#{migration_file_name}", destination
|
109
|
+
else
|
110
|
+
# Copy integer migration file
|
111
|
+
template migration_file_name, destination
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
# def display_help
|
116
|
+
# help_path = File.expand_path('../../../help/loggable_activity_help.txt', __dir__)
|
117
|
+
# puts '-----------------------------'
|
118
|
+
# puts help_path
|
119
|
+
# puts File.read(help_path)
|
120
|
+
# exit
|
121
|
+
# end
|
122
|
+
# Define a method to display a message after generation
|
35
123
|
end
|
36
124
|
end
|
37
125
|
end
|
@@ -26,6 +26,67 @@ module LoggableActivity
|
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
|
+
def completion_message
|
30
|
+
message = <<~MESSAGE
|
31
|
+
------------------------------------------------
|
32
|
+
___ _ _ _ _#{' '}
|
33
|
+
|_ _| _ __ ___| |_ __ _| | __ _| |_(_) ___ _ __#{' '}
|
34
|
+
| | | '_ \\/ __| __/ _` | |/ _` | __| |/ _ \\| '_ \\#{' '}
|
35
|
+
| | | | | \\__ \\ || (_| | | (_| | |_| | (_) | | | |
|
36
|
+
|___| |_| |_|___/\\__\\__,_|_|\\__,_|\\__|_|\\___/|_| |_|
|
37
|
+
____ _ _ _#{' '}
|
38
|
+
/ ___| ___ _ __ ___ _ __ | | ___| |_ ___ __| |
|
39
|
+
| | / _ \\| '_ ` _ \\| '_ \\| |/ _ \\ __/ _ \\/ _` |
|
40
|
+
| |___ | (_) | | | | | | |_) | | __/ || __/ (_| |
|
41
|
+
\\____| \\___/|_| |_| |_| .__/|_|\\___|\\__\\___|\\__,_|
|
42
|
+
|_|#{' '}
|
43
|
+
|
44
|
+
LoggableActivity templates installed successfully!
|
45
|
+
|
46
|
+
Quick Start:
|
47
|
+
|
48
|
+
1. Create a new controller to show the list of activities.
|
49
|
+
$ rails generate controller LoggableActivities index
|
50
|
+
|
51
|
+
2 Add the following to the loggable_activities_controller.rb
|
52
|
+
def index
|
53
|
+
@loggable_activities = LoggableActivity::Activity.latest(50)
|
54
|
+
end
|
55
|
+
|
56
|
+
3. Update routes.rb
|
57
|
+
resources :loggable_activities, only: [:index]
|
58
|
+
|
59
|
+
4. update the index view in app/views/loggable_activities/index.html.TEMPLATE_TYPE
|
60
|
+
h1 Activities#{' '}
|
61
|
+
table.table#{' '}
|
62
|
+
thead
|
63
|
+
tr
|
64
|
+
th Info#{' '}
|
65
|
+
th Attributes
|
66
|
+
th Actions
|
67
|
+
tbody
|
68
|
+
- @loggable_activities.each do |activity|
|
69
|
+
= render_activity(activity)
|
70
|
+
|
71
|
+
5. Visit
|
72
|
+
http://localhost:3000/loggable_activities
|
73
|
+
|
74
|
+
|
75
|
+
|
76
|
+
For more information, please visit:
|
77
|
+
https://github.com/maxgronlund/LoggableActivity/blob/main/GETTING-STARTED.md
|
78
|
+
|
79
|
+
Install templates
|
80
|
+
$ rails generate loggable_activity:install_templates
|
81
|
+
|
82
|
+
|
83
|
+
|
84
|
+
------------------------------------------------
|
85
|
+
MESSAGE
|
86
|
+
|
87
|
+
puts message
|
88
|
+
end
|
89
|
+
|
29
90
|
private
|
30
91
|
|
31
92
|
def copy_files(type)
|
Binary file
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class CreateLoggableActivities < ActiveRecord::Migration[7.1]
|
4
|
+
def change
|
5
|
+
create_table :loggable_activities, id: :uuid, default: 'gen_random_uuid()' do |t|
|
6
|
+
t.string :action
|
7
|
+
t.references :actor, polymorphic: true, null: true, type: :uuid
|
8
|
+
t.string :encrypted_actor_display_name
|
9
|
+
t.string :encrypted_record_display_name
|
10
|
+
t.references :record, polymorphic: true, null: true, type: :uuid
|
11
|
+
|
12
|
+
t.timestamps
|
13
|
+
end
|
14
|
+
|
15
|
+
create_table :loggable_payloads, id: :uuid, default: 'gen_random_uuid()' do |t|
|
16
|
+
t.references :record, polymorphic: true, null: true, type: :uuid
|
17
|
+
t.json :encrypted_attrs
|
18
|
+
t.integer :payload_type, default: 0
|
19
|
+
t.boolean :data_owner, default: false
|
20
|
+
t.references :activity, type: :uuid, foreign_key: { to_table: 'loggable_activities', class_name: 'LoggableActivity::Activity' }
|
21
|
+
|
22
|
+
t.timestamps
|
23
|
+
end
|
24
|
+
|
25
|
+
create_table :loggable_encryption_keys, id: :uuid, default: 'gen_random_uuid()' do |t|
|
26
|
+
t.string :key
|
27
|
+
t.references :parent_key, type: :uuid, foreign_key: { to_table: 'loggable_encryption_keys', on_delete: :nullify }
|
28
|
+
t.references :record, polymorphic: true, type: :uuid
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -11,5 +11,21 @@ class CreateLoggableActivities < ActiveRecord::Migration[6.1]
|
|
11
11
|
|
12
12
|
t.timestamps
|
13
13
|
end
|
14
|
+
|
15
|
+
create_table :loggable_payloads do |t|
|
16
|
+
t.references :record, polymorphic: true, null: true
|
17
|
+
t.json :encrypted_attrs
|
18
|
+
t.integer :payload_type, default: 0
|
19
|
+
t.boolean :data_owner, default: false
|
20
|
+
t.references :activity, foreign_key: { to_table: 'loggable_activities', class_name: 'LoggableActivity::Activity' }
|
21
|
+
|
22
|
+
t.timestamps
|
23
|
+
end
|
24
|
+
|
25
|
+
create_table :loggable_encryption_keys do |t|
|
26
|
+
t.references :parent_key, foreign_key: { to_table: 'loggable_encryption_keys', on_delete: :nullify }
|
27
|
+
t.string :key
|
28
|
+
t.references :record, polymorphic: true, on_delete: :nullify
|
29
|
+
end
|
14
30
|
end
|
15
31
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: loggable_activity
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.54
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- "Max \nGroenlund"
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-02-
|
11
|
+
date: 2024-02-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -207,20 +207,20 @@ files:
|
|
207
207
|
- docs/js/searcher.js
|
208
208
|
- docs/js/searcher.js.gz
|
209
209
|
- docs/table_of_contents.html
|
210
|
+
- help/loggable_activity_help.txt
|
210
211
|
- lib/.DS_Store
|
211
212
|
- lib/generators/.DS_Store
|
212
213
|
- lib/generators/loggable_activity/.DS_Store
|
213
214
|
- lib/generators/loggable_activity/install_generator.rb
|
214
215
|
- lib/generators/loggable_activity/install_templates_generator.rb
|
215
216
|
- lib/generators/loggable_activity/templates/.DS_Store
|
217
|
+
- lib/generators/loggable_activity/templates/binary_ids/create_loggable_activities.rb
|
216
218
|
- lib/generators/loggable_activity/templates/config/locales/loggable_activity.en.yml
|
217
|
-
- lib/generators/loggable_activity/templates/config/loggable_activity.
|
219
|
+
- lib/generators/loggable_activity/templates/config/loggable_activity.yaml
|
218
220
|
- lib/generators/loggable_activity/templates/create_loggable_activities.rb
|
219
|
-
- lib/generators/loggable_activity/templates/create_loggable_encryption_keys.rb
|
220
|
-
- lib/generators/loggable_activity/templates/create_loggable_payloads.rb
|
221
221
|
- lib/generators/loggable_activity/templates/current_user.rb
|
222
222
|
- lib/generators/loggable_activity/templates/helpers/loggable_activity_helper.rb
|
223
|
-
- lib/generators/loggable_activity/templates/loggable_activity.en.
|
223
|
+
- lib/generators/loggable_activity/templates/loggable_activity.en.yaml
|
224
224
|
- lib/generators/loggable_activity/templates/loggable_activity_helper.rb
|
225
225
|
- lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_create.html.erb
|
226
226
|
- lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_create.html.slim
|
@@ -1,11 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
class CreateLoggableEncryptionKeys < ActiveRecord::Migration[6.1]
|
4
|
-
def change
|
5
|
-
create_table :loggable_encryption_keys do |t|
|
6
|
-
t.references :parent_key, foreign_key: { to_table: 'loggable_encryption_keys', on_delete: :nullify }
|
7
|
-
t.string :key
|
8
|
-
t.references :record, polymorphic: true, on_delete: :nullify
|
9
|
-
end
|
10
|
-
end
|
11
|
-
end
|
@@ -1,15 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
class CreateLoggablePayloads < ActiveRecord::Migration[6.1]
|
4
|
-
def change
|
5
|
-
create_table :loggable_payloads do |t|
|
6
|
-
t.references :record, polymorphic: true, null: true
|
7
|
-
t.json :encrypted_attrs
|
8
|
-
t.integer :payload_type, default: 0
|
9
|
-
t.boolean :data_owner, default: false
|
10
|
-
t.references :activity, foreign_key: { to_table: 'loggable_activities', class_name: 'LoggableActivity::Activity' }
|
11
|
-
|
12
|
-
t.timestamps
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
File without changes
|
File without changes
|