Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Pleroma
pleroma
Commits
b92e38d2
Commit
b92e38d2
authored
Oct 29, 2018
by
scarlett
Browse files
Add user reactivation task.
parent
a880e0a5
Changes
5
Hide whitespace changes
Inline
Side-by-side
lib/mix/tasks/deactivate_user.ex
View file @
b92e38d2
...
...
@@ -2,7 +2,7 @@ defmodule Mix.Tasks.DeactivateUser do
use
Mix
.
Task
alias
Pleroma
.
User
@shortdoc
"
Toggle deactivation status for
a user"
@shortdoc
"
Deactivate
a user"
def
run
([
nickname
])
do
Mix
.
Task
.
run
(
"app.start"
)
...
...
lib/mix/tasks/reactivate_user.ex
0 → 100644
View file @
b92e38d2
defmodule
Mix
.
Tasks
.
ReactivateUser
do
use
Mix
.
Task
alias
Pleroma
.
User
@shortdoc
"Reactivate a user"
def
run
([
nickname
])
do
Mix
.
Task
.
run
(
"app.start"
)
with
user
<-
User
.
get_by_nickname
(
nickname
)
do
User
.
deactivate
(
user
,
false
)
end
end
end
lib/pleroma/user.ex
View file @
b92e38d2
...
...
@@ -622,8 +622,8 @@ def moderator_user_query() do
)
end
def
deactivate
(%
User
{}
=
user
)
do
new_info
=
Map
.
put
(
user
.
info
,
"deactivated"
,
true
)
def
deactivate
(%
User
{}
=
user
,
status
\\
true
)
do
new_info
=
Map
.
put
(
user
.
info
,
"deactivated"
,
status
)
cs
=
User
.
info_changeset
(
user
,
%{
info:
new_info
})
update_and_set_cache
(
cs
)
end
...
...
lib/pleroma/web/activity_pub/activity_pub.ex
View file @
b92e38d2
...
...
@@ -44,7 +44,7 @@ defp get_recipients(data) do
defp
check_actor_is_active
(
actor
)
do
if
not
is_nil
(
actor
)
do
with
user
<-
User
.
get_cached_by_ap_id
(
actor
),
nil
<-
user
.
info
[
"deactivated"
]
do
false
<-
!!
user
.
info
[
"deactivated"
]
do
:ok
else
_e
->
:reject
...
...
test/user_test.exs
View file @
b92e38d2
...
...
@@ -487,11 +487,13 @@ test "get recipients from activity" do
assert
addressed
in
recipients
end
test
".deactivate deactivate
s
a user"
do
test
".deactivate
can
de
-
activate
then re-activate
a user"
do
user
=
insert
(
:user
)
assert
false
==
!!user
.
info
[
"deactivated"
]
{
:ok
,
user
}
=
User
.
deactivate
(
user
)
assert
true
==
user
.
info
[
"deactivated"
]
{
:ok
,
user
}
=
User
.
deactivate
(
user
,
false
)
assert
false
==
!!user
.
info
[
"deactivated"
]
end
test
".delete deactivates a user, all follow relationships and all create activities"
do
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment