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