From 907e030b3a53d5cd9fdff0dcbfc3cacb276fff88 Mon Sep 17 00:00:00 2001 From: "byte[]" Date: Mon, 30 Dec 2019 16:22:24 -0500 Subject: [PATCH] break compile time dependencies in schema helpers --- lib/philomena/adverts/advert.ex | 10 +++++----- lib/philomena/bans/fingerprint.ex | 10 +++++----- lib/philomena/bans/subnet.ex | 10 +++++----- lib/philomena/bans/user.ex | 10 +++++----- lib/philomena/filters/filter.ex | 12 ++++++------ lib/philomena/schema/search.ex | 2 +- lib/philomena/schema/tag_list.ex | 2 +- lib/philomena/site_notices/site_notice.ex | 10 +++++----- lib/philomena/users/user.ex | 11 ++++++----- 9 files changed, 39 insertions(+), 38 deletions(-) diff --git a/lib/philomena/adverts/advert.ex b/lib/philomena/adverts/advert.ex index 9b2c9bb0..c1425083 100644 --- a/lib/philomena/adverts/advert.ex +++ b/lib/philomena/adverts/advert.ex @@ -2,7 +2,7 @@ defmodule Philomena.Adverts.Advert do use Ecto.Schema import Ecto.Changeset - import Philomena.Schema.Time + alias Philomena.Schema.Time schema "adverts" do field :image, :string @@ -34,15 +34,15 @@ defmodule Philomena.Adverts.Advert do def changeset(advert, attrs) do advert |> cast(attrs, []) - |> propagate_time(:start_date, :start_time) - |> propagate_time(:finish_date, :finish_time) + |> Time.propagate_time(:start_date, :start_time) + |> Time.propagate_time(:finish_date, :finish_time) end def save_changeset(advert, attrs) do advert |> cast(attrs, [:title, :link, :start_time, :finish_time, :live, :restrictions, :notes]) - |> assign_time(:start_time, :start_date) - |> assign_time(:finish_time, :finish_date) + |> Time.assign_time(:start_time, :start_date) + |> Time.assign_time(:finish_time, :finish_date) |> validate_required([:title, :link, :start_date, :finish_date]) |> validate_inclusion(:restrictions, ["none", "nsfw", "sfw"]) end diff --git a/lib/philomena/bans/fingerprint.ex b/lib/philomena/bans/fingerprint.ex index cb5ba090..2547e0c0 100644 --- a/lib/philomena/bans/fingerprint.ex +++ b/lib/philomena/bans/fingerprint.ex @@ -3,8 +3,8 @@ defmodule Philomena.Bans.Fingerprint do import Ecto.Changeset alias Philomena.Users.User - import Philomena.Schema.Time - import Philomena.Schema.BanId + alias Philomena.Schema.Time + alias Philomena.Schema.BanId schema "fingerprint_bans" do belongs_to :banning_user, User @@ -25,14 +25,14 @@ defmodule Philomena.Bans.Fingerprint do def changeset(fingerprint_ban, attrs) do fingerprint_ban |> cast(attrs, []) - |> propagate_time(:valid_until, :until) + |> Time.propagate_time(:valid_until, :until) end def save_changeset(fingerprint_ban, attrs) do fingerprint_ban |> cast(attrs, [:reason, :note, :enabled, :fingerprint, :until]) - |> assign_time(:until, :valid_until) - |> put_ban_id("F") + |> Time.assign_time(:until, :valid_until) + |> BanId.put_ban_id("F") |> validate_required([:reason, :enabled, :fingerprint, :valid_until]) end end diff --git a/lib/philomena/bans/subnet.ex b/lib/philomena/bans/subnet.ex index 45285748..8a97fc50 100644 --- a/lib/philomena/bans/subnet.ex +++ b/lib/philomena/bans/subnet.ex @@ -3,8 +3,8 @@ defmodule Philomena.Bans.Subnet do import Ecto.Changeset alias Philomena.Users.User - import Philomena.Schema.Time - import Philomena.Schema.BanId + alias Philomena.Schema.Time + alias Philomena.Schema.BanId schema "subnet_bans" do belongs_to :banning_user, User @@ -25,14 +25,14 @@ defmodule Philomena.Bans.Subnet do def changeset(subnet_ban, attrs) do subnet_ban |> cast(attrs, []) - |> propagate_time(:valid_until, :until) + |> Time.propagate_time(:valid_until, :until) end def save_changeset(subnet_ban, attrs) do subnet_ban |> cast(attrs, [:reason, :note, :enabled, :specification, :until]) - |> assign_time(:until, :valid_until) - |> put_ban_id("S") + |> Time.assign_time(:until, :valid_until) + |> BanId.put_ban_id("S") |> validate_required([:reason, :enabled, :specification, :valid_until]) |> mask_specification() end diff --git a/lib/philomena/bans/user.ex b/lib/philomena/bans/user.ex index 670f8699..43e3ae96 100644 --- a/lib/philomena/bans/user.ex +++ b/lib/philomena/bans/user.ex @@ -4,8 +4,8 @@ defmodule Philomena.Bans.User do alias Philomena.Users.User alias Philomena.Repo - import Philomena.Schema.Time - import Philomena.Schema.BanId + alias Philomena.Schema.Time + alias Philomena.Schema.BanId schema "user_bans" do belongs_to :user, User @@ -28,16 +28,16 @@ defmodule Philomena.Bans.User do def changeset(user_ban, attrs) do user_ban |> cast(attrs, []) - |> propagate_time(:valid_until, :until) + |> Time.propagate_time(:valid_until, :until) |> populate_username() end def save_changeset(user_ban, attrs) do user_ban |> cast(attrs, [:reason, :note, :enabled, :override_ip_ban, :username, :until]) - |> assign_time(:until, :valid_until) + |> Time.assign_time(:until, :valid_until) |> populate_user_id() - |> put_ban_id("U") + |> BanId.put_ban_id("U") |> validate_required([:reason, :enabled, :user_id, :valid_until]) end diff --git a/lib/philomena/filters/filter.ex b/lib/philomena/filters/filter.ex index 79db7c6c..0f8068f3 100644 --- a/lib/philomena/filters/filter.ex +++ b/lib/philomena/filters/filter.ex @@ -1,9 +1,9 @@ defmodule Philomena.Filters.Filter do use Ecto.Schema - import Philomena.Schema.TagList - import Philomena.Schema.Search import Ecto.Changeset + alias Philomena.Schema.TagList + alias Philomena.Schema.Search alias Philomena.Users.User alias Philomena.Repo @@ -35,13 +35,13 @@ defmodule Philomena.Filters.Filter do filter |> cast(attrs, [:spoilered_tag_list, :hidden_tag_list, :description, :name, :spoilered_complex_str, :hidden_complex_str]) - |> propagate_tag_list(:spoilered_tag_list, :spoilered_tag_ids) - |> propagate_tag_list(:hidden_tag_list, :hidden_tag_ids) + |> TagList.propagate_tag_list(:spoilered_tag_list, :spoilered_tag_ids) + |> TagList.propagate_tag_list(:hidden_tag_list, :hidden_tag_ids) |> validate_required([:name, :description]) |> validate_my_downvotes(:spoilered_complex_str) |> validate_my_downvotes(:hidden_complex_str) - |> validate_search(:spoilered_complex_str, user) - |> validate_search(:hidden_complex_str, user) + |> Search.validate_search(:spoilered_complex_str, user) + |> Search.validate_search(:hidden_complex_str, user) |> unsafe_validate_unique([:user_id, :name], Repo) end diff --git a/lib/philomena/schema/search.ex b/lib/philomena/schema/search.ex index 0f67bffb..5145ca73 100644 --- a/lib/philomena/schema/search.ex +++ b/lib/philomena/schema/search.ex @@ -15,4 +15,4 @@ defmodule Philomena.Schema.Search do add_error(changeset, field, "is invalid") end end -end \ No newline at end of file +end diff --git a/lib/philomena/schema/tag_list.ex b/lib/philomena/schema/tag_list.ex index d7224a64..1062d42d 100644 --- a/lib/philomena/schema/tag_list.ex +++ b/lib/philomena/schema/tag_list.ex @@ -49,4 +49,4 @@ defmodule Philomena.Schema.TagList do |> Enum.map(&String.trim(&1)) |> Enum.filter(& &1 != "") end -end \ No newline at end of file +end diff --git a/lib/philomena/site_notices/site_notice.ex b/lib/philomena/site_notices/site_notice.ex index 0da35f06..2accb713 100644 --- a/lib/philomena/site_notices/site_notice.ex +++ b/lib/philomena/site_notices/site_notice.ex @@ -3,7 +3,7 @@ defmodule Philomena.SiteNotices.SiteNotice do import Ecto.Changeset alias Philomena.Users.User - import Philomena.Schema.Time + alias Philomena.Schema.Time schema "site_notices" do belongs_to :user, User @@ -26,15 +26,15 @@ defmodule Philomena.SiteNotices.SiteNotice do def changeset(site_notice, attrs) do site_notice |> cast(attrs, []) - |> propagate_time(:start_date, :start_time) - |> propagate_time(:finish_date, :finish_time) + |> Time.propagate_time(:start_date, :start_time) + |> Time.propagate_time(:finish_date, :finish_time) |> validate_required([]) end def save_changeset(site_notice, attrs) do site_notice |> cast(attrs, [:title, :text, :link, :link_text, :live, :start_time, :finish_time]) - |> assign_time(:start_time, :start_date) - |> assign_time(:finish_time, :finish_date) + |> Time.assign_time(:start_time, :start_date) + |> Time.assign_time(:finish_time, :finish_date) end end diff --git a/lib/philomena/users/user.ex b/lib/philomena/users/user.ex index 2c09d471..eb714c65 100644 --- a/lib/philomena/users/user.ex +++ b/lib/philomena/users/user.ex @@ -12,8 +12,9 @@ defmodule Philomena.Users.User do extensions: [PowResetPassword, PowLockout] import Ecto.Changeset - import Philomena.Schema.TagList - import Philomena.Schema.Search + + alias Philomena.Schema.TagList + alias Philomena.Schema.Search alias Philomena.Filters.Filter alias Philomena.UserLinks.UserLink @@ -206,12 +207,12 @@ defmodule Philomena.Users.User do :anonymous_by_default, :scale_large_images, :comments_per_page, :theme, :no_spoilered_in_watched, :use_centered_layout, :hide_vote_counts ]) - |> propagate_tag_list(:watched_tag_list, :watched_tag_ids) + |> TagList.propagate_tag_list(:watched_tag_list, :watched_tag_ids) |> validate_inclusion(:theme, ~W(default dark red)) |> validate_inclusion(:images_per_page, 15..50) |> validate_inclusion(:comments_per_page, 15..100) - |> validate_search(:watched_images_query_str, user, true) - |> validate_search(:watched_images_exclude_str, user, true) + |> Search.validate_search(:watched_images_query_str, user, true) + |> Search.validate_search(:watched_images_exclude_str, user, true) end def description_changeset(user, attrs) do