Publish privacy policy and service terms
Some checks are pending
Quality / full-local-gates (push) Waiting to run

This commit is contained in:
SimpleTest 2026-07-21 04:02:55 +03:00
parent d5233bb5ce
commit 585f5648ff
13 changed files with 638 additions and 167 deletions

View File

@ -144,6 +144,10 @@ defmodule WhoNeedHelpWeb.Layouts do
<footer class="border-t border-base-300 px-4 py-6 text-center text-xs text-base-content/70">
<.link href={~p"/safety"} class="link">{gettext("Safety rules")}</.link>
<span class="mx-2">·</span>
<.link href={~p"/privacy"} class="link">{gettext("Privacy")}</.link>
<span class="mx-2">·</span>
<.link href={~p"/terms"} class="link">{gettext("Terms")}</.link>
<span class="mx-2">·</span>
<.link href={~p"/support"} class="link">{gettext("Support")}</.link>
<span class="mx-2">·</span>
<.link href={~p"/legal/content-removal"} class="link">{gettext("Report content")}</.link>

View File

@ -10,6 +10,13 @@
<meta name="csrf-token" content={get_csrf_token()} />
<meta name="theme-color" content="#047b68" />
<meta name="color-scheme" content="light dark" />
<meta
name="description"
content={
assigns[:page_description] ||
"Who Need Help connects adults who need urgent local help with nearby volunteers."
}
/>
<.live_title default="Who Need Help" suffix=" · Who Need Help" phx-no-format>{assigns[:page_title]}</.live_title>
<link rel="manifest" href={~p"/manifest.webmanifest"} />
<link rel="icon" type="image/svg+xml" sizes="any" href={~p"/images/logo.svg"} />

View File

@ -5,7 +5,23 @@ defmodule WhoNeedHelpWeb.PageController do
render(conn, :home)
end
def privacy(conn, _params) do
render(conn, :privacy,
page_title: "Privacy Policy",
page_description:
"How Who Need Help processes account, Google sign-in, location, communication, and safety data."
)
end
def safety(conn, _params) do
render(conn, :safety)
end
def terms(conn, _params) do
render(conn, :terms,
page_title: "Terms of Service",
page_description:
"The conditions for using Who Need Help to coordinate voluntary help and social activities."
)
end
end

View File

@ -0,0 +1,157 @@
<Layouts.app flash={@flash} current_scope={@current_scope}>
<article class="mx-auto max-w-4xl">
<div class="text-sm font-semibold text-brand">WHO NEED HELP</div>
<h1 class="mt-2 text-4xl font-black">Privacy Policy</h1>
<p class="mt-3 text-sm text-base-content/60">Effective: 21 July 2026</p>
<p class="mt-5 leading-7 text-base-content/75">
This policy explains how Who Need Help processes personal data when people use the
voluntary-help service, including Google sign-in. Who Need Help is not an advertising
network and does not sell personal data.
</p>
<div class="mt-10 space-y-8 leading-7 text-base-content/75">
<section aria-labelledby="privacy-data">
<h2 id="privacy-data" class="text-2xl font-bold text-base-content">Data we process</h2>
<ul class="mt-3 list-disc space-y-2 pl-6">
<li>
<strong>Account and profile:</strong> email address, password hash if a password is
added, display name, biography, locale, privacy and messaging preferences, optional
thank-you URL, linked social profiles, confirmation status, and the time at which the
registration rules were accepted.
</li>
<li>
<strong>Help and activity content:</strong> requests, categories, descriptions,
pickup instructions, selected locations and visibility, activity plans, matching and
handover status, messages, participation decisions, reviews, category proposals, and
votes.
</li>
<li>
<strong>Trust and support:</strong> blocks, reports, moderation signals and decisions,
support requests, account-deletion or data-export requests, and legal content-removal
notices. These records may include the content, contact details, timestamps, and
reviewer actions needed to handle the case.
</li>
<li>
<strong>Location and tracking:</strong> a request or activity location that the user
selects, plus exact location, accuracy, and capture time only when a participant
actively starts live sharing. Tracking sessions retain summary evidence such as
distance, sample count, movement, and proximity timestamps.
</li>
<li>
<strong>Security and operation:</strong> session cookies, short-lived login and OAuth
state, hashed rate-limit identifiers, request timestamps, and application or proxy
logs needed to operate, diagnose, and protect the service.
</li>
</ul>
</section>
<section aria-labelledby="privacy-google">
<h2 id="privacy-google" class="text-2xl font-bold text-base-content">
Google sign-in data
</h2>
<p class="mt-3">
Google sign-in requests the basic <code>email</code> and <code>profile</code> scopes.
The service uses the Google account's stable identifier, verified email address, email
verification result, and name to register, sign in, link the account, and seed the
display name. It stores the stable Google identifier and normalized email with the local
account. The application consumes provider tokens only while completing the sign-in
exchange and does not persist Google access tokens or ID tokens.
</p>
<p class="mt-3">
Google user data is not used for advertising, profiling outside Who Need Help, or sale.
It is shared only with infrastructure processors when necessary to operate and secure
the service, or when disclosure is legally required.
</p>
</section>
<section aria-labelledby="privacy-use">
<h2 id="privacy-use" class="text-2xl font-bold text-base-content">
Why data is used
</h2>
<p class="mt-3">
Data is used to authenticate accounts, publish and match requests, coordinate help or
activities, deliver private chat and transactional email, apply the user's visibility
choices, verify handovers, calculate reputation, prevent abuse, moderate content,
respond to support and legal notices, maintain backups, and keep the service reliable.
</p>
</section>
<section aria-labelledby="privacy-sharing">
<h2 id="privacy-sharing" class="text-2xl font-bold text-base-content">
Visibility and recipients
</h2>
<p class="mt-3">
Other users see profile, request, activity, reputation, and location information only
through the product rules and visibility settings. Exact match locations and private
chats are limited to the relevant participants. Approved activity participants can see
the activity's exact location and group chat. Public social links are visible as marked
verified or unverified.
</p>
<p class="mt-3">
Hosting, database, backup, transactional-email, and map-tile providers process the
minimum data needed to provide their component of the service. External social-profile
and thank-you links are controlled by their own operators and policies.
</p>
</section>
<section aria-labelledby="privacy-retention">
<h2 id="privacy-retention" class="text-2xl font-bold text-base-content">
Retention and deletion
</h2>
<p class="mt-3">
The current exact tracking point is deleted when sharing stops, the match ends, or
either participant blocks the other. Derived movement and proximity evidence may remain
to protect reputation integrity and investigate abuse. Login tokens and rate-limit
buckets expire or are pruned according to their operational windows.
</p>
<p class="mt-3">
Other account, content, communication, moderation, support, and legal records are kept
while needed to provide the service, resolve disputes, prevent fraud, meet legal duties,
or preserve the integrity of completed-help records. Backup copies may remain until the
relevant backup expires. A deletion request does not erase records that must still be
retained for those purposes.
</p>
</section>
<section aria-labelledby="privacy-controls">
<h2 id="privacy-controls" class="text-2xl font-bold text-base-content">Your controls</h2>
<p class="mt-3">
Account settings control profile, location visibility, direct messages, and connected
Google sign-in. Live tracking is optional and can be stopped. You may submit a
<.link href={~p"/support"} class="link font-semibold">privacy or data-export request</.link>
or an <.link href={~p"/account/delete"} class="link font-semibold">account-deletion request</.link>.
Use the
<.link href={~p"/legal/content-removal"} class="link font-semibold">content-removal form</.link>
for a specific item of illegal, infringing, or privacy-violating content.
</p>
</section>
<section aria-labelledby="privacy-security">
<h2 id="privacy-security" class="text-2xl font-bold text-base-content">
Security, adults, and changes
</h2>
<p class="mt-3">
The service uses access controls, hashed credentials and handover codes, encrypted HTTPS
transport, restricted visibility, and audit records. No internet service can guarantee
absolute security. Who Need Help is intended only for adults aged 18 or older.
</p>
<p class="mt-3">
This page will be updated when data practices materially change. The effective date
above identifies the current version.
</p>
</section>
<section aria-labelledby="privacy-contact">
<h2 id="privacy-contact" class="text-2xl font-bold text-base-content">Contact</h2>
<p class="mt-3">
Contact the Who Need Help operator through the <.link
href={~p"/support"}
class="link font-semibold"
>public support form</.link>.
Select “Privacy request”, “Data export”, or “Account deletion” so the request reaches the
appropriate queue.
</p>
</section>
</div>
</article>
</Layouts.app>

