Translate /stats

This commit is contained in:
MartinBraquet
2025-12-28 11:43:27 +02:00
parent 3ace0e80e8
commit 29ea3a600a
2 changed files with 28 additions and 13 deletions

View File

@@ -99,6 +99,19 @@
"about.donate.button": "Options de don",
"about.final.title": "Parlez-en à vos amis et votre famille",
"about.final.text": "Merci de soutenir notre mission !",
"stats.seo.title": "Statistiques",
"stats.seo.description": "Statistiques",
"stats.title": "Croissance et statistiques",
"stats.members": "Membres",
"stats.active_members": "Membres actifs (le mois dernier)",
"stats.discussions": "Discussions",
"stats.messages": "Messages",
"stats.compatibility_prompts": "Questions de compatibilité",
"stats.prompts_answered": "Questions répondues",
"stats.proposals": "Propositions",
"stats.votes": "Votes",
"stats.searches_bookmarked": "Recherches mises en favoris",
"stats.endorsements": "Recommandations",
"contact.seo.title": "Contact",
"contact.seo.description": "Contactez-nous",
"contact.title": "Contact",

View File

@@ -6,8 +6,10 @@ import StatBox from "web/components/widgets/stat-box";
import clsx from "clsx";
import {Col} from "web/components/layout/col";
import {SEO} from "web/components/SEO";
import {useT} from "web/lib/locale";
export default function Stats() {
const t = useT()
const [data, setData] = useState<Record<string, number | null>>({})
useEffect(() => {
@@ -45,11 +47,11 @@ export default function Stats() {
return (
<PageBase trackPageView={'stats'}>
<SEO
title={'Stats'}
description={'Stats'}
title={t('stats.seo.title','Stats')}
description={t('stats.seo.description','Stats')}
url={`/stats`}
/>
<h1 className="text-3xl font-semibold text-center mb-6">Growth & Stats</h1>
<h1 className="text-3xl font-semibold text-center mb-6">{t('stats.title','Growth & Stats')}</h1>
<Col className={'sm:mx-4 mx-1 mb-8'}>
<ChartMembers/>
</Col>
@@ -60,16 +62,16 @@ export default function Stats() {
'text-ink-1000 mx-auto w-full grid grid-cols-1 gap-8 max-w-3xl sm:grid-cols-2 lg:min-h-0 lg:pt-4 mt-4',
)}
>
{!!data.profiles && <StatBox value={data.profiles} label={'Members'} />}
{!!data.active_members && <StatBox value={data.active_members} label={'Active Members (last month)'} />}
{!!data.private_user_message_channels && <StatBox value={data.private_user_message_channels} label={'Discussions'} />}
{!!data.private_user_messages && <StatBox value={data.private_user_messages} label={'Messages'} />}
{!!data.compatibility_prompts && <StatBox value={data.compatibility_prompts} label={'Compatibility Prompts'} />}
{!!data.compatibility_answers && <StatBox value={data.compatibility_answers} label={'Prompts Answered'} />}
{!!data.votes && <StatBox value={data.votes} label={'Proposals'} />}
{!!data.vote_results && <StatBox value={data.vote_results} label={'Votes'} />}
{!!data.bookmarked_searches && <StatBox value={data.bookmarked_searches} label={'Searches Bookmarked'} />}
{!!data.profile_comments && <StatBox value={data.profile_comments} label={'Endorsements'} />}
{!!data.profiles && <StatBox value={data.profiles} label={t('stats.members','Members')} />}
{!!data.active_members && <StatBox value={data.active_members} label={t('stats.active_members','Active Members (last month)')} />}
{!!data.private_user_message_channels && <StatBox value={data.private_user_message_channels} label={t('stats.discussions','Discussions')} />}
{!!data.private_user_messages && <StatBox value={data.private_user_messages} label={t('stats.messages','Messages')} />}
{!!data.compatibility_prompts && <StatBox value={data.compatibility_prompts} label={t('stats.compatibility_prompts','Compatibility Prompts')} />}
{!!data.compatibility_answers && <StatBox value={data.compatibility_answers} label={t('stats.prompts_answered','Prompts Answered')} />}
{!!data.votes && <StatBox value={data.votes} label={t('stats.proposals','Proposals')} />}
{!!data.vote_results && <StatBox value={data.vote_results} label={t('stats.votes','Votes')} />}
{!!data.bookmarked_searches && <StatBox value={data.bookmarked_searches} label={t('stats.searches_bookmarked','Searches Bookmarked')} />}
{!!data.profile_comments && <StatBox value={data.profile_comments} label={t('stats.endorsements','Endorsements')} />}
</Col>
</Col>
</PageBase>