Add web push support
[akkoma] / lib / pleroma / web / twitter_api / controllers / util_controller.ex
index 5b24809f95fcb2b250729bf5087fcce28402a687..f06020a3e02afd1460b6aeed30440cf78a109754 100644 (file)
@@ -156,13 +156,17 @@ defmodule Pleroma.Web.TwitterAPI.UtilController do
         |> send_resp(200, response)
 
       _ ->
+        vapid_public_key =
+          Keyword.get(Application.get_env(:web_push_encryption, :vapid_details), :public_key)
+
         data = %{
           name: Keyword.get(@instance, :name),
           description: Keyword.get(@instance, :description),
           server: Web.base_url(),
           textlimit: to_string(Keyword.get(@instance, :limit)),
           closed: if(Keyword.get(@instance, :registrations_open), do: "0", else: "1"),
-          private: if(Keyword.get(@instance, :public, true), do: "0", else: "1")
+          private: if(Keyword.get(@instance, :public, true), do: "0", else: "1"),
+          vapidPublicKey: vapid_public_key
         }
 
         pleroma_fe = %{
@@ -176,11 +180,11 @@ defmodule Pleroma.Web.TwitterAPI.UtilController do
           chatDisabled: !Keyword.get(@instance_chat, :enabled),
           showInstanceSpecificPanel: Keyword.get(@instance_fe, :show_instance_panel),
           scopeOptionsEnabled: Keyword.get(@instance_fe, :scope_options_enabled),
-          collapseMessageWithSubject:
-            Keyword.get(@instance_fe, :collapse_message_with_subject)
+          collapseMessageWithSubject: Keyword.get(@instance_fe, :collapse_message_with_subject)
         }
 
         managed_config = Keyword.get(@instance, :managed_config)
+
         data =
           if managed_config do
             data |> Map.put("pleromafe", pleroma_fe)