Add /privacy page with shared footer across non-map pages
New PrivacyLive page explains that collected/submitted data is used only for propagation research and will never be sold, traded, or disclosed. Layouts.app now renders a small footer with the NTMS attribution and a Privacy link on every page that uses it, so the full-screen map pages are untouched. The duplicate NTMS credit on the About page is removed since it now lives in the shared footer.
This commit is contained in:
parent
abe0aa9ec6
commit
442d1d1bdc
4 changed files with 106 additions and 5 deletions
|
|
@ -79,6 +79,20 @@ defmodule MicrowavepropWeb.Layouts do
|
|||
</div>
|
||||
</main>
|
||||
|
||||
<footer class="px-4 sm:px-6 lg:px-8 pb-6">
|
||||
<div class={["mx-auto text-center text-xs opacity-60 space-y-1", @max_width]}>
|
||||
<div>
|
||||
Built by and for the
|
||||
<a href="https://ntms.org" target="_blank" class="link link-hover">
|
||||
North Texas Microwave Society
|
||||
</a>.
|
||||
</div>
|
||||
<div>
|
||||
<.link navigate="/privacy" class="link link-hover">Privacy</.link>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<.flash_group flash={@flash} />
|
||||
"""
|
||||
end
|
||||
|
|
|
|||
|
|
@ -156,11 +156,6 @@ defmodule MicrowavepropWeb.AboutLive do
|
|||
</ul>
|
||||
</div>
|
||||
|
||||
<p class="text-xs opacity-60 pt-4 border-t border-base-300">
|
||||
Built by and for the <a href="https://www.ntms.org" target="_blank" class="link link-hover">
|
||||
North Texas Microwave Society
|
||||
</a>.
|
||||
</p>
|
||||
</section>
|
||||
</Layouts.app>
|
||||
"""
|
||||
|
|
|
|||
91
lib/microwaveprop_web/live/privacy_live.ex
Normal file
91
lib/microwaveprop_web/live/privacy_live.ex
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
defmodule MicrowavepropWeb.PrivacyLive do
|
||||
@moduledoc false
|
||||
use MicrowavepropWeb, :live_view
|
||||
|
||||
@impl true
|
||||
def mount(_params, _session, socket) do
|
||||
{:ok, assign(socket, :page_title, "Privacy")}
|
||||
end
|
||||
|
||||
@impl true
|
||||
def render(assigns) do
|
||||
~H"""
|
||||
<Layouts.app flash={@flash} current_scope={@current_scope} max_width="max-w-3xl">
|
||||
<.header>
|
||||
Privacy
|
||||
<:subtitle>What we collect, and what we promise to do with it.</:subtitle>
|
||||
</.header>
|
||||
|
||||
<section class="space-y-6 text-sm leading-relaxed">
|
||||
<p>
|
||||
NTMS Propagation Prediction is an amateur-radio research project run by
|
||||
and for the North Texas Microwave Society. Any information we collect or
|
||||
that you submit is used exclusively to study microwave propagation and
|
||||
improve the prediction model on this site.
|
||||
</p>
|
||||
|
||||
<div class="space-y-3">
|
||||
<h2 class="text-lg font-bold">We will never</h2>
|
||||
<ul class="list-disc list-outside pl-5 space-y-1">
|
||||
<li>Sell your information.</li>
|
||||
<li>Trade or barter it to third parties.</li>
|
||||
<li>
|
||||
Disclose it to anyone outside the project, except where required by law.
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="space-y-3">
|
||||
<h2 class="text-lg font-bold">What we collect</h2>
|
||||
<ul class="list-disc list-outside pl-5 space-y-1">
|
||||
<li>
|
||||
<strong>Account information</strong> — when you register, we store
|
||||
your callsign, email address, and a hashed password. Email is only
|
||||
used for account confirmation and password resets.
|
||||
</li>
|
||||
<li>
|
||||
<strong>Submitted data</strong> — beacon listings, QSOs, and beacon
|
||||
monitor reports you voluntarily submit. These are published back to
|
||||
other amateurs as part of the project.
|
||||
</li>
|
||||
<li>
|
||||
<strong>Approximate location</strong> — our CDN (Cloudflare) provides
|
||||
a rough latitude/longitude derived from your IP so the map can open
|
||||
centered near you. It is not stored with your account or any
|
||||
submission.
|
||||
</li>
|
||||
<li>
|
||||
<strong>Basic request logs</strong> — standard web server logs
|
||||
(timestamp, path, status, user agent) retained for a short period
|
||||
for debugging and abuse prevention.
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="space-y-3">
|
||||
<h2 class="text-lg font-bold">How it's used</h2>
|
||||
<p>
|
||||
Everything feeds one goal: calibrating and improving propagation
|
||||
predictions for the amateur microwave bands. Aggregate or anonymized
|
||||
results may appear in publications, talks, or on this site, but
|
||||
individual personal details (email, password, IP) will never be
|
||||
published.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="space-y-3">
|
||||
<h2 class="text-lg font-bold">Questions or removal requests</h2>
|
||||
<p>
|
||||
If you'd like your account deleted or your submissions removed,
|
||||
contact the
|
||||
<a href="https://ntms.org" target="_blank" class="link link-hover">
|
||||
North Texas Microwave Society
|
||||
</a>
|
||||
and we'll take care of it.
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
</Layouts.app>
|
||||
"""
|
||||
end
|
||||
end
|
||||
|
|
@ -76,6 +76,7 @@ defmodule MicrowavepropWeb.Router do
|
|||
live "/rover", RoverLive
|
||||
live "/algo", AlgoLive
|
||||
live "/about", AboutLive
|
||||
live "/privacy", PrivacyLive
|
||||
|
||||
# Beacons: public read + submit (pending admin approval)
|
||||
live "/beacons", BeaconLive.Index, :index
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue