From efd7aa704c2ca7543936d81352f1948614b763fd Mon Sep 17 00:00:00 2001
From: Chaska <166928710+chaskayote@users.noreply.github.com>
Date: Mon, 29 Apr 2024 19:56:15 -0500
Subject: [PATCH] fixing ALL the formatting

---
 lib/philomena/artist_links/artist_link.ex |  3 +-
 lib/philomena/dnp_entries/dnp_entry.ex    |  3 +-
 lib/philomena/images/tag_validator.ex     | 17 ++++++----
 lib/philomena/scrapers/derpibooru.ex      | 18 ++++++-----
 lib/philomena/scrapers/e621.ex            | 33 ++++++++++++--------
 lib/philomena/scrapers/furaffinity.ex     | 26 +++++++++-------
 lib/philomena/scrapers/furbooru.ex        | 18 ++++++-----
 lib/philomena/scrapers/inkbunny.ex        | 22 ++++++++-----
 lib/philomena/scrapers/pixiv.ex           | 38 +++++++++++++----------
 lib/philomena_web/plugs/scraper_plug.ex   | 11 ++++---
 lib/philomena_web/views/image_view.ex     | 14 +++++----
 mix.lock                                  |  2 ++
 12 files changed, 119 insertions(+), 86 deletions(-)

diff --git a/lib/philomena/artist_links/artist_link.ex b/lib/philomena/artist_links/artist_link.ex
index 3ac089de..d9e3ca3a 100644
--- a/lib/philomena/artist_links/artist_link.ex
+++ b/lib/philomena/artist_links/artist_link.ex
@@ -63,7 +63,8 @@ defmodule Philomena.ArtistLinks.ArtistLink do
   def validate_category(changeset) do
     tag = get_field(changeset, :tag)
 
-    if not is_nil(tag) and tag.category not in ["origin", "oc", "director", "writer", "colorist", "content-fanmade"] do
+    if not is_nil(tag) and
+         tag.category not in ["origin", "oc", "director", "writer", "colorist", "content-fanmade"] do
       add_error(changeset, :tag, "must be a creator, fanmade, or oc tag")
     else
       changeset
diff --git a/lib/philomena/dnp_entries/dnp_entry.ex b/lib/philomena/dnp_entries/dnp_entry.ex
index 21c0a4d4..d843e8cf 100644
--- a/lib/philomena/dnp_entries/dnp_entry.ex
+++ b/lib/philomena/dnp_entries/dnp_entry.ex
@@ -74,8 +74,7 @@ defmodule Philomena.DnpEntries.DnpEntry do
        "I only want to allow art of a certain type or from a certain location to be uploaded to CubFur"},
       {"With Permission Only",
        "I only want people with my permission to be allowed to upload my art to CubFur"},
-      {"Artist Upload Only",
-       "I want to be the only person allowed to upload my art to CubFur"},
+      {"Artist Upload Only", "I want to be the only person allowed to upload my art to CubFur"},
       {"Other", "I would like a DNP entry under other conditions"}
     ]
   end
diff --git a/lib/philomena/images/tag_validator.ex b/lib/philomena/images/tag_validator.ex
index e5fff775..0997cc5d 100644
--- a/lib/philomena/images/tag_validator.ex
+++ b/lib/philomena/images/tag_validator.ex
@@ -4,9 +4,13 @@ defmodule Philomena.Images.TagValidator do
 
   def validate_tags(changeset) do
     blacklist = Config.get(:tag)["blacklist"]
-    tags = changeset |> get_field(:tags) |> Enum.reject(fn x ->
-      x.name in blacklist
-    end)
+
+    tags =
+      changeset
+      |> get_field(:tags)
+      |> Enum.reject(fn x ->
+        x.name in blacklist
+      end)
 
     validate_tag_input(changeset, tags)
   end
@@ -49,9 +53,10 @@ defmodule Philomena.Images.TagValidator do
   end
 
   def strip_bad_words(changeset, tags) do
-    tag_input = tags
-    |> Enum.reduce([], fn x, acc -> [x.name | acc] end)
-    |> Enum.join(", ")
+    tag_input =
+      tags
+      |> Enum.reduce([], fn x, acc -> [x.name | acc] end)
+      |> Enum.join(", ")
 
     changeset
     |> put_change(:tag_input, tag_input)
