Require explicit support request confirmation
This commit is contained in:
parent
92e6ee8d70
commit
033718b9f4
|
|
@ -74,6 +74,14 @@ const activateProtectedTokenFragment = () => {
|
||||||
{
|
{
|
||||||
form: document.getElementById("email-change-fragment-form"),
|
form: document.getElementById("email-change-fragment-form"),
|
||||||
input: document.getElementById("email-change-fragment-token")
|
input: document.getElementById("email-change-fragment-token")
|
||||||
|
},
|
||||||
|
{
|
||||||
|
form: document.getElementById("support-confirmation-fragment-form"),
|
||||||
|
input: document.getElementById("support-confirmation-fragment-token")
|
||||||
|
},
|
||||||
|
{
|
||||||
|
form: document.getElementById("content-removal-confirmation-fragment-form"),
|
||||||
|
input: document.getElementById("content-removal-confirmation-fragment-token")
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -138,7 +138,7 @@ defmodule WhoNeedHelp.ContentRemoval do
|
||||||
token = confirmation_token(notice)
|
token = confirmation_token(notice)
|
||||||
|
|
||||||
PublicAccess.url(
|
PublicAccess.url(
|
||||||
"/legal/content-removal/#{notice.id}/verify?token=#{URI.encode_www_form(token)}"
|
"/legal/content-removal/#{notice.id}/verify#token=#{URI.encode_www_form(token)}"
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ defmodule WhoNeedHelp.ContentRemoval.Notifier do
|
||||||
"""
|
"""
|
||||||
Confirm the email address for removal notice #{notice.reference}.
|
Confirm the email address for removal notice #{notice.reference}.
|
||||||
|
|
||||||
The notice has not been added to the staff review queue yet. Open this private link to verify the address and submit it for review:
|
The notice has not been added to the staff review queue yet. Open this private link, then press the confirmation button to verify the address and submit it for review:
|
||||||
#{status_url}
|
#{status_url}
|
||||||
|
|
||||||
If you did not make this request, ignore this email. It will not reach the review queue.
|
If you did not make this request, ignore this email. It will not reach the review queue.
|
||||||
|
|
|
||||||
|
|
@ -198,7 +198,7 @@ defmodule WhoNeedHelp.Support do
|
||||||
def confirmation_url(%SupportRequest{} = request) do
|
def confirmation_url(%SupportRequest{} = request) do
|
||||||
token = confirmation_token(request)
|
token = confirmation_token(request)
|
||||||
|
|
||||||
PublicAccess.url("/support/cases/#{request.id}/verify?token=#{URI.encode_www_form(token)}")
|
PublicAccess.url("/support/cases/#{request.id}/verify#token=#{URI.encode_www_form(token)}")
|
||||||
end
|
end
|
||||||
|
|
||||||
def paginate_for_staff(%Scope{user: user}, options \\ []) do
|
def paginate_for_staff(%Scope{user: user}, options \\ []) do
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ defmodule WhoNeedHelp.Support.Notifier do
|
||||||
"""
|
"""
|
||||||
Confirm the email address for support request #{request.reference}.
|
Confirm the email address for support request #{request.reference}.
|
||||||
|
|
||||||
Your request has not been sent to the support queue yet. Open this private link to verify the address and submit it for review:
|
Your request has not been sent to the support queue yet. Open this private link, then press the confirmation button to verify the address and submit it for review:
|
||||||
#{status_url}
|
#{status_url}
|
||||||
|
|
||||||
If you did not make this request, ignore this email. It will not reach the support queue.
|
If you did not make this request, ignore this email. It will not reach the support queue.
|
||||||
|
|
|
||||||
|
|
@ -61,6 +61,21 @@ defmodule WhoNeedHelpWeb.ContentRemovalController do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def verify_page(conn, %{"id" => id}) do
|
||||||
|
case Ecto.UUID.cast(id) do
|
||||||
|
{:ok, _id} ->
|
||||||
|
render(conn, :verify,
|
||||||
|
notice_id: id,
|
||||||
|
page_title: gettext("Confirm content-removal notice")
|
||||||
|
)
|
||||||
|
|
||||||
|
:error ->
|
||||||
|
send_resp(conn, :not_found, "Not found")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def verify_page(conn, _params), do: send_resp(conn, :not_found, "Not found")
|
||||||
|
|
||||||
def verify(conn, %{"id" => id, "token" => token}) do
|
def verify(conn, %{"id" => id, "token" => token}) do
|
||||||
case ContentRemoval.verify_by_confirmation_token(id, token) do
|
case ContentRemoval.verify_by_confirmation_token(id, token) do
|
||||||
{:ok, notice} ->
|
{:ok, notice} ->
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
<Layouts.app
|
||||||
|
flash={@flash}
|
||||||
|
current_scope={@current_scope}
|
||||||
|
page_width={:narrow}
|
||||||
|
page_align={:center}
|
||||||
|
>
|
||||||
|
<div class="text-center">
|
||||||
|
<.header>
|
||||||
|
{gettext("Confirm content-removal notice")}
|
||||||
|
<:subtitle>
|
||||||
|
{gettext("Confirm that you submitted this notice before it is sent for review.")}
|
||||||
|
</:subtitle>
|
||||||
|
</.header>
|
||||||
|
|
||||||
|
<.form
|
||||||
|
for={%{}}
|
||||||
|
action={~p"/legal/content-removal/#{@notice_id}/verify"}
|
||||||
|
id="content-removal-confirmation-fragment-form"
|
||||||
|
hidden
|
||||||
|
>
|
||||||
|
<input
|
||||||
|
id="content-removal-confirmation-fragment-token"
|
||||||
|
type="hidden"
|
||||||
|
name="token"
|
||||||
|
value=""
|
||||||
|
/>
|
||||||
|
<.button variant="primary" phx-disable-with={gettext("Confirming...")}>
|
||||||
|
{gettext("Confirm content-removal notice")}
|
||||||
|
</.button>
|
||||||
|
</.form>
|
||||||
|
|
||||||
|
<p class="mt-5 text-sm text-base-content/70">
|
||||||
|
{gettext(
|
||||||
|
"If you did not submit this notice, close this page. Nothing will be sent for review."
|
||||||
|
)}
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<noscript>
|
||||||
|
<p class="alert alert-error mt-5">
|
||||||
|
{gettext("JavaScript is required to confirm this protected email link.")}
|
||||||
|
</p>
|
||||||
|
</noscript>
|
||||||
|
</div>
|
||||||
|
</Layouts.app>
|
||||||
|
|
@ -98,6 +98,21 @@ defmodule WhoNeedHelpWeb.SupportController do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def verify_page(conn, %{"id" => id}) do
|
||||||
|
case Ecto.UUID.cast(id) do
|
||||||
|
{:ok, _id} ->
|
||||||
|
render(conn, :verify,
|
||||||
|
request_id: id,
|
||||||
|
page_title: gettext("Confirm support request")
|
||||||
|
)
|
||||||
|
|
||||||
|
:error ->
|
||||||
|
send_resp(conn, :not_found, "Not found")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def verify_page(conn, _params), do: send_resp(conn, :not_found, "Not found")
|
||||||
|
|
||||||
def verify(conn, %{"id" => id, "token" => token}) do
|
def verify(conn, %{"id" => id, "token" => token}) do
|
||||||
case Support.verify_by_confirmation_token(id, token) do
|
case Support.verify_by_confirmation_token(id, token) do
|
||||||
{:ok, request} ->
|
{:ok, request} ->
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<Layouts.app
|
||||||
|
flash={@flash}
|
||||||
|
current_scope={@current_scope}
|
||||||
|
page_width={:narrow}
|
||||||
|
page_align={:center}
|
||||||
|
>
|
||||||
|
<div class="text-center">
|
||||||
|
<.header>
|
||||||
|
{gettext("Confirm support request")}
|
||||||
|
<:subtitle>
|
||||||
|
{gettext("Confirm that you submitted this request before it is sent to support.")}
|
||||||
|
</:subtitle>
|
||||||
|
</.header>
|
||||||
|
|
||||||
|
<.form
|
||||||
|
for={%{}}
|
||||||
|
action={~p"/support/cases/#{@request_id}/verify"}
|
||||||
|
id="support-confirmation-fragment-form"
|
||||||
|
hidden
|
||||||
|
>
|
||||||
|
<input id="support-confirmation-fragment-token" type="hidden" name="token" value="" />
|
||||||
|
<.button variant="primary" phx-disable-with={gettext("Confirming...")}>
|
||||||
|
{gettext("Confirm support request")}
|
||||||
|
</.button>
|
||||||
|
</.form>
|
||||||
|
|
||||||
|
<p class="mt-5 text-sm text-base-content/70">
|
||||||
|
{gettext(
|
||||||
|
"If you did not submit this request, close this page. Nothing will be sent to support."
|
||||||
|
)}
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<noscript>
|
||||||
|
<p class="alert alert-error mt-5">
|
||||||
|
{gettext("JavaScript is required to confirm this protected email link.")}
|
||||||
|
</p>
|
||||||
|
</noscript>
|
||||||
|
</div>
|
||||||
|
</Layouts.app>
|
||||||
|
|
@ -97,7 +97,8 @@ defmodule WhoNeedHelpWeb.Router do
|
||||||
get "/support/new", SupportController, :new
|
get "/support/new", SupportController, :new
|
||||||
post "/support", SupportController, :create
|
post "/support", SupportController, :create
|
||||||
get "/support/received", SupportController, :received
|
get "/support/received", SupportController, :received
|
||||||
get "/support/cases/:id/verify", SupportController, :verify
|
get "/support/cases/:id/verify", SupportController, :verify_page
|
||||||
|
post "/support/cases/:id/verify", SupportController, :verify
|
||||||
get "/support/cases/:id", SupportController, :show
|
get "/support/cases/:id", SupportController, :show
|
||||||
post "/support/cases/:id/messages", SupportController, :add_message
|
post "/support/cases/:id/messages", SupportController, :add_message
|
||||||
post "/support/cases/:id/reopen", SupportController, :reopen
|
post "/support/cases/:id/reopen", SupportController, :reopen
|
||||||
|
|
@ -167,7 +168,8 @@ defmodule WhoNeedHelpWeb.Router do
|
||||||
scope "/", WhoNeedHelpWeb do
|
scope "/", WhoNeedHelpWeb do
|
||||||
pipe_through :browser
|
pipe_through :browser
|
||||||
|
|
||||||
get "/legal/content-removal/:id/verify", ContentRemovalController, :verify
|
get "/legal/content-removal/:id/verify", ContentRemovalController, :verify_page
|
||||||
|
post "/legal/content-removal/:id/verify", ContentRemovalController, :verify
|
||||||
get "/legal/content-removal/:id", ContentRemovalController, :show
|
get "/legal/content-removal/:id", ContentRemovalController, :show
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -560,6 +560,8 @@ msgstr ""
|
||||||
msgid "Confirm your email and ensure your account is active before publishing."
|
msgid "Confirm your email and ensure your account is active before publishing."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:27
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:22
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:57
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:57
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:63
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:63
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:20
|
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:20
|
||||||
|
|
@ -2520,6 +2522,8 @@ msgstr ""
|
||||||
msgid "Could not unblock this user. Please try again."
|
msgid "Could not unblock this user. Please try again."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:40
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:35
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:27
|
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:27
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "JavaScript is required to confirm this protected email link."
|
msgid "JavaScript is required to confirm this protected email link."
|
||||||
|
|
@ -3115,7 +3119,7 @@ msgid "Removal notice updated."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/components/layouts.ex:201
|
#: lib/who_need_help_web/components/layouts.ex:201
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:136
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:151
|
||||||
#: lib/who_need_help_web/controllers/support_html/new.html.heex:16
|
#: lib/who_need_help_web/controllers/support_html/new.html.heex:16
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Report content"
|
msgid "Report content"
|
||||||
|
|
@ -3131,7 +3135,7 @@ msgstr ""
|
||||||
msgid "Reported locations"
|
msgid "Reported locations"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:226
|
#: lib/who_need_help_web/controllers/support_controller.ex:241
|
||||||
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:6
|
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:6
|
||||||
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:42
|
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:42
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:128
|
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:128
|
||||||
|
|
@ -3249,7 +3253,7 @@ msgstr ""
|
||||||
msgid "TAKE IT DOWN"
|
msgid "TAKE IT DOWN"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:135
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:150
|
||||||
#: lib/who_need_help_web/controllers/support_html/new.html.heex:19
|
#: lib/who_need_help_web/controllers/support_html/new.html.heex:19
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "TAKE IT DOWN request"
|
msgid "TAKE IT DOWN request"
|
||||||
|
|
@ -3277,7 +3281,7 @@ msgstr ""
|
||||||
msgid "Threat to life or safety"
|
msgid "Threat to life or safety"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:103
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:118
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Too many removal notices. Please try again later."
|
msgid "Too many removal notices. Please try again later."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
@ -5242,7 +5246,7 @@ msgid "Case status"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/page_html/child_safety.html.heex:42
|
#: lib/who_need_help_web/controllers/page_html/child_safety.html.heex:42
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:227
|
#: lib/who_need_help_web/controllers/support_controller.ex:242
|
||||||
#: lib/who_need_help_web/live/report_live.ex:50
|
#: lib/who_need_help_web/live/report_live.ex:50
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Contact support"
|
msgid "Contact support"
|
||||||
|
|
@ -5253,7 +5257,7 @@ msgstr ""
|
||||||
msgid "Content-removal notice %{reference}"
|
msgid "Content-removal notice %{reference}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:111
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:126
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Content-removal notice received"
|
msgid "Content-removal notice received"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
@ -5264,8 +5268,8 @@ msgstr ""
|
||||||
msgid "Conversation"
|
msgid "Conversation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:137
|
#: lib/who_need_help_web/controllers/support_controller.ex:152
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:153
|
#: lib/who_need_help_web/controllers/support_controller.ex:168
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:73
|
#: lib/who_need_help_web/live/support_case_live.ex:73
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Could not send your message. Please check it and try again."
|
msgid "Could not send your message. Please check it and try again."
|
||||||
|
|
@ -5328,7 +5332,7 @@ msgstr ""
|
||||||
msgid "No status history is available for this older case."
|
msgid "No status history is available for this older case."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:172
|
#: lib/who_need_help_web/controllers/support_controller.ex:187
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:95
|
#: lib/who_need_help_web/live/support_case_live.ex:95
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Only a resolved or closed request can be reopened."
|
msgid "Only a resolved or closed request can be reopened."
|
||||||
|
|
@ -5438,7 +5442,7 @@ msgstr ""
|
||||||
msgid "Support request created"
|
msgid "Support request created"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:183
|
#: lib/who_need_help_web/controllers/support_controller.ex:198
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Support request received"
|
msgid "Support request received"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
@ -5474,7 +5478,7 @@ msgstr ""
|
||||||
msgid "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
msgid "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:167
|
#: lib/who_need_help_web/controllers/support_controller.ex:182
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:88
|
#: lib/who_need_help_web/live/support_case_live.ex:88
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "The support request is open again."
|
msgid "The support request is open again."
|
||||||
|
|
@ -5502,7 +5506,7 @@ msgstr ""
|
||||||
msgid "This support request is no longer available."
|
msgid "This support request is no longer available."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:143
|
#: lib/who_need_help_web/controllers/support_controller.ex:158
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:60
|
#: lib/who_need_help_web/live/support_case_live.ex:60
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Too many messages. Please try again later."
|
msgid "Too many messages. Please try again later."
|
||||||
|
|
@ -5539,7 +5543,7 @@ msgstr ""
|
||||||
msgid "Your content-removal notices"
|
msgid "Your content-removal notices"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:130
|
#: lib/who_need_help_web/controllers/support_controller.ex:145
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:53
|
#: lib/who_need_help_web/live/support_case_live.ex:53
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your message was sent to support."
|
msgid "Your message was sent to support."
|
||||||
|
|
@ -7677,12 +7681,12 @@ msgstr ""
|
||||||
msgid "You do not have permission for this action. Role changes also require a recent sign-in."
|
msgid "You do not have permission for this action. Role changes also require a recent sign-in."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:70
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:85
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your email was confirmed and the notice was sent for review."
|
msgid "Your email was confirmed and the notice was sent for review."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:107
|
#: lib/who_need_help_web/controllers/support_controller.ex:122
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your email was confirmed and the request was sent to support."
|
msgid "Your email was confirmed and the request was sent to support."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
@ -7872,3 +7876,37 @@ msgstr ""
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Copy and paste this secure address into your browser:"
|
msgid "Copy and paste this secure address into your browser:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:69
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:9
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:28
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm content-removal notice"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_controller.ex:106
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:9
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:23
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm support request"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:11
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm that you submitted this notice before it is sent for review."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:11
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm that you submitted this request before it is sent to support."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:33
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "If you did not submit this notice, close this page. Nothing will be sent for review."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:28
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "If you did not submit this request, close this page. Nothing will be sent to support."
|
||||||
|
msgstr ""
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,7 @@ msgstr "Categories"
|
||||||
#: lib/who_need_help_web/components/layouts.ex:95
|
#: lib/who_need_help_web/components/layouts.ex:95
|
||||||
#: lib/who_need_help_web/components/layouts.ex:168
|
#: lib/who_need_help_web/components/layouts.ex:168
|
||||||
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:14
|
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:14
|
||||||
#: lib/who_need_help_web/controllers/user_session_controller.ex:215
|
#: lib/who_need_help_web/controllers/user_session_controller.ex:225
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:10
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:10
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Log in"
|
msgid "Log in"
|
||||||
|
|
@ -560,6 +560,8 @@ msgstr "Confirm your account and ensure it is active first."
|
||||||
msgid "Confirm your email and ensure your account is active before publishing."
|
msgid "Confirm your email and ensure your account is active before publishing."
|
||||||
msgstr "Confirm your email and ensure your account is active before publishing."
|
msgstr "Confirm your email and ensure your account is active before publishing."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:27
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:22
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:57
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:57
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:63
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:63
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:20
|
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:20
|
||||||
|
|
@ -2520,6 +2522,8 @@ msgstr "Could not publish the request. Please try again."
|
||||||
msgid "Could not unblock this user. Please try again."
|
msgid "Could not unblock this user. Please try again."
|
||||||
msgstr "Could not unblock this user. Please try again."
|
msgstr "Could not unblock this user. Please try again."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:40
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:35
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:27
|
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:27
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "JavaScript is required to confirm this protected email link."
|
msgid "JavaScript is required to confirm this protected email link."
|
||||||
|
|
@ -3115,7 +3119,7 @@ msgid "Removal notice updated."
|
||||||
msgstr "Removal notice updated."
|
msgstr "Removal notice updated."
|
||||||
|
|
||||||
#: lib/who_need_help_web/components/layouts.ex:201
|
#: lib/who_need_help_web/components/layouts.ex:201
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:136
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:151
|
||||||
#: lib/who_need_help_web/controllers/support_html/new.html.heex:16
|
#: lib/who_need_help_web/controllers/support_html/new.html.heex:16
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Report content"
|
msgid "Report content"
|
||||||
|
|
@ -3131,7 +3135,7 @@ msgstr "Report illegal or harmful content"
|
||||||
msgid "Reported locations"
|
msgid "Reported locations"
|
||||||
msgstr "Reported locations"
|
msgstr "Reported locations"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:226
|
#: lib/who_need_help_web/controllers/support_controller.ex:241
|
||||||
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:6
|
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:6
|
||||||
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:42
|
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:42
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:128
|
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:128
|
||||||
|
|
@ -3249,7 +3253,7 @@ msgstr "Support request updated."
|
||||||
msgid "TAKE IT DOWN"
|
msgid "TAKE IT DOWN"
|
||||||
msgstr "TAKE IT DOWN"
|
msgstr "TAKE IT DOWN"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:135
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:150
|
||||||
#: lib/who_need_help_web/controllers/support_html/new.html.heex:19
|
#: lib/who_need_help_web/controllers/support_html/new.html.heex:19
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "TAKE IT DOWN request"
|
msgid "TAKE IT DOWN request"
|
||||||
|
|
@ -3277,7 +3281,7 @@ msgstr "This requests deletion of your Who Need Help account and associated pers
|
||||||
msgid "Threat to life or safety"
|
msgid "Threat to life or safety"
|
||||||
msgstr "Threat to life or safety"
|
msgstr "Threat to life or safety"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:103
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:118
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Too many removal notices. Please try again later."
|
msgid "Too many removal notices. Please try again later."
|
||||||
msgstr "Too many removal notices. Please try again later."
|
msgstr "Too many removal notices. Please try again later."
|
||||||
|
|
@ -3757,7 +3761,7 @@ msgstr "Creating account..."
|
||||||
msgid "Email me a verification link"
|
msgid "Email me a verification link"
|
||||||
msgstr "Email me a verification link"
|
msgstr "Email me a verification link"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/user_session_controller.ex:183
|
#: lib/who_need_help_web/controllers/user_session_controller.ex:193
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Google sign-in connected. You can use it next time."
|
msgid "Google sign-in connected. You can use it next time."
|
||||||
msgstr "Google sign-in connected. You can use it next time."
|
msgstr "Google sign-in connected. You can use it next time."
|
||||||
|
|
@ -3809,7 +3813,7 @@ msgstr "Verified"
|
||||||
msgid "We sent a verification link to %{email}. Open it to finish connecting Google."
|
msgid "We sent a verification link to %{email}. Open it to finish connecting Google."
|
||||||
msgstr "We sent a verification link to %{email}. Open it to finish connecting Google."
|
msgstr "We sent a verification link to %{email}. Open it to finish connecting Google."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/user_session_controller.ex:196
|
#: lib/who_need_help_web/controllers/user_session_controller.ex:206
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "You are signed in, but Google could not be connected. Try again in account settings."
|
msgid "You are signed in, but Google could not be connected. Try again in account settings."
|
||||||
msgstr "You are signed in, but Google could not be connected. Try again in account settings."
|
msgstr "You are signed in, but Google could not be connected. Try again in account settings."
|
||||||
|
|
@ -5242,7 +5246,7 @@ msgid "Case status"
|
||||||
msgstr "Case status"
|
msgstr "Case status"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/page_html/child_safety.html.heex:42
|
#: lib/who_need_help_web/controllers/page_html/child_safety.html.heex:42
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:227
|
#: lib/who_need_help_web/controllers/support_controller.ex:242
|
||||||
#: lib/who_need_help_web/live/report_live.ex:50
|
#: lib/who_need_help_web/live/report_live.ex:50
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Contact support"
|
msgid "Contact support"
|
||||||
|
|
@ -5253,7 +5257,7 @@ msgstr "Contact support"
|
||||||
msgid "Content-removal notice %{reference}"
|
msgid "Content-removal notice %{reference}"
|
||||||
msgstr "Content-removal notice %{reference}"
|
msgstr "Content-removal notice %{reference}"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:111
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:126
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Content-removal notice received"
|
msgid "Content-removal notice received"
|
||||||
msgstr "Content-removal notice received"
|
msgstr "Content-removal notice received"
|
||||||
|
|
@ -5264,8 +5268,8 @@ msgstr "Content-removal notice received"
|
||||||
msgid "Conversation"
|
msgid "Conversation"
|
||||||
msgstr "Conversation"
|
msgstr "Conversation"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:137
|
#: lib/who_need_help_web/controllers/support_controller.ex:152
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:153
|
#: lib/who_need_help_web/controllers/support_controller.ex:168
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:73
|
#: lib/who_need_help_web/live/support_case_live.ex:73
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Could not send your message. Please check it and try again."
|
msgid "Could not send your message. Please check it and try again."
|
||||||
|
|
@ -5328,7 +5332,7 @@ msgstr "No reports submitted"
|
||||||
msgid "No status history is available for this older case."
|
msgid "No status history is available for this older case."
|
||||||
msgstr "No status history is available for this older case."
|
msgstr "No status history is available for this older case."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:172
|
#: lib/who_need_help_web/controllers/support_controller.ex:187
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:95
|
#: lib/who_need_help_web/live/support_case_live.ex:95
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Only a resolved or closed request can be reopened."
|
msgid "Only a resolved or closed request can be reopened."
|
||||||
|
|
@ -5438,7 +5442,7 @@ msgstr "Status history"
|
||||||
msgid "Support request created"
|
msgid "Support request created"
|
||||||
msgstr "Support request created"
|
msgstr "Support request created"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:183
|
#: lib/who_need_help_web/controllers/support_controller.ex:198
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Support request received"
|
msgid "Support request received"
|
||||||
msgstr "Support request received"
|
msgstr "Support request received"
|
||||||
|
|
@ -5474,7 +5478,7 @@ msgstr "TRUST AND SAFETY"
|
||||||
msgid "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
msgid "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
||||||
msgstr "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
msgstr "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:167
|
#: lib/who_need_help_web/controllers/support_controller.ex:182
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:88
|
#: lib/who_need_help_web/live/support_case_live.ex:88
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "The support request is open again."
|
msgid "The support request is open again."
|
||||||
|
|
@ -5502,7 +5506,7 @@ msgstr "This private history shows reports you submitted and the latest moderati
|
||||||
msgid "This support request is no longer available."
|
msgid "This support request is no longer available."
|
||||||
msgstr "This support request is no longer available."
|
msgstr "This support request is no longer available."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:143
|
#: lib/who_need_help_web/controllers/support_controller.ex:158
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:60
|
#: lib/who_need_help_web/live/support_case_live.ex:60
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Too many messages. Please try again later."
|
msgid "Too many messages. Please try again later."
|
||||||
|
|
@ -5539,7 +5543,7 @@ msgstr "You"
|
||||||
msgid "Your content-removal notices"
|
msgid "Your content-removal notices"
|
||||||
msgstr "Your content-removal notices"
|
msgstr "Your content-removal notices"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:130
|
#: lib/who_need_help_web/controllers/support_controller.ex:145
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:53
|
#: lib/who_need_help_web/live/support_case_live.ex:53
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your message was sent to support."
|
msgid "Your message was sent to support."
|
||||||
|
|
@ -7677,12 +7681,12 @@ msgstr "You do not have permission for this action."
|
||||||
msgid "You do not have permission for this action. Role changes also require a recent sign-in."
|
msgid "You do not have permission for this action. Role changes also require a recent sign-in."
|
||||||
msgstr "You do not have permission for this action. Role changes also require a recent sign-in."
|
msgstr "You do not have permission for this action. Role changes also require a recent sign-in."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:70
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:85
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your email was confirmed and the notice was sent for review."
|
msgid "Your email was confirmed and the notice was sent for review."
|
||||||
msgstr "Your email was confirmed and the notice was sent for review."
|
msgstr "Your email was confirmed and the notice was sent for review."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:107
|
#: lib/who_need_help_web/controllers/support_controller.ex:122
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your email was confirmed and the request was sent to support."
|
msgid "Your email was confirmed and the request was sent to support."
|
||||||
msgstr "Your email was confirmed and the request was sent to support."
|
msgstr "Your email was confirmed and the request was sent to support."
|
||||||
|
|
@ -7872,3 +7876,37 @@ msgstr "Enable Android notifications"
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Copy and paste this secure address into your browser:"
|
msgid "Copy and paste this secure address into your browser:"
|
||||||
msgstr "Copy and paste this secure address into your browser:"
|
msgstr "Copy and paste this secure address into your browser:"
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:69
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:9
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:28
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm content-removal notice"
|
||||||
|
msgstr "Confirm content-removal notice"
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_controller.ex:106
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:9
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:23
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm support request"
|
||||||
|
msgstr "Confirm support request"
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:11
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm that you submitted this notice before it is sent for review."
|
||||||
|
msgstr "Confirm that you submitted this notice before it is sent for review."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:11
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm that you submitted this request before it is sent to support."
|
||||||
|
msgstr "Confirm that you submitted this request before it is sent to support."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:33
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "If you did not submit this notice, close this page. Nothing will be sent for review."
|
||||||
|
msgstr "If you did not submit this notice, close this page. Nothing will be sent for review."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:28
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "If you did not submit this request, close this page. Nothing will be sent to support."
|
||||||
|
msgstr "If you did not submit this request, close this page. Nothing will be sent to support."
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,7 @@ msgstr "Категории"
|
||||||
#: lib/who_need_help_web/components/layouts.ex:95
|
#: lib/who_need_help_web/components/layouts.ex:95
|
||||||
#: lib/who_need_help_web/components/layouts.ex:168
|
#: lib/who_need_help_web/components/layouts.ex:168
|
||||||
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:14
|
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:14
|
||||||
#: lib/who_need_help_web/controllers/user_session_controller.ex:215
|
#: lib/who_need_help_web/controllers/user_session_controller.ex:225
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:10
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:10
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Log in"
|
msgid "Log in"
|
||||||
|
|
@ -580,6 +580,8 @@ msgstr ""
|
||||||
"Перед публикацией подтвердите электронную почту и убедитесь, что учётная "
|
"Перед публикацией подтвердите электронную почту и убедитесь, что учётная "
|
||||||
"запись активна."
|
"запись активна."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:27
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:22
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:57
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:57
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:63
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:63
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:20
|
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:20
|
||||||
|
|
@ -2636,6 +2638,8 @@ msgstr "Не удалось опубликовать заявку. Попроб
|
||||||
msgid "Could not unblock this user. Please try again."
|
msgid "Could not unblock this user. Please try again."
|
||||||
msgstr "Не удалось разблокировать пользователя. Попробуйте ещё раз."
|
msgstr "Не удалось разблокировать пользователя. Попробуйте ещё раз."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:40
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:35
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:27
|
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:27
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "JavaScript is required to confirm this protected email link."
|
msgid "JavaScript is required to confirm this protected email link."
|
||||||
|
|
@ -3231,7 +3235,7 @@ msgid "Removal notice updated."
|
||||||
msgstr "Уведомление об удалении обновлено."
|
msgstr "Уведомление об удалении обновлено."
|
||||||
|
|
||||||
#: lib/who_need_help_web/components/layouts.ex:201
|
#: lib/who_need_help_web/components/layouts.ex:201
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:136
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:151
|
||||||
#: lib/who_need_help_web/controllers/support_html/new.html.heex:16
|
#: lib/who_need_help_web/controllers/support_html/new.html.heex:16
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Report content"
|
msgid "Report content"
|
||||||
|
|
@ -3247,7 +3251,7 @@ msgstr "Сообщить о незаконном или вредоносном
|
||||||
msgid "Reported locations"
|
msgid "Reported locations"
|
||||||
msgstr "Указанные адреса контента"
|
msgstr "Указанные адреса контента"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:226
|
#: lib/who_need_help_web/controllers/support_controller.ex:241
|
||||||
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:6
|
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:6
|
||||||
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:42
|
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:42
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:128
|
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:128
|
||||||
|
|
@ -3365,7 +3369,7 @@ msgstr "Обращение в поддержку обновлено."
|
||||||
msgid "TAKE IT DOWN"
|
msgid "TAKE IT DOWN"
|
||||||
msgstr "TAKE IT DOWN"
|
msgstr "TAKE IT DOWN"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:135
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:150
|
||||||
#: lib/who_need_help_web/controllers/support_html/new.html.heex:19
|
#: lib/who_need_help_web/controllers/support_html/new.html.heex:19
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "TAKE IT DOWN request"
|
msgid "TAKE IT DOWN request"
|
||||||
|
|
@ -3393,7 +3397,7 @@ msgstr "Это запрос на удаление аккаунта Who Need Help
|
||||||
msgid "Threat to life or safety"
|
msgid "Threat to life or safety"
|
||||||
msgstr "Угроза жизни или безопасности"
|
msgstr "Угроза жизни или безопасности"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:103
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:118
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Too many removal notices. Please try again later."
|
msgid "Too many removal notices. Please try again later."
|
||||||
msgstr "Слишком много уведомлений об удалении. Повторите попытку позже."
|
msgstr "Слишком много уведомлений об удалении. Повторите попытку позже."
|
||||||
|
|
@ -3873,7 +3877,7 @@ msgstr "Создаём аккаунт..."
|
||||||
msgid "Email me a verification link"
|
msgid "Email me a verification link"
|
||||||
msgstr "Отправить ссылку для подтверждения на email"
|
msgstr "Отправить ссылку для подтверждения на email"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/user_session_controller.ex:183
|
#: lib/who_need_help_web/controllers/user_session_controller.ex:193
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Google sign-in connected. You can use it next time."
|
msgid "Google sign-in connected. You can use it next time."
|
||||||
msgstr "Вход через Google подключён. В следующий раз можно использовать его."
|
msgstr "Вход через Google подключён. В следующий раз можно использовать его."
|
||||||
|
|
@ -3925,7 +3929,7 @@ msgstr "Подтверждено"
|
||||||
msgid "We sent a verification link to %{email}. Open it to finish connecting Google."
|
msgid "We sent a verification link to %{email}. Open it to finish connecting Google."
|
||||||
msgstr "Мы отправили ссылку для подтверждения на %{email}. Откройте её, чтобы завершить подключение Google."
|
msgstr "Мы отправили ссылку для подтверждения на %{email}. Откройте её, чтобы завершить подключение Google."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/user_session_controller.ex:196
|
#: lib/who_need_help_web/controllers/user_session_controller.ex:206
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "You are signed in, but Google could not be connected. Try again in account settings."
|
msgid "You are signed in, but Google could not be connected. Try again in account settings."
|
||||||
msgstr "Вы вошли, но подключить Google не удалось. Повторите попытку в настройках аккаунта."
|
msgstr "Вы вошли, но подключить Google не удалось. Повторите попытку в настройках аккаунта."
|
||||||
|
|
@ -5359,7 +5363,7 @@ msgid "Case status"
|
||||||
msgstr "Статус обращения"
|
msgstr "Статус обращения"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/page_html/child_safety.html.heex:42
|
#: lib/who_need_help_web/controllers/page_html/child_safety.html.heex:42
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:227
|
#: lib/who_need_help_web/controllers/support_controller.ex:242
|
||||||
#: lib/who_need_help_web/live/report_live.ex:50
|
#: lib/who_need_help_web/live/report_live.ex:50
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Contact support"
|
msgid "Contact support"
|
||||||
|
|
@ -5370,7 +5374,7 @@ msgstr "Обратиться в поддержку"
|
||||||
msgid "Content-removal notice %{reference}"
|
msgid "Content-removal notice %{reference}"
|
||||||
msgstr "Уведомление об удалении контента %{reference}"
|
msgstr "Уведомление об удалении контента %{reference}"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:111
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:126
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Content-removal notice received"
|
msgid "Content-removal notice received"
|
||||||
msgstr "Уведомление об удалении контента получено"
|
msgstr "Уведомление об удалении контента получено"
|
||||||
|
|
@ -5381,8 +5385,8 @@ msgstr "Уведомление об удалении контента получ
|
||||||
msgid "Conversation"
|
msgid "Conversation"
|
||||||
msgstr "Переписка"
|
msgstr "Переписка"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:137
|
#: lib/who_need_help_web/controllers/support_controller.ex:152
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:153
|
#: lib/who_need_help_web/controllers/support_controller.ex:168
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:73
|
#: lib/who_need_help_web/live/support_case_live.ex:73
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Could not send your message. Please check it and try again."
|
msgid "Could not send your message. Please check it and try again."
|
||||||
|
|
@ -5445,7 +5449,7 @@ msgstr "Жалоб не отправлено"
|
||||||
msgid "No status history is available for this older case."
|
msgid "No status history is available for this older case."
|
||||||
msgstr "Для этого старого обращения история статусов недоступна."
|
msgstr "Для этого старого обращения история статусов недоступна."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:172
|
#: lib/who_need_help_web/controllers/support_controller.ex:187
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:95
|
#: lib/who_need_help_web/live/support_case_live.ex:95
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Only a resolved or closed request can be reopened."
|
msgid "Only a resolved or closed request can be reopened."
|
||||||
|
|
@ -5555,7 +5559,7 @@ msgstr "История статусов"
|
||||||
msgid "Support request created"
|
msgid "Support request created"
|
||||||
msgstr "Обращение в поддержку создано"
|
msgstr "Обращение в поддержку создано"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:183
|
#: lib/who_need_help_web/controllers/support_controller.ex:198
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Support request received"
|
msgid "Support request received"
|
||||||
msgstr "Обращение в поддержку получено"
|
msgstr "Обращение в поддержку получено"
|
||||||
|
|
@ -5591,7 +5595,7 @@ msgstr "ДОВЕРИЕ И БЕЗОПАСНОСТЬ"
|
||||||
msgid "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
msgid "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
||||||
msgstr "Автор заявки указывает, оплачено ли лекарство, зарезервировано или его ещё нужно купить."
|
msgstr "Автор заявки указывает, оплачено ли лекарство, зарезервировано или его ещё нужно купить."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:167
|
#: lib/who_need_help_web/controllers/support_controller.ex:182
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:88
|
#: lib/who_need_help_web/live/support_case_live.ex:88
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "The support request is open again."
|
msgid "The support request is open again."
|
||||||
|
|
@ -5619,7 +5623,7 @@ msgstr "В этой личной истории показаны ваши жал
|
||||||
msgid "This support request is no longer available."
|
msgid "This support request is no longer available."
|
||||||
msgstr "Это обращение в поддержку больше недоступно."
|
msgstr "Это обращение в поддержку больше недоступно."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:143
|
#: lib/who_need_help_web/controllers/support_controller.ex:158
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:60
|
#: lib/who_need_help_web/live/support_case_live.ex:60
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Too many messages. Please try again later."
|
msgid "Too many messages. Please try again later."
|
||||||
|
|
@ -5656,7 +5660,7 @@ msgstr "Вы"
|
||||||
msgid "Your content-removal notices"
|
msgid "Your content-removal notices"
|
||||||
msgstr "Ваши уведомления об удалении контента"
|
msgstr "Ваши уведомления об удалении контента"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:130
|
#: lib/who_need_help_web/controllers/support_controller.ex:145
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:53
|
#: lib/who_need_help_web/live/support_case_live.ex:53
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your message was sent to support."
|
msgid "Your message was sent to support."
|
||||||
|
|
@ -7797,12 +7801,12 @@ msgstr "У вас нет разрешения на это действие."
|
||||||
msgid "You do not have permission for this action. Role changes also require a recent sign-in."
|
msgid "You do not have permission for this action. Role changes also require a recent sign-in."
|
||||||
msgstr "У вас нет разрешения на это действие. Для изменения ролей также требуется недавний вход."
|
msgstr "У вас нет разрешения на это действие. Для изменения ролей также требуется недавний вход."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:70
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:85
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your email was confirmed and the notice was sent for review."
|
msgid "Your email was confirmed and the notice was sent for review."
|
||||||
msgstr "Ваш email подтверждён, уведомление отправлено на проверку."
|
msgstr "Ваш email подтверждён, уведомление отправлено на проверку."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:107
|
#: lib/who_need_help_web/controllers/support_controller.ex:122
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your email was confirmed and the request was sent to support."
|
msgid "Your email was confirmed and the request was sent to support."
|
||||||
msgstr "Ваш email подтверждён, обращение отправлено в поддержку."
|
msgstr "Ваш email подтверждён, обращение отправлено в поддержку."
|
||||||
|
|
@ -7992,3 +7996,37 @@ msgstr "Включить уведомления Android"
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Copy and paste this secure address into your browser:"
|
msgid "Copy and paste this secure address into your browser:"
|
||||||
msgstr "Скопируйте этот безопасный адрес и вставьте его в браузер:"
|
msgstr "Скопируйте этот безопасный адрес и вставьте его в браузер:"
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:69
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:9
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:28
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm content-removal notice"
|
||||||
|
msgstr "Подтвердить уведомление об удалении контента"
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_controller.ex:106
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:9
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:23
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm support request"
|
||||||
|
msgstr "Подтвердить обращение в поддержку"
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:11
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm that you submitted this notice before it is sent for review."
|
||||||
|
msgstr "Подтвердите, что это уведомление отправили вы, прежде чем оно поступит на рассмотрение."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:11
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm that you submitted this request before it is sent to support."
|
||||||
|
msgstr "Подтвердите, что это обращение отправили вы, прежде чем оно поступит в поддержку."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:33
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "If you did not submit this notice, close this page. Nothing will be sent for review."
|
||||||
|
msgstr "Если вы не отправляли это уведомление, закройте страницу. На рассмотрение ничего не поступит."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:28
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "If you did not submit this request, close this page. Nothing will be sent to support."
|
||||||
|
msgstr "Если вы не отправляли это обращение, закройте страницу. В поддержку ничего не поступит."
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,7 @@ msgstr "Категорії"
|
||||||
#: lib/who_need_help_web/components/layouts.ex:95
|
#: lib/who_need_help_web/components/layouts.ex:95
|
||||||
#: lib/who_need_help_web/components/layouts.ex:168
|
#: lib/who_need_help_web/components/layouts.ex:168
|
||||||
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:14
|
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:14
|
||||||
#: lib/who_need_help_web/controllers/user_session_controller.ex:215
|
#: lib/who_need_help_web/controllers/user_session_controller.ex:225
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:10
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:10
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Log in"
|
msgid "Log in"
|
||||||
|
|
@ -581,6 +581,8 @@ msgstr ""
|
||||||
"Перед публікацією підтвердьте електронну пошту й переконайтеся, що обліковий"
|
"Перед публікацією підтвердьте електронну пошту й переконайтеся, що обліковий"
|
||||||
" запис активний."
|
" запис активний."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:27
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:22
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:57
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:57
|
||||||
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:63
|
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:63
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:20
|
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:20
|
||||||
|
|
@ -2630,6 +2632,8 @@ msgstr "Не вдалося опублікувати заявку. Спробу
|
||||||
msgid "Could not unblock this user. Please try again."
|
msgid "Could not unblock this user. Please try again."
|
||||||
msgstr "Не вдалося розблокувати користувача. Спробуйте ще раз."
|
msgstr "Не вдалося розблокувати користувача. Спробуйте ще раз."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:40
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:35
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:27
|
#: lib/who_need_help_web/controllers/user_settings_html/confirm_email.html.heex:27
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "JavaScript is required to confirm this protected email link."
|
msgid "JavaScript is required to confirm this protected email link."
|
||||||
|
|
@ -3225,7 +3229,7 @@ msgid "Removal notice updated."
|
||||||
msgstr "Повідомлення про видалення оновлено."
|
msgstr "Повідомлення про видалення оновлено."
|
||||||
|
|
||||||
#: lib/who_need_help_web/components/layouts.ex:201
|
#: lib/who_need_help_web/components/layouts.ex:201
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:136
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:151
|
||||||
#: lib/who_need_help_web/controllers/support_html/new.html.heex:16
|
#: lib/who_need_help_web/controllers/support_html/new.html.heex:16
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Report content"
|
msgid "Report content"
|
||||||
|
|
@ -3241,7 +3245,7 @@ msgstr "Повідомити про незаконний або шкідливи
|
||||||
msgid "Reported locations"
|
msgid "Reported locations"
|
||||||
msgstr "Указані адреси контенту"
|
msgstr "Указані адреси контенту"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:226
|
#: lib/who_need_help_web/controllers/support_controller.ex:241
|
||||||
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:6
|
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:6
|
||||||
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:42
|
#: lib/who_need_help_web/controllers/support_html/delete_account.html.heex:42
|
||||||
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:128
|
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:128
|
||||||
|
|
@ -3359,7 +3363,7 @@ msgstr "Звернення до підтримки оновлено."
|
||||||
msgid "TAKE IT DOWN"
|
msgid "TAKE IT DOWN"
|
||||||
msgstr "TAKE IT DOWN"
|
msgstr "TAKE IT DOWN"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:135
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:150
|
||||||
#: lib/who_need_help_web/controllers/support_html/new.html.heex:19
|
#: lib/who_need_help_web/controllers/support_html/new.html.heex:19
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "TAKE IT DOWN request"
|
msgid "TAKE IT DOWN request"
|
||||||
|
|
@ -3387,7 +3391,7 @@ msgstr "Це запит на видалення облікового запис
|
||||||
msgid "Threat to life or safety"
|
msgid "Threat to life or safety"
|
||||||
msgstr "Загроза життю або безпеці"
|
msgstr "Загроза життю або безпеці"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:103
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:118
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Too many removal notices. Please try again later."
|
msgid "Too many removal notices. Please try again later."
|
||||||
msgstr "Забагато повідомлень про видалення. Спробуйте пізніше."
|
msgstr "Забагато повідомлень про видалення. Спробуйте пізніше."
|
||||||
|
|
@ -3867,7 +3871,7 @@ msgstr "Створюємо обліковий запис..."
|
||||||
msgid "Email me a verification link"
|
msgid "Email me a verification link"
|
||||||
msgstr "Надіслати посилання для підтвердження на email"
|
msgstr "Надіслати посилання для підтвердження на email"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/user_session_controller.ex:183
|
#: lib/who_need_help_web/controllers/user_session_controller.ex:193
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Google sign-in connected. You can use it next time."
|
msgid "Google sign-in connected. You can use it next time."
|
||||||
msgstr "Вхід через Google підключено. Наступного разу можна скористатися ним."
|
msgstr "Вхід через Google підключено. Наступного разу можна скористатися ним."
|
||||||
|
|
@ -3919,7 +3923,7 @@ msgstr "Підтверджено"
|
||||||
msgid "We sent a verification link to %{email}. Open it to finish connecting Google."
|
msgid "We sent a verification link to %{email}. Open it to finish connecting Google."
|
||||||
msgstr "Ми надіслали посилання для підтвердження на %{email}. Відкрийте його, щоб завершити підключення Google."
|
msgstr "Ми надіслали посилання для підтвердження на %{email}. Відкрийте його, щоб завершити підключення Google."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/user_session_controller.ex:196
|
#: lib/who_need_help_web/controllers/user_session_controller.ex:206
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "You are signed in, but Google could not be connected. Try again in account settings."
|
msgid "You are signed in, but Google could not be connected. Try again in account settings."
|
||||||
msgstr "Ви ввійшли, але підключити Google не вдалося. Повторіть спробу в налаштуваннях облікового запису."
|
msgstr "Ви ввійшли, але підключити Google не вдалося. Повторіть спробу в налаштуваннях облікового запису."
|
||||||
|
|
@ -5353,7 +5357,7 @@ msgid "Case status"
|
||||||
msgstr "Статус звернення"
|
msgstr "Статус звернення"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/page_html/child_safety.html.heex:42
|
#: lib/who_need_help_web/controllers/page_html/child_safety.html.heex:42
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:227
|
#: lib/who_need_help_web/controllers/support_controller.ex:242
|
||||||
#: lib/who_need_help_web/live/report_live.ex:50
|
#: lib/who_need_help_web/live/report_live.ex:50
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Contact support"
|
msgid "Contact support"
|
||||||
|
|
@ -5364,7 +5368,7 @@ msgstr "Звернутися до підтримки"
|
||||||
msgid "Content-removal notice %{reference}"
|
msgid "Content-removal notice %{reference}"
|
||||||
msgstr "Повідомлення про видалення контенту %{reference}"
|
msgstr "Повідомлення про видалення контенту %{reference}"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:111
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:126
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Content-removal notice received"
|
msgid "Content-removal notice received"
|
||||||
msgstr "Повідомлення про видалення контенту отримано"
|
msgstr "Повідомлення про видалення контенту отримано"
|
||||||
|
|
@ -5375,8 +5379,8 @@ msgstr "Повідомлення про видалення контенту от
|
||||||
msgid "Conversation"
|
msgid "Conversation"
|
||||||
msgstr "Розмова"
|
msgstr "Розмова"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:137
|
#: lib/who_need_help_web/controllers/support_controller.ex:152
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:153
|
#: lib/who_need_help_web/controllers/support_controller.ex:168
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:73
|
#: lib/who_need_help_web/live/support_case_live.ex:73
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Could not send your message. Please check it and try again."
|
msgid "Could not send your message. Please check it and try again."
|
||||||
|
|
@ -5439,7 +5443,7 @@ msgstr "Скарг не подано"
|
||||||
msgid "No status history is available for this older case."
|
msgid "No status history is available for this older case."
|
||||||
msgstr "Для цього старого звернення історія статусів недоступна."
|
msgstr "Для цього старого звернення історія статусів недоступна."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:172
|
#: lib/who_need_help_web/controllers/support_controller.ex:187
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:95
|
#: lib/who_need_help_web/live/support_case_live.ex:95
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Only a resolved or closed request can be reopened."
|
msgid "Only a resolved or closed request can be reopened."
|
||||||
|
|
@ -5549,7 +5553,7 @@ msgstr "Історія статусів"
|
||||||
msgid "Support request created"
|
msgid "Support request created"
|
||||||
msgstr "Звернення до підтримки створено"
|
msgstr "Звернення до підтримки створено"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:183
|
#: lib/who_need_help_web/controllers/support_controller.ex:198
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Support request received"
|
msgid "Support request received"
|
||||||
msgstr "Звернення до підтримки отримано"
|
msgstr "Звернення до підтримки отримано"
|
||||||
|
|
@ -5585,7 +5589,7 @@ msgstr "ДОВІРА ТА БЕЗПЕКА"
|
||||||
msgid "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
msgid "The requester states whether the medicine is paid, reserved, or still needs to be purchased."
|
||||||
msgstr "Автор заявки вказує, чи ліки вже оплачені, зарезервовані або їх ще потрібно придбати."
|
msgstr "Автор заявки вказує, чи ліки вже оплачені, зарезервовані або їх ще потрібно придбати."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:167
|
#: lib/who_need_help_web/controllers/support_controller.ex:182
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:88
|
#: lib/who_need_help_web/live/support_case_live.ex:88
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "The support request is open again."
|
msgid "The support request is open again."
|
||||||
|
|
@ -5613,7 +5617,7 @@ msgstr "У цій приватній історії показано ваші с
|
||||||
msgid "This support request is no longer available."
|
msgid "This support request is no longer available."
|
||||||
msgstr "Це звернення до підтримки більше не доступне."
|
msgstr "Це звернення до підтримки більше не доступне."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:143
|
#: lib/who_need_help_web/controllers/support_controller.ex:158
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:60
|
#: lib/who_need_help_web/live/support_case_live.ex:60
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Too many messages. Please try again later."
|
msgid "Too many messages. Please try again later."
|
||||||
|
|
@ -5650,7 +5654,7 @@ msgstr "Ви"
|
||||||
msgid "Your content-removal notices"
|
msgid "Your content-removal notices"
|
||||||
msgstr "Ваші повідомлення про видалення контенту"
|
msgstr "Ваші повідомлення про видалення контенту"
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:130
|
#: lib/who_need_help_web/controllers/support_controller.ex:145
|
||||||
#: lib/who_need_help_web/live/support_case_live.ex:53
|
#: lib/who_need_help_web/live/support_case_live.ex:53
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your message was sent to support."
|
msgid "Your message was sent to support."
|
||||||
|
|
@ -7791,12 +7795,12 @@ msgstr "У вас немає дозволу на цю дію."
|
||||||
msgid "You do not have permission for this action. Role changes also require a recent sign-in."
|
msgid "You do not have permission for this action. Role changes also require a recent sign-in."
|
||||||
msgstr "У вас немає дозволу на цю дію. Для зміни ролей також потрібен нещодавній вхід."
|
msgstr "У вас немає дозволу на цю дію. Для зміни ролей також потрібен нещодавній вхід."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/content_removal_controller.ex:70
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:85
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your email was confirmed and the notice was sent for review."
|
msgid "Your email was confirmed and the notice was sent for review."
|
||||||
msgstr "Ваш email підтверджено, повідомлення надіслано на перевірку."
|
msgstr "Ваш email підтверджено, повідомлення надіслано на перевірку."
|
||||||
|
|
||||||
#: lib/who_need_help_web/controllers/support_controller.ex:107
|
#: lib/who_need_help_web/controllers/support_controller.ex:122
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Your email was confirmed and the request was sent to support."
|
msgid "Your email was confirmed and the request was sent to support."
|
||||||
msgstr "Ваш email підтверджено, звернення надіслано до підтримки."
|
msgstr "Ваш email підтверджено, звернення надіслано до підтримки."
|
||||||
|
|
@ -7986,3 +7990,37 @@ msgstr "Увімкнути сповіщення Android"
|
||||||
#, elixir-autogen, elixir-format
|
#, elixir-autogen, elixir-format
|
||||||
msgid "Copy and paste this secure address into your browser:"
|
msgid "Copy and paste this secure address into your browser:"
|
||||||
msgstr "Скопіюйте цю безпечну адресу та вставте її у браузер:"
|
msgstr "Скопіюйте цю безпечну адресу та вставте її у браузер:"
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_controller.ex:69
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:9
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:28
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm content-removal notice"
|
||||||
|
msgstr "Підтвердити повідомлення про видалення контенту"
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_controller.ex:106
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:9
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:23
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm support request"
|
||||||
|
msgstr "Підтвердити звернення до підтримки"
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:11
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm that you submitted this notice before it is sent for review."
|
||||||
|
msgstr "Підтвердьте, що це повідомлення надіслали ви, перш ніж воно надійде на розгляд."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:11
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "Confirm that you submitted this request before it is sent to support."
|
||||||
|
msgstr "Підтвердьте, що це звернення надіслали ви, перш ніж воно надійде до підтримки."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/content_removal_html/verify.html.heex:33
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "If you did not submit this notice, close this page. Nothing will be sent for review."
|
||||||
|
msgstr "Якщо ви не надсилали це повідомлення, закрийте сторінку. На розгляд нічого не надійде."
|
||||||
|
|
||||||
|
#: lib/who_need_help_web/controllers/support_html/verify.html.heex:28
|
||||||
|
#, elixir-autogen, elixir-format
|
||||||
|
msgid "If you did not submit this request, close this page. Nothing will be sent to support."
|
||||||
|
msgstr "Якщо ви не надсилали це звернення, закрийте сторінку. До підтримки нічого не надійде."
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,8 @@ defmodule WhoNeedHelp.SupportAndContentRemovalTest do
|
||||||
assert_email_sent(fn email ->
|
assert_email_sent(fn email ->
|
||||||
matches_request =
|
matches_request =
|
||||||
email.subject =~ request.reference and
|
email.subject =~ request.reference and
|
||||||
email.text_body =~ "/support/cases/#{request.id}/verify?token="
|
email.text_body =~ "/support/cases/#{request.id}/verify#token=" and
|
||||||
|
not String.contains?(email.text_body, "/verify?token=")
|
||||||
|
|
||||||
if matches_request, do: send(test_pid, {:support_acknowledgement, email})
|
if matches_request, do: send(test_pid, {:support_acknowledgement, email})
|
||||||
matches_request
|
matches_request
|
||||||
|
|
@ -57,14 +58,14 @@ defmodule WhoNeedHelp.SupportAndContentRemovalTest do
|
||||||
|
|
||||||
[confirmation_url] =
|
[confirmation_url] =
|
||||||
Regex.run(
|
Regex.run(
|
||||||
~r{https?://[^\s]+/support/cases/#{Regex.escape(request.id)}/verify\?token=[^\s]+},
|
~r{https?://[^\s]+/support/cases/#{Regex.escape(request.id)}/verify#token=[^\s]+},
|
||||||
email.text_body
|
email.text_body
|
||||||
)
|
)
|
||||||
|
|
||||||
confirmation_token =
|
confirmation_token =
|
||||||
confirmation_url
|
confirmation_url
|
||||||
|> URI.parse()
|
|> URI.parse()
|
||||||
|> Map.fetch!(:query)
|
|> Map.fetch!(:fragment)
|
||||||
|> URI.decode_query()
|
|> URI.decode_query()
|
||||||
|> Map.fetch!("token")
|
|> Map.fetch!("token")
|
||||||
|
|
||||||
|
|
@ -657,7 +658,9 @@ defmodule WhoNeedHelp.SupportAndContentRemovalTest do
|
||||||
assert_email_sent(fn email ->
|
assert_email_sent(fn email ->
|
||||||
email.subject =~ "Confirm Who Need Help removal notice" and
|
email.subject =~ "Confirm Who Need Help removal notice" and
|
||||||
email.text_body =~ notice.reference and
|
email.text_body =~ notice.reference and
|
||||||
email.text_body =~ "has not been added to the staff review queue yet"
|
email.text_body =~ "has not been added to the staff review queue yet" and
|
||||||
|
email.text_body =~ "/legal/content-removal/#{notice.id}/verify#token=" and
|
||||||
|
not String.contains?(email.text_body, "/verify?token=")
|
||||||
end)
|
end)
|
||||||
|
|
||||||
moderator_scope = moderator_scope()
|
moderator_scope = moderator_scope()
|
||||||
|
|
|
||||||
|
|
@ -171,7 +171,7 @@ defmodule WhoNeedHelpWeb.SupportControllerTest do
|
||||||
assert_email_sent()
|
assert_email_sent()
|
||||||
end
|
end
|
||||||
|
|
||||||
test "confirmation endpoints exchange short-lived confirmation links for status links", %{
|
test "confirmation pages require an explicit POST before exposing cases to staff", %{
|
||||||
conn: conn
|
conn: conn
|
||||||
} do
|
} do
|
||||||
assert {:ok, support_request} =
|
assert {:ok, support_request} =
|
||||||
|
|
@ -183,10 +183,37 @@ defmodule WhoNeedHelpWeb.SupportControllerTest do
|
||||||
"The confirmation endpoint must redirect to a separate private status link."
|
"The confirmation endpoint must redirect to a separate private status link."
|
||||||
})
|
})
|
||||||
|
|
||||||
support_conn =
|
support_token = WhoNeedHelp.Support.confirmation_token(support_request)
|
||||||
|
|
||||||
|
support_page =
|
||||||
get(
|
get(
|
||||||
conn,
|
conn,
|
||||||
~p"/support/cases/#{support_request.id}/verify?token=#{WhoNeedHelp.Support.confirmation_token(support_request)}"
|
~p"/support/cases/#{support_request.id}/verify?token=#{support_token}"
|
||||||
|
)
|
||||||
|
|
||||||
|
support_html = html_response(support_page, 200)
|
||||||
|
assert support_html =~ "Confirm support request"
|
||||||
|
assert support_html =~ ~s(id="support-confirmation-fragment-form")
|
||||||
|
assert support_html =~ ~s(id="support-confirmation-fragment-token")
|
||||||
|
refute support_html =~ support_token
|
||||||
|
refute Repo.get!(SupportRequest, support_request.id).contact_verified_at
|
||||||
|
|
||||||
|
assert response(
|
||||||
|
post(
|
||||||
|
recycle(support_page),
|
||||||
|
~p"/support/cases/#{support_request.id}/verify",
|
||||||
|
%{}
|
||||||
|
),
|
||||||
|
404
|
||||||
|
)
|
||||||
|
|
||||||
|
refute Repo.get!(SupportRequest, support_request.id).contact_verified_at
|
||||||
|
|
||||||
|
support_conn =
|
||||||
|
post(
|
||||||
|
recycle(support_page),
|
||||||
|
~p"/support/cases/#{support_request.id}/verify",
|
||||||
|
%{"token" => support_token}
|
||||||
)
|
)
|
||||||
|
|
||||||
support_location = redirected_to(support_conn)
|
support_location = redirected_to(support_conn)
|
||||||
|
|
@ -208,11 +235,25 @@ defmodule WhoNeedHelpWeb.SupportControllerTest do
|
||||||
"accurate_complete" => "true"
|
"accurate_complete" => "true"
|
||||||
})
|
})
|
||||||
|
|
||||||
removal_conn =
|
removal_token = WhoNeedHelp.ContentRemoval.confirmation_token(removal_notice)
|
||||||
|
|
||||||
|
removal_page =
|
||||||
conn
|
conn
|
||||||
|> recycle()
|
|> recycle()
|
||||||
|> get(
|
|> get(~p"/legal/content-removal/#{removal_notice.id}/verify?token=#{removal_token}")
|
||||||
~p"/legal/content-removal/#{removal_notice.id}/verify?token=#{WhoNeedHelp.ContentRemoval.confirmation_token(removal_notice)}"
|
|
||||||
|
removal_html = html_response(removal_page, 200)
|
||||||
|
assert removal_html =~ "Confirm content-removal notice"
|
||||||
|
assert removal_html =~ ~s(id="content-removal-confirmation-fragment-form")
|
||||||
|
assert removal_html =~ ~s(id="content-removal-confirmation-fragment-token")
|
||||||
|
refute removal_html =~ removal_token
|
||||||
|
refute Repo.get!(WhoNeedHelp.ContentRemoval.Notice, removal_notice.id).contact_verified_at
|
||||||
|
|
||||||
|
removal_conn =
|
||||||
|
post(
|
||||||
|
recycle(removal_page),
|
||||||
|
~p"/legal/content-removal/#{removal_notice.id}/verify",
|
||||||
|
%{"token" => removal_token}
|
||||||
)
|
)
|
||||||
|
|
||||||
removal_location = redirected_to(removal_conn)
|
removal_location = redirected_to(removal_conn)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user