loggable_activity 0.2.1 → 0.5.0

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.
Files changed (150) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +29 -42
  3. data/.vscode/commands.json +2 -2
  4. data/.vscode/terminals.json +8 -8
  5. data/CHEAT_SHEET.md +31 -0
  6. data/MIT-LICENSE +21 -0
  7. data/README.md +31 -45
  8. data/Rakefile +6 -4
  9. data/app/assets/config/loggable_activity_manifest.js +4 -0
  10. data/app/assets/javascripts/loggable_activity/application.js +2 -0
  11. data/app/assets/stylesheets/loggable_activity/application.scss +20 -0
  12. data/app/controllers/concerns/.keep +0 -0
  13. data/app/controllers/loggable_activity/activities_controller.rb +12 -0
  14. data/app/controllers/loggable_activity/application_controller.rb +6 -0
  15. data/app/helpers/loggable_activity/activities_helper.rb +17 -0
  16. data/app/helpers/loggable_activity/application_helper.rb +6 -0
  17. data/app/jobs/loggable_activity/application_job.rb +6 -0
  18. data/app/mailers/loggable_activity/application_mailer.rb +8 -0
  19. data/app/models/loggable_activity/application_record.rb +7 -0
  20. data/app/views/kaminari/kaminari-turbo-bootstrap/_first_page.html.erb +14 -0
  21. data/app/views/kaminari/kaminari-turbo-bootstrap/_gap.html.erb +8 -0
  22. data/app/views/kaminari/kaminari-turbo-bootstrap/_last_page.html.erb +13 -0
  23. data/app/views/kaminari/kaminari-turbo-bootstrap/_next_page.html.erb +13 -0
  24. data/app/views/kaminari/kaminari-turbo-bootstrap/_page.html.erb +14 -0
  25. data/app/views/kaminari/kaminari-turbo-bootstrap/_paginator.html.erb +27 -0
  26. data/app/views/kaminari/kaminari-turbo-bootstrap/_prev_page.html.erb +14 -0
  27. data/app/views/layouts/loggable_activity/application.html.erb +19 -0
  28. data/app/views/loggable_activity/activities/_activities.html.erb +56 -0
  29. data/app/views/loggable_activity/activities/index.html.erb +7 -0
  30. data/app/views/loggable_activity/activities/show.html.erb +2 -0
  31. data/config/initializers/kaminari_config.rb +14 -0
  32. data/config/routes.rb +7 -0
  33. data/{lib/generators/loggable_activity/templates/create_loggable_activities.rb → db/migrate/20240702092648_create_loggable_activity_tables.rb} +18 -10
  34. data/git-org/HEAD +1 -0
  35. data/git-org/config +7 -0
  36. data/git-org/description +1 -0
  37. data/git-org/hooks/applypatch-msg.sample +15 -0
  38. data/git-org/hooks/commit-msg.sample +24 -0
  39. data/git-org/hooks/fsmonitor-watchman.sample +174 -0
  40. data/git-org/hooks/post-update.sample +8 -0
  41. data/git-org/hooks/pre-applypatch.sample +14 -0
  42. data/git-org/hooks/pre-commit.sample +49 -0
  43. data/git-org/hooks/pre-merge-commit.sample +13 -0
  44. data/git-org/hooks/pre-push.sample +53 -0
  45. data/git-org/hooks/pre-rebase.sample +169 -0
  46. data/git-org/hooks/pre-receive.sample +24 -0
  47. data/git-org/hooks/prepare-commit-msg.sample +42 -0
  48. data/git-org/hooks/push-to-checkout.sample +78 -0
  49. data/git-org/hooks/update.sample +128 -0
  50. data/git-org/info/exclude +6 -0
  51. data/lib/loggable_activity/activity.rb +3 -3
  52. data/lib/{schemas → loggable_activity}/config_schema.json +3 -3
  53. data/lib/loggable_activity/configuration.rb +51 -75
  54. data/lib/loggable_activity/data_owner.rb +0 -1
  55. data/lib/loggable_activity/encryption.rb +16 -7
  56. data/lib/loggable_activity/encryption_key.rb +4 -7
  57. data/lib/loggable_activity/engine.rb +27 -0
  58. data/lib/loggable_activity/error.rb +0 -10
  59. data/lib/loggable_activity/hooks.rb +10 -5
  60. data/lib/loggable_activity/payload.rb +8 -11
  61. data/lib/loggable_activity/sanitizer.rb +6 -2
  62. data/lib/loggable_activity/services/base_payloads_builder.rb +14 -5
  63. data/lib/loggable_activity/services/destroy_payloads_builder.rb +2 -1
  64. data/lib/loggable_activity/services/payloads_builder.rb +9 -2
  65. data/lib/loggable_activity/services/update_payloads_builder.rb +30 -2
  66. data/lib/loggable_activity/version.rb +1 -1
  67. data/lib/loggable_activity.rb +51 -14
  68. data/lib/tasks/loggable_activity_tasks.rake +6 -0
  69. metadata +129 -117
  70. data/.document +0 -1
  71. data/.nojekyll +0 -1
  72. data/.rspec +0 -3
  73. data/CONSIDERTIONS.md +0 -129
  74. data/GETTING-STARTED.md +0 -119
  75. data/LICENSE.txt +0 -21
  76. data/PAYLOAD_EXAMPLE.md +0 -63
  77. data/ROADMAP.md +0 -23
  78. data/docs/LoggableActivity/Activity.html +0 -555
  79. data/docs/LoggableActivity/Configuration.html +0 -330
  80. data/docs/LoggableActivity/ConfigurationError.html +0 -148
  81. data/docs/LoggableActivity/DataOwner.html +0 -138
  82. data/docs/LoggableActivity/Encryption.html +0 -234
  83. data/docs/LoggableActivity/EncryptionError.html +0 -145
  84. data/docs/LoggableActivity/EncryptionKey.html +0 -351
  85. data/docs/LoggableActivity/Error.html +0 -145
  86. data/docs/LoggableActivity/Hooks.html +0 -759
  87. data/docs/LoggableActivity/Payload.html +0 -432
  88. data/docs/LoggableActivity/Services/BasePayloadsBuilder.html +0 -442
  89. data/docs/LoggableActivity/Services/DestroyPayloadsBuilder.html +0 -395
  90. data/docs/LoggableActivity/Services/PayloadsBuilder.html +0 -342
  91. data/docs/LoggableActivity/Services/UpdatePayloadsBuilder.html +0 -490
  92. data/docs/LoggableActivity/Services.html +0 -93
  93. data/docs/LoggableActivity.html +0 -102
  94. data/docs/created.rid +0 -14
  95. data/docs/css/fonts.css +0 -167
  96. data/docs/css/rdoc.css +0 -687
  97. data/docs/fonts/Lato-Light.ttf +0 -0
  98. data/docs/fonts/Lato-LightItalic.ttf +0 -0
  99. data/docs/fonts/Lato-Regular.ttf +0 -0
  100. data/docs/fonts/Lato-RegularItalic.ttf +0 -0
  101. data/docs/fonts/SourceCodePro-Bold.ttf +0 -0
  102. data/docs/fonts/SourceCodePro-Regular.ttf +0 -0
  103. data/docs/images/add.png +0 -0
  104. data/docs/images/arrow_up.png +0 -0
  105. data/docs/images/brick.png +0 -0
  106. data/docs/images/brick_link.png +0 -0
  107. data/docs/images/bug.png +0 -0
  108. data/docs/images/bullet_black.png +0 -0
  109. data/docs/images/bullet_toggle_minus.png +0 -0
  110. data/docs/images/bullet_toggle_plus.png +0 -0
  111. data/docs/images/date.png +0 -0
  112. data/docs/images/delete.png +0 -0
  113. data/docs/images/find.png +0 -0
  114. data/docs/images/loadingAnimation.gif +0 -0
  115. data/docs/images/macFFBgHack.png +0 -0
  116. data/docs/images/package.png +0 -0
  117. data/docs/images/page_green.png +0 -0
  118. data/docs/images/page_white_text.png +0 -0
  119. data/docs/images/page_white_width.png +0 -0
  120. data/docs/images/plugin.png +0 -0
  121. data/docs/images/ruby.png +0 -0
  122. data/docs/images/tag_blue.png +0 -0
  123. data/docs/images/tag_green.png +0 -0
  124. data/docs/images/transparent.png +0 -0
  125. data/docs/images/wrench.png +0 -0
  126. data/docs/images/wrench_orange.png +0 -0
  127. data/docs/images/zoom.png +0 -0
  128. data/docs/index.html +0 -99
  129. data/docs/js/darkfish.js +0 -97
  130. data/docs/js/navigation.js +0 -105
  131. data/docs/js/navigation.js.gz +0 -0
  132. data/docs/js/search.js +0 -110
  133. data/docs/js/search_index.js +0 -1
  134. data/docs/js/search_index.js.gz +0 -0
  135. data/docs/js/searcher.js +0 -229
  136. data/docs/js/searcher.js.gz +0 -0
  137. data/docs/table_of_contents.html +0 -617
  138. data/help/loggable_activity_help.txt +0 -19
  139. data/lib/generators/.DS_Store +0 -0
  140. data/lib/generators/loggable_activity/.DS_Store +0 -0
  141. data/lib/generators/loggable_activity/install_generator.rb +0 -109
  142. data/lib/generators/loggable_activity/templates/.DS_Store +0 -0
  143. data/lib/generators/loggable_activity/templates/binary_ids/create_loggable_activities.rb +0 -30
  144. data/lib/generators/loggable_activity/templates/config/locales/loggable_activity.en.yml +0 -36
  145. data/lib/generators/loggable_activity/templates/config/loggable_activity.yaml +0 -29
  146. data/lib/generators/loggable_activity/templates/loggable_activity.en.yaml +0 -36
  147. data/pkg/loggable_activity-0.1.35.gem +0 -0
  148. data/sig/loggable_activity.rbs +0 -4
  149. /data/{.rspec_status → app/assets/images/loggable_activity/.keep} +0 -0
  150. /data/lib/{generators/loggable_activity/templates → loggable_activity/concerns}/current_user.rb +0 -0