diff --git a/lib/philomena/scrapers/derpibooru.ex b/lib/philomena/scrapers/derpibooru.ex
index c5698990..ef44d541 100644
--- a/lib/philomena/scrapers/derpibooru.ex
+++ b/lib/philomena/scrapers/derpibooru.ex
@@ -7,24 +7,26 @@ defmodule Philomena.Scrapers.Derpibooru do
   end
 
   def scrape(_uri, url) do
-[_, submission_id] = Regex.run(@url_regex, url, capture: :all)
+    [_, submission_id] = Regex.run(@url_regex, url, capture: :all)
     api_url = "https://derpibooru.org/api/v1/json/images/#{submission_id}"
     {:ok, %Tesla.Env{status: 200, body: body}} = Philomena.Http.get(api_url)
 
     json = Jason.decode!(body)
     submission = json["image"]
-    
+
     tags = submission["tags"]
-        
+
     %{
       source_url: url,
       tags: tags,
       sources: submission["source_urls"],
       description: submission["description"],
-      images: [%{
-        url: "#{submission["representations"]["full"]}",
-        camo_url: Camo.Image.image_url(submission["representations"]["medium"])
-      }]
+      images: [
+        %{
+          url: "#{submission["representations"]["full"]}",
+          camo_url: Camo.Image.image_url(submission["representations"]["medium"])
+        }
+      ]
     }
   end
-end
\ No newline at end of file
+end
diff --git a/lib/philomena/scrapers/e621.ex b/lib/philomena/scrapers/e621.ex
index 3797c538..6b94ee1b 100644
--- a/lib/philomena/scrapers/e621.ex
+++ b/lib/philomena/scrapers/e621.ex
@@ -14,16 +14,19 @@ defmodule Philomena.Scrapers.E621 do
     submission = json["post"]
 
     tags = submission["tags"]["general"] ++ submission["tags"]["species"]
-    tags = for x <- tags do
-      String.replace(x, "_", " ")
-    end
 
-    rating = case submission["rating"] do
-      "s" -> "safe"
-      "q" -> "suggestive"
-      "e" -> "explicit"
-      _ -> nil
-    end
+    tags =
+      for x <- tags do
+        String.replace(x, "_", " ")
+      end
+
+    rating =
+      case submission["rating"] do
+        "s" -> "safe"
+        "q" -> "suggestive"
+        "e" -> "explicit"
+        _ -> nil
+      end
 
     tags = if is_nil(rating), do: tags, else: [rating | tags]
 
@@ -33,15 +36,19 @@ defmodule Philomena.Scrapers.E621 do
       tags: tags,
       sources: submission["sources"],
       description: submission["description"],
-      images: [%{
-        url: "#{submission["file"]["url"]}",
-        camo_url: Camo.Image.image_url(submission["file"]["url"])
-      }]
+      images: [
+        %{
+          url: "#{submission["file"]["url"]}",
+          camo_url: Camo.Image.image_url(submission["file"]["url"])
+        }
+      ]
     }
   end
+
   defp e621_user do
     Application.get_env(:philomena, :e621_user)
   end
+
   defp e621_apikey do
     Application.get_env(:philomena, :e621_apikey)
   end
diff --git a/lib/philomena/scrapers/furaffinity.ex b/lib/philomena/scrapers/furaffinity.ex
index 2ad451df..6fb58657 100644
--- a/lib/philomena/scrapers/furaffinity.ex
+++ b/lib/philomena/scrapers/furaffinity.ex
@@ -13,19 +13,21 @@ defmodule Philomena.Scrapers.Furaffinity do
 
     submission = Jason.decode!(body)
 
-    rating = case submission["rating"] do
-      "General" -> "safe"
-      "Mature" -> "suggestive"
-      "Adult" -> "explicit"
-      _ -> nil
-    end
+    rating =
+      case submission["rating"] do
+        "General" -> "safe"
+        "Mature" -> "suggestive"
+        "Adult" -> "explicit"
+        _ -> nil
+      end
 
