2022-01-01 13:38:12 +00:00
|
|
|
# Copyright (C) 2012-2022 Zammad Foundation, https://zammad-foundation.org/
|
2021-10-20 09:43:35 +00:00
|
|
|
|
|
|
|
class Sequencer
|
|
|
|
class Unit
|
|
|
|
module Import
|
|
|
|
module Kayako
|
|
|
|
module User
|
|
|
|
class Identifier < Sequencer::Unit::Common::Provider::Named
|
|
|
|
|
|
|
|
uses :resource
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def identifier
|
|
|
|
{
|
|
|
|
email: primary_value('emails', 'email'),
|
|
|
|
phone: primary_value('phones', 'number'),
|
|
|
|
twitter: primary_value('twitter', 'screen_name'),
|
|
|
|
facebook: primary_value('facebook', 'facebook_id'),
|
|
|
|
}
|
|
|
|
end
|
|
|
|
|
|
|
|
def primary_value(type, field_name)
|
|
|
|
primary_item = resource[type]&.detect { |item| item['is_primary'] }
|
|
|
|
primary_item&.fetch(field_name)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|