loggable_activity 0.1.56 → 0.1.58
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/.rubocop.yml +10 -1
- data/CHANGELOG.md +9 -0
- data/GETTING-STARTED.md +8 -47
- data/PAYLOAD_EXAMPLE.md +63 -0
- data/docs/LoggableActivity/Activity.html +92 -241
- data/docs/LoggableActivity/Configuration.html +162 -15
- data/docs/LoggableActivity/ConfigurationError.html +148 -0
- data/docs/LoggableActivity/DataOwner.html +138 -0
- data/docs/LoggableActivity/Encryption.html +18 -14
- data/docs/LoggableActivity/EncryptionError.html +47 -1
- data/docs/LoggableActivity/EncryptionKey.html +54 -35
- data/docs/LoggableActivity/Error.html +48 -0
- data/docs/LoggableActivity/Hooks.html +221 -89
- data/docs/LoggableActivity/Payload.html +103 -27
- data/docs/LoggableActivity/Services/BasePayloadsBuilder.html +442 -0
- data/docs/LoggableActivity/Services/DestroyPayloadsBuilder.html +395 -0
- data/docs/LoggableActivity/Services/PayloadsBuilder.html +342 -0
- data/docs/LoggableActivity/Services/UpdatePayloadsBuilder.html +490 -0
- data/docs/LoggableActivity/Services.html +93 -0
- data/docs/created.rid +14 -10
- data/docs/index.html +10 -2
- data/docs/js/navigation.js.gz +0 -0
- data/docs/js/search_index.js +1 -1
- data/docs/js/search_index.js.gz +0 -0
- data/docs/js/searcher.js.gz +0 -0
- data/docs/table_of_contents.html +253 -85
- data/lib/generators/loggable_activity/install_generator.rb +2 -18
- data/lib/generators/loggable_activity/templates/binary_ids/create_loggable_activities.rb +9 -10
- data/lib/generators/loggable_activity/templates/create_loggable_activities.rb +16 -13
- data/lib/loggable_activity/activity.rb +53 -102
- data/lib/loggable_activity/configuration.rb +60 -3
- data/lib/loggable_activity/data_owner.rb +18 -0
- data/lib/loggable_activity/encryption.rb +14 -14
- data/lib/loggable_activity/encryption_key.rb +26 -25
- data/lib/loggable_activity/error.rb +34 -0
- data/lib/loggable_activity/hooks.rb +78 -43
- data/lib/loggable_activity/payload.rb +70 -20
- data/lib/loggable_activity/services/base_payloads_builder.rb +127 -0
- data/lib/loggable_activity/services/destroy_payloads_builder.rb +127 -0
- data/lib/loggable_activity/services/payloads_builder.rb +98 -0
- data/lib/loggable_activity/services/update_payloads_builder.rb +168 -0
- data/lib/loggable_activity/version.rb +1 -1
- data/lib/loggable_activity.rb +6 -6
- data/lib/schemas/config_schema.json +90 -0
- metadata +37 -26
- data/docs/LoggableActivity/PayloadsBuilder.html +0 -441
- data/docs/LoggableActivity/UpdatePayloadsBuilder.html +0 -424
- data/lib/generators/loggable_activity/install_templates_generator.rb +0 -105
- data/lib/generators/loggable_activity/templates/helpers/activity_helper.rb +0 -37
- data/lib/generators/loggable_activity/templates/helpers/router.rb +0 -52
- data/lib/generators/loggable_activity/templates/helpers/routes_helper.rb +0 -20
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_create.html.erb +0 -23
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_create.html.slim +0 -18
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_destroy.html.erb +0 -18
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_destroy.html.slim +0 -17
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_show.html.erb +0 -18
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_show.html.slim +0 -17
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_update.html.erb +0 -18
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_update.html.slim +0 -12
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_activity_info.html.erb +0 -12
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_activity_info.html.slim +0 -11
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_list_attrs.html.erb +0 -8
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_list_attrs.html.slim +0 -6
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_update_attrs.html.erb +0 -17
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_update_attrs.html.slim +0 -14
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_updated_relations.html.erb +0 -23
- data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_updated_relations.html.slim +0 -21
- data/lib/loggable_activity/payloads_builder.rb +0 -153
- data/lib/loggable_activity/update_payloads_builder.rb +0 -127
@@ -59,15 +59,6 @@
|
|
59
59
|
|
60
60
|
|
61
61
|
|
62
|
-
<div id="includes-section" class="nav-section">
|
63
|
-
<h3>Included Modules</h3>
|
64
|
-
|
65
|
-
<ul class="link-list">
|
66
|
-
<li><a class="include" href="PayloadsBuilder.html">LoggableActivity::PayloadsBuilder</a>
|
67
|
-
<li><a class="include" href="UpdatePayloadsBuilder.html">LoggableActivity::UpdatePayloadsBuilder</a>
|
68
|
-
</ul>
|
69
|
-
</div>
|
70
|
-
|
71
62
|
|
72
63
|
<div id="extends-section" class="nav-section">
|
73
64
|
<h3>Extended With Modules</h3>
|
@@ -84,13 +75,18 @@
|
|
84
75
|
|
85
76
|
<ul class="link-list" role="directory">
|
86
77
|
<li ><a href="#method-i-action_key">#action_key</a>
|
87
|
-
<li ><a href="#method-i-
|
88
|
-
<li ><a href="#method-i-
|
78
|
+
<li ><a href="#method-i-actor__name_field">#actor__name_field</a>
|
79
|
+
<li ><a href="#method-i-actor_secret_key">#actor_secret_key</a>
|
89
80
|
<li ><a href="#method-i-base_action">#base_action</a>
|
81
|
+
<li ><a href="#method-i-build_destroy_payload">#build_destroy_payload</a>
|
82
|
+
<li ><a href="#method-i-build_payloads">#build_payloads</a>
|
83
|
+
<li ><a href="#method-i-build_update_payloads">#build_update_payloads</a>
|
90
84
|
<li ><a href="#method-i-create_activity">#create_activity</a>
|
91
85
|
<li ><a href="#method-i-current_user_model-3F">#current_user_model?</a>
|
92
86
|
<li ><a href="#method-i-encrypted_actor_name">#encrypted_actor_name</a>
|
93
|
-
<li ><a href="#method-i-
|
87
|
+
<li ><a href="#method-i-encryption_key_for_record">#encryption_key_for_record</a>
|
88
|
+
<li ><a href="#method-i-fetch_current_user_name_from">#fetch_current_user_name_from</a>
|
89
|
+
<li ><a href="#method-i-hooks_enabled-3F">#hooks_enabled?</a>
|
94
90
|
<li ><a href="#method-i-log">#log</a>
|
95
91
|
<li ><a href="#method-i-log_activity">#log_activity</a>
|
96
92
|
<li ><a href="#method-i-log_create_activity">#log_create_activity</a>
|
@@ -99,9 +95,9 @@
|
|
99
95
|
<li ><a href="#method-i-log_destroy_activity">#log_destroy_activity</a>
|
100
96
|
<li ><a href="#method-i-log_update">#log_update</a>
|
101
97
|
<li ><a href="#method-i-log_update_activity">#log_update_activity</a>
|
98
|
+
<li ><a href="#method-i-mark_encryption_keys_as_deleted">#mark_encryption_keys_as_deleted</a>
|
102
99
|
<li ><a href="#method-i-nothing_to_log-3F">#nothing_to_log?</a>
|
103
100
|
<li ><a href="#method-i-primary_encryption_key">#primary_encryption_key</a>
|
104
|
-
<li ><a href="#method-i-primary_encryption_key_deleted-3F">#primary_encryption_key_deleted?</a>
|
105
101
|
</ul>
|
106
102
|
</div>
|
107
103
|
|
@@ -115,7 +111,7 @@
|
|
115
111
|
|
116
112
|
<section class="description">
|
117
113
|
|
118
|
-
<p>
|
114
|
+
<p>When included to a model, it provides the features for logging events regarding to the model. For this to work you have to update the configuration file ‘config/loggable_activity.yaml</p>
|
119
115
|
|
120
116
|
</section>
|
121
117
|
|
@@ -123,6 +119,22 @@
|
|
123
119
|
|
124
120
|
|
125
121
|
|
122
|
+
<section class="attribute-method-details" class="method-section">
|
123
|
+
<header>
|
124
|
+
<h3>Attributes</h3>
|
125
|
+
</header>
|
126
|
+
|
127
|
+
<div id="attribute-i-disable_hooks" class="method-detail">
|
128
|
+
<div class="method-heading attribute-method-heading">
|
129
|
+
<span class="method-name">disable_hooks</span><span
|
130
|
+
class="attribute-access-type">[RW]</span>
|
131
|
+
</div>
|
132
|
+
|
133
|
+
<div class="method-description">
|
134
|
+
<p>The <a href="Hooks.html#attribute-i-disable_hooks"><code>disable_hooks</code></a> attribute is used to disable hooks when a model is created or updated by a parent model.</p>
|
135
|
+
</div>
|
136
|
+
</div>
|
137
|
+
</section>
|
126
138
|
|
127
139
|
|
128
140
|
<section id="public-instance-5Buntitled-5D-method-details" class="method-section">
|
@@ -147,13 +159,11 @@
|
|
147
159
|
@param params [Hash] Additional parameters for the activity.</pre>
|
148
160
|
|
149
161
|
<div class="method-source-code" id="log-source">
|
150
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
162
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 42</span>
|
151
163
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log</span>(<span class="ruby-identifier">action</span>, <span class="ruby-value">actor:</span> <span class="ruby-keyword">nil</span>, <span class="ruby-value">params:</span> {})
|
152
164
|
<span class="ruby-ivar">@action</span> = <span class="ruby-identifier">action</span>
|
153
165
|
<span class="ruby-ivar">@actor</span> = <span class="ruby-identifier">actor</span> <span class="ruby-operator">||</span> <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-value">:current_user</span>]
|
154
|
-
<span class="ruby-
|
155
|
-
|
156
|
-
<span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@actor</span>.<span class="ruby-identifier">nil?</span>
|
166
|
+
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@actor</span>.<span class="ruby-identifier">nil?</span>
|
157
167
|
|
158
168
|
<span class="ruby-ivar">@record</span> = <span class="ruby-keyword">self</span>
|
159
169
|
<span class="ruby-ivar">@params</span> = <span class="ruby-identifier">params</span>
|
@@ -196,9 +206,9 @@
|
|
196
206
|
<p>Returns the action key for the current action.</p>
|
197
207
|
|
198
208
|
<div class="method-source-code" id="action_key-source">
|
199
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
209
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 172</span>
|
200
210
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">action_key</span>
|
201
|
-
<span class="ruby-
|
211
|
+
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">base_action</span> <span class="ruby-operator">+</span> <span class="ruby-node">".#{@action}"</span>
|
202
212
|
<span class="ruby-keyword">end</span></pre>
|
203
213
|
</div>
|
204
214
|
</div>
|
@@ -206,10 +216,10 @@
|
|
206
216
|
|
207
217
|
</div>
|
208
218
|
|
209
|
-
<div id="method-i-
|
219
|
+
<div id="method-i-actor__name_field" class="method-detail ">
|
210
220
|
<div class="method-header">
|
211
221
|
<div class="method-heading">
|
212
|
-
<span class="method-name">
|
222
|
+
<span class="method-name">actor__name_field</span><span
|
213
223
|
class="method-args">()</span>
|
214
224
|
<span class="method-click-advice">click to toggle source</span>
|
215
225
|
</div>
|
@@ -218,9 +228,9 @@
|
|
218
228
|
<div class="method-description">
|
219
229
|
<p>Returns the display name of the actor.</p>
|
220
230
|
|
221
|
-
<div class="method-source-code" id="
|
222
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
223
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">
|
231
|
+
<div class="method-source-code" id="actor__name_field-source">
|
232
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 192</span>
|
233
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">actor__name_field</span>
|
224
234
|
<span class="ruby-constant">Rails</span>.<span class="ruby-identifier">application</span>.<span class="ruby-identifier">config</span>.<span class="ruby-identifier">loggable_activity</span>.<span class="ruby-identifier">actor_display_name</span> <span class="ruby-operator">||</span> <span class="ruby-node">"id: #{@actor.id}, class: #{@actor.class.name}"</span>
|
225
235
|
<span class="ruby-keyword">end</span></pre>
|
226
236
|
</div>
|
@@ -229,10 +239,10 @@
|
|
229
239
|
|
230
240
|
</div>
|
231
241
|
|
232
|
-
<div id="method-i-
|
242
|
+
<div id="method-i-actor_secret_key" class="method-detail ">
|
233
243
|
<div class="method-header">
|
234
244
|
<div class="method-heading">
|
235
|
-
<span class="method-name">
|
245
|
+
<span class="method-name">actor_secret_key</span><span
|
236
246
|
class="method-args">()</span>
|
237
247
|
<span class="method-click-advice">click to toggle source</span>
|
238
248
|
</div>
|
@@ -241,10 +251,10 @@
|
|
241
251
|
<div class="method-description">
|
242
252
|
<p>Returns the encryption key for the actor.</p>
|
243
253
|
|
244
|
-
<div class="method-source-code" id="
|
245
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
246
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">
|
247
|
-
<span class="ruby-
|
254
|
+
<div class="method-source-code" id="actor_secret_key-source">
|
255
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 187</span>
|
256
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">actor_secret_key</span>
|
257
|
+
<span class="ruby-identifier">encryption_key_for_record</span>(<span class="ruby-ivar">@actor</span>)&.<span class="ruby-identifier">secret_key</span>
|
248
258
|
<span class="ruby-keyword">end</span></pre>
|
249
259
|
</div>
|
250
260
|
</div>
|
@@ -265,7 +275,7 @@
|
|
265
275
|
<p>Convert the model name and name space in to ‘base_action’.</p>
|
266
276
|
|
267
277
|
<div class="method-source-code" id="base_action-source">
|
268
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
278
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 206</span>
|
269
279
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">base_action</span>
|
270
280
|
<span class="ruby-identifier">name</span>.<span class="ruby-identifier">downcase</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-string">'::'</span>, <span class="ruby-string">'/'</span>)
|
271
281
|
<span class="ruby-keyword">end</span></pre>
|
@@ -273,6 +283,78 @@
|
|
273
283
|
</div>
|
274
284
|
|
275
285
|
|
286
|
+
</div>
|
287
|
+
|
288
|
+
<div id="method-i-build_destroy_payload" class="method-detail ">
|
289
|
+
<div class="method-header">
|
290
|
+
<div class="method-heading">
|
291
|
+
<span class="method-name">build_destroy_payload</span><span
|
292
|
+
class="method-args">()</span>
|
293
|
+
<span class="method-click-advice">click to toggle source</span>
|
294
|
+
</div>
|
295
|
+
</div>
|
296
|
+
|
297
|
+
<div class="method-description">
|
298
|
+
<p>Builds destroy payloads for the current action.</p>
|
299
|
+
|
300
|
+
<div class="method-source-code" id="build_destroy_payload-source">
|
301
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 106</span>
|
302
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_destroy_payload</span>
|
303
|
+
<span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Services</span><span class="ruby-operator">::</span><span class="ruby-constant">DestroyPayloadsBuilder</span>
|
304
|
+
.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, <span class="ruby-ivar">@payloads</span>).<span class="ruby-identifier">build</span>
|
305
|
+
<span class="ruby-keyword">end</span></pre>
|
306
|
+
</div>
|
307
|
+
</div>
|
308
|
+
|
309
|
+
|
310
|
+
</div>
|
311
|
+
|
312
|
+
<div id="method-i-build_payloads" class="method-detail ">
|
313
|
+
<div class="method-header">
|
314
|
+
<div class="method-heading">
|
315
|
+
<span class="method-name">build_payloads</span><span
|
316
|
+
class="method-args">()</span>
|
317
|
+
<span class="method-click-advice">click to toggle source</span>
|
318
|
+
</div>
|
319
|
+
</div>
|
320
|
+
|
321
|
+
<div class="method-description">
|
322
|
+
<p>Builds payloads for the current action.</p>
|
323
|
+
|
324
|
+
<div class="method-source-code" id="build_payloads-source">
|
325
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 100</span>
|
326
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_payloads</span>
|
327
|
+
<span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Services</span><span class="ruby-operator">::</span><span class="ruby-constant">PayloadsBuilder</span>
|
328
|
+
.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, <span class="ruby-ivar">@payloads</span>).<span class="ruby-identifier">build</span>
|
329
|
+
<span class="ruby-keyword">end</span></pre>
|
330
|
+
</div>
|
331
|
+
</div>
|
332
|
+
|
333
|
+
|
334
|
+
</div>
|
335
|
+
|
336
|
+
<div id="method-i-build_update_payloads" class="method-detail ">
|
337
|
+
<div class="method-header">
|
338
|
+
<div class="method-heading">
|
339
|
+
<span class="method-name">build_update_payloads</span><span
|
340
|
+
class="method-args">()</span>
|
341
|
+
<span class="method-click-advice">click to toggle source</span>
|
342
|
+
</div>
|
343
|
+
</div>
|
344
|
+
|
345
|
+
<div class="method-description">
|
346
|
+
<p>Builds update payloads for the current action.</p>
|
347
|
+
|
348
|
+
<div class="method-source-code" id="build_update_payloads-source">
|
349
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 94</span>
|
350
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_update_payloads</span>
|
351
|
+
<span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Services</span><span class="ruby-operator">::</span><span class="ruby-constant">UpdatePayloadsBuilder</span>
|
352
|
+
.<span class="ruby-identifier">new</span>(<span class="ruby-keyword">self</span>, <span class="ruby-ivar">@payloads</span>).<span class="ruby-identifier">build</span>
|
353
|
+
<span class="ruby-keyword">end</span></pre>
|
354
|
+
</div>
|
355
|
+
</div>
|
356
|
+
|
357
|
+
|
276
358
|
</div>
|
277
359
|
|
278
360
|
<div id="method-i-create_activity" class="method-detail ">
|
@@ -288,16 +370,15 @@
|
|
288
370
|
<p>Creates an activity with the specified payloads.</p>
|
289
371
|
|
290
372
|
<div class="method-source-code" id="create_activity-source">
|
291
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
373
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 81</span>
|
292
374
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">create_activity</span>(<span class="ruby-identifier">payloads</span>)
|
293
|
-
<span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">nothing_to_log?</span>(<span class="ruby-identifier">payloads</span>)
|
375
|
+
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">nothing_to_log?</span>(<span class="ruby-identifier">payloads</span>)
|
294
376
|
|
295
|
-
<span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Activity</span>.<span class="ruby-identifier">create!</span>(
|
296
|
-
<span class="ruby-value">
|
297
|
-
<span class="ruby-value">encrypted_record_display_name:</span> <span class="ruby-identifier">encrypted_record_name</span>,
|
377
|
+
<span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Activity</span>.<span class="ruby-identifier">create!</span>(
|
378
|
+
<span class="ruby-value">encrypted_actor_name:</span>,
|
298
379
|
<span class="ruby-value">action:</span> <span class="ruby-identifier">action_key</span>,
|
299
380
|
<span class="ruby-value">actor:</span> <span class="ruby-ivar">@actor</span>,
|
300
|
-
<span class="ruby-value">record:</span> <span class="ruby-
|
381
|
+
<span class="ruby-value">record:</span> <span class="ruby-keyword">self</span>,
|
301
382
|
<span class="ruby-value">payloads:</span>
|
302
383
|
)
|
303
384
|
<span class="ruby-keyword">end</span></pre>
|
@@ -320,7 +401,7 @@
|
|
320
401
|
<p>Returns the model name of the current user.</p>
|
321
402
|
|
322
403
|
<div class="method-source-code" id="current_user_model-3F-source">
|
323
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
404
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 197</span>
|
324
405
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">current_user_model?</span>
|
325
406
|
<span class="ruby-constant">Rails</span>.<span class="ruby-identifier">application</span>.<span class="ruby-identifier">config</span>.<span class="ruby-identifier">loggable_activity</span>.<span class="ruby-identifier">current_user_model_name</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">name</span>
|
326
407
|
<span class="ruby-keyword">end</span></pre>
|
@@ -343,10 +424,56 @@
|
|
343
424
|
<p>Returns the encrypted name of the actor.</p>
|
344
425
|
|
345
426
|
<div class="method-source-code" id="encrypted_actor_name-source">
|
346
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
427
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 161</span>
|
347
428
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encrypted_actor_name</span>
|
348
|
-
<span class="ruby-identifier">
|
349
|
-
<span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">encrypt</span>(<span class="ruby-identifier">
|
429
|
+
<span class="ruby-identifier">name</span> = <span class="ruby-ivar">@actor</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">fetch_current_user_name_from</span>)
|
430
|
+
<span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">encrypt</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">actor_secret_key</span>)
|
431
|
+
<span class="ruby-keyword">end</span></pre>
|
432
|
+
</div>
|
433
|
+
</div>
|
434
|
+
|
435
|
+
|
436
|
+
</div>
|
437
|
+
|
438
|
+
<div id="method-i-encryption_key_for_record" class="method-detail ">
|
439
|
+
<div class="method-header">
|
440
|
+
<div class="method-heading">
|
441
|
+
<span class="method-name">encryption_key_for_record</span><span
|
442
|
+
class="method-args">(record = @record)</span>
|
443
|
+
<span class="method-click-advice">click to toggle source</span>
|
444
|
+
</div>
|
445
|
+
</div>
|
446
|
+
|
447
|
+
<div class="method-description">
|
448
|
+
<p>Returns the encryption key for the record.</p>
|
449
|
+
|
450
|
+
<div class="method-source-code" id="encryption_key_for_record-source">
|
451
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 182</span>
|
452
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encryption_key_for_record</span>(<span class="ruby-identifier">record</span> = <span class="ruby-ivar">@record</span>)
|
453
|
+
<span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-identifier">record</span>)
|
454
|
+
<span class="ruby-keyword">end</span></pre>
|
455
|
+
</div>
|
456
|
+
</div>
|
457
|
+
|
458
|
+
|
459
|
+
</div>
|
460
|
+
|
461
|
+
<div id="method-i-fetch_current_user_name_from" class="method-detail ">
|
462
|
+
<div class="method-header">
|
463
|
+
<div class="method-heading">
|
464
|
+
<span class="method-name">fetch_current_user_name_from</span><span
|
465
|
+
class="method-args">()</span>
|
466
|
+
<span class="method-click-advice">click to toggle source</span>
|
467
|
+
</div>
|
468
|
+
</div>
|
469
|
+
|
470
|
+
<div class="method-description">
|
471
|
+
<p>Reads the field to feetch the record name from.</p>
|
472
|
+
|
473
|
+
<div class="method-source-code" id="fetch_current_user_name_from-source">
|
474
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 167</span>
|
475
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">fetch_current_user_name_from</span>
|
476
|
+
<span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Configuration</span>.<span class="ruby-identifier">fetch_current_user_name_from</span>
|
350
477
|
<span class="ruby-keyword">end</span></pre>
|
351
478
|
</div>
|
352
479
|
</div>
|
@@ -354,28 +481,24 @@
|
|
354
481
|
|
355
482
|
</div>
|
356
483
|
|
357
|
-
<div id="method-i-
|
484
|
+
<div id="method-i-hooks_enabled-3F" class="method-detail ">
|
358
485
|
<div class="method-header">
|
359
486
|
<div class="method-heading">
|
360
|
-
<span class="method-name">
|
487
|
+
<span class="method-name">hooks_enabled?</span><span
|
361
488
|
class="method-args">()</span>
|
362
489
|
<span class="method-click-advice">click to toggle source</span>
|
363
490
|
</div>
|
364
491
|
</div>
|
365
492
|
|
366
493
|
<div class="method-description">
|
367
|
-
<p>
|
368
|
-
|
369
|
-
<div class="method-source-code" id="
|
370
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
371
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">
|
372
|
-
<span class="ruby-identifier">
|
373
|
-
|
374
|
-
|
375
|
-
<span class="ruby-keyword">else</span>
|
376
|
-
<span class="ruby-identifier">send</span>(<span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">record_display_name</span>.<span class="ruby-identifier">to_sym</span>)
|
377
|
-
<span class="ruby-keyword">end</span>
|
378
|
-
<span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">encrypt</span>(<span class="ruby-identifier">display_name</span>, <span class="ruby-identifier">primary_encryption_key</span>)
|
494
|
+
<p><a href="Hooks.html"><code>Hooks</code></a> can disabled when a model is created or updated by a parrent model.</p>
|
495
|
+
|
496
|
+
<div class="method-source-code" id="hooks_enabled-3F-source">
|
497
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 128</span>
|
498
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">hooks_enabled?</span>
|
499
|
+
<span class="ruby-identifier">enabled</span> = <span class="ruby-identifier">disable_hooks</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">disable_hooks</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
|
500
|
+
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">disable_hooks</span> = <span class="ruby-keyword">false</span>
|
501
|
+
<span class="ruby-identifier">enabled</span>
|
379
502
|
<span class="ruby-keyword">end</span></pre>
|
380
503
|
</div>
|
381
504
|
</div>
|
@@ -396,7 +519,7 @@
|
|
396
519
|
<p>Logs an activity for the current action.</p>
|
397
520
|
|
398
521
|
<div class="method-source-code" id="log_activity-source">
|
399
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
522
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 66</span>
|
400
523
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_activity</span>
|
401
524
|
<span class="ruby-identifier">create_activity</span>(<span class="ruby-identifier">build_payloads</span>)
|
402
525
|
<span class="ruby-keyword">end</span></pre>
|
@@ -419,8 +542,10 @@
|
|
419
542
|
<p>Logs a create activity automatically if configured.</p>
|
420
543
|
|
421
544
|
<div class="method-source-code" id="log_create_activity-source">
|
422
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
545
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 135</span>
|
423
546
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_create_activity</span>
|
547
|
+
<span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">hooks_enabled?</span>
|
548
|
+
|
424
549
|
<span class="ruby-identifier">log</span>(<span class="ruby-value">:create</span>) <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">auto_log</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'create'</span>)
|
425
550
|
<span class="ruby-keyword">end</span></pre>
|
426
551
|
</div>
|
@@ -442,7 +567,7 @@
|
|
442
567
|
<p>Logs a custom activity.</p>
|
443
568
|
|
444
569
|
<div class="method-source-code" id="log_custom_activity-source">
|
445
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
570
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 117</span>
|
446
571
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_custom_activity</span>(<span class="ruby-identifier">activity</span>); <span class="ruby-keyword">end</span></pre>
|
447
572
|
</div>
|
448
573
|
</div>
|
@@ -463,7 +588,7 @@
|
|
463
588
|
<p>Logs an activity for the destroy action.</p>
|
464
589
|
|
465
590
|
<div class="method-source-code" id="log_destroy-source">
|
466
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
591
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 76</span>
|
467
592
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_destroy</span>
|
468
593
|
<span class="ruby-identifier">create_activity</span>(<span class="ruby-identifier">build_destroy_payload</span>)
|
469
594
|
<span class="ruby-keyword">end</span></pre>
|
@@ -486,9 +611,11 @@
|
|
486
611
|
<p>Logs a destroy activity automatically if configured.</p>
|
487
612
|
|
488
613
|
<div class="method-source-code" id="log_destroy_activity-source">
|
489
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
614
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 142</span>
|
490
615
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_destroy_activity</span>
|
491
|
-
<span class="ruby-
|
616
|
+
<span class="ruby-identifier">mark_encryption_keys_as_deleted</span>
|
617
|
+
<span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">hooks_enabled?</span>
|
618
|
+
|
492
619
|
<span class="ruby-identifier">log</span>(<span class="ruby-value">:destroy</span>) <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">auto_log</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'destroy'</span>)
|
493
620
|
<span class="ruby-keyword">end</span></pre>
|
494
621
|
</div>
|
@@ -510,7 +637,7 @@
|
|
510
637
|
<p>Logs an activity for the update action.</p>
|
511
638
|
|
512
639
|
<div class="method-source-code" id="log_update-source">
|
513
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
640
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 71</span>
|
514
641
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_update</span>
|
515
642
|
<span class="ruby-identifier">create_activity</span>(<span class="ruby-identifier">build_update_payloads</span>)
|
516
643
|
<span class="ruby-keyword">end</span></pre>
|
@@ -533,8 +660,10 @@
|
|
533
660
|
<p>Logs an update activity automatically if configured.</p>
|
534
661
|
|
535
662
|
<div class="method-source-code" id="log_update_activity-source">
|
536
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
663
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 120</span>
|
537
664
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_update_activity</span>
|
665
|
+
<span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">hooks_enabled?</span>
|
666
|
+
|
538
667
|
<span class="ruby-identifier">log</span>(<span class="ruby-value">:update</span>) <span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">auto_log</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-string">'update'</span>)
|
539
668
|
<span class="ruby-keyword">end</span></pre>
|
540
669
|
</div>
|
@@ -543,22 +672,26 @@
|
|
543
672
|
|
544
673
|
</div>
|
545
674
|
|
546
|
-
<div id="method-i-
|
675
|
+
<div id="method-i-mark_encryption_keys_as_deleted" class="method-detail ">
|
547
676
|
<div class="method-header">
|
548
677
|
<div class="method-heading">
|
549
|
-
<span class="method-name">
|
550
|
-
class="method-args">(
|
678
|
+
<span class="method-name">mark_encryption_keys_as_deleted</span><span
|
679
|
+
class="method-args">()</span>
|
551
680
|
<span class="method-click-advice">click to toggle source</span>
|
552
681
|
</div>
|
553
682
|
</div>
|
554
683
|
|
555
684
|
<div class="method-description">
|
556
|
-
<p>
|
557
|
-
|
558
|
-
<div class="method-source-code" id="
|
559
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
560
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">
|
561
|
-
<span class="ruby-
|
685
|
+
<p>Fullfill the needs of the data owners. Mostly this will be performend a few one, from 1 to 5. Enumeration for different payload relation types</p>
|
686
|
+
|
687
|
+
<div class="method-source-code" id="mark_encryption_keys_as_deleted-source">
|
688
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 152</span>
|
689
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">mark_encryption_keys_as_deleted</span>
|
690
|
+
<span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-keyword">self</span>)&.<span class="ruby-identifier">mark_as_deleted!</span>
|
691
|
+
<span class="ruby-comment"># data_owners = ::LoggableActivity::DataOwner.where(record: self)</span>
|
692
|
+
<span class="ruby-operator">::</span><span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">DataOwner</span>
|
693
|
+
.<span class="ruby-identifier">where</span>(<span class="ruby-value">record:</span> <span class="ruby-keyword">self</span>)
|
694
|
+
.<span class="ruby-identifier">each</span>(<span class="ruby-operator">&</span><span class="ruby-value">:mark_as_deleted!</span>)
|
562
695
|
<span class="ruby-keyword">end</span></pre>
|
563
696
|
</div>
|
564
697
|
</div>
|
@@ -566,23 +699,22 @@
|
|
566
699
|
|
567
700
|
</div>
|
568
701
|
|
569
|
-
<div id="method-i-
|
702
|
+
<div id="method-i-nothing_to_log-3F" class="method-detail ">
|
570
703
|
<div class="method-header">
|
571
704
|
<div class="method-heading">
|
572
|
-
<span class="method-name">
|
573
|
-
class="method-args">()</span>
|
705
|
+
<span class="method-name">nothing_to_log?</span><span
|
706
|
+
class="method-args">(_payloads)</span>
|
574
707
|
<span class="method-click-advice">click to toggle source</span>
|
575
708
|
</div>
|
576
709
|
</div>
|
577
710
|
|
578
711
|
<div class="method-description">
|
579
|
-
<p>Returns
|
712
|
+
<p>Returns true if there are no payloads to log.</p>
|
580
713
|
|
581
|
-
<div class="method-source-code" id="
|
582
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
583
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">
|
584
|
-
<span class="ruby-ivar">@
|
585
|
-
<span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">EncryptionKey</span>.<span class="ruby-identifier">for_record</span>(<span class="ruby-keyword">self</span>)&.<span class="ruby-identifier">key</span>
|
714
|
+
<div class="method-source-code" id="nothing_to_log-3F-source">
|
715
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 112</span>
|
716
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">nothing_to_log?</span>(<span class="ruby-identifier">_payloads</span>)
|
717
|
+
<span class="ruby-ivar">@payloads</span>.<span class="ruby-identifier">empty?</span>
|
586
718
|
<span class="ruby-keyword">end</span></pre>
|
587
719
|
</div>
|
588
720
|
</div>
|
@@ -590,22 +722,22 @@
|
|
590
722
|
|
591
723
|
</div>
|
592
724
|
|
593
|
-
<div id="method-i-
|
725
|
+
<div id="method-i-primary_encryption_key" class="method-detail ">
|
594
726
|
<div class="method-header">
|
595
727
|
<div class="method-heading">
|
596
|
-
<span class="method-name">
|
728
|
+
<span class="method-name">primary_encryption_key</span><span
|
597
729
|
class="method-args">()</span>
|
598
730
|
<span class="method-click-advice">click to toggle source</span>
|
599
731
|
</div>
|
600
732
|
</div>
|
601
733
|
|
602
734
|
<div class="method-description">
|
603
|
-
<p>Returns
|
735
|
+
<p>Returns the primary encryption key for the activity</p>
|
604
736
|
|
605
|
-
<div class="method-source-code" id="
|
606
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
607
|
-
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">
|
608
|
-
<span class="ruby-identifier">
|
737
|
+
<div class="method-source-code" id="primary_encryption_key-source">
|
738
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 177</span>
|
739
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">primary_encryption_key</span>
|
740
|
+
<span class="ruby-identifier">encryption_key_for_record</span>
|
609
741
|
<span class="ruby-keyword">end</span></pre>
|
610
742
|
</div>
|
611
743
|
</div>
|