Merge branch 'develop' into test/activity_pub/transmogrifier.ex
[akkoma] / lib / pleroma / list.ex
index 1d320206e3091b68ec61535247666f42f2232700..c572380c2325b90e0dd58e26a7e71789401c67bc 100644 (file)
@@ -109,15 +109,19 @@ defmodule Pleroma.List do
   end
 
   def create(title, %User{} = creator) do
-    list = %Pleroma.List{user_id: creator.id, title: title}
-
-    Repo.transaction(fn ->
-      list = Repo.insert!(list)
-
-      list
-      |> change(ap_id: "#{creator.ap_id}/lists/#{list.id}")
-      |> Repo.update!()
-    end)
+    changeset = title_changeset(%Pleroma.List{user_id: creator.id}, %{title: title})
+
+    if changeset.valid? do
+      Repo.transaction(fn ->
+        list = Repo.insert!(changeset)
+
+        list
+        |> change(ap_id: "#{creator.ap_id}/lists/#{list.id}")
+        |> Repo.update!()
+      end)
+    else
+      {:error, changeset}
+    end
   end
 
   def follow(%Pleroma.List{following: following} = list, %User{} = followed) do