EpochtalkServer.Models.RoleUser (epochtalk_server v0.1.0)

RoleUser model, for performing actions relating a setting a Role for a User

Link to this section Summary

Functions

Creates a generic changeset for RoleUser model

Removes specified Role from specified User

Assigns a specific User to have the superAdministrator Role

Assigns a specific User to have the specified Role

Link to this section Types

@type t() :: %EpochtalkServer.Models.RoleUser{
  __meta__: term(),
  role: EpochtalkServer.Models.Role.t() | term(),
  role_id: term(),
  user: EpochtalkServer.Models.User.t() | term(),
  user_id: term()
}

Link to this section Functions

Link to this function

changeset(role_user, attrs \\ %{})

@spec changeset(role_user :: t(), attrs :: map() | nil) :: Ecto.Changeset.t()

Creates a generic changeset for RoleUser model

Link to this function

delete_user_role(role_id, user_id)

@spec delete_user_role(
  role_id :: integer(),
  user_id :: integer()
) :: {non_neg_integer(), nil | [term()]}

Removes specified Role from specified User

Link to this function

set_admin(user_id)

@spec set_admin(user_id :: integer()) ::
  {:ok, role_user :: t()} | {:error, Ecto.Changeset.t()}

Assigns a specific User to have the superAdministrator Role

Link to this function

set_user_role(role_id, user_id)

@spec set_user_role(
  role_id :: integer(),
  user_id :: integer()
) :: {:ok, role_user :: t()} | {:error, Ecto.Changeset.t()}

Assigns a specific User to have the specified Role