Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F74468762
info.ex
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
2 KB
Referenced Files
None
Subscribers
None
info.ex
View Options
defmodule
Pleroma.User.Info
do
use
Ecto.Schema
import
Ecto.Changeset
embedded_schema
do
field
(
:banner
,
:map
,
default
:
%{})
field
(
:background
,
:string
,
default
:
nil
)
field
(
:source_data
,
:map
,
default
:
%{})
field
(
:note_count
,
:integer
,
default
:
0
)
field
(
:follower_count
,
:integer
,
default
:
0
)
field
(
:locked
,
:boolean
,
default
:
false
)
field
(
:default_scope
,
:string
,
default
:
"public"
)
field
(
:blocks
,
{
:array
,
:string
},
default
:
[])
field
(
:domain_blocks
,
{
:array
,
:string
},
default
:
[])
field
(
:deactivated
,
:boolean
,
default
:
false
)
field
(
:no_rich_text
,
:boolean
,
default
:
false
)
field
(
:ap_enabled
,
:boolean
,
default
:
false
)
field
(
:is_moderator
,
:boolean
,
default
:
false
)
field
(
:keys
,
:string
,
default
:
nil
)
end
def
set_activation_status
(
info
,
deactivated
)
do
params
=
%{
deactivated
:
deactivated
}
info
|>
cast
(
params
,
[
:deactivated
])
|>
validate_required
([
:deactivated
])
end
def
add_to_note_count
(
info
,
number
)
do
set_note_count
(
info
,
info
.
note_count
+
number
)
end
def
set_note_count
(
info
,
number
)
do
params
=
%{
note_count
:
Enum
.
max
([
0
,
number
])}
info
|>
cast
(
params
,
[
:note_count
])
|>
validate_required
([
:note_count
])
end
def
set_follower_count
(
info
,
number
)
do
params
=
%{
follower_count
:
Enum
.
max
([
0
,
number
])}
info
|>
cast
(
params
,
[
:follower_count
])
|>
validate_required
([
:follower_count
])
end
def
set_blocks
(
info
,
blocks
)
do
params
=
%{
blocks
:
blocks
}
info
|>
cast
(
params
,
[
:blocks
])
|>
validate_required
([
:blocks
])
end
def
add_to_block
(
info
,
blocked
)
do
set_blocks
(
info
,
Enum
.
uniq
([
blocked
|
info
.
blocks
]))
end
def
remove_from_block
(
info
,
blocked
)
do
set_blocks
(
info
,
List
.
delete
(
info
.
blocks
,
blocked
))
end
def
set_domain_blocks
(
info
,
domain_blocks
)
do
params
=
%{
domain_blocks
:
domain_blocks
}
info
|>
cast
(
params
,
[
:domain_blocks
])
|>
validate_required
([
:domain_blocks
])
end
def
add_to_domain_block
(
info
,
domain_blocked
)
do
set_domain_blocks
(
info
,
Enum
.
uniq
([
domain_blocked
|
info
.
domain_blocks
]))
end
def
remove_from_domain_block
(
info
,
domain_blocked
)
do
set_domain_blocks
(
info
,
List
.
delete
(
info
.
domain_blocks
,
domain_blocked
))
end
def
set_keys
(
info
,
keys
)
do
params
=
%{
keys
:
keys
}
info
|>
cast
(
params
,
[
:keys
])
|>
validate_required
([
:keys
])
end
def
remote_user_creation
(
info
,
params
)
do
info
|>
cast
(
params
,
[
:source_data
])
end
# Receives data from user_data_from_user_object
def
user_upgrade
(
info
,
params
)
do
info
|>
cast
(
params
,
[
:ap_enabled
,
:source_data
,
:banner
,
:locked
])
end
end
File Metadata
Details
Attached
Mime Type
text/x-ruby
Expires
Sat, Apr 25, 1:14 PM (22 h, 48 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1390428
Default Alt Text
info.ex (2 KB)
Attached To
Mode
rPUBE pleroma-upstream
Attached
Detach File
Event Timeline
Log In to Comment