Current section

Files

Jump to
blossom lib blossom models users.ex
Raw

lib/blossom/models/users.ex

defmodule Blossom.Models.Users do
alias Blossom.Models.Users
def delete(id, user, schema) do
case user do
:system ->
schema.delete(id)
_ ->
if id == user["sub"] do
schema.delete(id)
else
{:error, :forbidden}
end
end
end
defmacro __using__(opts \\ []) do
quote do
protected_fields = ["blocked", "email_verified"]
use KilnCore.Model,
protected_fields:
Keyword.get(unquote(opts), :protected_fields, protected_fields),
schema: unquote(Keyword.get(opts, :schema))
def delete(id, user) do
Users.delete(id, user, @schema)
end
end
end
end