loggable_activity 0.1.56 → 0.1.59

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +10 -1
  3. data/CHANGELOG.md +9 -0
  4. data/GETTING-STARTED.md +8 -47
  5. data/PAYLOAD_EXAMPLE.md +63 -0
  6. data/docs/LoggableActivity/Activity.html +92 -241
  7. data/docs/LoggableActivity/Configuration.html +162 -15
  8. data/docs/LoggableActivity/ConfigurationError.html +148 -0
  9. data/docs/LoggableActivity/DataOwner.html +138 -0
  10. data/docs/LoggableActivity/Encryption.html +18 -14
  11. data/docs/LoggableActivity/EncryptionError.html +47 -1
  12. data/docs/LoggableActivity/EncryptionKey.html +54 -35
  13. data/docs/LoggableActivity/Error.html +48 -0
  14. data/docs/LoggableActivity/Hooks.html +221 -89
  15. data/docs/LoggableActivity/Payload.html +103 -27
  16. data/docs/LoggableActivity/Services/BasePayloadsBuilder.html +442 -0
  17. data/docs/LoggableActivity/Services/DestroyPayloadsBuilder.html +395 -0
  18. data/docs/LoggableActivity/Services/PayloadsBuilder.html +342 -0
  19. data/docs/LoggableActivity/Services/UpdatePayloadsBuilder.html +490 -0
  20. data/docs/LoggableActivity/Services.html +93 -0
  21. data/docs/created.rid +14 -10
  22. data/docs/index.html +10 -2
  23. data/docs/js/navigation.js.gz +0 -0
  24. data/docs/js/search_index.js +1 -1
  25. data/docs/js/search_index.js.gz +0 -0
  26. data/docs/js/searcher.js.gz +0 -0
  27. data/docs/table_of_contents.html +253 -85
  28. data/lib/generators/loggable_activity/install_generator.rb +2 -18
  29. data/lib/generators/loggable_activity/templates/.DS_Store +0 -0
  30. data/lib/generators/loggable_activity/templates/binary_ids/create_loggable_activities.rb +9 -10
  31. data/lib/generators/loggable_activity/templates/create_loggable_activities.rb +16 -13
  32. data/lib/loggable_activity/activity.rb +53 -102
  33. data/lib/loggable_activity/configuration.rb +60 -3
  34. data/lib/loggable_activity/data_owner.rb +18 -0
  35. data/lib/loggable_activity/encryption.rb +14 -14
  36. data/lib/loggable_activity/encryption_key.rb +26 -25
  37. data/lib/loggable_activity/error.rb +34 -0
  38. data/lib/loggable_activity/hooks.rb +78 -43
  39. data/lib/loggable_activity/payload.rb +70 -20
  40. data/lib/loggable_activity/services/base_payloads_builder.rb +127 -0
  41. data/lib/loggable_activity/services/destroy_payloads_builder.rb +127 -0
  42. data/lib/loggable_activity/services/payloads_builder.rb +98 -0
  43. data/lib/loggable_activity/services/update_payloads_builder.rb +170 -0
  44. data/lib/loggable_activity/version.rb +1 -1
  45. data/lib/loggable_activity.rb +6 -6
  46. data/lib/schemas/config_schema.json +90 -0
  47. metadata +37 -26
  48. data/docs/LoggableActivity/PayloadsBuilder.html +0 -441
  49. data/docs/LoggableActivity/UpdatePayloadsBuilder.html +0 -424
  50. data/lib/generators/loggable_activity/install_templates_generator.rb +0 -105
  51. data/lib/generators/loggable_activity/templates/helpers/activity_helper.rb +0 -37
  52. data/lib/generators/loggable_activity/templates/helpers/router.rb +0 -52
  53. data/lib/generators/loggable_activity/templates/helpers/routes_helper.rb +0 -20
  54. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_create.html.erb +0 -23
  55. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_create.html.slim +0 -18
  56. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_destroy.html.erb +0 -18
  57. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_destroy.html.slim +0 -17
  58. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_show.html.erb +0 -18
  59. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_show.html.slim +0 -17
  60. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_update.html.erb +0 -18
  61. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/default/_update.html.slim +0 -12
  62. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_activity_info.html.erb +0 -12
  63. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_activity_info.html.slim +0 -11
  64. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_list_attrs.html.erb +0 -8
  65. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_list_attrs.html.slim +0 -6
  66. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_update_attrs.html.erb +0 -17
  67. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_update_attrs.html.slim +0 -14
  68. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_updated_relations.html.erb +0 -23
  69. data/lib/generators/loggable_activity/templates/views/loggable_activity/templates/shared/_updated_relations.html.slim +0 -21
  70. data/lib/loggable_activity/payloads_builder.rb +0 -153
  71. data/lib/loggable_activity/update_payloads_builder.rb +0 -127
data/docs/index.html CHANGED
@@ -65,13 +65,21 @@
65
65
  <ul class="link-list">
66
66
  <li><code><a href="./LoggableActivity/Activity.html">Activity</a></code>
67
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>
68
70
  <li><code><a href="./LoggableActivity/Encryption.html">Encryption</a></code>
69
71
  <li><code><a href="./LoggableActivity/EncryptionError.html">EncryptionError</a></code>
70
72
  <li><code><a href="./LoggableActivity/EncryptionKey.html">EncryptionKey</a></code>
73
+ <li><code><a href="./LoggableActivity/Error.html">Error</a></code>
71
74
  <li><code><a href="./LoggableActivity/Hooks.html">Hooks</a></code>
72
75
  <li><code><a href="./LoggableActivity/Payload.html">Payload</a></code>
73
- <li><code><a href="./LoggableActivity/PayloadsBuilder.html">PayloadsBuilder</a></code>
74
- <li><code><a href="./LoggableActivity/UpdatePayloadsBuilder.html">UpdatePayloadsBuilder</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>
75
83
  </ul></details>
76
84
  </div>
77
85
 
Binary file
@@ -1 +1 @@
1
- var search_data = {"index":{"searchIndex":["loggableactivity","activity","configuration","encryption","encryptionerror","encryptionkey","hooks","payload","payloadsbuilder","updatepayloadsbuilder","action_key()","activities_for_actor()","actor_display_name()","actor_display_name_field()","actor_encryption_key()","actor_key()","associated_record_encryption_key()","attrs()","attrs()","base_action()","blank?()","build_associated_payload()","build_destroy_payload()","build_has_many_payloads()","build_payload()","build_payloads()","build_primary_payload()","build_primary_update_payload()","build_relation_payload()","build_relation_update_for_belongs_to()","build_relation_update_for_has_many()","build_relation_update_for_has_one()","build_relation_update_payload()","build_update_payloads()","build_update_relation_payloads()","create_activity()","create_encryption_key()","current_user_model?()","decrypt()","decrypt_attr()","decrypted_attrs()","decrypted_from_to_attr()","decrypted_update_attrs()","deleted_attrs()","encrypt()","encrypt_attr()","encrypt_attrs()","encrypted_actor_name()","encrypted_record_name()","encrypted_update_attrs()","for_class()","for_record()","for_record_by_type_and_id()","last()","latest()","load_config_file()","log()","log_activity()","log_create_activity()","log_custom_activity()","log_destroy()","log_destroy_activity()","log_update()","log_update_activity()","mark_as_deleted()","must_have_at_least_one_payload()","nothing_to_log?()","ordered_payloads()","path()","payload_encryption_key()","payload_route()","previous_associations_attrs()","primary_encryption_key()","primary_encryption_key_deleted?()","primary_payload()","primary_payload_attrs()","primary_update_attrs()","random_key()","record_display_name()","record_key()","relation_encrypted_attrs()","relations_attrs()","update_activity_attrs()","update_attrs()","updated_relations_attrs()"],"longSearchIndex":["loggableactivity","loggableactivity::activity","loggableactivity::configuration","loggableactivity::encryption","loggableactivity::encryptionerror","loggableactivity::encryptionkey","loggableactivity::hooks","loggableactivity::payload","loggableactivity::payloadsbuilder","loggableactivity::updatepayloadsbuilder","loggableactivity::hooks#action_key()","loggableactivity::activity::activities_for_actor()","loggableactivity::activity#actor_display_name()","loggableactivity::hooks#actor_display_name_field()","loggableactivity::hooks#actor_encryption_key()","loggableactivity::activity#actor_key()","loggableactivity::payloadsbuilder#associated_record_encryption_key()","loggableactivity::activity#attrs()","loggableactivity::payload#attrs()","loggableactivity::hooks#base_action()","loggableactivity::encryption::blank?()","loggableactivity::payloadsbuilder#build_associated_payload()","loggableactivity::payloadsbuilder#build_destroy_payload()","loggableactivity::payloadsbuilder#build_has_many_payloads()","loggableactivity::payloadsbuilder#build_payload()","loggableactivity::payloadsbuilder#build_payloads()","loggableactivity::payloadsbuilder#build_primary_payload()","loggableactivity::updatepayloadsbuilder#build_primary_update_payload()","loggableactivity::payloadsbuilder#build_relation_payload()","loggableactivity::updatepayloadsbuilder#build_relation_update_for_belongs_to()","loggableactivity::updatepayloadsbuilder#build_relation_update_for_has_many()","loggableactivity::updatepayloadsbuilder#build_relation_update_for_has_one()","loggableactivity::updatepayloadsbuilder#build_relation_update_payload()","loggableactivity::updatepayloadsbuilder#build_update_payloads()","loggableactivity::updatepayloadsbuilder#build_update_relation_payloads()","loggableactivity::hooks#create_activity()","loggableactivity::encryptionkey::create_encryption_key()","loggableactivity::hooks#current_user_model?()","loggableactivity::encryption::decrypt()","loggableactivity::payload#decrypt_attr()","loggableactivity::payload#decrypted_attrs()","loggableactivity::payload#decrypted_from_to_attr()","loggableactivity::payload#decrypted_update_attrs()","loggableactivity::payload#deleted_attrs()","loggableactivity::encryption::encrypt()","loggableactivity::payloadsbuilder#encrypt_attr()","loggableactivity::payloadsbuilder#encrypt_attrs()","loggableactivity::hooks#encrypted_actor_name()","loggableactivity::hooks#encrypted_record_name()","loggableactivity::updatepayloadsbuilder#encrypted_update_attrs()","loggableactivity::configuration::for_class()","loggableactivity::encryptionkey::for_record()","loggableactivity::encryptionkey::for_record_by_type_and_id()","loggableactivity::activity::last()","loggableactivity::activity::latest()","loggableactivity::configuration::load_config_file()","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::encryptionkey#mark_as_deleted()","loggableactivity::activity#must_have_at_least_one_payload()","loggableactivity::hooks#nothing_to_log?()","loggableactivity::activity#ordered_payloads()","loggableactivity::activity#path()","loggableactivity::payload#payload_encryption_key()","loggableactivity::payload#payload_route()","loggableactivity::activity#previous_associations_attrs()","loggableactivity::hooks#primary_encryption_key()","loggableactivity::hooks#primary_encryption_key_deleted?()","loggableactivity::activity#primary_payload()","loggableactivity::activity#primary_payload_attrs()","loggableactivity::updatepayloadsbuilder#primary_update_attrs()","loggableactivity::encryptionkey::random_key()","loggableactivity::activity#record_display_name()","loggableactivity::activity#record_key()","loggableactivity::updatepayloadsbuilder#relation_encrypted_attrs()","loggableactivity::activity#relations_attrs()","loggableactivity::activity#update_activity_attrs()","loggableactivity::activity#update_attrs()","loggableactivity::activity#updated_relations_attrs()"],"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"],["LoggableActivity::Encryption","","LoggableActivity/Encryption.html","","<p>This module is used to encrypt and decrypt attributes\n"],["LoggableActivity::EncryptionError","","LoggableActivity/EncryptionError.html","","<p>This error is raised when encryption or decryption fails\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::Hooks","","LoggableActivity/Hooks.html","","<p>This module provides hooks for creating activities when included in a model.\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::PayloadsBuilder","","LoggableActivity/PayloadsBuilder.html","","<p>This module is responsible for building payloads used in loggable activities.\n"],["LoggableActivity::UpdatePayloadsBuilder","","LoggableActivity/UpdatePayloadsBuilder.html","","<p>This module is responsible for building update payloads used in loggable activities.\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_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_display_name_field","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-actor_display_name_field","()","<p>Returns the display name of the actor.\n"],["actor_encryption_key","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-actor_encryption_key","()","<p>Returns the encryption key for the actor.\n"],["actor_key","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-actor_key","()","<p>Returns the key for the actor.\n"],["associated_record_encryption_key","LoggableActivity::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-associated_record_encryption_key","(associated_record, data_owner)","<p>Retrieves the encryption key for the associated record.\n<p>@param associated_record [ActiveRecord::Base] …\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 attributes of the payload based on its type.\n<p>@return [Hash] The decrypted attributes. …\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_associated_payload","LoggableActivity::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-build_associated_payload","(associated_record, relation_config)","<p>Builds the payload for an associated record.\n"],["build_destroy_payload","LoggableActivity::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-build_destroy_payload","()","<p>Builds the payload for destroyed records.\n"],["build_has_many_payloads","LoggableActivity::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-build_has_many_payloads","(relation_config, relation_type)","<p>Builds payloads for has_many relations.\n"],["build_payload","LoggableActivity::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-build_payload","(relation_config, relation_type)","<p>Builds the payload for a specific relation.\n<p>@param relation_config [Hash] The configuration of the relation. …\n"],["build_payloads","LoggableActivity::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-build_payloads","()","<p>Builds payloads for the loggable activity.\n\n<pre>Example:\n build_payloads\n\nReturns:\n #&lt;LoggableActivity::Payload:0x0000000109658718&gt; ...</pre>\n"],["build_primary_payload","LoggableActivity::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-build_primary_payload","()","<p>Builds the primary payload.\n"],["build_primary_update_payload","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-build_primary_update_payload","(previous_values, current_values)","<p>Builds the primary update payload.\n"],["build_relation_payload","LoggableActivity::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-build_relation_payload","(relation_config)","<p>Builds payloads for relations\n<p>@param relation_config [Hash] The configuration of the relation.\n"],["build_relation_update_for_belongs_to","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-build_relation_update_for_belongs_to","(relation_config)","<p>Builds the update payload for a belongs_to relation.\n"],["build_relation_update_for_has_many","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-build_relation_update_for_has_many","(relation_config)","<p>Builds the update payload for a has_many relation.\n"],["build_relation_update_for_has_one","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-build_relation_update_for_has_one","(relation_config)","<p>Builds the update payload for a has_one relation.\n"],["build_relation_update_payload","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-build_relation_update_payload","(relation_config, record, payload_type)","<p>Builds the update payload for a relation.\n"],["build_update_payloads","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-build_update_payloads","()","<p>Builds payloads for an activity update event.\n"],["build_update_relation_payloads","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-build_update_relation_payloads","(relation_config)","<p>Builds update payloads for relations.\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, parent_key = nil)","<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"],["decrypt","LoggableActivity::Encryption","LoggableActivity/Encryption.html#method-c-decrypt","(data, encoded_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_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, encoded_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::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-encrypt_attr","(attrs, encryption_key)","<p>Encrypts a single attribute.\n<p>@param attrs [Hash] The attributes to be encrypted. @param encryption_key …\n"],["encrypt_attrs","LoggableActivity::PayloadsBuilder","LoggableActivity/PayloadsBuilder.html#method-i-encrypt_attrs","(attrs, loggable_attrs, encryption_key)","<p>Encrypts attributes.\n<p>@param attrs [Hash] The attributes to be encrypted. @param loggable_attrs [Array&lt;String&gt;] …\n"],["encrypted_actor_name","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-encrypted_actor_name","()","<p>Returns the encrypted name of the actor.\n"],["encrypted_record_name","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-encrypted_record_name","()","<p>Returns the encrypted name of the record.\n"],["encrypted_update_attrs","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-encrypted_update_attrs","(previous_values, current_values)","<p>Returns the encrypted attributes for the update payload.\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-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, parent_key = nil)","<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, parent_key = nil)","<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"],["last","LoggableActivity::Activity","LoggableActivity/Activity.html#method-c-last","(limit = 1)","<p>Returns the last activity.\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.\n"],["load_config_file","LoggableActivity::Configuration","LoggableActivity/Configuration.html#method-c-load_config_file","(config_file_path)","<p>Loads the configuration file\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::EncryptionKey","LoggableActivity/EncryptionKey.html#method-i-mark_as_deleted","()","<p>Marks the encryption key as deleted by updating the key to nil.\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"],["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 :payload_type.\n"],["path","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-path","()","<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"],["payload_encryption_key","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-payload_encryption_key","()","<p>Retrieves the encryption key for the payload.\n<p>@return [String, nil] The encryption key.\n"],["payload_route","LoggableActivity::Payload","LoggableActivity/Payload.html#method-i-payload_route","()","<p>Returns the route for the payload.\n"],["previous_associations_attrs","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-previous_associations_attrs","()","<p>Returns the previous association attributes.\n"],["primary_encryption_key","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-primary_encryption_key","()","<p>Returns the primary encryption key for the activity\n"],["primary_encryption_key_deleted?","LoggableActivity::Hooks","LoggableActivity/Hooks.html#method-i-primary_encryption_key_deleted-3F","()","<p>Returns true if the primary encryption key is deleted.\n"],["primary_payload","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-primary_payload","()","<p>Returns the primary payload.\n"],["primary_payload_attrs","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-primary_payload_attrs","()","<p>Returns the attributes for the primary payload, without the relations.\n<p>Example:\n\n<pre class=\"ruby\"><span class=\"ruby-ivar\">@activity</span>.<span class=\"ruby-identifier\">primary_payload_attrs</span>\n</pre>\n"],["primary_update_attrs","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-primary_update_attrs","()","<p>Fetch the previous and current values of the primary record.\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_key","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-record_key","()","<p>Returns the key for the logged record.\n"],["relation_encrypted_attrs","LoggableActivity::UpdatePayloadsBuilder","LoggableActivity/UpdatePayloadsBuilder.html#method-i-relation_encrypted_attrs","(attrs, loggable_attrs, encryption_key)","<p>Returns the encrypted attributes for a relation.\n"],["relations_attrs","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-relations_attrs","()","<p>Returns the attributes for the relations.\n<p>Example:\n\n<pre class=\"ruby\"><span class=\"ruby-ivar\">@activity</span>.<span class=\"ruby-identifier\">relations_attrs</span>\n</pre>\n"],["update_activity_attrs","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-update_activity_attrs","()","<p>Returns a hash describing the attributes of an update activity, including updated attributes for a record …\n"],["update_attrs","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-update_attrs","()","<p>Returns the attributes for the update+payload.\n"],["updated_relations_attrs","LoggableActivity::Activity","LoggableActivity/Activity.html#method-i-updated_relations_attrs","()","<p>Returns the attributes for the updated relations.\n"]]}}
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
Binary file