View File

@ -0,0 +1,136 @@
<Layouts.app flash={@flash} current_scope={@current_scope}>
<article class="mx-auto max-w-4xl">
<div class="text-sm font-semibold text-brand">WHO NEED HELP</div>
<h1 class="mt-2 text-4xl font-black">Terms of Service</h1>
<p class="mt-3 text-sm text-base-content/60">Effective: 21 July 2026</p>
<p class="mt-5 leading-7 text-base-content/75">
These terms describe the conditions for using Who Need Help. The service coordinates
voluntary help and optional social activities between adults; it is not the provider of the
requested help.
</p>
<div class="mt-10 space-y-8 leading-7 text-base-content/75">
<section aria-labelledby="terms-eligibility">
<h2 id="terms-eligibility" class="text-2xl font-bold text-base-content">
Eligibility and acceptance
</h2>
<p class="mt-3">
You must be at least 18 years old and able to agree to these terms. When registering or
using protected features, you agree to these terms and the <.link
href={~p"/safety"}
class="link font-semibold"
>Safety Rules</.link>. You must provide
accurate account information, protect access to your email and password, and use only
accounts you are authorized to control.
</p>
</section>
<section aria-labelledby="terms-service">
<h2 id="terms-service" class="text-2xl font-bold text-base-content">
Nature of the service
</h2>
<p class="mt-3">
Help is voluntary and has no required fee. Who Need Help does not employ, dispatch,
background-check, insure, or continuously supervise helpers and cannot guarantee a
match, identity, arrival time, route, item, handover, conduct, or outcome. Ratings,
social links, email confirmation, location, and handover evidence are useful signals,
not guarantees.
</p>
<p class="mt-3">
The service is not an emergency, medical, pharmacy, transport, roadside-assistance, or
payment service. In immediate danger, contact the emergency service for your location.
</p>
</section>
<section aria-labelledby="terms-conduct">
<h2 id="terms-conduct" class="text-2xl font-bold text-base-content">Acceptable use</h2>
<p class="mt-3">
Follow applicable law, pharmacy and venue rules, the Safety Rules, and other people's
consent and privacy. Do not request or provide unlawful goods or services, medical
advice, prescriptions, controlled substances, cash advances, harassment, threats,
impersonation, fraud, spam, sexual exploitation, non-consensual intimate material,
instructions for wrongdoing, or content that violates another person's rights. Do not
manipulate matches, evidence, reviews, votes, tracking, or reputation.
</p>
</section>
<section aria-labelledby="terms-content">
<h2 id="terms-content" class="text-2xl font-bold text-base-content">
Your content and privacy
</h2>
<p class="mt-3">
You retain responsibility for content you submit. You give Who Need Help the limited
permission needed to store, display, transmit, moderate, back up, and otherwise process
that content to operate and protect the service. Submit only information you have the
right to share, and never publish home access codes, identity documents, prescriptions,
payment credentials, or unnecessary sensitive information.
</p>
<p class="mt-3">
Location sharing is controlled by the product settings and remains your choice. Data
handling is described in the <.link href={~p"/privacy"} class="link font-semibold">Privacy Policy</.link>.
</p>
</section>
<section aria-labelledby="terms-thanks">
<h2 id="terms-thanks" class="text-2xl font-bold text-base-content">
Optional thanks and third parties
</h2>
<p class="mt-3">
A helper may publish an external thank-you link after a completed handover. Any transfer
is optional and occurs outside Who Need Help. The service does not receive, split,
refund, guarantee, or report it. Google sign-in, map tiles, social profiles, email
delivery, and external links are also subject to their respective operators' terms and
policies.
</p>
</section>
<section aria-labelledby="terms-moderation">
<h2 id="terms-moderation" class="text-2xl font-bold text-base-content">
Moderation and availability
</h2>
<p class="mt-3">
Who Need Help may hide content, limit features, suspend an account, preserve evidence,
or cooperate with a lawful request when reasonably needed for safety, integrity,
operation, or legal compliance. Automated signals can prioritize review but are not
treated as proof by themselves. Use in-product reporting, the <.link
href={~p"/support"}
class="link font-semibold"
>support form</.link>, or the
<.link href={~p"/legal/content-removal"} class="link font-semibold">content-removal form</.link>
to request review.
</p>
<p class="mt-3">
Features may change or be interrupted for maintenance, security, provider failure, or
circumstances outside the operator's control. Nothing in these terms excludes rights or
responsibilities that applicable law does not permit the parties to exclude.
</p>
</section>
<section aria-labelledby="terms-ending">
<h2 id="terms-ending" class="text-2xl font-bold text-base-content">
Ending use and changes
</h2>
<p class="mt-3">
You may stop using the service and submit an <.link
href={~p"/account/delete"}
class="link font-semibold"
>account-deletion request</.link>.
Some safety, fraud, support, completed-help, backup, or legal records may need to remain,
as explained in the Privacy Policy. Updated terms will be published here with a new
effective date; material changes should be reviewed before continuing to use the
service.
</p>
</section>
<section aria-labelledby="terms-contact">
<h2 id="terms-contact" class="text-2xl font-bold text-base-content">Contact</h2>
<p class="mt-3">
Questions, disputes, appeals, and accessibility issues can be submitted through the <.link
href={~p"/support"}
class="link font-semibold"
>Who Need Help support form</.link>.
</p>
</section>
</div>
</article>
</Layouts.app>

View File

