Merge branch 'develop' into feature/polls-2-electric-boogalo
[akkoma] / lib / pleroma / user / info.ex
index ef506c8da206d516a6620970522bb1318732e7f9..88bec76a77f8ca397fbce0b258c86dabfa948ad1 100644 (file)
@@ -46,7 +46,12 @@ defmodule Pleroma.User.Info do
     field(:emoji, {:array, :map}, default: [])
 
     field(:notification_settings, :map,
-      default: %{"remote" => true, "local" => true, "followers" => true, "follows" => true}
+      default: %{
+        "followers" => true,
+        "follows" => true,
+        "non_follows" => true,
+        "non_followers" => true
+      }
     )
 
     # Found in the wild
@@ -67,10 +72,15 @@ defmodule Pleroma.User.Info do
   end
 
   def update_notification_settings(info, settings) do
+    settings =
+      settings
+      |> Enum.map(fn {k, v} -> {k, v in [true, "true", "True", "1"]} end)
+      |> Map.new()
+
     notification_settings =
       info.notification_settings
       |> Map.merge(settings)
-      |> Map.take(["remote", "local", "followers", "follows"])
+      |> Map.take(["followers", "follows", "non_follows", "non_followers"])
 
     params = %{notification_settings: notification_settings}