0
0
Fork 0

Add bio fields (#6645)

* Add bio fields

- Fix #3211
- Fix #232
- Fix #121

* Display bio fields in web UI

* Fix output of links and missing fields

* Federate bio fields over ActivityPub as PropertyValue

* Improve how the fields are stored, add to Edit profile form

* Add rel=me to links in fields

Fix #121
This commit is contained in:
Eugen Rochko 2018-04-14 12:41:08 +02:00 committed by GitHub
parent 85ab30abf7
commit 78ed4ab75f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 274 additions and 7 deletions

View file

@ -11,6 +11,7 @@ class ActivityPub::ActorSerializer < ActiveModel::Serializer
has_one :public_key, serializer: ActivityPub::PublicKeySerializer
has_many :virtual_tags, key: :tag
has_many :virtual_attachments, key: :attachment
attribute :moved_to, if: :moved?
@ -107,10 +108,26 @@ class ActivityPub::ActorSerializer < ActiveModel::Serializer
object.emojis
end
def virtual_attachments
object.fields
end
def moved_to
ActivityPub::TagManager.instance.uri_for(object.moved_to_account)
end
class CustomEmojiSerializer < ActivityPub::EmojiSerializer
end
class Account::FieldSerializer < ActiveModel::Serializer
attributes :type, :name, :value
def type
'PropertyValue'
end
def value
Formatter.instance.format_field(object.account, object.value)
end
end
end

View file

@ -9,6 +9,16 @@ class REST::AccountSerializer < ActiveModel::Serializer
has_one :moved_to_account, key: :moved, serializer: REST::AccountSerializer, if: :moved_and_not_nested?
class FieldSerializer < ActiveModel::Serializer
attributes :name, :value
def value
Formatter.instance.format_field(object.account, object.value)
end
end
has_many :fields
def id
object.id.to_s
end