MotorSignal-App/website/app/support/page.tsx

73 lines
3.1 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { SupportContactForm } from '../../components/support-contact-form';
const SUPPORT_EMAIL = 'support@motorsignal.app';
// Grounded in features that actually ship today. Keep answers truthful: anything managed
// only in the mobile app, or not yet available on the web, is stated plainly.
const FAQ: { q: string; a: string }[] = [
{
q: 'Can I use MotorSignal without an internet connection?',
a: 'Yes. Ride recording and telemetry run on-device, so you can record offline and while signed out. Your rides sync to the cloud once you are signed in and back online — nothing is lost in the meantime.',
},
{
q: 'How do I manage my subscription or find my invoices?',
a: 'Subscriptions, payment methods, and invoices are managed in the MotorSignal mobile app. The web billing portal is not available yet, so the Account page will point you to the app for billing changes.',
},
{
q: 'How do I turn on two-factor authentication (2FA)?',
a: 'Two-factor authentication is enrolled in the mobile app. The web Account page reflects your real 2FA status — it will show “Enabled” only once a factor is actually enrolled.',
},
{
q: 'Can I export my ride data?',
a: 'Yes. On the web Account page, each ride can be exported as a GPX track or a CSV of its telemetry. Your historical exports are not altered after the fact.',
},
{
q: 'How do I sign out other devices or browsers?',
a: 'Open Account → Active Device Sessions. You can revoke an individual session, or revoke all sessions at once. The session you are currently using is marked “this device”.',
},
{
q: 'Why don’t I see live riders on the web radar?',
a: 'The Formation Radar shows live rider positions only for a group ride you are an accepted participant in. Outside of that it displays a clearly labelled demonstration, not real riders.',
},
{
q: 'What’s the difference between the public Group Rides page and my hub?',
a: 'Signed out, the Group Rides page is a public showcase with sample formations. Signed in, it becomes your hub where you create, manage, join, and leave real rides.',
},
];
export default function SupportPage() {
return (
<section className="content-page">
<span className="eyebrow">Support</span>
<h1>Help for the road ahead.</h1>
<p>
Search the answers below for the quickest fix. If you still need a hand, send us an email and
we&rsquo;ll get back to you.
</p>
<div className="panel" style={{ marginTop: 28 }}>
<h2>Contact support</h2>
<p>
Reach the team at{' '}
<a href={`mailto:${SUPPORT_EMAIL}`}>{SUPPORT_EMAIL}</a>. Prefer a form? Fill this in and it will
open a prefilled email for you to send.
</p>
<div style={{ marginTop: 20 }}>
<SupportContactForm />
</div>
</div>
<div className="faq-section">
<span className="eyebrow">Common questions</span>
<h2>Frequently asked</h2>
{FAQ.map((item) => (
<details key={item.q}>
<summary>{item.q}</summary>
<p>{item.a}</p>
</details>
))}
</div>
</section>
);
}