summaryrefslogtreecommitdiff
path: root/app/services/customer_relations/contacts/update_service.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/customer_relations/contacts/update_service.rb')
-rw-r--r--app/services/customer_relations/contacts/update_service.rb10
1 files changed, 8 insertions, 2 deletions
diff --git a/app/services/customer_relations/contacts/update_service.rb b/app/services/customer_relations/contacts/update_service.rb
index 473a80be262..66eb5731bc9 100644
--- a/app/services/customer_relations/contacts/update_service.rb
+++ b/app/services/customer_relations/contacts/update_service.rb
@@ -5,6 +5,9 @@ module CustomerRelations
class UpdateService < BaseService
def execute(contact)
return error_no_permissions unless allowed?
+
+ handle_active_param
+ return error_organization_invalid unless organization_valid?
return error_updating(contact) unless contact.update(params)
ServiceResponse.success(payload: contact)
@@ -12,8 +15,11 @@ module CustomerRelations
private
- def error_no_permissions
- error('You have insufficient permissions to update a contact for this group')
+ def handle_active_param
+ return if params[:active].nil?
+
+ active = params.delete(:active)
+ params[:state] = active ? 'active' : 'inactive'
end
def error_updating(contact)