loggable_activity 0.1.54 → 0.1.55
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/GETTING-STARTED.md +2 -2
- data/docs/LoggableActivity/Activity.html +108 -139
- data/docs/LoggableActivity/Configuration.html +3 -3
- data/docs/LoggableActivity/Encryption.html +7 -4
- data/docs/LoggableActivity/EncryptionKey.html +4 -2
- data/docs/LoggableActivity/Hooks.html +37 -37
- data/docs/LoggableActivity/Payload.html +32 -6
- data/docs/LoggableActivity/PayloadsBuilder.html +14 -11
- data/docs/LoggableActivity/UpdatePayloadsBuilder.html +27 -26
- data/docs/LoggableActivity.html +3 -1
- data/docs/created.rid +10 -10
- data/docs/js/search_index.js +1 -1
- data/docs/js/search_index.js.gz +0 -0
- data/docs/table_of_contents.html +14 -4
- data/lib/generators/loggable_activity/.DS_Store +0 -0
- data/lib/generators/loggable_activity/templates/create_loggable_activities.rb +1 -0
- data/lib/generators/loggable_activity/templates/helpers/loggable_activity_helper.rb +2 -2
- data/lib/generators/loggable_activity/templates/loggable_activity_helper.rb +14 -5
- data/lib/loggable_activity/activity.rb +56 -107
- data/lib/loggable_activity/configuration.rb +1 -0
- data/lib/loggable_activity/encryption.rb +6 -2
- data/lib/loggable_activity/encryption_key.rb +2 -0
- data/lib/loggable_activity/hooks.rb +20 -1
- data/lib/loggable_activity/payload.rb +7 -0
- data/lib/loggable_activity/payloads_builder.rb +6 -3
- data/lib/loggable_activity/update_payloads_builder.rb +17 -7
- data/lib/loggable_activity/version.rb +3 -1
- data/lib/loggable_activity.rb +0 -1
- metadata +2 -2
@@ -147,7 +147,7 @@
|
|
147
147
|
@param params [Hash] Additional parameters for the activity.</pre>
|
148
148
|
|
149
149
|
<div class="method-source-code" id="log-source">
|
150
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
150
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 41</span>
|
151
151
|
<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
152
|
<span class="ruby-ivar">@action</span> = <span class="ruby-identifier">action</span>
|
153
153
|
<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>]
|
@@ -193,10 +193,10 @@
|
|
193
193
|
</div>
|
194
194
|
|
195
195
|
<div class="method-description">
|
196
|
-
|
196
|
+
<p>Returns the action key for the current action.</p>
|
197
197
|
|
198
198
|
<div class="method-source-code" id="action_key-source">
|
199
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
199
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 137</span>
|
200
200
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">action_key</span>
|
201
201
|
<span class="ruby-ivar">@action_key</span> <span class="ruby-operator">||=</span> <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
202
|
<span class="ruby-keyword">end</span></pre>
|
@@ -216,10 +216,10 @@
|
|
216
216
|
</div>
|
217
217
|
|
218
218
|
<div class="method-description">
|
219
|
-
|
219
|
+
<p>Returns the display name of the actor.</p>
|
220
220
|
|
221
221
|
<div class="method-source-code" id="actor_display_name_field-source">
|
222
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
222
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 158</span>
|
223
223
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">actor_display_name_field</span>
|
224
224
|
<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
225
|
<span class="ruby-keyword">end</span></pre>
|
@@ -239,10 +239,10 @@
|
|
239
239
|
</div>
|
240
240
|
|
241
241
|
<div class="method-description">
|
242
|
-
|
242
|
+
<p>Returns the encryption key for the actor.</p>
|
243
243
|
|
244
244
|
<div class="method-source-code" id="actor_encryption_key-source">
|
245
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
245
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 153</span>
|
246
246
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">actor_encryption_key</span>
|
247
247
|
<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-ivar">@actor</span>)&.<span class="ruby-identifier">key</span>
|
248
248
|
<span class="ruby-keyword">end</span></pre>
|
@@ -262,10 +262,10 @@
|
|
262
262
|
</div>
|
263
263
|
|
264
264
|
<div class="method-description">
|
265
|
-
|
265
|
+
<p>Convert the model name and name space in to ‘base_action’.</p>
|
266
266
|
|
267
267
|
<div class="method-source-code" id="base_action-source">
|
268
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
268
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 171</span>
|
269
269
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">base_action</span>
|
270
270
|
<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
271
|
<span class="ruby-keyword">end</span></pre>
|
@@ -285,10 +285,10 @@
|
|
285
285
|
</div>
|
286
286
|
|
287
287
|
<div class="method-description">
|
288
|
-
|
288
|
+
<p>Creates an activity with the specified payloads.</p>
|
289
289
|
|
290
290
|
<div class="method-source-code" id="create_activity-source">
|
291
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
291
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 82</span>
|
292
292
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">create_activity</span>(<span class="ruby-identifier">payloads</span>)
|
293
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>)
|
294
294
|
|
@@ -317,10 +317,10 @@
|
|
317
317
|
</div>
|
318
318
|
|
319
319
|
<div class="method-description">
|
320
|
-
|
320
|
+
<p>Returns the model name of the current user.</p>
|
321
321
|
|
322
322
|
<div class="method-source-code" id="current_user_model-3F-source">
|
323
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
323
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 163</span>
|
324
324
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">current_user_model?</span>
|
325
325
|
<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
326
|
<span class="ruby-keyword">end</span></pre>
|
@@ -340,10 +340,10 @@
|
|
340
340
|
</div>
|
341
341
|
|
342
342
|
<div class="method-description">
|
343
|
-
|
343
|
+
<p>Returns the encrypted name of the actor.</p>
|
344
344
|
|
345
345
|
<div class="method-source-code" id="encrypted_actor_name-source">
|
346
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
346
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 120</span>
|
347
347
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encrypted_actor_name</span>
|
348
348
|
<span class="ruby-identifier">actor_display_name</span> = <span class="ruby-ivar">@actor</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">actor_display_name_field</span>)
|
349
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">actor_display_name</span>, <span class="ruby-identifier">actor_encryption_key</span>)
|
@@ -364,10 +364,10 @@
|
|
364
364
|
</div>
|
365
365
|
|
366
366
|
<div class="method-description">
|
367
|
-
|
367
|
+
<p>Returns the encrypted name of the record.</p>
|
368
368
|
|
369
369
|
<div class="method-source-code" id="encrypted_record_name-source">
|
370
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
370
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 126</span>
|
371
371
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encrypted_record_name</span>
|
372
372
|
<span class="ruby-identifier">display_name</span> =
|
373
373
|
<span class="ruby-keyword">if</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">nil?</span>
|
@@ -393,10 +393,10 @@
|
|
393
393
|
</div>
|
394
394
|
|
395
395
|
<div class="method-description">
|
396
|
-
|
396
|
+
<p>Logs an activity for the current action.</p>
|
397
397
|
|
398
398
|
<div class="method-source-code" id="log_activity-source">
|
399
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
399
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 67</span>
|
400
400
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_activity</span>
|
401
401
|
<span class="ruby-identifier">create_activity</span>(<span class="ruby-identifier">build_payloads</span>)
|
402
402
|
<span class="ruby-keyword">end</span></pre>
|
@@ -416,10 +416,10 @@
|
|
416
416
|
</div>
|
417
417
|
|
418
418
|
<div class="method-description">
|
419
|
-
|
419
|
+
<p>Logs a create activity automatically if configured.</p>
|
420
420
|
|
421
421
|
<div class="method-source-code" id="log_create_activity-source">
|
422
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
422
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 109</span>
|
423
423
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_create_activity</span>
|
424
424
|
<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
425
|
<span class="ruby-keyword">end</span></pre>
|
@@ -439,10 +439,10 @@
|
|
439
439
|
</div>
|
440
440
|
|
441
441
|
<div class="method-description">
|
442
|
-
|
442
|
+
<p>Logs a custom activity.</p>
|
443
443
|
|
444
444
|
<div class="method-source-code" id="log_custom_activity-source">
|
445
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
445
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 101</span>
|
446
446
|
<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
447
|
</div>
|
448
448
|
</div>
|
@@ -460,10 +460,10 @@
|
|
460
460
|
</div>
|
461
461
|
|
462
462
|
<div class="method-description">
|
463
|
-
|
463
|
+
<p>Logs an activity for the destroy action.</p>
|
464
464
|
|
465
465
|
<div class="method-source-code" id="log_destroy-source">
|
466
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
466
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 77</span>
|
467
467
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_destroy</span>
|
468
468
|
<span class="ruby-identifier">create_activity</span>(<span class="ruby-identifier">build_destroy_payload</span>)
|
469
469
|
<span class="ruby-keyword">end</span></pre>
|
@@ -483,10 +483,10 @@
|
|
483
483
|
</div>
|
484
484
|
|
485
485
|
<div class="method-description">
|
486
|
-
|
486
|
+
<p>Logs a destroy activity automatically if configured.</p>
|
487
487
|
|
488
488
|
<div class="method-source-code" id="log_destroy_activity-source">
|
489
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
489
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 114</span>
|
490
490
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_destroy_activity</span>
|
491
491
|
<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>
|
492
492
|
<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>)
|
@@ -507,10 +507,10 @@
|
|
507
507
|
</div>
|
508
508
|
|
509
509
|
<div class="method-description">
|
510
|
-
|
510
|
+
<p>Logs an activity for the update action.</p>
|
511
511
|
|
512
512
|
<div class="method-source-code" id="log_update-source">
|
513
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
513
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 72</span>
|
514
514
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_update</span>
|
515
515
|
<span class="ruby-identifier">create_activity</span>(<span class="ruby-identifier">build_update_payloads</span>)
|
516
516
|
<span class="ruby-keyword">end</span></pre>
|
@@ -530,10 +530,10 @@
|
|
530
530
|
</div>
|
531
531
|
|
532
532
|
<div class="method-description">
|
533
|
-
|
533
|
+
<p>Logs an update activity automatically if configured.</p>
|
534
534
|
|
535
535
|
<div class="method-source-code" id="log_update_activity-source">
|
536
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
536
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 104</span>
|
537
537
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">log_update_activity</span>
|
538
538
|
<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
539
|
<span class="ruby-keyword">end</span></pre>
|
@@ -553,10 +553,10 @@
|
|
553
553
|
</div>
|
554
554
|
|
555
555
|
<div class="method-description">
|
556
|
-
|
556
|
+
<p>Returns true if there are no payloads to log.</p>
|
557
557
|
|
558
558
|
<div class="method-source-code" id="nothing_to_log-3F-source">
|
559
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
559
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 96</span>
|
560
560
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">nothing_to_log?</span>(<span class="ruby-identifier">payloads</span>)
|
561
561
|
<span class="ruby-identifier">payloads</span>.<span class="ruby-identifier">empty?</span>
|
562
562
|
<span class="ruby-keyword">end</span></pre>
|
@@ -576,10 +576,10 @@
|
|
576
576
|
</div>
|
577
577
|
|
578
578
|
<div class="method-description">
|
579
|
-
|
579
|
+
<p>Returns the primary encryption key for the activity</p>
|
580
580
|
|
581
581
|
<div class="method-source-code" id="primary_encryption_key-source">
|
582
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
582
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 142</span>
|
583
583
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">primary_encryption_key</span>
|
584
584
|
<span class="ruby-ivar">@primary_encryption_key</span> <span class="ruby-operator">||=</span>
|
585
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>
|
@@ -600,10 +600,10 @@
|
|
600
600
|
</div>
|
601
601
|
|
602
602
|
<div class="method-description">
|
603
|
-
|
603
|
+
<p>Returns true if the primary encryption key is deleted.</p>
|
604
604
|
|
605
605
|
<div class="method-source-code" id="primary_encryption_key_deleted-3F-source">
|
606
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line
|
606
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/hooks.rb, line 148</span>
|
607
607
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">primary_encryption_key_deleted?</span>
|
608
608
|
<span class="ruby-identifier">primary_encryption_key</span>.<span class="ruby-identifier">nil?</span>
|
609
609
|
<span class="ruby-keyword">end</span></pre>
|
@@ -79,6 +79,7 @@
|
|
79
79
|
<li ><a href="#method-i-decrypted_update_attrs">#decrypted_update_attrs</a>
|
80
80
|
<li ><a href="#method-i-deleted_attrs">#deleted_attrs</a>
|
81
81
|
<li ><a href="#method-i-payload_encryption_key">#payload_encryption_key</a>
|
82
|
+
<li ><a href="#method-i-payload_route">#payload_route</a>
|
82
83
|
</ul>
|
83
84
|
</div>
|
84
85
|
|
@@ -151,6 +152,31 @@ Returns:
|
|
151
152
|
|
152
153
|
</div>
|
153
154
|
|
155
|
+
<div id="method-i-payload_route" class="method-detail ">
|
156
|
+
<div class="method-header">
|
157
|
+
<div class="method-heading">
|
158
|
+
<span class="method-name">payload_route</span><span
|
159
|
+
class="method-args">()</span>
|
160
|
+
<span class="method-click-advice">click to toggle source</span>
|
161
|
+
</div>
|
162
|
+
</div>
|
163
|
+
|
164
|
+
<div class="method-description">
|
165
|
+
<p>Returns the route for the payload.</p>
|
166
|
+
|
167
|
+
<div class="method-source-code" id="payload_route-source">
|
168
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 54</span>
|
169
|
+
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">payload_route</span>
|
170
|
+
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">payload_encryption_key</span>.<span class="ruby-identifier">nil?</span>
|
171
|
+
|
172
|
+
<span class="ruby-identifier">route</span>
|
173
|
+
<span class="ruby-keyword">end</span></pre>
|
174
|
+
</div>
|
175
|
+
</div>
|
176
|
+
|
177
|
+
|
178
|
+
</div>
|
179
|
+
|
154
180
|
</section>
|
155
181
|
|
156
182
|
<section id="private-instance-5Buntitled-5D-method-details" class="method-section">
|
@@ -173,7 +199,7 @@ Returns:
|
|
173
199
|
<p>@param value [String] The encrypted value to decrypt. @return [String] The decrypted value.</p>
|
174
200
|
|
175
201
|
<div class="method-source-code" id="decrypt_attr-source">
|
176
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line
|
202
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 110</span>
|
177
203
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypt_attr</span>(<span class="ruby-identifier">value</span>)
|
178
204
|
<span class="ruby-constant">LoggableActivity</span><span class="ruby-operator">::</span><span class="ruby-constant">Encryption</span>.<span class="ruby-identifier">decrypt</span>(<span class="ruby-identifier">value</span>, <span class="ruby-identifier">payload_encryption_key</span>)
|
179
205
|
<span class="ruby-keyword">end</span></pre>
|
@@ -198,7 +224,7 @@ Returns:
|
|
198
224
|
<p>@return [Hash] The decrypted attributes.</p>
|
199
225
|
|
200
226
|
<div class="method-source-code" id="decrypted_attrs-source">
|
201
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line
|
227
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 100</span>
|
202
228
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypted_attrs</span>
|
203
229
|
<span class="ruby-identifier">encrypted_attrs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
204
230
|
<span class="ruby-identifier">encrypted_attrs</span>[<span class="ruby-identifier">key</span>] = <span class="ruby-identifier">decrypt_attr</span>(<span class="ruby-identifier">value</span>)
|
@@ -225,7 +251,7 @@ Returns:
|
|
225
251
|
<p>@param change [Hash] The change hash containing ‘from’ and ‘to’ values. @return [Hash] The decrypted ‘from’ and ‘to’ values.</p>
|
226
252
|
|
227
253
|
<div class="method-source-code" id="decrypted_from_to_attr-source">
|
228
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line
|
254
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 89</span>
|
229
255
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypted_from_to_attr</span>(<span class="ruby-identifier">change</span>)
|
230
256
|
<span class="ruby-identifier">change</span>.<span class="ruby-identifier">to_h</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
231
257
|
<span class="ruby-identifier">from</span> = <span class="ruby-identifier">decrypt_attr</span>(<span class="ruby-identifier">value</span>[<span class="ruby-string">'from'</span>])
|
@@ -254,7 +280,7 @@ Returns:
|
|
254
280
|
<p>@return [Array<Hash>] The array of decrypted changes.</p>
|
255
281
|
|
256
282
|
<div class="method-source-code" id="decrypted_update_attrs-source">
|
257
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line
|
283
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 79</span>
|
258
284
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">decrypted_update_attrs</span>
|
259
285
|
<span class="ruby-identifier">encrypted_attrs</span>[<span class="ruby-string">'changes'</span>].<span class="ruby-identifier">map</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">change</span><span class="ruby-operator">|</span>
|
260
286
|
<span class="ruby-identifier">decrypted_from_to_attr</span>(<span class="ruby-identifier">change</span>)
|
@@ -281,7 +307,7 @@ Returns:
|
|
281
307
|
<p>@return [Hash] The hash with deleted attributes.</p>
|
282
308
|
|
283
309
|
<div class="method-source-code" id="deleted_attrs-source">
|
284
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line
|
310
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 72</span>
|
285
311
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">deleted_attrs</span>
|
286
312
|
<span class="ruby-identifier">encrypted_attrs</span>.<span class="ruby-identifier">transform_values!</span> { <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">t</span>(<span class="ruby-string">'loggable.activity.deleted'</span>) }
|
287
313
|
<span class="ruby-keyword">end</span></pre>
|
@@ -306,7 +332,7 @@ Returns:
|
|
306
332
|
<p>@return [String, nil] The encryption key.</p>
|
307
333
|
|
308
334
|
<div class="method-source-code" id="payload_encryption_key-source">
|
309
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line
|
335
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payload.rb, line 65</span>
|
310
336
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">payload_encryption_key</span>
|
311
337
|
<span class="ruby-ivar">@payload_encryption_key</span> <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>)&.<span class="ruby-identifier">key</span>
|
312
338
|
<span class="ruby-keyword">end</span></pre>
|
@@ -171,7 +171,7 @@ Returns:
|
|
171
171
|
<p>@param associated_record [ActiveRecord::Base] The associated record. @param data_owner [Boolean] Whether the associated record is the owner of the data. @return [LoggableActivity::EncryptionKey] The encryption key for the associated record.</p>
|
172
172
|
|
173
173
|
<div class="method-source-code" id="associated_record_encryption_key-source">
|
174
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line
|
174
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 123</span>
|
175
175
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">associated_record_encryption_key</span>(<span class="ruby-identifier">associated_record</span>, <span class="ruby-identifier">data_owner</span>)
|
176
176
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">data_owner</span>
|
177
177
|
<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">associated_record</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>))
|
@@ -198,7 +198,7 @@ Returns:
|
|
198
198
|
<p>Builds the payload for an associated record.</p>
|
199
199
|
|
200
200
|
<div class="method-source-code" id="build_associated_payload-source">
|
201
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line
|
201
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 99</span>
|
202
202
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_associated_payload</span>(<span class="ruby-identifier">associated_record</span>, <span class="ruby-identifier">relation_config</span>)
|
203
203
|
<span class="ruby-identifier">associated_loggable_attrs</span> = <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">'loggable_attrs'</span>]
|
204
204
|
<span class="ruby-identifier">encryption_key</span> = <span class="ruby-identifier">associated_record_encryption_key</span>(<span class="ruby-identifier">associated_record</span>, <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">'data_owner'</span>])
|
@@ -213,7 +213,8 @@ Returns:
|
|
213
213
|
<span class="ruby-value">record:</span> <span class="ruby-identifier">associated_record</span>,
|
214
214
|
<span class="ruby-value">encrypted_attrs:</span>,
|
215
215
|
<span class="ruby-value">payload_type:</span> <span class="ruby-string">'current_association'</span>,
|
216
|
-
<span class="ruby-value">data_owner:</span> <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">'data_owner'</span>]
|
216
|
+
<span class="ruby-value">data_owner:</span> <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">'data_owner'</span>],
|
217
|
+
<span class="ruby-value">route:</span> <span class="ruby-identifier">relation_config</span>[<span class="ruby-string">'route'</span>]
|
217
218
|
)
|
218
219
|
<span class="ruby-keyword">end</span></pre>
|
219
220
|
</div>
|
@@ -235,7 +236,7 @@ Returns:
|
|
235
236
|
<p>Builds the payload for destroyed records.</p>
|
236
237
|
|
237
238
|
<div class="method-source-code" id="build_destroy_payload-source">
|
238
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line
|
239
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 49</span>
|
239
240
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_destroy_payload</span>
|
240
241
|
<span class="ruby-identifier">encrypted_attrs</span> = <span class="ruby-identifier">encrypt_attrs</span>(<span class="ruby-identifier">attributes</span>, <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">loggable_attrs</span>, <span class="ruby-identifier">primary_encryption_key</span>)
|
241
242
|
<span class="ruby-identifier">encrypted_attrs</span>.<span class="ruby-identifier">transform_values!</span> { <span class="ruby-string">'*** DELETED ***'</span> }
|
@@ -243,7 +244,8 @@ Returns:
|
|
243
244
|
<span class="ruby-value">record:</span> <span class="ruby-ivar">@record</span>,
|
244
245
|
<span class="ruby-value">payload_type:</span> <span class="ruby-string">'primary_payload'</span>,
|
245
246
|
<span class="ruby-value">encrypted_attrs:</span>,
|
246
|
-
<span class="ruby-value">data_owner:</span> <span class="ruby-keyword">true</span
|
247
|
+
<span class="ruby-value">data_owner:</span> <span class="ruby-keyword">true</span>,
|
248
|
+
<span class="ruby-value">route:</span> <span class="ruby-keyword">nil</span>
|
247
249
|
)
|
248
250
|
<span class="ruby-keyword">end</span></pre>
|
249
251
|
</div>
|
@@ -265,7 +267,7 @@ Returns:
|
|
265
267
|
<p>Builds payloads for has_many relations.</p>
|
266
268
|
|
267
269
|
<div class="method-source-code" id="build_has_many_payloads-source">
|
268
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line
|
270
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 89</span>
|
269
271
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_has_many_payloads</span>(<span class="ruby-identifier">relation_config</span>, <span class="ruby-identifier">relation_type</span>)
|
270
272
|
<span class="ruby-identifier">associated_records</span> = <span class="ruby-identifier">send</span>(<span class="ruby-identifier">relation_config</span>[<span class="ruby-identifier">relation_type</span>])
|
271
273
|
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">associated_records</span>.<span class="ruby-identifier">empty?</span>
|
@@ -295,7 +297,7 @@ Returns:
|
|
295
297
|
<p>@param relation_config [Hash] The configuration of the relation. @param relation_type [String] The type of the relation.</p>
|
296
298
|
|
297
299
|
<div class="method-source-code" id="build_payload-source">
|
298
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line
|
300
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 81</span>
|
299
301
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_payload</span>(<span class="ruby-identifier">relation_config</span>, <span class="ruby-identifier">relation_type</span>)
|
300
302
|
<span class="ruby-identifier">associated_record</span> = <span class="ruby-identifier">send</span>(<span class="ruby-identifier">relation_config</span>[<span class="ruby-identifier">relation_type</span>])
|
301
303
|
<span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">associated_record</span>.<span class="ruby-identifier">nil?</span>
|
@@ -328,7 +330,8 @@ Returns:
|
|
328
330
|
<span class="ruby-value">record:</span> <span class="ruby-ivar">@record</span>,
|
329
331
|
<span class="ruby-value">payload_type:</span> <span class="ruby-string">'primary_payload'</span>,
|
330
332
|
<span class="ruby-value">encrypted_attrs:</span>,
|
331
|
-
<span class="ruby-value">data_owner:</span> <span class="ruby-keyword">true</span
|
333
|
+
<span class="ruby-value">data_owner:</span> <span class="ruby-keyword">true</span>,
|
334
|
+
<span class="ruby-value">route:</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">route</span>
|
332
335
|
)
|
333
336
|
<span class="ruby-keyword">end</span></pre>
|
334
337
|
</div>
|
@@ -352,7 +355,7 @@ Returns:
|
|
352
355
|
<p>@param relation_config [Hash] The configuration of the relation.</p>
|
353
356
|
|
354
357
|
<div class="method-source-code" id="build_relation_payload-source">
|
355
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line
|
358
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 64</span>
|
356
359
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_relation_payload</span>(<span class="ruby-identifier">relation_config</span>)
|
357
360
|
<span class="ruby-identifier">relation_config</span>.<span class="ruby-identifier">each_key</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
|
358
361
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">key</span>
|
@@ -386,7 +389,7 @@ Returns:
|
|
386
389
|
<p>@param attrs [Hash] The attributes to be encrypted. @param encryption_key [String] The encryption key. @return [Hash] The encrypted attributes.</p>
|
387
390
|
|
388
391
|
<div class="method-source-code" id="encrypt_attr-source">
|
389
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line
|
392
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 147</span>
|
390
393
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encrypt_attr</span>(<span class="ruby-identifier">attrs</span>, <span class="ruby-identifier">encryption_key</span>)
|
391
394
|
<span class="ruby-identifier">attrs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span>
|
392
395
|
<span class="ruby-identifier">attrs</span>[<span class="ruby-identifier">key</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">value</span>, <span class="ruby-identifier">encryption_key</span>)
|
@@ -413,7 +416,7 @@ Returns:
|
|
413
416
|
<p>@param attrs [Hash] The attributes to be encrypted. @param loggable_attrs [Array<String>] The loggable attributes. @param encryption_key [String] The encryption key. @return [Hash] The encrypted attributes.</p>
|
414
417
|
|
415
418
|
<div class="method-source-code" id="encrypt_attrs-source">
|
416
|
-
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line
|
419
|
+
<pre><span class="ruby-comment"># File lib/loggable_activity/payloads_builder.rb, line 137</span>
|
417
420
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">encrypt_attrs</span>(<span class="ruby-identifier">attrs</span>, <span class="ruby-identifier">loggable_attrs</span>, <span class="ruby-identifier">encryption_key</span>)
|
418
421
|
<span class="ruby-identifier">attrs</span> = <span class="ruby-identifier">attrs</span>.<span class="ruby-identifier">slice</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">loggable_attrs</span>)
|
419
422
|
<span class="ruby-identifier">encrypt_attr</span>(<span class="ruby-identifier">attrs</span>, <span class="ruby-identifier">encryption_key</span>)
|