twitterapi: add profile setting for locked/unlocked accounts
[akkoma] / lib / pleroma / web / twitter_api / twitter_api_controller.ex
index d53dd0c44897f6adb5c794dbe61be7a4e5386d19..b078c447efbf18b5b7b65a84a4d139b2823cee77 100644 (file)
@@ -357,6 +357,20 @@ defmodule Pleroma.Web.TwitterAPI.Controller do
         params
       end
 
+    user =
+      if locked = params["locked"] do
+        with locked <- locked == "true",
+             new_info <- Map.put(user.info, "locked", locked),
+             change <- User.info_changeset(user, %{info: new_info}),
+             {:ok, user} <- User.update_and_set_cache(change) do
+          user
+        else
+          _e -> user
+        end
+      else
+        user
+      end
+
     with changeset <- User.update_changeset(user, params),
          {:ok, user} <- User.update_and_set_cache(changeset) do
       CommonAPI.update(user)