1 |
|
-module(mongoose_graphql_domain_admin_query). |
2 |
|
-behaviour(mongoose_graphql). |
3 |
|
|
4 |
|
-export([execute/4]). |
5 |
|
|
6 |
|
-ignore_xref([execute/4]). |
7 |
|
|
8 |
|
-include("../mongoose_graphql_types.hrl"). |
9 |
|
|
10 |
|
execute(_Ctx, admin, <<"domainsByHostType">>, #{<<"hostType">> := HostType}) -> |
11 |
:-( |
Domains = mongoose_domain_api:get_domains_by_host_type(HostType), |
12 |
:-( |
Domains2 = lists:map(fun(D) -> {ok, D} end, Domains), |
13 |
:-( |
{ok, Domains2}; |
14 |
|
execute(_Ctx, admin, <<"domainDetails">>, #{<<"domain">> := Domain}) -> |
15 |
:-( |
case mongoose_domain_sql:select_domain(Domain) of |
16 |
|
{ok, #{host_type := HostType, enabled := Enabled}} -> |
17 |
:-( |
{ok, #domain{host_type = HostType, domain = Domain, |
18 |
|
enabled = Enabled}}; |
19 |
|
{error, not_found} -> |
20 |
:-( |
{error, #{what => domain_not_found, domain => Domain}} |
21 |
|
end. |