loggable_activity 0.1.54 → 0.1.55
Sign up to get free protection for your applications and to get access to all the features.
- 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>)
|