@@ -31,7 +33,7 @@ defmodule DecentralisedBookIndexWeb.Components.MyComponents.SearchResources do
- <%= if @current_user != nil and Role.can_moderate?(@current_user.role) do %>
+ <%= if can_add?(@current_user, @moderator_role) do %>
<.link patch={@resource_new_url}>
"""
end
+
+ defp can_add?(current_user, role) do
+ case role do
+ :admin -> current_user != nil and Role.can_moderate?(current_user.role)
+ :moderator -> current_user != nil and Role.can_moderate?(current_user.role)
+ _ -> false
+ end
+ end
end
diff --git a/lib/decentralised_book_index_web/live/dbi_server_live/index.ex b/lib/decentralised_book_index_web/live/dbi_server_live/index.ex
index f2a232b..badaa91 100644
--- a/lib/decentralised_book_index_web/live/dbi_server_live/index.ex
+++ b/lib/decentralised_book_index_web/live/dbi_server_live/index.ex
@@ -18,6 +18,7 @@ defmodule DecentralisedBookIndexWeb.DbiServerLive.Index do
current_user={@current_user}
resource_type="server"
resource_new_url={~p"/servers/new"}
+ moderator_role={:admin}
/>