@ -36,9 +36,17 @@
id="google_registration_terms"
name="google_registration[terms_accepted]"
value="false"
label={gettext("I am 18 or older and accept the safety rules")}
label={gettext("I am 18 or older and accept the Terms and Safety Rules")}
required
/>
<p class="text-xs text-base-content/60">
{gettext("Read the")}
<.link href={~p"/terms"} class="link font-semibold">{gettext("Terms")}</.link>,
<.link href={~p"/privacy"} class="link font-semibold">{gettext("Privacy Policy")}</.link>
{gettext("and")}
<.link href={~p"/safety"} class="link font-semibold">{gettext("Safety Rules")}</.link>
{gettext("before confirming.")}
</p>
<.google_auth_button
label={gettext("Sign up with Google")}
disabled={!@google_auth_enabled}
@ -80,14 +88,17 @@
<p class="mt-2 text-xs text-base-content/60">
{gettext("Read the")}
<.link href={~p"/safety"} class="link font-semibold">{gettext("safety rules")}</.link>
<.link href={~p"/terms"} class="link font-semibold">{gettext("Terms")}</.link>,
<.link href={~p"/privacy"} class="link font-semibold">{gettext("Privacy Policy")}</.link>
{gettext("and")}
<.link href={~p"/safety"} class="link font-semibold">{gettext("Safety Rules")}</.link>
{gettext("before confirming.")}
</p>
<.input
field={f[:terms_accepted]}
type="checkbox"
label={gettext("I am 18 or older and accept the safety rules")}
label={gettext("I am 18 or older and accept the Terms and Safety Rules")}
required
/>

View File

@ -71,7 +71,9 @@ defmodule WhoNeedHelpWeb.Router do
get "/", PageController, :home
get "/feedback", FeedbackController, :show
get "/privacy", PageController, :privacy
get "/safety", PageController, :safety
get "/terms", PageController, :terms
get "/support", SupportController, :new
get "/support/new", SupportController, :new
post "/support", SupportController, :create

View File

@ -12,7 +12,7 @@ msgid ""
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:111
#: lib/who_need_help_web/components/layouts.ex:266
#: lib/who_need_help_web/components/layouts.ex:270
#, elixir-autogen, elixir-format
msgid "Account settings"
msgstr ""
@ -30,13 +30,13 @@ msgstr ""
msgid "Ask for help"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:304
#: lib/who_need_help_web/components/layouts.ex:319
#: lib/who_need_help_web/components/layouts.ex:308
#: lib/who_need_help_web/components/layouts.ex:323
#, elixir-autogen, elixir-format
msgid "Attempting to reconnect"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:175
#: lib/who_need_help_web/components/layouts.ex:179
#, elixir-autogen, elixir-format
msgid "Categories"
msgstr ""
@ -65,13 +65,13 @@ msgid "Log in"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:114
#: lib/who_need_help_web/components/layouts.ex:269
#: lib/who_need_help_web/components/layouts.ex:273
#, elixir-autogen, elixir-format
msgid "Log out"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:108
#: lib/who_need_help_web/components/layouts.ex:263
#: lib/who_need_help_web/components/layouts.ex:267
#: lib/who_need_help_web/live/profile_live.ex:16
#, elixir-autogen, elixir-format
msgid "Profile"
@ -83,7 +83,7 @@ msgstr ""
msgid "Register"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:165
#: lib/who_need_help_web/components/layouts.ex:169
#, elixir-autogen, elixir-format
msgid "Requests"
msgstr ""
@ -93,12 +93,12 @@ msgstr ""
msgid "See nearby requests"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:311
#: lib/who_need_help_web/components/layouts.ex:315
#, elixir-autogen, elixir-format
msgid "Something went wrong!"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:296
#: lib/who_need_help_web/components/layouts.ex:300
#, elixir-autogen, elixir-format
msgid "We can't find the internet"
msgstr ""
@ -174,7 +174,7 @@ msgid "Account Settings"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:63
#: lib/who_need_help_web/components/layouts.ex:201
#: lib/who_need_help_web/components/layouts.ex:205
#, elixir-autogen, elixir-format
msgid "Account and language"
msgstr ""
@ -195,7 +195,7 @@ msgstr ""
msgid "Active"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:170
#: lib/who_need_help_web/components/layouts.ex:174
#: lib/who_need_help_web/live/activity_live/index.ex:118
#, elixir-autogen, elixir-format
msgid "Activities"
@ -367,7 +367,7 @@ msgstr ""
msgid "Briefly describe the help you need"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:151
#: lib/who_need_help_web/components/layouts.ex:155
#, elixir-autogen, elixir-format
msgid "Build Week feedback"
msgstr ""
@ -641,7 +641,7 @@ msgstr ""
msgid "Dismissed"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:76
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:84
#: lib/who_need_help_web/live/profile_live.ex:149
#, elixir-autogen, elixir-format
msgid "Display name"
@ -662,7 +662,7 @@ msgstr ""
msgid "Double-blind review"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:67
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:75
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:89
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:122
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:15
@ -817,7 +817,7 @@ msgstr ""
msgid "Helper: %{name}"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:180
#: lib/who_need_help_web/components/layouts.ex:184
#, elixir-autogen, elixir-format
msgid "Helpers"
msgstr ""
@ -871,12 +871,6 @@ msgstr ""
msgid "Human decisions retained"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:39
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:90
#, elixir-autogen, elixir-format
msgid "I am 18 or older and accept the safety rules"
msgstr ""
#: lib/who_need_help_web/controllers/page_html/home.html.heex:56
#: lib/who_need_help_web/live/request_live/show.ex:875
#, elixir-autogen, elixir-format
@ -1125,7 +1119,7 @@ msgstr ""
msgid "Mode"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:185
#: lib/who_need_help_web/components/layouts.ex:189
#: lib/who_need_help_web/live/moderation_live.ex:9
#: lib/who_need_help_web/live/moderation_live.ex:291
#, elixir-autogen, elixir-format
@ -1534,7 +1528,8 @@ msgstr ""
msgid "Rating"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:82
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:43
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:90
#, elixir-autogen, elixir-format
msgid "Read the"
msgstr ""
@ -2153,12 +2148,12 @@ msgstr ""
msgid "Use a public first meeting point. Do not publish a home address, access code, travel document, or other sensitive information."
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:358
#: lib/who_need_help_web/components/layouts.ex:362
#, elixir-autogen, elixir-format
msgid "Use dark theme"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:349
#: lib/who_need_help_web/components/layouts.ex:353
#, elixir-autogen, elixir-format
msgid "Use light theme"
msgstr ""
@ -2174,7 +2169,7 @@ msgstr ""
msgid "Use private chat and optional live location sharing."
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:340
#: lib/who_need_help_web/components/layouts.ex:344
#, elixir-autogen, elixir-format
msgid "Use system theme"
msgstr ""
@ -2290,7 +2285,7 @@ msgstr ""
msgid "Who Need Help home"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:95
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:106
#, elixir-autogen, elixir-format
msgid "Who Need Help is not an emergency or medical service. Medicine requests are limited to pickup of legal items already purchased or reserved."
msgstr ""
@ -2457,7 +2452,8 @@ msgstr ""
msgid "activity message"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:84
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:48
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:95
#, elixir-autogen, elixir-format
msgid "before confirming."
msgstr ""
@ -2534,11 +2530,6 @@ msgstr ""
msgid "rating %{rating}"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:83
#, elixir-autogen, elixir-format
msgid "safety rules"
msgstr ""
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:28
#, elixir-autogen, elixir-format
msgid "the mailbox page"
@ -2865,7 +2856,7 @@ msgstr ""
msgid "Connect Google only after signing in here. We never merge accounts automatically by matching email addresses."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:101
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:112
#, elixir-autogen, elixir-format
msgid "Create account and email me a link"
msgstr ""
@ -2920,14 +2911,14 @@ msgstr ""
msgid "Google sign-in session is invalid."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:47
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:55
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:78
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:53
#, elixir-autogen, elixir-format
msgid "Google sign-in will be available after the operator configures it."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:100
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:111
#, elixir-autogen, elixir-format
msgid "Sending link..."
msgstr ""
@ -2937,7 +2928,7 @@ msgstr ""
msgid "Sign in with Google"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:43
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:51
#, elixir-autogen, elixir-format
msgid "Sign up with Google"
msgstr ""
@ -2982,7 +2973,7 @@ msgstr ""
msgid "Your account was created with Google."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:51
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:59
#, elixir-autogen, elixir-format
msgid "or sign up with email"
msgstr ""
@ -3360,7 +3351,7 @@ msgstr ""
msgid "Removal notice updated."
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:149
#: lib/who_need_help_web/components/layouts.ex:153
#: lib/who_need_help_web/controllers/support_html/new.html.heex:13
#, elixir-autogen, elixir-format
msgid "Report content"
@ -3461,7 +3452,7 @@ msgstr ""
msgid "Submitting this form does not immediately sign you out or erase evidence required for an open safety investigation. Support will verify and process the request."
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:147
#: lib/who_need_help_web/components/layouts.ex:151
#, elixir-autogen, elixir-format
msgid "Support"
msgstr ""
@ -3472,7 +3463,7 @@ msgstr ""
msgid "Support operations"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:190
#: lib/who_need_help_web/components/layouts.ex:194
#, elixir-autogen, elixir-format
msgid "Support queue"
msgstr ""
@ -3640,3 +3631,39 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Please delete my account and associated personal data."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:39
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:101
#, elixir-autogen, elixir-format
msgid "I am 18 or older and accept the Terms and Safety Rules"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:147
#, elixir-autogen, elixir-format
msgid "Privacy"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:45
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:92
#, elixir-autogen, elixir-format
msgid "Privacy Policy"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:47
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:94
#, elixir-autogen, elixir-format
msgid "Safety Rules"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:149
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:44
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:91
#, elixir-autogen, elixir-format
msgid "Terms"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:46
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:93
#, elixir-autogen, elixir-format
msgid "and"
msgstr ""

