Browse Source

fix randomized titles

pull/497/head
mrjvs 2 years ago
parent
commit
0883942093
  1. 17
      src/hooks/useRandomTranslation.ts
  2. 3
      src/pages/parts/home/HeroPart.tsx

17
src/hooks/useRandomTranslation.ts

@ -1,15 +1,22 @@ @@ -1,15 +1,22 @@
import { useCallback, useMemo } from "react";
import { useTranslation } from "react-i18next";
export function useRandomTranslation() {
const { t } = useTranslation();
const seed = useMemo(() => Math.random(), []);
const getRandomTranslation = (key: string) => {
const res = t(key, { returnObjects: true });
const getRandomTranslation = useCallback(
(key: string) => {
const res = t(key, { returnObjects: true });
if (Array.isArray(res)) return res[Math.floor(Math.random() * res.length)];
if (Array.isArray(res)) {
return res[Math.floor(seed * res.length)];
}
return res;
};
return res;
},
[t, seed]
);
return { t: getRandomTranslation };
}

3
src/pages/parts/home/HeroPart.tsx

@ -30,7 +30,8 @@ export function HeroPart({ setIsSticky, searchParams }: HeroPartProps) { @@ -30,7 +30,8 @@ export function HeroPart({ setIsSticky, searchParams }: HeroPartProps) {
let time = "night";
const hour = new Date().getHours();
if (hour < 12) time = "morning";
if (hour < 19) time = "day";
else if (hour < 19) time = "day";
const title = t(`search.title.${time}`);
return (

Loading…
Cancel
Save