Binary file
Binary file
Binary file
data/docs/images/ruby.png DELETED
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
data/docs/images/zoom.png DELETED
Binary file
data/docs/index.html DELETED
@@ -1,99 +0,0 @@
1
- <!DOCTYPE html>
2
-
3
- <html>
4
- <head>
5
- <meta charset="UTF-8">
6
-
7
- <title>RDoc Documentation</title>
8
-
9
- <script type="text/javascript">
10
- var rdoc_rel_prefix = "./";
11
- var index_rel_prefix = "./";
12
- </script>
13
-
14
- <script src="./js/navigation.js" defer></script>
15
- <script src="./js/search.js" defer></script>
16
- <script src="./js/search_index.js" defer></script>
17
- <script src="./js/searcher.js" defer></script>
18
- <script src="./js/darkfish.js" defer></script>
19
-
20
- <link href="./css/fonts.css" rel="stylesheet">
21
- <link href="./css/rdoc.css" rel="stylesheet">
22
-
23
-
24
- <body id="top" role="document" class="file">
25
- <nav role="navigation">
26
- <div id="project-navigation">
27
- <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
- <h2>
29
- <a href="./index.html" rel="home">Home</a>
30
- </h2>
31
-
32
- <div id="table-of-contents-navigation">
33
- <a href="./table_of_contents.html#pages">Pages</a>
34
- <a href="./table_of_contents.html#classes">Classes</a>
35
- <a href="./table_of_contents.html#methods">Methods</a>
36
- </div>
37
- </div>
38
-
39
-
40
- <div id="search-section" role="search" class="project-section initially-hidden">
41
- <form action="#" method="get" accept-charset="utf-8">
42
- <div id="search-field-wrapper">
43
- <input id="search-field" role="combobox" aria-label="Search"
44
- aria-autocomplete="list" aria-controls="search-results"
45
- type="text" name="search" placeholder="Search (/) for a class, method, ..." spellcheck="false"
46
- title="Type to search, Up and Down to navigate, Enter to load">
47
- </div>
48
-
49
- <ul id="search-results" aria-label="Search Results"
50
- aria-busy="false" aria-expanded="false"
51
- aria-atomic="false" class="initially-hidden"></ul>
52
- </form>
53
- </div>
54
-
55
- </div>
56
-
57
- <div id="project-metadata">
58
-
59
-
60
- <div id="classindex-section" class="nav-section">
61
- <h3>Class and Module Index</h3>
62
-
63
- <ul class="link-list">
64
- <li><details open><summary><code><a href="./LoggableActivity.html">LoggableActivity</a></code></summary>
65
- <ul class="link-list">
66
- <li><code><a href="./LoggableActivity/Activity.html">Activity</a></code>
67
- <li><code><a href="./LoggableActivity/Configuration.html">Configuration</a></code>
68
- <li><code><a href="./LoggableActivity/ConfigurationError.html">ConfigurationError</a></code>
69
- <li><code><a href="./LoggableActivity/DataOwner.html">DataOwner</a></code>
70
- <li><code><a href="./LoggableActivity/Encryption.html">Encryption</a></code>
71
- <li><code><a href="./LoggableActivity/EncryptionError.html">EncryptionError</a></code>
72
- <li><code><a href="./LoggableActivity/EncryptionKey.html">EncryptionKey</a></code>
73
- <li><code><a href="./LoggableActivity/Error.html">Error</a></code>
74
- <li><code><a href="./LoggableActivity/Hooks.html">Hooks</a></code>
75
- <li><code><a href="./LoggableActivity/Payload.html">Payload</a></code>
76
- <li><details><summary><code><a href="./LoggableActivity/Services.html">Services</a></code></summary>
77
- <ul class="link-list">
78
- <li><code><a href="./LoggableActivity/Services/BasePayloadsBuilder.html">BasePayloadsBuilder</a></code>
79
- <li><code><a href="./LoggableActivity/Services/DestroyPayloadsBuilder.html">DestroyPayloadsBuilder</a></code>
80
- <li><code><a href="./LoggableActivity/Services/PayloadsBuilder.html">PayloadsBuilder</a></code>
81
- <li><code><a href="./LoggableActivity/Services/UpdatePayloadsBuilder.html">UpdatePayloadsBuilder</a></code>
82
- </ul></details>
83
- </ul></details>
84
- </div>
85
-
86
- </div>
87
- </nav>
88
-
89
- <main role="main">
90
- <p>This is the API documentation for RDoc Documentation.
91
- </main>
92
-
93
-
94
- <footer id="validator-badges" role="contentinfo">
95
- <p><a href="https://validator.w3.org/check/referer">Validate</a>
96
- <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.6.2.
97
- <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
98
- </footer>
99
-
data/docs/js/darkfish.js DELETED
@@ -1,97 +0,0 @@
1
- /**
2
- *
3
- * Darkfish Page Functions
4
- * $Id: darkfish.js 53 2009-01-07 02:52:03Z deveiant $
5
- *
6
- * Author: Michael Granger <mgranger@laika.com>
7
- *
8
- */
9
-
10
- /* Provide console simulation for firebug-less environments */
11
- /*
12
- if (!("console" in window) || !("firebug" in console)) {
13
- var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
14
- "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
15
-
16
- window.console = {};
17
- for (var i = 0; i < names.length; ++i)
18
- window.console[names[i]] = function() {};
19
- };
20
- */
21
-
22
-
23
- function showSource( e ) {
24
- var target = e.target;
25
- while (!target.classList.contains('method-detail')) {
26
- target = target.parentNode;
27
- }
28
- if (typeof target !== "undefined" && target !== null) {
29
- target = target.querySelector('.method-source-code');
30
- }
31
- if (typeof target !== "undefined" && target !== null) {
32
- target.classList.toggle('active-menu')
33
- }
34
- };
35
-
36
- function hookSourceViews() {
37
- document.querySelectorAll('.method-heading').forEach(function (codeObject) {
38
- codeObject.addEventListener('click', showSource);
39
- });
40
- };
41
-
42
- function hookSearch() {
43
- var input = document.querySelector('#search-field');
44
- var result = document.querySelector('#search-results');
45
- result.classList.remove("initially-hidden");
46
-
47
- var search_section = document.querySelector('#search-section');
48
- search_section.classList.remove("initially-hidden");
49
-
50
- var search = new Search(search_data, input, result);
51
-
52
- search.renderItem = function(result) {
53
- var li = document.createElement('li');
54
- var html = '';
55
-
56
- // TODO add relative path to <script> per-page
57
- html += '<p class="search-match"><a href="' + index_rel_prefix + this.escapeHTML(result.path) + '">' + this.hlt(result.title);
58
- if (result.params)
59
- html += '<span class="params">' + result.params + '</span>';
60
- html += '</a>';
61
-
62
-
63
- if (result.namespace)
64
- html += '<p class="search-namespace">' + this.hlt(result.namespace);
65
-
66
- if (result.snippet)
67
- html += '<div class="search-snippet">' + result.snippet + '</div>';
68
-
69
- li.innerHTML = html;
70
-
71
- return li;
72
- }
73
-
74
- search.select = function(result) {
75
- window.location.href = result.firstChild.firstChild.href;
76
- }
77
-
78
- search.scrollIntoView = search.scrollInWindow;
79
- };
80
-
81
- function hookFocus() {
82
- document.addEventListener("keydown", (event) => {
83
- if (document.activeElement.tagName === 'INPUT') {
84
- return;
85
- }
86
- if (event.key === "/") {
87
- event.preventDefault();
88
- document.querySelector('#search-field').focus();
89
- }
90
- });
91
- }
92
-
93
- document.addEventListener('DOMContentLoaded', function() {
94
- hookSourceViews();
95
- hookSearch();
96
- hookFocus();
97
- });
@@ -1,105 +0,0 @@
1
- /*
2
- * Navigation allows movement using the arrow keys through the search results.
3
- *
4
- * When using this library you will need to set scrollIntoView to the
5
- * appropriate function for your layout. Use scrollInWindow if the container
6
- * is not scrollable and scrollInElement if the container is a separate
7
- * scrolling region.
8
- */
9
- Navigation = new function() {
10
- this.initNavigation = function() {
11
- var _this = this;
12
-
13
- document.addEventListener('keydown', function(e) {
14
- _this.onkeydown(e);
15
- });
16
-
17
- this.navigationActive = true;
18
- }
19
-
20
- this.setNavigationActive = function(state) {
21
- this.navigationActive = state;
22
- }
23
-
24
- this.onkeydown = function(e) {
25
- if (!this.navigationActive) return;
26
- switch(e.key) {
27
- case 'ArrowLeft':
28
- if (this.moveLeft()) e.preventDefault();
29
- break;
30
- case 'ArrowUp':
31
- if (e.key == 'ArrowUp' || e.ctrlKey) {
32
- if (this.moveUp()) e.preventDefault();
33
- }
34
- break;
35
- case 'ArrowRight':
36
- if (this.moveRight()) e.preventDefault();
37
- break;
38
- case 'ArrowDown':
39
- if (e.key == 'ArrowDown' || e.ctrlKey) {
40
- if (this.moveDown()) e.preventDefault();
41
- }
42
- break;
43
- case 'Enter':
44
- if (this.current) e.preventDefault();
45
- this.select(this.current);
46
- break;
47
- }
48
- if (e.ctrlKey && e.shiftKey) this.select(this.current);
49
- }
50
-
51
- this.moveRight = function() {
52
- }
53
-
54
- this.moveLeft = function() {
55
- }
56
-
57
- this.move = function(isDown) {
58
- }
59
-
60
- this.moveUp = function() {
61
- return this.move(false);
62
- }
63
-
64
- this.moveDown = function() {
65
- return this.move(true);
66
- }
67
-
68
- /*
69
- * Scrolls to the given element in the scrollable element view.
70
- */
71
- this.scrollInElement = function(element, view) {
72
- var offset, viewHeight, viewScroll, height;
73
- offset = element.offsetTop;
74
- height = element.offsetHeight;
75
- viewHeight = view.offsetHeight;
76
- viewScroll = view.scrollTop;
77
-
78
- if (offset - viewScroll + height > viewHeight) {
79
- view.scrollTop = offset - viewHeight + height;
80
- }
81
- if (offset < viewScroll) {
82
- view.scrollTop = offset;
83
- }
84
- }
85
-
86
- /*
87
- * Scrolls to the given element in the window. The second argument is
88
- * ignored
89
- */
90
- this.scrollInWindow = function(element, ignored) {
91
- var offset, viewHeight, viewScroll, height;
92
- offset = element.offsetTop;
93
- height = element.offsetHeight;
94
- viewHeight = window.innerHeight;
95
- viewScroll = window.scrollY;
96
-
97
- if (offset - viewScroll + height > viewHeight) {
98
- window.scrollTo(window.scrollX, offset - viewHeight + height);
99
- }
100
- if (offset < viewScroll) {
101
- window.scrollTo(window.scrollX, offset);
102
- }
103
- }
104
- }
105
-
Binary file
data/docs/js/search.js DELETED
@@ -1,110 +0,0 @@
1
- Search = function(data, input, result) {
2
- this.data = data;
3
- this.input = input;
4
- this.result = result;
5
-
6
- this.current = null;
7
- this.view = this.result.parentNode;
8
- this.searcher = new Searcher(data.index);
9
- this.init();
10
- }
11
-
12
- Search.prototype = Object.assign({}, Navigation, new function() {
13
- var suid = 1;
14
-
15
- this.init = function() {
16
- var _this = this;
17
- var observer = function(e) {
18
- switch(e.key) {
19
- case 'ArrowUp':
20
- case 'ArrowDown':
21
- return;
22
- }
23
- _this.search(_this.input.value);
24
- };
25
- this.input.addEventListener('keyup', observer);
26
- this.input.addEventListener('click', observer); // mac's clear field
27
-
28
- this.searcher.ready(function(results, isLast) {
29
- _this.addResults(results, isLast);
30
- })
31
-
32
- this.initNavigation();
33
- this.setNavigationActive(false);
34
- }
35
-
36
- this.search = function(value, selectFirstMatch) {
37
- value = value.trim().toLowerCase();
38
- if (value) {
39
- this.setNavigationActive(true);
40
- } else {
41
- this.setNavigationActive(false);
42
- }
43
-
44
- if (value == '') {
45
- this.lastQuery = value;
46
- this.result.innerHTML = '';
47
- this.result.setAttribute('aria-expanded', 'false');
48
- this.setNavigationActive(false);
49
- } else if (value != this.lastQuery) {
50
- this.lastQuery = value;
51
- this.result.setAttribute('aria-busy', 'true');
52
- this.result.setAttribute('aria-expanded', 'true');
53
- this.firstRun = true;
54
- this.searcher.find(value);
55
- }
56
- }
57
-
58
- this.addResults = function(results, isLast) {
59
- var target = this.result;
60
- if (this.firstRun && (results.length > 0 || isLast)) {
61
- this.current = null;
62
- this.result.innerHTML = '';
63
- }
64
-
65
- for (var i=0, l = results.length; i < l; i++) {
66
- var item = this.renderItem.call(this, results[i]);
67
- item.setAttribute('id', 'search-result-' + target.childElementCount);
68
- target.appendChild(item);
69
- };
70
-
71
- if (this.firstRun && results.length > 0) {
72
- this.firstRun = false;
73
- this.current = target.firstChild;
74
- this.current.classList.add('search-selected');
75
- }
76
- //TODO: ECMAScript
77
- //if (jQuery.browser.msie) this.$element[0].className += '';
78
-
79
- if (isLast) this.result.setAttribute('aria-busy', 'false');
80
- }
81
-
82
- this.move = function(isDown) {
83
- if (!this.current) return;
84
- var next = isDown ? this.current.nextElementSibling : this.current.previousElementSibling;
85
- if (next) {
86
- this.current.classList.remove('search-selected');
87
- next.classList.add('search-selected');
88
- this.input.setAttribute('aria-activedescendant', next.getAttribute('id'));
89
- this.scrollIntoView(next, this.view);
90
- this.current = next;
91
- this.input.value = next.firstChild.firstChild.text;
92
- this.input.select();
93
- }
94
- return true;
95
- }
96
-
97
- this.hlt = function(html) {
98
- return this.escapeHTML(html).
99
- replace(/\u0001/g, '<em>').
100
- replace(/\u0002/g, '</em>');
101
- }
102
-
103
- this.escapeHTML = function(html) {
104
- return html.replace(/[&<>"`']/g, function(c) {
105
- return '&#' + c.charCodeAt(0) + ';';
106
- });
107
- }
108
-
109
- });
110
-
@@ -1 +0,0 @@
1
- var search_data = {"index":{"searchIndex":["loggableactivity","activity","configuration","configurationerror","dataowner","encryption","encryptionerror","encryptionkey","error","hooks","payload","services","basepayloadsbuilder","destroypayloadsbuilder","payloadsbuilder","updatepayloadsbuilder","action_key()","activities_for_actor()","actor__name_field()","actor_deleted?()","actor_display_name()","actor_secret_key()","actor_secret_key()","attrs()","attrs()","base_action()","blank?()","build()","build()","build()","build_belongs_to_destroy_payload()","build_belongs_to_payload()","build_belongs_to_update_payload()","build_destroy_payload()","build_encrypted_destroy_payload()","build_encrypted_payload()","build_encrypted_update_payload()","build_has_many_create_payload()","build_has_many_destroy_payloads()","build_has_many_payloads()","build_has_many_update_payload()","build_has_many_update_payloads()","build_has_one_destroy_payload()","build_has_one_payload()","build_has_one_update_payload()","build_payload()","build_payloads()","build_primary_destroy_payload()","build_primary_payload()","build_primary_update_payload()","build_relation_destroy_payload()","build_relation_payload()","build_relation_update_payload()","build_relations_destroy_payloads()","build_relations_payloads()","build_relations_update_payloads()","build_update_payloads()","changes_to_save()","create_activity()","create_encryption_key()","current_user_model?()","current_user_model_name()","decrypt()","decrypt_attr()","decrypted_attrs()","decrypted_from_to_attr()","decrypted_update_attrs()","deleted?()","deleted?()","deleted_attrs()","encrypt()","encrypt_attr()","encrypt_attributes()","encrypt_attrs()","encrypt_record_name_for_record()","encrypted_actor_name()","encrypted_update_attrs()","encryption_key_for_record()","encryption_key_for_record()","fetch_current_user_name_from()","fetch_current_user_name_from()","fetch_record_name_for_record()","for_class()","for_record()","for_record_by_type_and_id()","hooks_enabled?()","last()","latest()","load_config_file()","load_schema()","loaded?()","log()","log_activity()","log_create_activity()","log_custom_activity()","log_destroy()","log_destroy_activity()","log_update()","log_update_activity()","mark_as_deleted!()","mark_as_deleted!()","mark_encryption_keys_as_deleted()","must_have_at_least_one_payload()","new()","new()","new()","new()","nothing_to_log?()","ordered_payloads()","payload_route()","payloads_attrs()","primary_encryption_key()","primary_payload()","primary_route()","random_key()","record_display_name()","record_display_name()","record_key()","saved_changes()","secret_key()","validate_config_file()"],"longSearchIndex":["loggableactivity","loggableactivity::activity","loggableactivity::configuration","loggableactivity::configurationerror","loggableactivity::dataowner","loggableactivity::encryption","loggableactivity::encryptionerror","loggableactivity::encryptionkey","loggableactivity::error","loggableactivity::hooks","loggableactivity::payload","loggableactivity::services","loggableactivity::services::basepayloadsbuilder","loggableactivity::services::destroypayloadsbuilder","loggableactivity::services::payloadsbuilder","loggableactivity::services::updatepayloadsbuilder","loggableactivity::hooks#action_key()","loggableactivity::activity::activities_for_actor()","loggableactivity::hooks#actor__name_field()","loggableactivity::activity#actor_deleted?()","loggableactivity::activity#actor_display_name()","loggableactivity::activity#actor_secret_key()","loggableactivity::hooks#actor_secret_key()","loggableactivity::activity#attrs()","loggableactivity::payload#attrs()","loggableactivity::hooks#base_action()","loggableactivity::encryption::blank?()","loggableactivity::services::destroypayloadsbuilder#build()","loggableactivity::services::payloadsbuilder#build()","loggableactivity::services::updatepayloadsbuilder#build()","loggableactivity::services::destroypayloadsbuilder#build_belongs_to_destroy_payload()","loggableactivity::services::payloadsbuilder#build_belongs_to_payload()","loggableactivity::services::updatepayloadsbuilder#build_belongs_to_update_payload()","loggableactivity::hooks#build_destroy_payload()","loggableactivity::services::destroypayloadsbuilder#build_encrypted_destroy_payload()","loggableactivity::services::basepayloadsbuilder#build_encrypted_payload()","loggableactivity::services::updatepayloadsbuilder#build_encrypted_update_payload()","loggableactivity::services::updatepayloadsbuilder#build_has_many_create_payload()","loggableactivity::services::destroypayloadsbuilder#build_has_many_destroy_payloads()","loggableactivity::services::payloadsbuilder#build_has_many_payloads()","loggableactivity::services::updatepayloadsbuilder#build_has_many_update_payload()","loggableactivity::services::updatepayloadsbuilder#build_has_many_update_payloads()","loggableactivity::services::destroypayloadsbuilder#build_has_one_destroy_payload()","loggableactivity::services::payloadsbuilder#build_has_one_payload()","loggableactivity::services::updatepayloadsbuilder#build_has_one_update_payload()","loggableactivity::services::basepayloadsbuilder#build_payload()","loggableactivity::hooks#build_payloads()","loggableactivity::services::destroypayloadsbuilder#build_primary_destroy_payload()","loggableactivity::services::payloadsbuilder#build_primary_payload()","loggableactivity::services::updatepayloadsbuilder#build_primary_update_payload()","loggableactivity::services::destroypayloadsbuilder#build_relation_destroy_payload()","loggableactivity::services::payloadsbuilder#build_relation_payload()","loggableactivity::services::updatepayloadsbuilder#build_relation_update_payload()","loggableactivity::services::destroypayloadsbuilder#build_relations_destroy_payloads()","loggableactivity::services::payloadsbuilder#build_relations_payloads()","loggableactivity::services::updatepayloadsbuilder#build_relations_update_payloads()","loggableactivity::hooks#build_update_payloads()","loggableactivity::services::basepayloadsbuilder#changes_to_save()","loggableactivity::hooks#create_activity()","loggableactivity::encryptionkey::create_encryption_key()","loggableactivity::hooks#current_user_model?()","loggableactivity::configuration::current_user_model_name()","loggableactivity::encryption::decrypt()","loggableactivity::payload#decrypt_attr()","loggableactivity::payload#decrypted_attrs()","loggableactivity::payload#decrypted_from_to_attr()","loggableactivity::payload#decrypted_update_attrs()","loggableactivity::encryptionkey#deleted?()","loggableactivity::payload#deleted?()","loggableactivity::payload#deleted_attrs()","loggableactivity::encryption::encrypt()","loggableactivity::services::basepayloadsbuilder#encrypt_attr()","loggableactivity::services::basepayloadsbuilder#encrypt_attributes()","loggableactivity::services::basepayloadsbuilder#encrypt_attrs()","loggableactivity::services::basepayloadsbuilder#encrypt_record_name_for_record()","loggableactivity::hooks#encrypted_actor_name()","loggableactivity::services::updatepayloadsbuilder#encrypted_update_attrs()","loggableactivity::hooks#encryption_key_for_record()","loggableactivity::services::basepayloadsbuilder#encryption_key_for_record()","loggableactivity::configuration::fetch_current_user_name_from()","loggableactivity::hooks#fetch_current_user_name_from()","loggableactivity::services::basepayloadsbuilder#fetch_record_name_for_record()","loggableactivity::configuration::for_class()","loggableactivity::encryptionkey::for_record()","loggableactivity::encryptionkey::for_record_by_type_and_id()","loggableactivity::hooks#hooks_enabled?()","loggableactivity::activity::last()","loggableactivity::activity::latest()","loggableactivity::configuration::load_config_file()","loggableactivity::configuration::load_schema()","loggableactivity::configuration::loaded?()","loggableactivity::hooks#log()","loggableactivity::hooks#log_activity()","loggableactivity::hooks#log_create_activity()","loggableactivity::hooks#log_custom_activity()","loggableactivity::hooks#log_destroy()","loggableactivity::hooks#log_destroy_activity()","loggableactivity::hooks#log_update()","loggableactivity::hooks#log_update_activity()","loggableactivity::dataowner#mark_as_deleted!()","loggableactivity::encryptionkey#mark_as_deleted!()","loggableactivity::hooks#mark_encryption_keys_as_deleted()","loggableactivity::activity#must_have_at_least_one_payload()","loggableactivity::configurationerror::new()","loggableactivity::encryptionerror::new()","loggableactivity::error::new()","loggableactivity::services::basepayloadsbuilder::new()","loggableactivity::hooks#nothing_to_log?()","loggableactivity::activity#ordered_payloads()","loggableactivity::payload#payload_route()","loggableactivity::activity#payloads_attrs()","loggableactivity::hooks#primary_encryption_key()","loggableactivity::activity#primary_payload()","loggableactivity::activity#primary_route()","loggableactivity::encryptionkey::random_key()","loggableactivity::activity#record_display_name()","loggableactivity::payload#record_display_name()","loggableactivity::activity#record_key()","loggableactivity::services::basepayloadsbuilder#saved_changes()","loggableactivity::payload#secret_key()","loggableactivity::configuration::validate_config_file()"],"info":[["LoggableActivity","","LoggableActivity.html","","<p>Version of the gem\n"],["LoggableActivity::Activity","","LoggableActivity/Activity.html","","<p>Represents one action in the activity log.\n"],["LoggableActivity::Configuration","","LoggableActivity/Configuration.html","","<p>This class is used to load the configuration file located at config/loggable_activity.yml\n<p>When the LoggableActivity::Hook …\n"],["LoggableActivity::ConfigurationError","","LoggableActivity/ConfigurationError.html","","<p>This class is used to load the configuration file located at config/loggable_activity.yml\n<p>This class is …\n"],["LoggableActivity::DataOwner","","LoggableActivity/DataOwner.html","","<p>This class represends an additional data owner for a record. For it to kick in, the data_owner configuration …\n"],["LoggableActivity::Encryption","","LoggableActivity/Encryption.html","","<p>This module is used to encrypt and decrypt attributes\n"],["LoggableActivity::EncryptionError","","LoggableActivity/EncryptionError.html","","<p>Error class for encryption.\n"],["LoggableActivity::EncryptionKey","","LoggableActivity/EncryptionKey.html","","<p>This class represents the encryption key used to unlock the data for one payload. When deleted, only …\n"],["LoggableActivity::Error","","LoggableActivity/Error.html","","<p>Error class for loggable activity.\n"],["LoggableActivity::Hooks","","LoggableActivity/Hooks.html","","<p>When included to a model, it provides the features for logging events regarding to the model. For this …\n"],["LoggableActivity::Payload","","LoggableActivity/Payload.html","","<p>This class represents a payload in the log, containing encrypted data of one record in the database. …\n"],["LoggableActivity::Services","","LoggableActivity/Services.html","","<p>Namespace for services\n"],["LoggableActivity::Services::BasePayloadsBuilder","","LoggableActivity/Services/BasePayloadsBuilder.html","","<p>This service class provides the base payloads builder for the loggable activity. Other service modules …\n"],["LoggableActivity::Services::DestroyPayloadsBuilder","","LoggableActivity/Services/DestroyPayloadsBuilder.html","","<p>This class is responsible for building destroy payloads used in loggable activities.\n"],["LoggableActivity::Services::PayloadsBuilder","","LoggableActivity/Services/PayloadsBuilder.html","","<p>This class is responsible for building payloads used in loggable activities.\n"],["LoggableActivity::Services::UpdatePayloadsBuilder","","LoggableActivity/Services/UpdatePayloadsBuilder.html","","<p>This service class builds update payloads when an instance of a model is updated.\n"],["action_key","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-action_key","()","<p>Returns the action key for the current action.\n"],["activities_for_actor","LoggableActivity::Activity","LoggableActivity/Activity.html#method-c-activities_for_actor","(actor, limit = 20, params = { offset: 0 })","<p>Returns a list of activities for a given actor.\n"],["actor__name_field","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-actor__name_field","()","<p>Returns the display name of the actor.\n"],["actor_deleted?","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-actor_deleted-3F","()","<p>Check if the actor is deleted. If the actor is deleted, it will return true. This way we don’t rely …\n"],["actor_display_name","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-actor_display_name","()","<p>Returns the display name for a actor. what method to use if defined in ‘/config/loggable_activity.yaml’ …\n"],["actor_secret_key","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-actor_secret_key","()","<p>Returns the key for the actor.\n"],["actor_secret_key","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-actor_secret_key","()","<p>Returns the encryption key for the actor.\n"],["attrs","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-attrs","()","<p>Returns an array of hashes, each representing an activity’s attributes and its associated relations. …\n"],["attrs","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-attrs","()","<p>Returns the decrypted attrs.\n<p>@return [Hash] The decrypted attributes.\n<p>Example:\n"],["base_action","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-base_action","()","<p>Convert the model name and name space in to ‘base_action’.\n"],["blank?","LoggableActivity::Encryption","LoggableActivity/Encryption.html#method-c-blank-3F","(value)","<p>Returns true if the given value is blank\n"],["build","LoggableActivity::Services::DestroyPayloadsBuilder","LoggableActivity/Services/DestroyPayloadsBuilder.html#method-i-build","()","<p>Build payloads for a ::LoggableActivity::Activity.\n\n<pre>Example:\n build_payloads\n\nReturns:\n #&lt;::LoggableActivity::Payload:0x0000000109658718&gt; ...</pre>\n"],["build","LoggableActivity::Services::PayloadsBuilder","LoggableActivity/Services/PayloadsBuilder.html#method-i-build","()","<p>Builds payloads for the loggable activity and returns an array of payload objects.\n<p>Example call: payloads …\n"],["build","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build","()","<p>Builds payloads for a ::LoggableActivity::Activity.\n"],["build_belongs_to_destroy_payload","LoggableActivity::Services::DestroyPayloadsBuilder","LoggableActivity/Services/DestroyPayloadsBuilder.html#method-i-build_belongs_to_destroy_payload","(relation_config)",""],["build_belongs_to_payload","LoggableActivity::Services::PayloadsBuilder","LoggableActivity/Services/PayloadsBuilder.html#method-i-build_belongs_to_payload","(relation_config)",""],["build_belongs_to_update_payload","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build_belongs_to_update_payload","(relation_config)","<p>Builds the update payload for a belongs_to relation.\n"],["build_destroy_payload","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-build_destroy_payload","()","<p>Builds destroy payloads for the current action.\n"],["build_encrypted_destroy_payload","LoggableActivity::Services::DestroyPayloadsBuilder","LoggableActivity/Services/DestroyPayloadsBuilder.html#method-i-build_encrypted_destroy_payload","(record, related_to_activity_as)",""],["build_encrypted_payload","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-build_encrypted_payload","(record, options = {})","<p>Build a encrypted payload for a record\n"],["build_encrypted_update_payload","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build_encrypted_update_payload","(record, current_values, previous_values, options = {})","<p>Builds the encrypted update payload for a record.\n"],["build_has_many_create_payload","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build_has_many_create_payload","(relation_config, record)",""],["build_has_many_destroy_payloads","LoggableActivity::Services::DestroyPayloadsBuilder","LoggableActivity/Services/DestroyPayloadsBuilder.html#method-i-build_has_many_destroy_payloads","(relation_config)",""],["build_has_many_payloads","LoggableActivity::Services::PayloadsBuilder","LoggableActivity/Services/PayloadsBuilder.html#method-i-build_has_many_payloads","(relation_config)","<p>Builds payloads for has_many relations.\n"],["build_has_many_update_payload","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build_has_many_update_payload","(relation_config, record)",""],["build_has_many_update_payloads","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build_has_many_update_payloads","(relation_config)","<p>Builds payloads for has_many relations.\n"],["build_has_one_destroy_payload","LoggableActivity::Services::DestroyPayloadsBuilder","LoggableActivity/Services/DestroyPayloadsBuilder.html#method-i-build_has_one_destroy_payload","(relation_config)",""],["build_has_one_payload","LoggableActivity::Services::PayloadsBuilder","LoggableActivity/Services/PayloadsBuilder.html#method-i-build_has_one_payload","(relation_config)","<p>Builds the payload for a has_one relation.\n"],["build_has_one_update_payload","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build_has_one_update_payload","(relation_config)","<p>Builds the update payload for a has_one relation.\n"],["build_payload","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-build_payload","(record, encryption_key, encrypted_attrs, options = {})","<p>Builds the payload for a record\n"],["build_payloads","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-build_payloads","()","<p>Builds payloads for the current action.\n"],["build_primary_destroy_payload","LoggableActivity::Services::DestroyPayloadsBuilder","LoggableActivity/Services/DestroyPayloadsBuilder.html#method-i-build_primary_destroy_payload","()",""],["build_primary_payload","LoggableActivity::Services::PayloadsBuilder","LoggableActivity/Services/PayloadsBuilder.html#method-i-build_primary_payload","()","<p>Builds the primary payload.\n"],["build_primary_update_payload","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build_primary_update_payload","()","<p>Builds the primary payload.\n"],["build_relation_destroy_payload","LoggableActivity::Services::DestroyPayloadsBuilder","LoggableActivity/Services/DestroyPayloadsBuilder.html#method-i-build_relation_destroy_payload","(relation_config)",""],["build_relation_payload","LoggableActivity::Services::PayloadsBuilder","LoggableActivity/Services/PayloadsBuilder.html#method-i-build_relation_payload","(relation_config)","<p>Builds payloads for relations definded in the configuration.\n<p>@param relation_config [Hash] The configuration …\n"],["build_relation_update_payload","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build_relation_update_payload","(relation_config)",""],["build_relations_destroy_payloads","LoggableActivity::Services::DestroyPayloadsBuilder","LoggableActivity/Services/DestroyPayloadsBuilder.html#method-i-build_relations_destroy_payloads","()",""],["build_relations_payloads","LoggableActivity::Services::PayloadsBuilder","LoggableActivity/Services/PayloadsBuilder.html#method-i-build_relations_payloads","()","<p>Builds the relations payloads.\n"],["build_relations_update_payloads","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-build_relations_update_payloads","()","<p>Build the payloads for the relations of the record. only relations included in the configuration, will …\n"],["build_update_payloads","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-build_update_payloads","()","<p>Builds update payloads for the current action.\n"],["changes_to_save","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-changes_to_save","(record)","<p>Fetch the previous and current values for a record.\n"],["create_activity","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-create_activity","(payloads)","<p>Creates an activity with the specified payloads.\n"],["create_encryption_key","LoggableActivity::EncryptionKey","LoggableActivity/EncryptionKey.html#method-c-create_encryption_key","(record_type, record_id)","<p>Creates an encryption key for a record, optionally using a parent key.\n\n<pre>@param record_type [String] The ...</pre>\n"],["current_user_model?","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-current_user_model-3F","()","<p>Returns the model name of the current user.\n"],["current_user_model_name","LoggableActivity::Configuration","LoggableActivity/Configuration.html#method-c-current_user_model_name","()","<p>Returns the name of the model to use for the current user.\n"],["decrypt","LoggableActivity::Encryption","LoggableActivity/Encryption.html#method-c-decrypt","(data, secret_key)","<p>Decrypts the given data using the given encryption key\n<p>Example:\n\n<pre>::LoggableActivity::Encryption.decrypt(&#39;SOME_ENCRYPTED_STRING&#39;, ...</pre>\n"],["decrypt_attr","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-decrypt_attr","(value)","<p>Decrypts a single attribute.\n<p>@param value [String] The encrypted value to decrypt. @return [String] The …\n"],["decrypted_attrs","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-decrypted_attrs","()","<p>Decrypts all attributes.\n<p>@return [Hash] The decrypted attributes.\n"],["decrypted_from_to_attr","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-decrypted_from_to_attr","(change)","<p>Decrypts ‘from’ and ‘to’ attributes.\n<p>@param change [Hash] The change hash containing ‘from’ …\n"],["decrypted_update_attrs","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-decrypted_update_attrs","()","<p>Decrypts the ‘from’ and ‘to’ attributes in the update payload.\n<p>@return [Array&lt;Hash&gt;] …\n"],["deleted?","LoggableActivity::EncryptionKey","LoggableActivity/EncryptionKey.html#method-i-deleted-3F","()","<p>check if the encryption key is deleted\n"],["deleted?","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-deleted-3F","()","<p>Check if the record has been deleted.\n<p>@return [Boolean] True if the record has been deleted.\n"],["deleted_attrs","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-deleted_attrs","()","<p>Helper method to handle deleted attributes.\n<p>@return [Hash] The hash with deleted attributes.\n"],["encrypt","LoggableActivity::Encryption","LoggableActivity/Encryption.html#method-c-encrypt","(data, secret_key)","<p>Encrypts the given data using the given encryption key\n<p>Example:\n\n<pre>::LoggableActivity::Encryption.encrypt(&#39;my ...</pre>\n"],["encrypt_attr","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-encrypt_attr","(value, secret_key)","<p>Encrypt a single attribute.\n"],["encrypt_attributes","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-encrypt_attributes","(record, secret_key)","<p>Encrypts the attributes for the record.\n"],["encrypt_attrs","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-encrypt_attrs","(attrs, loggable_attrs, secret_key)","<p>Encrypt one attributes for only loggable_attrs, configured\n"],["encrypt_record_name_for_record","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-encrypt_record_name_for_record","(record, secret_key)","<p>Encrypts the record name for the record. If the record has a fetch_record_name_from the configuration, …\n"],["encrypted_actor_name","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-encrypted_actor_name","()","<p>Returns the encrypted name of the actor.\n"],["encrypted_update_attrs","LoggableActivity::Services::UpdatePayloadsBuilder","LoggableActivity/Services/UpdatePayloadsBuilder.html#method-i-encrypted_update_attrs","(current_values, previous_values, encryption_key)","<p>Returns the encrypted attributes for the update payload.\n"],["encryption_key_for_record","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-encryption_key_for_record","(record = @record)","<p>Returns the encryption key for the record.\n"],["encryption_key_for_record","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-encryption_key_for_record","(record)","<p>Returns the encryption key for the record.\n"],["fetch_current_user_name_from","LoggableActivity::Configuration","LoggableActivity/Configuration.html#method-c-fetch_current_user_name_from","()","<p>Returns the name of the field or method to use for the actor’s display name.\n"],["fetch_current_user_name_from","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-fetch_current_user_name_from","()","<p>Reads the field to feetch the record name from.\n"],["fetch_record_name_for_record","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-fetch_record_name_for_record","(record)","<p>Return the record name for the record. If the record has a fetch_record_name_from the configuration, …\n"],["for_class","LoggableActivity::Configuration","LoggableActivity/Configuration.html#method-c-for_class","(class_name)","<p>Returns the configuration data for the given class\n<p>Example:\n\n<pre class=\"ruby\"><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\">for_class</span>(<span class=\"ruby-string\">&#39;User&#39;</span>)\n</pre>\n"],["for_record","LoggableActivity::EncryptionKey","LoggableActivity/EncryptionKey.html#method-c-for_record","(record)","<p>Returns an encryption key for a record, optionally using a parent key.\n\n<pre>@param record [ActiveRecord::Base] ...</pre>\n"],["for_record_by_type_and_id","LoggableActivity::EncryptionKey","LoggableActivity/EncryptionKey.html#method-c-for_record_by_type_and_id","(record_type, record_id)","<p>Returns an encryption key for a record by its type and ID, optionally using a parent key.\n\n<pre>@param record_type ...</pre>\n"],["hooks_enabled?","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-hooks_enabled-3F","()","<p>Hooks can disabled when a model is created or updated by a parrent model.\n"],["last","LoggableActivity::Activity","LoggableActivity/Activity.html#method-c-last","(limit = 1)","<p>Returns the last activity. This is done to support of UUID primary keys.\n"],["latest","LoggableActivity::Activity","LoggableActivity/Activity.html#method-c-latest","(limit = 20, params = { offset: 0 })","<p>Returns a list of activities ordered by creation date. This is done to support UUID primary keys.\n"],["load_config_file","LoggableActivity::Configuration","LoggableActivity/Configuration.html#method-c-load_config_file","(config_file_path)","<p>Loads the configuration file\n"],["load_schema","LoggableActivity::Configuration","LoggableActivity/Configuration.html#method-c-load_schema","()","<p>Loads the schema file for the configuration file\n"],["loaded?","LoggableActivity::Configuration","LoggableActivity/Configuration.html#method-c-loaded-3F","()","<p>Returns true if the configuration file has been loaded\n"],["log","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-log","(action, actor: nil, params: {})","<p>Logs an activity with the specified action, actor, and params.\n\n<pre>@param action [Symbol] The action to log ...</pre>\n"],["log_activity","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-log_activity","()","<p>Logs an activity for the current action.\n"],["log_create_activity","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-log_create_activity","()","<p>Logs a create activity automatically if configured.\n"],["log_custom_activity","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-log_custom_activity","(activity)","<p>Logs a custom activity.\n"],["log_destroy","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-log_destroy","()","<p>Logs an activity for the destroy action.\n"],["log_destroy_activity","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-log_destroy_activity","()","<p>Logs a destroy activity automatically if configured.\n"],["log_update","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-log_update","()","<p>Logs an activity for the update action.\n"],["log_update_activity","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-log_update_activity","()","<p>Logs an update activity automatically if configured.\n"],["mark_as_deleted!","LoggableActivity::DataOwner","LoggableActivity/DataOwner.html#method-i-mark_as_deleted-21","()","<p>When a record is deleted, all data owner added to the record is also deleted.\n"],["mark_as_deleted!","LoggableActivity::EncryptionKey","LoggableActivity/EncryptionKey.html#method-i-mark_as_deleted-21","()","<p>Marks the encryption key as deleted by updating the key to nil.\n"],["mark_encryption_keys_as_deleted","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-mark_encryption_keys_as_deleted","()","<p>Fullfill the needs of the data owners. Mostly this will be performend a few one, from 1 to 5. Enumeration …\n"],["must_have_at_least_one_payload","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-must_have_at_least_one_payload","()","<p>Validates that the activity has at least one payload.\n"],["new","LoggableActivity::ConfigurationError","LoggableActivity/ConfigurationError.html#method-c-new","(msg = '')",""],["new","LoggableActivity::EncryptionError","LoggableActivity/EncryptionError.html#method-c-new","(msg = '')",""],["new","LoggableActivity::Error","LoggableActivity/Error.html#method-c-new","(msg = '')",""],["new","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-c-new","(record, payloads)","<p>Initializes the PayloadsBuilder with a record and an initial collection of payloads,\n"],["nothing_to_log?","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-nothing_to_log-3F","(_payloads)","<p>Returns true if there are no payloads to log.\n"],["ordered_payloads","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-ordered_payloads","()","<p>Returns payloads sorted by :related_to_activity_as.\n"],["payload_route","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-payload_route","()","<p>Returns the route for the payload unless the encryption_key is deleted.\n<p>Example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">payload</span>.<span class=\"ruby-identifier\">payload_route</span>\n</pre>\n"],["payloads_attrs","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-payloads_attrs","()",""],["primary_encryption_key","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-primary_encryption_key","()","<p>Returns the primary encryption key for the activity\n"],["primary_payload","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-primary_payload","()","<p>Returns the primary payload associated with the activity.\n<p>Example usage:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">payload</span> = <span class=\"ruby-ivar\">@activity</span>.<span class=\"ruby-identifier\">primary_payload</span> <span class=\"ruby-operator\">...</span>\n</pre>\n"],["primary_route","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-primary_route","()","<p>Returns the path for the activity.\n<p>Example:\n\n<pre class=\"ruby\"><span class=\"ruby-ivar\">@activity</span>.<span class=\"ruby-identifier\">path</span>\n</pre>\n"],["random_key","LoggableActivity::EncryptionKey","LoggableActivity/EncryptionKey.html#method-c-random_key","()","<p>Generates a random encryption key.\n\n<pre>@return [String] The generated encryption key.</pre>\n<p>Example:\n"],["record_display_name","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-record_display_name","()","<p>Returns the display name for a record. what method to use if defined in ‘/config/loggable_activity.yaml’ …\n"],["record_display_name","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-record_display_name","()","<p>Returns the display name for the record.\n<p>Example:\n\n<pre class=\"ruby\"><span class=\"ruby-identifier\">payload</span>.<span class=\"ruby-identifier\">record_display_name</span>\n</pre>\n"],["record_key","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-record_key","()","<p>Returns the key for the logged record.\n"],["saved_changes","LoggableActivity::Services::BasePayloadsBuilder","LoggableActivity/Services/BasePayloadsBuilder.html#method-i-saved_changes","(record)","<p>Returns saved changes for a record.\n"],["secret_key","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-secret_key","()","<p>Retrieves the encryption key for the payload.\n<p>@return [String, nil] The encryption key.\n"],["validate_config_file","LoggableActivity::Configuration","LoggableActivity/Configuration.html#method-c-validate_config_file","()","<p>Validates the configuration file againss the schema\n"]]}}
Binary file