View File

@ -12,7 +12,7 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/who_need_help_web/components/layouts.ex:111
#: lib/who_need_help_web/components/layouts.ex:266
#: lib/who_need_help_web/components/layouts.ex:270
#, elixir-autogen, elixir-format
msgid "Account settings"
msgstr ""
@ -30,13 +30,13 @@ msgstr ""
msgid "Ask for help"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:304
#: lib/who_need_help_web/components/layouts.ex:319
#: lib/who_need_help_web/components/layouts.ex:308
#: lib/who_need_help_web/components/layouts.ex:323
#, elixir-autogen, elixir-format
msgid "Attempting to reconnect"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:175
#: lib/who_need_help_web/components/layouts.ex:179
#, elixir-autogen, elixir-format
msgid "Categories"
msgstr ""
@ -65,13 +65,13 @@ msgid "Log in"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:114
#: lib/who_need_help_web/components/layouts.ex:269
#: lib/who_need_help_web/components/layouts.ex:273
#, elixir-autogen, elixir-format
msgid "Log out"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:108
#: lib/who_need_help_web/components/layouts.ex:263
#: lib/who_need_help_web/components/layouts.ex:267
#: lib/who_need_help_web/live/profile_live.ex:16
#, elixir-autogen, elixir-format
msgid "Profile"
@ -83,7 +83,7 @@ msgstr ""
msgid "Register"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:165
#: lib/who_need_help_web/components/layouts.ex:169
#, elixir-autogen, elixir-format
msgid "Requests"
msgstr ""
@ -93,12 +93,12 @@ msgstr ""
msgid "See nearby requests"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:311
#: lib/who_need_help_web/components/layouts.ex:315
#, elixir-autogen, elixir-format
msgid "Something went wrong!"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:296
#: lib/who_need_help_web/components/layouts.ex:300
#, elixir-autogen, elixir-format
msgid "We can't find the internet"
msgstr ""
@ -174,7 +174,7 @@ msgid "Account Settings"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:63
#: lib/who_need_help_web/components/layouts.ex:201
#: lib/who_need_help_web/components/layouts.ex:205
#, elixir-autogen, elixir-format
msgid "Account and language"
msgstr ""
@ -195,7 +195,7 @@ msgstr ""
msgid "Active"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:170
#: lib/who_need_help_web/components/layouts.ex:174
#: lib/who_need_help_web/live/activity_live/index.ex:118
#, elixir-autogen, elixir-format
msgid "Activities"
@ -367,7 +367,7 @@ msgstr ""
msgid "Briefly describe the help you need"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:151
#: lib/who_need_help_web/components/layouts.ex:155
#, elixir-autogen, elixir-format
msgid "Build Week feedback"
msgstr ""
@ -641,7 +641,7 @@ msgstr ""
msgid "Dismissed"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:76
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:84
#: lib/who_need_help_web/live/profile_live.ex:149
#, elixir-autogen, elixir-format
msgid "Display name"
@ -662,7 +662,7 @@ msgstr ""
msgid "Double-blind review"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:67
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:75
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:89
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:122
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:15
@ -817,7 +817,7 @@ msgstr ""
msgid "Helper: %{name}"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:180
#: lib/who_need_help_web/components/layouts.ex:184
#, elixir-autogen, elixir-format
msgid "Helpers"
msgstr ""
@ -871,12 +871,6 @@ msgstr ""
msgid "Human decisions retained"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:39
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:90
#, elixir-autogen, elixir-format
msgid "I am 18 or older and accept the safety rules"
msgstr ""
#: lib/who_need_help_web/controllers/page_html/home.html.heex:56
#: lib/who_need_help_web/live/request_live/show.ex:875
#, elixir-autogen, elixir-format
@ -1125,7 +1119,7 @@ msgstr ""
msgid "Mode"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:185
#: lib/who_need_help_web/components/layouts.ex:189
#: lib/who_need_help_web/live/moderation_live.ex:9
#: lib/who_need_help_web/live/moderation_live.ex:291
#, elixir-autogen, elixir-format
@ -1534,7 +1528,8 @@ msgstr ""
msgid "Rating"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:82
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:43
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:90
#, elixir-autogen, elixir-format
msgid "Read the"
msgstr ""
@ -2153,12 +2148,12 @@ msgstr ""
msgid "Use a public first meeting point. Do not publish a home address, access code, travel document, or other sensitive information."
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:358
#: lib/who_need_help_web/components/layouts.ex:362
#, elixir-autogen, elixir-format
msgid "Use dark theme"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:349
#: lib/who_need_help_web/components/layouts.ex:353
#, elixir-autogen, elixir-format
msgid "Use light theme"
msgstr ""
@ -2174,7 +2169,7 @@ msgstr ""
msgid "Use private chat and optional live location sharing."
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:340
#: lib/who_need_help_web/components/layouts.ex:344
#, elixir-autogen, elixir-format
msgid "Use system theme"
msgstr ""
@ -2290,7 +2285,7 @@ msgstr ""
msgid "Who Need Help home"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:95
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:106
#, elixir-autogen, elixir-format
msgid "Who Need Help is not an emergency or medical service. Medicine requests are limited to pickup of legal items already purchased or reserved."
msgstr ""
@ -2457,7 +2452,8 @@ msgstr ""
msgid "activity message"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:84
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:48
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:95
#, elixir-autogen, elixir-format
msgid "before confirming."
msgstr ""
@ -2534,11 +2530,6 @@ msgstr ""
msgid "rating %{rating}"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:83
#, elixir-autogen, elixir-format
msgid "safety rules"
msgstr ""
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:28
#, elixir-autogen, elixir-format
msgid "the mailbox page"
@ -2865,7 +2856,7 @@ msgstr ""
msgid "Connect Google only after signing in here. We never merge accounts automatically by matching email addresses."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:101
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:112
#, elixir-autogen, elixir-format
msgid "Create account and email me a link"
msgstr ""
@ -2920,14 +2911,14 @@ msgstr ""
msgid "Google sign-in session is invalid."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:47
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:55
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:78
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:53
#, elixir-autogen, elixir-format
msgid "Google sign-in will be available after the operator configures it."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:100
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:111
#, elixir-autogen, elixir-format
msgid "Sending link..."
msgstr ""
@ -2937,7 +2928,7 @@ msgstr ""
msgid "Sign in with Google"
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:43
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:51
#, elixir-autogen, elixir-format
msgid "Sign up with Google"
msgstr ""
@ -2982,7 +2973,7 @@ msgstr ""
msgid "Your account was created with Google."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:51
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:59
#, elixir-autogen, elixir-format, fuzzy
msgid "or sign up with email"
msgstr ""
@ -3360,7 +3351,7 @@ msgstr ""
msgid "Removal notice updated."
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:149
#: lib/who_need_help_web/components/layouts.ex:153
#: lib/who_need_help_web/controllers/support_html/new.html.heex:13
#, elixir-autogen, elixir-format, fuzzy
msgid "Report content"
@ -3461,7 +3452,7 @@ msgstr ""
msgid "Submitting this form does not immediately sign you out or erase evidence required for an open safety investigation. Support will verify and process the request."
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:147
#: lib/who_need_help_web/components/layouts.ex:151
#, elixir-autogen, elixir-format
msgid "Support"
msgstr ""
@ -3472,7 +3463,7 @@ msgstr ""
msgid "Support operations"
msgstr ""
#: lib/who_need_help_web/components/layouts.ex:190
#: lib/who_need_help_web/components/layouts.ex:194
#, elixir-autogen, elixir-format
msgid "Support queue"
msgstr ""
@ -3640,3 +3631,39 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Please delete my account and associated personal data."
msgstr ""
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:39
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:101
#, elixir-autogen, elixir-format
msgid "I am 18 or older and accept the Terms and Safety Rules"
msgstr "I am 18 or older and accept the Terms and Safety Rules"
#: lib/who_need_help_web/components/layouts.ex:147
#, elixir-autogen, elixir-format
msgid "Privacy"
msgstr "Privacy"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:45
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:92
#, elixir-autogen, elixir-format
msgid "Privacy Policy"
msgstr "Privacy Policy"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:47
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:94
#, elixir-autogen, elixir-format
msgid "Safety Rules"
msgstr "Safety Rules"
#: lib/who_need_help_web/components/layouts.ex:149
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:44
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:91
#, elixir-autogen, elixir-format
msgid "Terms"
msgstr "Terms"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:46
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:93
#, elixir-autogen, elixir-format
msgid "and"
msgstr "and"