-    description = submission["description"]
-    |> HtmlSanitizeEx.strip_tags()
-    |> String.replace(~r/  +/, " ")
-    |> String.replace(~r/\n \n +/, "\n")
-    |> String.replace(~r/\n /, "\n")
-    |> String.trim()
+    description =
+      submission["description"]
+      |> HtmlSanitizeEx.strip_tags()
+      |> String.replace(~r/  +/, " ")
+      |> String.replace(~r/\n \n +/, "\n")
+      |> String.replace(~r/\n /, "\n")
+      |> String.trim()
 
     %{
       source_url: url,
diff --git a/lib/philomena/scrapers/furbooru.ex b/lib/philomena/scrapers/furbooru.ex
index 7f40b90e..6afbe9ea 100644
--- a/lib/philomena/scrapers/furbooru.ex
+++ b/lib/philomena/scrapers/furbooru.ex
@@ -7,24 +7,26 @@ defmodule Philomena.Scrapers.Furbooru do
   end
 
   def scrape(_uri, url) do
-[_, submission_id] = Regex.run(@url_regex, url, capture: :all)
+    [_, submission_id] = Regex.run(@url_regex, url, capture: :all)
     api_url = "https://furbooru.org/api/v1/json/images/#{submission_id}"
     {:ok, %Tesla.Env{status: 200, body: body}} = Philomena.Http.get(api_url)
 
     json = Jason.decode!(body)
     submission = json["image"]
-    
+
     tags = submission["tags"]
-        
+
     %{
       source_url: url,
       tags: tags,
       sources: submission["source_urls"],
       description: submission["description"],
-      images: [%{
-        url: "#{submission["representations"]["full"]}",
-        camo_url: Camo.Image.image_url(submission["representations"]["medium"])
-      }]
+      images: [
+        %{
+          url: "#{submission["representations"]["full"]}",
+          camo_url: Camo.Image.image_url(submission["representations"]["medium"])
+        }
+      ]
     }
   end
-end
\ No newline at end of file
+end
diff --git a/lib/philomena/scrapers/inkbunny.ex b/lib/philomena/scrapers/inkbunny.ex
index f75bc438..39edbc44 100644
--- a/lib/philomena/scrapers/inkbunny.ex
+++ b/lib/philomena/scrapers/inkbunny.ex
@@ -7,18 +7,23 @@ defmodule Philomena.Scrapers.Inkbunny do
   end
 
   def scrape(_uri, url) do
-[_, submission_id] = Regex.run(@url_regex, url, capture: :all)
-    api_url = "https://inkbunny.net/api_submissions.php?show_description=yes&sid=#{inkbunny_sid()}&submission_ids=#{submission_id}"
+    [_, submission_id] = Regex.run(@url_regex, url, capture: :all)
+
+    api_url =
+      "https://inkbunny.net/api_submissions.php?show_description=yes&sid=#{inkbunny_sid()}&submission_ids=#{submission_id}"
+
     {:ok, %Tesla.Env{status: 200, body: body}} = Philomena.Http.get(api_url)
 
     json = Jason.decode!(body)
     [submission] = json["submissions"]
-    images = for x <- submission["files"] do
-      %{
-        url: "#{x["file_url_full"]}",
-        camo_url: Camo.Image.image_url(x["file_url_preview"])
-      }
-    end
+
+    images =
+      for x <- submission["files"] do
+        %{
+          url: "#{x["file_url_full"]}",
+          camo_url: Camo.Image.image_url(x["file_url_preview"])
+        }
+      end
 
     %{
       source_url: url,
@@ -27,6 +32,7 @@ defmodule Philomena.Scrapers.Inkbunny do
       images: images
     }
   end
+
   defp inkbunny_sid do
     Application.get_env(:philomena, :inkbunny_sid)
   end
diff --git a/lib/philomena/scrapers/pixiv.ex b/lib/philomena/scrapers/pixiv.ex
index 91f59431..8e1359fd 100644
--- a/lib/philomena/scrapers/pixiv.ex
+++ b/lib/philomena/scrapers/pixiv.ex
@@ -16,26 +16,30 @@ defmodule Philomena.Scrapers.Pixiv do
 
     description = submission["illust_details"]["comment"]
 
-    images = if submission["illust_details"]["manga_a"] do
-      submission["illust_details"]["manga_a"]
-    else
-      [submission["illust_details"]]
-    end
+    images =
+      if submission["illust_details"]["manga_a"] do
+        submission["illust_details"]["manga_a"]
+      else
+        [submission["illust_details"]]
+      end
 
-    images = for x <- images do
-      pre = x["url_small"] || x["url_s"]
-      {:ok, %Tesla.Env{status: 200, body: body, headers: headers}}
-        = Philomena.Http.get(pre, [{"Referer", "https://pixiv.net/"}])
+    images =
+      for x <- images do
+        pre = x["url_small"] || x["url_s"]
 
-      type = headers
-      |> Enum.into(%{})
-      |> Map.get("content-type")
+        {:ok, %Tesla.Env{status: 200, body: body, headers: headers}} =
+          Philomena.Http.get(pre, [{"Referer", "https://pixiv.net/"}])
 
-      %{
-        url: x["url"],
-        camo_url: "data:#{type};base64,#{Base.encode64(body)}"
-      }
-    end
+        type =
+          headers
+          |> Enum.into(%{})
+          |> Map.get("content-type")
+
+        %{
+          url: x["url"],
+          camo_url: "data:#{type};base64,#{Base.encode64(body)}"
+        }
+      end
 
     %{
       source_url: url,
diff --git a/lib/philomena_web/plugs/scraper_plug.ex b/lib/philomena_web/plugs/scraper_plug.ex
index 628b92ab..a8fa674c 100644
--- a/lib/philomena_web/plugs/scraper_plug.ex
+++ b/lib/philomena_web/plugs/scraper_plug.ex
@@ -14,11 +14,12 @@ defmodule PhilomenaWeb.ScraperPlug do
         conn
 
       %{"scraper_cache" => url} when not is_nil(url) and url != "" ->
-        headers = if String.contains?(url, "pximg.net") do
-          [{"Referer", "https://pixiv.net/"}]
-        else
-          []
-        end
+        headers =
+          if String.contains?(url, "pximg.net") do
+            [{"Referer", "https://pixiv.net/"}]
+          else
+            []
+          end
 
         url
         |> Philomena.Http.get(headers)
diff --git a/lib/philomena_web/views/image_view.ex b/lib/philomena_web/views/image_view.ex
index a433a676..629beb1f 100644
--- a/lib/philomena_web/views/image_view.ex
+++ b/lib/philomena_web/views/image_view.ex
@@ -328,13 +328,15 @@ defmodule PhilomenaWeb.ImageView do
              "fav.me"
            ] ->
         "fab fa-deviantart"
+
       u
       when u in [
-          "inkbunny.net",
-          "ib.metapix.net",
-          "tx.ib.metapix.net"
-        ] ->
-     "fa-solid fa-carrot"
+             "inkbunny.net",
+             "ib.metapix.net",
+             "tx.ib.metapix.net"
+           ] ->
+        "fa-solid fa-carrot"
+
       u
       when u in [
              "cdn.discordapp.com",
@@ -450,7 +452,7 @@ defmodule PhilomenaWeb.ImageView do
 
       u when u in ["etsy.com", "www.etsy.com"] ->
         "fab fa-etsy"
-        
+
       u when u in ["derpibooru.org", "derpicdn.net"] ->
         "fa-solid fa-horse-head"
 
diff --git a/mix.lock b/mix.lock
index 522e7676..f6767a09 100644
--- a/mix.lock
+++ b/mix.lock
@@ -35,6 +35,7 @@
   "gettext": {:hex, :gettext, "0.24.0", "6f4d90ac5f3111673cbefc4ebee96fe5f37a114861ab8c7b7d5b30a1108ce6d8", [:mix], [{:expo, "~> 0.5.1", [hex: :expo, repo: "hexpm", optional: false]}], "hexpm", "bdf75cdfcbe9e4622dd18e034b227d77dd17f0f133853a1c73b97b3d6c770e8b"},
   "hackney": {:hex, :hackney, "1.20.1", "8d97aec62ddddd757d128bfd1df6c5861093419f8f7a4223823537bad5d064e2", [:rebar3], [{:certifi, "~> 2.12.0", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "~> 6.1.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "~> 1.0.0", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~> 1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:parse_trans, "3.4.1", [hex: :parse_trans, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "~> 1.1.0", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}, {:unicode_util_compat, "~> 0.7.0", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "fe9094e5f1a2a2c0a7d10918fee36bfec0ec2a979994cff8cfe8058cd9af38e3"},
   "hpax": {:hex, :hpax, "0.1.2", "09a75600d9d8bbd064cdd741f21fc06fc1f4cf3d0fcc335e5aa19be1a7235c84", [:mix], [], "hexpm", "2c87843d5a23f5f16748ebe77969880e29809580efdaccd615cd3bed628a8c13"},
+  "html_sanitize_ex": {:hex, :html_sanitize_ex, "1.4.3", "67b3d9fa8691b727317e0cc96b9b3093be00ee45419ffb221cdeee88e75d1360", [:mix], [{:mochiweb, "~> 2.15 or ~> 3.1", [hex: :mochiweb, repo: "hexpm", optional: false]}], "hexpm", "87748d3c4afe949c7c6eb7150c958c2bcba43fc5b2a02686af30e636b74bccb7"},
   "httpoison": {:hex, :httpoison, "1.8.2", "9eb9c63ae289296a544842ef816a85d881d4a31f518a0fec089aaa744beae290", [:mix], [{:hackney, "~> 1.17", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "2bb350d26972e30c96e2ca74a1aaf8293d61d0742ff17f01e0279fef11599921"},
   "hut": {:hex, :hut, "1.4.0", "7a1238ec00f95c9ec75412587ee11ac652eca308a7f4b8cc9629746d579d6cf0", [:"erlang.mk", :rebar3], [], "hexpm", "7af8704b9bae98a336f70d9560fc3c97f15665265fa603dbd05352e63d6ebb03"},
   "idna": {:hex, :idna, "6.1.1", "8a63070e9f7d0c62eb9d9fcb360a7de382448200fbbd1b106cc96d3d8099df8d", [:rebar3], [{:unicode_util_compat, "~> 0.7.0", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "92376eb7894412ed19ac475e4a86f7b413c1b9fbb5bd16dccd57934157944cea"},
@@ -45,6 +46,7 @@
   "mimerl": {:hex, :mimerl, "1.2.0", "67e2d3f571088d5cfd3e550c383094b47159f3eee8ffa08e64106cdf5e981be3", [:rebar3], [], "hexpm", "f278585650aa581986264638ebf698f8bb19df297f66ad91b18910dfc6e19323"},
   "mint": {:hex, :mint, "1.5.2", "4805e059f96028948870d23d7783613b7e6b0e2fb4e98d720383852a760067fd", [:mix], [{:castore, "~> 0.1.0 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}, {:hpax, "~> 0.1.1", [hex: :hpax, repo: "hexpm", optional: false]}], "hexpm", "d77d9e9ce4eb35941907f1d3df38d8f750c357865353e21d335bdcdf6d892a02"},
   "mix_audit": {:hex, :mix_audit, "2.1.2", "6cd5c5e2edbc9298629c85347b39fb3210656e541153826efd0b2a63767f3395", [:make, :mix], [{:jason, "~> 1.1", [hex: :jason, repo: "hexpm", optional: false]}, {:yaml_elixir, "~> 2.9", [hex: :yaml_elixir, repo: "hexpm", optional: false]}], "hexpm", "68d2f06f96b9c445a23434c9d5f09682866a5b4e90f631829db1c64f140e795b"},
+  "mochiweb": {:hex, :mochiweb, "3.2.2", "bb435384b3b9fd1f92f2f3fe652ea644432877a3e8a81ed6459ce951e0482ad3", [:rebar3], [], "hexpm", "4114e51f1b44c270b3242d91294fe174ce1ed989100e8b65a1fab58e0cba41d5"},
   "neotoma": {:hex, :neotoma, "1.7.3", "d8bd5404b73273989946e4f4f6d529e5c2088f5fa1ca790b4dbe81f4be408e61", [:rebar], [], "hexpm", "2da322b9b1567ffa0706a7f30f6bbbde70835ae44a1050615f4b4a3d436e0f28"},
   "nimble_options": {:hex, :nimble_options, "1.1.0", "3b31a57ede9cb1502071fade751ab0c7b8dbe75a9a4c2b5bbb0943a690b63172", [:mix], [], "hexpm", "8bbbb3941af3ca9acc7835f5655ea062111c9c27bcac53e004460dfd19008a99"},
   "nimble_parsec": {:hex, :nimble_parsec, "1.4.0", "51f9b613ea62cfa97b25ccc2c1b4216e81df970acd8e16e8d1bdc58fef21370d", [:mix], [], "hexpm", "9c565862810fb383e9838c1dd2d7d2c437b3d13b267414ba6af33e50d2d1cf28"},