View Source Bonfire.Social.FeedFilters (Bonfire v0.9.11-social-beta.6)
Summary
Functions
Creates a changeset for feed filters.
Creates a changeset and validates the data, returning either validated filters or errors.
Types
@type t() :: %Bonfire.Social.FeedFilters{ activity_types: Bonfire.Social.FeedFilters.AtomOrStringList.t() | nil, creator_circles: Bonfire.Social.FeedFilters.StringList.t() | nil, creators: Bonfire.Social.FeedFilters.StringList.t() | nil, exclude_activity_types: Bonfire.Social.FeedFilters.AtomOrStringList.t() | nil, exclude_creators: Bonfire.Social.FeedFilters.StringList.t() | nil, exclude_object_types: Bonfire.Social.FeedFilters.AtomOrStringList.t() | nil, exclude_objects: Bonfire.Social.FeedFilters.StringList.t() | nil, exclude_subject_circles: Bonfire.Social.FeedFilters.StringList.t() | nil, exclude_subject_types: Bonfire.Social.FeedFilters.AtomOrStringList.t() | nil, exclude_subjects: Bonfire.Social.FeedFilters.StringList.t() | nil, feed_ids: Bonfire.Social.FeedFilters.StringList.t() | nil, feed_name: (:my | :explore | :fediverse | :local | :curated | :likes | :bookmarks | :flags | :custom) | nil, include_flags: (nil | false | true | :mod | :admins) | nil, media_types: Bonfire.Social.FeedFilters.AtomOrStringList.t() | nil, object_circles: Bonfire.Social.FeedFilters.StringList.t() | nil, object_types: Bonfire.Social.FeedFilters.AtomOrStringList.t() | nil, objects: Bonfire.Social.FeedFilters.StringList.t() | nil, origin: Bonfire.Social.FeedFilters.AtomOrStringList.t() | nil, show_objects_only_once: boolean() | nil, sort_by: (nil | :date_created | :num_replies | :num_boosts | :num_likes) | nil, sort_order: (:asc | :desc) | nil, subject_circles: Bonfire.Social.FeedFilters.StringList.t() | nil, subject_types: Bonfire.Social.FeedFilters.AtomOrStringList.t() | nil, subjects: Bonfire.Social.FeedFilters.StringList.t() | nil, tags: Bonfire.Social.FeedFilters.StringList.t() | nil, time_limit: integer() | nil }
Functions
Creates a changeset for feed filters.
Examples
iex> #Ecto.Changeset<changes: %{feed_name: :explore, object_types: ["post"]}, errors: [], valid?: true> = changeset(%{feed_name: "explore", object_types: ["post"]})
Creates a changeset and validates the data, returning either validated filters or errors.
Examples
iex> {:ok, %FeedFilters{feed_name: :explore, object_types: [:post]}} =
...> validate(%{feed_name: :explore, object_types: "post"})
iex> {:ok, %FeedFilters{feed_name: :explore, object_types: [:post]}} =
...> validate(%{feed_name: "explore", object_types: ["post"]})
iex> {:ok, %FeedFilters{feed_name: :explore, object_types: [:post]}} =
...> validate(%{"feed_name"=> "explore", "object_types"=> "post"})
iex> {:ok, %FeedFilters{feed_name: nil, object_types: [:post]}} =
...> validate(%{feed_name: nil, object_types: :post})
iex> {:ok, %FeedFilters{object_types: [:post]}} =
...> validate(%{object_types: "post"})
iex> {:error, %Ecto.Changeset{errors: [feed_name: {"is invalid", _}]}} =
...> validate(%{feed_name: :unknown})