summaryrefslogtreecommitdiff
path: root/lib/pleroma/stats.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pleroma/stats.ex')
-rw-r--r--lib/pleroma/stats.ex18
1 files changed, 13 insertions, 5 deletions
diff --git a/lib/pleroma/stats.ex b/lib/pleroma/stats.ex
index 4446562ac..8d2809bbb 100644
--- a/lib/pleroma/stats.ex
+++ b/lib/pleroma/stats.ex
@@ -45,11 +45,11 @@ defmodule Pleroma.Stats do
end
def init(_args) do
- {:ok, get_stat_data()}
+ {:ok, calculate_stat_data()}
end
def handle_call(:force_update, _from, _state) do
- new_stats = get_stat_data()
+ new_stats = calculate_stat_data()
{:reply, new_stats, new_stats}
end
@@ -58,12 +58,12 @@ defmodule Pleroma.Stats do
end
def handle_cast(:run_update, _state) do
- new_stats = get_stat_data()
+ new_stats = calculate_stat_data()
{:noreply, new_stats}
end
- defp get_stat_data do
+ def calculate_stat_data do
peers =
from(
u in User,
@@ -77,7 +77,15 @@ defmodule Pleroma.Stats do
status_count = Repo.aggregate(User.Query.build(%{local: true}), :sum, :note_count)
- user_count = Repo.aggregate(User.Query.build(%{local: true, active: true}), :count, :id)
+ users_query =
+ from(u in User,
+ where: u.deactivated != true,
+ where: u.local == true,
+ where: not is_nil(u.nickname),
+ where: not u.invisible
+ )
+
+ user_count = Repo.aggregate(users_query, :count, :id)
%{
peers: peers,