diff options
Diffstat (limited to 'lib/mix')
| -rw-r--r-- | lib/mix/tasks/make_moderator.ex | 4 | ||||
| -rw-r--r-- | lib/mix/tasks/sample_config.eex | 3 | ||||
| -rw-r--r-- | lib/mix/tasks/set_locked.ex | 30 | 
3 files changed, 34 insertions, 3 deletions
diff --git a/lib/mix/tasks/make_moderator.ex b/lib/mix/tasks/make_moderator.ex index 20f04c54c..a454a958e 100644 --- a/lib/mix/tasks/make_moderator.ex +++ b/lib/mix/tasks/make_moderator.ex @@ -5,7 +5,7 @@ defmodule Mix.Tasks.SetModerator do    @shortdoc "Set moderator status"    def run([nickname | rest]) do -    ensure_started(Repo, []) +    Application.ensure_all_started(:pleroma)      moderator =        case rest do @@ -19,7 +19,7 @@ defmodule Mix.Tasks.SetModerator do          |> Map.put("is_moderator", !!moderator)        cng = User.info_changeset(user, %{info: info}) -      user = Repo.update!(cng) +      {:ok, user} = User.update_and_set_cache(cng)        IO.puts("Moderator status of #{nickname}: #{user.info["is_moderator"]}")      else diff --git a/lib/mix/tasks/sample_config.eex b/lib/mix/tasks/sample_config.eex index e37c864c0..6db36fa09 100644 --- a/lib/mix/tasks/sample_config.eex +++ b/lib/mix/tasks/sample_config.eex @@ -8,7 +8,8 @@ config :pleroma, :instance,    name: "<%= name %>",    email: "<%= email %>",    limit: 5000, -  registrations_open: true +  registrations_open: true, +  dedupe_media: false  config :pleroma, :media_proxy,    enabled: false, diff --git a/lib/mix/tasks/set_locked.ex b/lib/mix/tasks/set_locked.ex new file mode 100644 index 000000000..2b3b18b09 --- /dev/null +++ b/lib/mix/tasks/set_locked.ex @@ -0,0 +1,30 @@ +defmodule Mix.Tasks.SetLocked do +  use Mix.Task +  import Mix.Ecto +  alias Pleroma.{Repo, User} + +  @shortdoc "Set locked status" +  def run([nickname | rest]) do +    ensure_started(Repo, []) + +    locked = +      case rest do +        [locked] -> locked == "true" +        _ -> true +      end + +    with %User{local: true} = user <- User.get_by_nickname(nickname) do +      info = +        user.info +        |> Map.put("locked", !!locked) + +      cng = User.info_changeset(user, %{info: info}) +      user = Repo.update!(cng) + +      IO.puts("locked status of #{nickname}: #{user.info["locked"]}") +    else +      _ -> +        IO.puts("No local user #{nickname}") +    end +  end +end  | 