View File

@ -12,7 +12,7 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100 != 11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10||n%100>=20) ? 1 : 2);\n"
#: lib/who_need_help_web/components/layouts.ex:111
#: lib/who_need_help_web/components/layouts.ex:266
#: lib/who_need_help_web/components/layouts.ex:270
#, elixir-autogen, elixir-format
msgid "Account settings"
msgstr "Настройки аккаунта"
@ -30,13 +30,13 @@ msgstr "Действия"
msgid "Ask for help"
msgstr "Попросить о помощи"
#: lib/who_need_help_web/components/layouts.ex:304
#: lib/who_need_help_web/components/layouts.ex:319
#: lib/who_need_help_web/components/layouts.ex:308
#: lib/who_need_help_web/components/layouts.ex:323
#, elixir-autogen, elixir-format
msgid "Attempting to reconnect"
msgstr "Пытаемся восстановить соединение"
#: lib/who_need_help_web/components/layouts.ex:175
#: lib/who_need_help_web/components/layouts.ex:179
#, elixir-autogen, elixir-format
msgid "Categories"
msgstr "Категории"
@ -65,13 +65,13 @@ msgid "Log in"
msgstr "Войти"
#: lib/who_need_help_web/components/layouts.ex:114
#: lib/who_need_help_web/components/layouts.ex:269
#: lib/who_need_help_web/components/layouts.ex:273
#, elixir-autogen, elixir-format
msgid "Log out"
msgstr "Выйти"
#: lib/who_need_help_web/components/layouts.ex:108
#: lib/who_need_help_web/components/layouts.ex:263
#: lib/who_need_help_web/components/layouts.ex:267
#: lib/who_need_help_web/live/profile_live.ex:16
#, elixir-autogen, elixir-format
msgid "Profile"
@ -83,7 +83,7 @@ msgstr "Профиль"
msgid "Register"
msgstr "Регистрация"
#: lib/who_need_help_web/components/layouts.ex:165
#: lib/who_need_help_web/components/layouts.ex:169
#, elixir-autogen, elixir-format
msgid "Requests"
msgstr "Заявки"
@ -93,12 +93,12 @@ msgstr "Заявки"
msgid "See nearby requests"
msgstr "Заявки рядом"
#: lib/who_need_help_web/components/layouts.ex:311
#: lib/who_need_help_web/components/layouts.ex:315
#, elixir-autogen, elixir-format
msgid "Something went wrong!"
msgstr "Что-то пошло не так!"
#: lib/who_need_help_web/components/layouts.ex:296
#: lib/who_need_help_web/components/layouts.ex:300
#, elixir-autogen, elixir-format
msgid "We can't find the internet"
msgstr "Нет соединения с интернетом"
@ -179,7 +179,7 @@ msgid "Account Settings"
msgstr "Настройки аккаунта"
#: lib/who_need_help_web/components/layouts.ex:63
#: lib/who_need_help_web/components/layouts.ex:201
#: lib/who_need_help_web/components/layouts.ex:205
#, elixir-autogen, elixir-format
msgid "Account and language"
msgstr "Аккаунт и язык"
@ -200,7 +200,7 @@ msgstr "Центр действий"
msgid "Active"
msgstr "Активный"
#: lib/who_need_help_web/components/layouts.ex:170
#: lib/who_need_help_web/components/layouts.ex:174
#: lib/who_need_help_web/live/activity_live/index.ex:118
#, elixir-autogen, elixir-format
msgid "Activities"
@ -384,7 +384,7 @@ msgstr ""
msgid "Briefly describe the help you need"
msgstr "Кратко опишите, какая помощь вам нужна"
#: lib/who_need_help_web/components/layouts.ex:151
#: lib/who_need_help_web/components/layouts.ex:155
#, elixir-autogen, elixir-format
msgid "Build Week feedback"
msgstr "Отчёт для Build Week"
@ -667,7 +667,7 @@ msgstr ""
msgid "Dismissed"
msgstr "Отклонено"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:76
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:84
#: lib/who_need_help_web/live/profile_live.ex:149
#, elixir-autogen, elixir-format
msgid "Display name"
@ -691,7 +691,7 @@ msgstr "Нет аккаунта?"
msgid "Double-blind review"
msgstr "Двусторонний скрытый отзыв"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:67
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:75
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:89
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:122
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:15
@ -857,7 +857,7 @@ msgstr "Помощник"
msgid "Helper: %{name}"
msgstr "Помощник: %{name}"
#: lib/who_need_help_web/components/layouts.ex:180
#: lib/who_need_help_web/components/layouts.ex:184
#, elixir-autogen, elixir-format
msgid "Helpers"
msgstr "Помощники"
@ -932,12 +932,6 @@ msgstr "Скрыть заявку"
msgid "Human decisions retained"
msgstr "Решения остаются за человеком"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:39
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:90
#, elixir-autogen, elixir-format
msgid "I am 18 or older and accept the safety rules"
msgstr "Мне 18 лет и я принимаю правила безопасности."
#: lib/who_need_help_web/controllers/page_html/home.html.heex:56
#: lib/who_need_help_web/live/request_live/show.ex:875
#, elixir-autogen, elixir-format
@ -1215,7 +1209,7 @@ msgstr "Написать одобренной группе"
msgid "Mode"
msgstr "Режим"
#: lib/who_need_help_web/components/layouts.ex:185
#: lib/who_need_help_web/components/layouts.ex:189
#: lib/who_need_help_web/live/moderation_live.ex:9
#: lib/who_need_help_web/live/moderation_live.ex:291
#, elixir-autogen, elixir-format
@ -1651,7 +1645,8 @@ msgstr ""
msgid "Rating"
msgstr "Оценка"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:82
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:43
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:90
#, elixir-autogen, elixir-format
msgid "Read the"
msgstr "Прочитайте"
@ -2293,12 +2288,12 @@ msgstr ""
"адрес, код доступа, документ для поездки или другую чувствительную "
"информацию."
#: lib/who_need_help_web/components/layouts.ex:358
#: lib/who_need_help_web/components/layouts.ex:362
#, elixir-autogen, elixir-format
msgid "Use dark theme"
msgstr "Включить тёмную тему"
#: lib/who_need_help_web/components/layouts.ex:349
#: lib/who_need_help_web/components/layouts.ex:353
#, elixir-autogen, elixir-format
msgid "Use light theme"
msgstr "Включить светлую тему"
@ -2316,7 +2311,7 @@ msgstr ""
"Используйте приватный чат и, по желанию, передачу геопозиции в реальном "
"времени."
#: lib/who_need_help_web/components/layouts.ex:340
#: lib/who_need_help_web/components/layouts.ex:344
#, elixir-autogen, elixir-format
msgid "Use system theme"
msgstr "Использовать системную тему"
@ -2438,7 +2433,7 @@ msgstr ""
msgid "Who Need Help home"
msgstr "Главная Who Need Help"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:95
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:106
#, elixir-autogen, elixir-format
msgid "Who Need Help is not an emergency or medical service. Medicine requests are limited to pickup of legal items already purchased or reserved."
msgstr ""
@ -2618,7 +2613,8 @@ msgstr "активность"
msgid "activity message"
msgstr "сообщение активности"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:84
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:48
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:95
#, elixir-autogen, elixir-format
msgid "before confirming."
msgstr "перед подтверждением."
@ -2695,11 +2691,6 @@ msgstr "оценка"
msgid "rating %{rating}"
msgstr "оценка %{rating}"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:83
#, elixir-autogen, elixir-format
msgid "safety rules"
msgstr "Правила безопасности"
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:28
#, elixir-autogen, elixir-format
msgid "the mailbox page"
@ -3026,7 +3017,7 @@ msgstr "Подключить аккаунт Google"
msgid "Connect Google only after signing in here. We never merge accounts automatically by matching email addresses."
msgstr "Подключайте Google только после входа здесь. Мы никогда не объединяем аккаунты автоматически по совпадению email."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:101
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:112
#, elixir-autogen, elixir-format
msgid "Create account and email me a link"
msgstr "Создать аккаунт и отправить ссылку на email"
@ -3081,14 +3072,14 @@ msgstr "Сессия входа через Google истекла. Начните
msgid "Google sign-in session is invalid."
msgstr "Сессия входа через Google недействительна."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:47
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:55
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:78
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:53
#, elixir-autogen, elixir-format
msgid "Google sign-in will be available after the operator configures it."
msgstr "Вход через Google станет доступен после настройки оператором."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:100
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:111
#, elixir-autogen, elixir-format
msgid "Sending link..."
msgstr "Отправляем ссылку..."
@ -3098,7 +3089,7 @@ msgstr "Отправляем ссылку..."
msgid "Sign in with Google"
msgstr "Войти через Google"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:43
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:51
#, elixir-autogen, elixir-format
msgid "Sign up with Google"
msgstr "Зарегистрироваться через Google"
@ -3143,7 +3134,7 @@ msgstr "Мы отправим одноразовую ссылку для вхо
msgid "Your account was created with Google."
msgstr "Ваша учётная запись создана через Google."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:51
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:59
#, elixir-autogen, elixir-format
msgid "or sign up with email"
msgstr "или зарегистрироваться по email"
@ -3521,7 +3512,7 @@ msgstr "ОБРАЩЕНИЕ ПОЛУЧЕНО"
msgid "Removal notice updated."
msgstr "Уведомление об удалении обновлено."
#: lib/who_need_help_web/components/layouts.ex:149
#: lib/who_need_help_web/components/layouts.ex:153
#: lib/who_need_help_web/controllers/support_html/new.html.heex:13
#, elixir-autogen, elixir-format
msgid "Report content"
@ -3622,7 +3613,7 @@ msgstr "Заявитель"
msgid "Submitting this form does not immediately sign you out or erase evidence required for an open safety investigation. Support will verify and process the request."
msgstr "Отправка формы не приводит к немедленному выходу из аккаунта и не удаляет доказательства, необходимые для открытого расследования безопасности. Поддержка проверит и обработает запрос."
#: lib/who_need_help_web/components/layouts.ex:147
#: lib/who_need_help_web/components/layouts.ex:151
#, elixir-autogen, elixir-format
msgid "Support"
msgstr "Поддержка"
@ -3633,7 +3624,7 @@ msgstr "Поддержка"
msgid "Support operations"
msgstr "Рабочее место поддержки"
#: lib/who_need_help_web/components/layouts.ex:190
#: lib/who_need_help_web/components/layouts.ex:194
#, elixir-autogen, elixir-format
msgid "Support queue"
msgstr "Очередь поддержки"
@ -3801,3 +3792,39 @@ msgstr "Удалить мой аккаунт Who Need Help"
#, elixir-autogen, elixir-format
msgid "Please delete my account and associated personal data."
msgstr "Пожалуйста, удалите мой аккаунт и связанные персональные данные."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:39
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:101
#, elixir-autogen, elixir-format
msgid "I am 18 or older and accept the Terms and Safety Rules"
msgstr "Мне 18 лет или больше, и я принимаю Условия и Правила безопасности."
#: lib/who_need_help_web/components/layouts.ex:147
#, elixir-autogen, elixir-format
msgid "Privacy"
msgstr "Конфиденциальность"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:45
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:92
#, elixir-autogen, elixir-format
msgid "Privacy Policy"
msgstr "Политика конфиденциальности"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:47
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:94
#, elixir-autogen, elixir-format
msgid "Safety Rules"
msgstr "Правила безопасности"
#: lib/who_need_help_web/components/layouts.ex:149
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:44
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:91
#, elixir-autogen, elixir-format
msgid "Terms"
msgstr "Условия"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:46
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:93
#, elixir-autogen, elixir-format
msgid "and"
msgstr "и"

