Separating of Storage context
This commit is contained in:
@@ -26,25 +26,24 @@ defmodule Mobilizon.Actors.Actor do
|
||||
@moduledoc """
|
||||
Represents an actor (local and remote actors)
|
||||
"""
|
||||
|
||||
use Ecto.Schema
|
||||
|
||||
import Ecto.Changeset
|
||||
import Ecto.Query
|
||||
|
||||
alias Mobilizon.Actors
|
||||
alias Mobilizon.Actors.{Actor, Follower, Member}
|
||||
alias Mobilizon.Config
|
||||
alias Mobilizon.Events.{Event, FeedToken}
|
||||
alias Mobilizon.Media.File
|
||||
alias Mobilizon.Users.User
|
||||
|
||||
alias Mobilizon.Reports.{Report, Note}
|
||||
alias Mobilizon.Storage.{Page, Repo}
|
||||
alias Mobilizon.Users.User
|
||||
|
||||
alias MobilizonWeb.Router.Helpers, as: Routes
|
||||
alias MobilizonWeb.Endpoint
|
||||
|
||||
import Ecto.Query
|
||||
import Mobilizon.Ecto
|
||||
alias Mobilizon.Repo
|
||||
|
||||
require Logger
|
||||
|
||||
# @type t :: %Actor{description: String.t, id: integer(), inserted_at: DateTime.t, updated_at: DateTime.t, display_name: String.t, domain: String.t, keys: String.t, suspended: boolean(), url: String.t, username: String.t, organized_events: list(), groups: list(), group_request: list(), user: User.t, field: ActorTypeEnum.t}
|
||||
@@ -383,7 +382,7 @@ defmodule Mobilizon.Actors.Actor do
|
||||
)
|
||||
|
||||
total = Task.async(fn -> Repo.aggregate(query, :count, :id) end)
|
||||
elements = Task.async(fn -> Repo.all(paginate(query, page, limit)) end)
|
||||
elements = Task.async(fn -> Repo.all(Page.paginate(query, page, limit)) end)
|
||||
|
||||
%{total: Task.await(total), elements: Task.await(elements)}
|
||||
end
|
||||
@@ -428,7 +427,7 @@ defmodule Mobilizon.Actors.Actor do
|
||||
)
|
||||
|
||||
total = Task.async(fn -> Repo.aggregate(query, :count, :id) end)
|
||||
elements = Task.async(fn -> Repo.all(paginate(query, page, limit)) end)
|
||||
elements = Task.async(fn -> Repo.all(Page.paginate(query, page, limit)) end)
|
||||
|
||||
%{total: Task.await(total), elements: Task.await(elements)}
|
||||
end
|
||||
|
||||
@@ -3,16 +3,15 @@ defmodule Mobilizon.Actors do
|
||||
The Actors context.
|
||||
"""
|
||||
|
||||
import Ecto.Query, warn: false
|
||||
import Mobilizon.Ecto
|
||||
import Ecto.Query
|
||||
|
||||
alias Mobilizon.Repo
|
||||
alias Ecto.Multi
|
||||
|
||||
alias Mobilizon.Actors.{Actor, Bot, Member, Follower}
|
||||
alias Mobilizon.Media.File
|
||||
alias Ecto.Multi
|
||||
|
||||
alias Mobilizon.Service.ActivityPub
|
||||
alias Mobilizon.Storage.{Page, Repo}
|
||||
|
||||
require Logger
|
||||
|
||||
@doc false
|
||||
@@ -203,7 +202,7 @@ defmodule Mobilizon.Actors do
|
||||
where: a.type == ^:Group,
|
||||
where: a.visibility in [^:public, ^:unlisted]
|
||||
)
|
||||
|> paginate(page, limit)
|
||||
|> Page.paginate(page, limit)
|
||||
)
|
||||
end
|
||||
|
||||
@@ -586,7 +585,7 @@ defmodule Mobilizon.Actors do
|
||||
^username
|
||||
)
|
||||
)
|
||||
|> paginate(page, limit)
|
||||
|> Page.paginate(page, limit)
|
||||
|
||||
total = Task.async(fn -> Repo.aggregate(query, :count, :id) end)
|
||||
elements = Task.async(fn -> Repo.all(query) end)
|
||||
@@ -652,7 +651,7 @@ defmodule Mobilizon.Actors do
|
||||
})
|
||||
|
||||
try do
|
||||
Mobilizon.Repo.insert!(actor)
|
||||
Repo.insert!(actor)
|
||||
rescue
|
||||
e in Ecto.InvalidChangesetError ->
|
||||
{:error, e.changeset}
|
||||
|
||||
@@ -12,15 +12,14 @@ defmodule Mobilizon.Actors.Member do
|
||||
@moduledoc """
|
||||
Represents the membership of an actor to a group
|
||||
"""
|
||||
|
||||
use Ecto.Schema
|
||||
|
||||
import Ecto.Changeset
|
||||
import Ecto.Query, warn: false
|
||||
import Mobilizon.Ecto
|
||||
import Ecto.Query
|
||||
|
||||
alias Mobilizon.Actors.Member
|
||||
alias Mobilizon.Actors.Actor
|
||||
alias Mobilizon.Repo
|
||||
alias Mobilizon.Actors.{Actor, Member}
|
||||
alias Mobilizon.Storage.{Page, Repo}
|
||||
|
||||
schema "members" do
|
||||
field(:role, Mobilizon.Actors.MemberRoleEnum, default: :member)
|
||||
@@ -64,7 +63,7 @@ defmodule Mobilizon.Actors.Member do
|
||||
where: m.parent_id == ^id and (m.role == ^:creator or m.role == ^:administrator),
|
||||
preload: [:actor]
|
||||
)
|
||||
|> paginate(page, limit)
|
||||
|> Page.paginate(page, limit)
|
||||
)
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user