Fix credo style reports following it's update
Mainly transform `with` into `case` Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
@@ -295,9 +295,10 @@ defmodule Mobilizon.Actors.Actor do
|
||||
"""
|
||||
@spec prepare_public_key(String.t()) :: {:ok, tuple()} | {:error, :pem_decode_error}
|
||||
def prepare_public_key(public_key_code) do
|
||||
with [public_key_entry] <- :public_key.pem_decode(public_key_code) do
|
||||
{:ok, :public_key.pem_entry_decode(public_key_entry)}
|
||||
else
|
||||
case :public_key.pem_decode(public_key_code) do
|
||||
[public_key_entry] ->
|
||||
{:ok, :public_key.pem_entry_decode(public_key_entry)}
|
||||
|
||||
_err ->
|
||||
{:error, :pem_decode_error}
|
||||
end
|
||||
@@ -423,10 +424,10 @@ defmodule Mobilizon.Actors.Actor do
|
||||
"""
|
||||
@spec unfollow(struct(), struct()) :: {:ok, Follower.t()} | {:error, Ecto.Changeset.t()}
|
||||
def unfollow(%Actor{} = followed, %Actor{} = follower) do
|
||||
with {:already_following, %Follower{} = follow} <-
|
||||
{:already_following, following?(follower, followed)} do
|
||||
Actors.delete_follower(follow)
|
||||
else
|
||||
case {:already_following, following?(follower, followed)} do
|
||||
{:already_following, %Follower{} = follow} ->
|
||||
Actors.delete_follower(follow)
|
||||
|
||||
{:already_following, false} ->
|
||||
{:error, "Could not unfollow actor: you are not following #{followed.preferred_username}"}
|
||||
end
|
||||
|
||||
@@ -281,21 +281,21 @@ defmodule Mobilizon.Actors do
|
||||
data
|
||||
|> Actor.remote_actor_creation()
|
||||
|
||||
with {:ok, actor} <-
|
||||
Repo.insert(
|
||||
cs,
|
||||
on_conflict: [
|
||||
set: [
|
||||
keys: data.keys,
|
||||
name: data.name,
|
||||
summary: data.summary
|
||||
]
|
||||
],
|
||||
conflict_target: [:url]
|
||||
) do
|
||||
actor = if preload, do: Repo.preload(actor, [:followers]), else: actor
|
||||
{:ok, actor}
|
||||
else
|
||||
case Repo.insert(
|
||||
cs,
|
||||
on_conflict: [
|
||||
set: [
|
||||
keys: data.keys,
|
||||
name: data.name,
|
||||
summary: data.summary
|
||||
]
|
||||
],
|
||||
conflict_target: [:url]
|
||||
) do
|
||||
{:ok, actor} ->
|
||||
actor = if preload, do: Repo.preload(actor, [:followers]), else: actor
|
||||
{:ok, actor}
|
||||
|
||||
err ->
|
||||
Logger.error(inspect(err))
|
||||
{:error, err}
|
||||
@@ -474,9 +474,10 @@ defmodule Mobilizon.Actors do
|
||||
# TODO: Move this to Mobilizon.Service.ActivityPub
|
||||
@spec get_or_fetch_by_url(String.t(), bool()) :: {:ok, Actor.t()} | {:error, String.t()}
|
||||
def get_or_fetch_by_url(url, preload \\ false) do
|
||||
with {:ok, actor} <- get_actor_by_url(url, preload) do
|
||||
{:ok, actor}
|
||||
else
|
||||
case get_actor_by_url(url, preload) do
|
||||
{:ok, actor} ->
|
||||
{:ok, actor}
|
||||
|
||||
_ ->
|
||||
case ActivityPub.make_actor_from_url(url, preload) do
|
||||
{:ok, actor} ->
|
||||
@@ -497,9 +498,10 @@ defmodule Mobilizon.Actors do
|
||||
# TODO: Move this to Mobilizon.Service.ActivityPub
|
||||
@spec get_or_fetch_by_url!(String.t(), bool()) :: Actor.t()
|
||||
def get_or_fetch_by_url!(url, preload \\ false) do
|
||||
with {:ok, actor} <- get_actor_by_url(url, preload) do
|
||||
actor
|
||||
else
|
||||
case get_actor_by_url(url, preload) do
|
||||
{:ok, actor} ->
|
||||
actor
|
||||
|
||||
_ ->
|
||||
case ActivityPub.make_actor_from_url(url, preload) do
|
||||
{:ok, actor} ->
|
||||
@@ -1001,9 +1003,10 @@ defmodule Mobilizon.Actors do
|
||||
end
|
||||
|
||||
defp safe_remove_file(url, %Actor{} = actor) do
|
||||
with {:ok, _value} <- MobilizonWeb.Upload.remove(url) do
|
||||
{:ok, actor}
|
||||
else
|
||||
case MobilizonWeb.Upload.remove(url) do
|
||||
{:ok, _value} ->
|
||||
{:ok, actor}
|
||||
|
||||
{:error, error} ->
|
||||
Logger.error("Error while removing an upload file")
|
||||
Logger.error(inspect(error))
|
||||
|
||||
@@ -187,10 +187,12 @@ defmodule Mobilizon.Events do
|
||||
|
||||
def get_cached_event_full_by_uuid(uuid) do
|
||||
Cachex.fetch(:activity_pub, "event_" <> uuid, fn "event_" <> uuid ->
|
||||
with %Event{} = event <- get_event_full_by_uuid(uuid) do
|
||||
{:commit, event}
|
||||
else
|
||||
_ -> {:ignore, nil}
|
||||
case get_event_full_by_uuid(uuid) do
|
||||
%Event{} = event ->
|
||||
{:commit, event}
|
||||
|
||||
_ ->
|
||||
{:ignore, nil}
|
||||
end
|
||||
end)
|
||||
end
|
||||
@@ -1133,10 +1135,12 @@ defmodule Mobilizon.Events do
|
||||
|
||||
def get_cached_comment_full_by_uuid(uuid) do
|
||||
Cachex.fetch(:activity_pub, "comment_" <> uuid, fn "comment_" <> uuid ->
|
||||
with %Comment{} = comment <- get_comment_full_from_uuid(uuid) do
|
||||
{:commit, comment}
|
||||
else
|
||||
_ -> {:ignore, nil}
|
||||
case get_comment_full_from_uuid(uuid) do
|
||||
%Comment{} = comment ->
|
||||
{:commit, comment}
|
||||
|
||||
_ ->
|
||||
{:ignore, nil}
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
@@ -235,8 +235,9 @@ defmodule Mobilizon.Users do
|
||||
end
|
||||
|
||||
def update_user_default_actor(user_id, actor_id) do
|
||||
with from(u in User, where: u.id == ^user_id, update: [set: [default_actor_id: ^actor_id]])
|
||||
|> Repo.update_all([]) do
|
||||
with _ <-
|
||||
from(u in User, where: u.id == ^user_id, update: [set: [default_actor_id: ^actor_id]])
|
||||
|> Repo.update_all([]) do
|
||||
Repo.get!(User, user_id) |> Repo.preload([:default_actor])
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user