View File

@ -12,7 +12,7 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100 != 11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10||n%100>=20) ? 1 : 2);\n"
#: lib/who_need_help_web/components/layouts.ex:111
#: lib/who_need_help_web/components/layouts.ex:266
#: lib/who_need_help_web/components/layouts.ex:270
#, elixir-autogen, elixir-format
msgid "Account settings"
msgstr "Параметри облікового запису"
@ -30,13 +30,13 @@ msgstr "Дії"
msgid "Ask for help"
msgstr "Попросити допомоги"
#: lib/who_need_help_web/components/layouts.ex:304
#: lib/who_need_help_web/components/layouts.ex:319
#: lib/who_need_help_web/components/layouts.ex:308
#: lib/who_need_help_web/components/layouts.ex:323
#, elixir-autogen, elixir-format
msgid "Attempting to reconnect"
msgstr "Спроба повторного з’єднання"
#: lib/who_need_help_web/components/layouts.ex:175
#: lib/who_need_help_web/components/layouts.ex:179
#, elixir-autogen, elixir-format
msgid "Categories"
msgstr "Категорії"
@ -65,13 +65,13 @@ msgid "Log in"
msgstr "Вхід"
#: lib/who_need_help_web/components/layouts.ex:114
#: lib/who_need_help_web/components/layouts.ex:269
#: lib/who_need_help_web/components/layouts.ex:273
#, elixir-autogen, elixir-format
msgid "Log out"
msgstr "Вийти"
#: lib/who_need_help_web/components/layouts.ex:108
#: lib/who_need_help_web/components/layouts.ex:263
#: lib/who_need_help_web/components/layouts.ex:267
#: lib/who_need_help_web/live/profile_live.ex:16
#, elixir-autogen, elixir-format
msgid "Profile"
@ -83,7 +83,7 @@ msgstr "Профіль"
msgid "Register"
msgstr "Зареєструватися"
#: lib/who_need_help_web/components/layouts.ex:165
#: lib/who_need_help_web/components/layouts.ex:169
#, elixir-autogen, elixir-format
msgid "Requests"
msgstr "Запити"
@ -93,12 +93,12 @@ msgstr "Запити"
msgid "See nearby requests"
msgstr "Переглянути заявки поруч"
#: lib/who_need_help_web/components/layouts.ex:311
#: lib/who_need_help_web/components/layouts.ex:315
#, elixir-autogen, elixir-format
msgid "Something went wrong!"
msgstr "Щось пішло не так!"
#: lib/who_need_help_web/components/layouts.ex:296
#: lib/who_need_help_web/components/layouts.ex:300
#, elixir-autogen, elixir-format
msgid "We can't find the internet"
msgstr "Немає з’єднання з інтернетом"
@ -179,7 +179,7 @@ msgid "Account Settings"
msgstr "Параметри облікового запису"
#: lib/who_need_help_web/components/layouts.ex:63
#: lib/who_need_help_web/components/layouts.ex:201
#: lib/who_need_help_web/components/layouts.ex:205
#, elixir-autogen, elixir-format
msgid "Account and language"
msgstr "Акаунт і мова"
@ -200,7 +200,7 @@ msgstr "Центр дій"
msgid "Active"
msgstr "Активний"
#: lib/who_need_help_web/components/layouts.ex:170
#: lib/who_need_help_web/components/layouts.ex:174
#: lib/who_need_help_web/live/activity_live/index.ex:118
#, elixir-autogen, elixir-format
msgid "Activities"
@ -385,7 +385,7 @@ msgstr ""
msgid "Briefly describe the help you need"
msgstr "Коротко опишіть, яка допомога вам потрібна"
#: lib/who_need_help_web/components/layouts.ex:151
#: lib/who_need_help_web/components/layouts.ex:155
#, elixir-autogen, elixir-format
msgid "Build Week feedback"
msgstr "Звіт для Build Week"
@ -668,7 +668,7 @@ msgstr ""
msgid "Dismissed"
msgstr "Відхилено"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:76
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:84
#: lib/who_need_help_web/live/profile_live.ex:149
#, elixir-autogen, elixir-format
msgid "Display name"
@ -692,7 +692,7 @@ msgstr "Немає акаунта?"
msgid "Double-blind review"
msgstr "Двосторонній прихований відгук"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:67
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:75
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:89
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:122
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:15
@ -857,7 +857,7 @@ msgstr "Помічник"
msgid "Helper: %{name}"
msgstr "Помічник: %{name}"
#: lib/who_need_help_web/components/layouts.ex:180
#: lib/who_need_help_web/components/layouts.ex:184
#, elixir-autogen, elixir-format
msgid "Helpers"
msgstr "Помічники"
@ -932,12 +932,6 @@ msgstr "Сховати запит"
msgid "Human decisions retained"
msgstr "Рішення залишаються за людиною"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:39
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:90
#, elixir-autogen, elixir-format
msgid "I am 18 or older and accept the safety rules"
msgstr "Мені 18 років, і я приймаю правила безпеки."
#: lib/who_need_help_web/controllers/page_html/home.html.heex:56
#: lib/who_need_help_web/live/request_live/show.ex:875
#, elixir-autogen, elixir-format
@ -1211,7 +1205,7 @@ msgstr "Надіслати повідомлення схваленій груп
msgid "Mode"
msgstr "Режим"
#: lib/who_need_help_web/components/layouts.ex:185
#: lib/who_need_help_web/components/layouts.ex:189
#: lib/who_need_help_web/live/moderation_live.ex:9
#: lib/who_need_help_web/live/moderation_live.ex:291
#, elixir-autogen, elixir-format
@ -1645,7 +1639,8 @@ msgstr ""
msgid "Rating"
msgstr "Оцінка"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:82
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:43
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:90
#, elixir-autogen, elixir-format
msgid "Read the"
msgstr "Прочитайте"
@ -2287,12 +2282,12 @@ msgstr ""
"Призначайте першу зустріч у громадському місці. Не публікуйте домашню "
"адресу, код доступу, документ для подорожі чи іншу чутливу інформацію."
#: lib/who_need_help_web/components/layouts.ex:358
#: lib/who_need_help_web/components/layouts.ex:362
#, elixir-autogen, elixir-format
msgid "Use dark theme"
msgstr "Увімкнути темну тему"
#: lib/who_need_help_web/components/layouts.ex:349
#: lib/who_need_help_web/components/layouts.ex:353
#, elixir-autogen, elixir-format
msgid "Use light theme"
msgstr "Увімкнути світлу тему"
@ -2310,7 +2305,7 @@ msgstr ""
"Користуйтеся приватним чатом і, за бажанням, передаванням геопозиції в "
"реальному часі."
#: lib/who_need_help_web/components/layouts.ex:340
#: lib/who_need_help_web/components/layouts.ex:344
#, elixir-autogen, elixir-format
msgid "Use system theme"
msgstr "Використати системну тему"
@ -2432,7 +2427,7 @@ msgstr ""
msgid "Who Need Help home"
msgstr "Головна Who Need Help"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:95
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:106
#, elixir-autogen, elixir-format
msgid "Who Need Help is not an emergency or medical service. Medicine requests are limited to pickup of legal items already purchased or reserved."
msgstr ""
@ -2608,7 +2603,8 @@ msgstr "активність"
msgid "activity message"
msgstr "повідомлення активності"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:84
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:48
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:95
#, elixir-autogen, elixir-format
msgid "before confirming."
msgstr "перед підтвердженням."
@ -2685,11 +2681,6 @@ msgstr "оцінка"
msgid "rating %{rating}"
msgstr "оцінка %{rating}"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:83
#, elixir-autogen, elixir-format
msgid "safety rules"
msgstr "правила безпеки"
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:28
#, elixir-autogen, elixir-format
msgid "the mailbox page"
@ -3016,7 +3007,7 @@ msgstr "Підключити обліковий запис Google"
msgid "Connect Google only after signing in here. We never merge accounts automatically by matching email addresses."
msgstr "Підключайте Google лише після входу тут. Ми ніколи не об’єднуємо облікові записи автоматично за збігом email."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:101
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:112
#, elixir-autogen, elixir-format
msgid "Create account and email me a link"
msgstr "Створити обліковий запис і надіслати посилання на email"
@ -3071,14 +3062,14 @@ msgstr "Сесія входу через Google завершилася. Почн
msgid "Google sign-in session is invalid."
msgstr "Сесія входу через Google недійсна."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:47
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:55
#: lib/who_need_help_web/controllers/user_session_html/new.html.heex:78
#: lib/who_need_help_web/controllers/user_settings_html/edit.html.heex:53
#, elixir-autogen, elixir-format
msgid "Google sign-in will be available after the operator configures it."
msgstr "Вхід через Google стане доступним після налаштування оператором."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:100
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:111
#, elixir-autogen, elixir-format
msgid "Sending link..."
msgstr "Надсилаємо посилання..."
@ -3088,7 +3079,7 @@ msgstr "Надсилаємо посилання..."
msgid "Sign in with Google"
msgstr "Увійти через Google"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:43
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:51
#, elixir-autogen, elixir-format
msgid "Sign up with Google"
msgstr "Зареєструватися через Google"
@ -3133,7 +3124,7 @@ msgstr "Ми надішлемо одноразове посилання для
msgid "Your account was created with Google."
msgstr "Ваш обліковий запис створено через Google."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:51
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:59
#, elixir-autogen, elixir-format
msgid "or sign up with email"
msgstr "або зареєструватися за email"
@ -3511,7 +3502,7 @@ msgstr "ЗВЕРНЕННЯ ОТРИМАНО"
msgid "Removal notice updated."
msgstr "Повідомлення про видалення оновлено."
#: lib/who_need_help_web/components/layouts.ex:149
#: lib/who_need_help_web/components/layouts.ex:153
#: lib/who_need_help_web/controllers/support_html/new.html.heex:13
#, elixir-autogen, elixir-format
msgid "Report content"
@ -3612,7 +3603,7 @@ msgstr "Заявник"
msgid "Submitting this form does not immediately sign you out or erase evidence required for an open safety investigation. Support will verify and process the request."
msgstr "Надсилання форми не призводить до негайного виходу з облікового запису й не видаляє докази, потрібні для відкритого розслідування безпеки. Підтримка перевірить та опрацює запит."
#: lib/who_need_help_web/components/layouts.ex:147
#: lib/who_need_help_web/components/layouts.ex:151
#, elixir-autogen, elixir-format
msgid "Support"
msgstr "Підтримка"
@ -3623,7 +3614,7 @@ msgstr "Підтримка"
msgid "Support operations"
msgstr "Робоче місце підтримки"
#: lib/who_need_help_web/components/layouts.ex:190
#: lib/who_need_help_web/components/layouts.ex:194
#, elixir-autogen, elixir-format
msgid "Support queue"
msgstr "Черга підтримки"
@ -3791,3 +3782,39 @@ msgstr "Видалити мій обліковий запис Who Need Help"
#, elixir-autogen, elixir-format
msgid "Please delete my account and associated personal data."
msgstr "Будь ласка, видаліть мій обліковий запис і пов’язані персональні дані."
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:39
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:101
#, elixir-autogen, elixir-format
msgid "I am 18 or older and accept the Terms and Safety Rules"
msgstr "Мені 18 років або більше, і я приймаю Умови та Правила безпеки."
#: lib/who_need_help_web/components/layouts.ex:147
#, elixir-autogen, elixir-format
msgid "Privacy"
msgstr "Конфіденційність"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:45
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:92
#, elixir-autogen, elixir-format
msgid "Privacy Policy"
msgstr "Політика конфіденційності"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:47
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:94
#, elixir-autogen, elixir-format
msgid "Safety Rules"
msgstr "Правила безпеки"
#: lib/who_need_help_web/components/layouts.ex:149
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:44
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:91
#, elixir-autogen, elixir-format
msgid "Terms"
msgstr "Умови"
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:46
#: lib/who_need_help_web/controllers/user_registration_html/new.html.heex:93
#, elixir-autogen, elixir-format
msgid "and"
msgstr "та"

View File

@ -102,6 +102,32 @@ defmodule WhoNeedHelpWeb.PageControllerTest do
assert html_response(conn, 200) =~ "Not for emergencies"
end
test "GET /privacy publishes the Google data disclosure and user controls", %{conn: conn} do
conn = get(conn, ~p"/privacy")
html = html_response(conn, 200)
assert html =~ "Privacy Policy"
assert html =~ "Google sign-in data"
assert html =~ "does not persist Google access tokens or ID tokens"
assert html =~ "Privacy Policy · Who Need Help"
assert html =~ ~s(name="description")
assert html =~ "How Who Need Help processes account, Google sign-in, location"
assert html =~ ~s(href="/account/delete")
assert html =~ ~s(href="/support")
end
test "GET /terms links the safety and privacy documents", %{conn: conn} do
conn = get(conn, ~p"/terms")
html = html_response(conn, 200)
assert html =~ "Terms of Service"
assert html =~ "Terms of Service · Who Need Help"
assert html =~ "conditions for using Who Need Help"
assert html =~ ~s(href="/safety")
assert html =~ ~s(href="/privacy")
assert html =~ ~s(href="/support")
end
test "GET /manifest.webmanifest", %{conn: conn} do
conn = get(conn, "/manifest.webmanifest")
manifest = conn |> response(200) |> JSON.decode!()

View File

@ -15,6 +15,10 @@ defmodule WhoNeedHelpWeb.UserRegistrationControllerTest do
assert response =~ "A password is not required"
assert response =~ "Sign up with Google"
assert response =~ ~p"/auth/google/register"
assert response =~ "I am 18 or older and accept the Terms and Safety Rules"
assert response =~ ~s(href="/terms")
assert response =~ ~s(href="/privacy")
assert response =~ ~s(href="/safety")
end
test "redirects if already logged in", %{conn: conn} do