diff --git a/apps/infoalloggi/next.config.mjs b/apps/infoalloggi/next.config.mjs index 00e655e..ff9ee3c 100644 --- a/apps/infoalloggi/next.config.mjs +++ b/apps/infoalloggi/next.config.mjs @@ -5,6 +5,8 @@ import { env } from "node:process"; +const backendUrl = "http://localhost:1323"; + /** @type {import("next").NextConfig} */ const nextConfig = { compiler: { @@ -46,7 +48,7 @@ const nextConfig = { protocol: "https", }, { - hostname: `${env.BACKENDSERVER_URL}`, + hostname: backendUrl, }, ], }, @@ -59,11 +61,11 @@ const nextConfig = { source: "/api/panel", }, { - destination: `${env.BACKENDSERVER_URL}/images/get/:slug*`, + destination: `${backendUrl}/images/get/:slug*`, source: "/go-api/images/get/:slug*", }, { - destination: `${env.BACKENDSERVER_URL}/storage/get/:slug*`, + destination: `${backendUrl}/storage/get/:slug*`, has: [ { key: "access_token", type: "cookie" }, { @@ -76,7 +78,7 @@ const nextConfig = { source: "/go-api/storage/get/:slug*", }, { - destination: `${env.BACKENDSERVER_URL}/storage/upload:slug*`, + destination: `${backendUrl}/storage/upload:slug*`, has: [ { key: "access_token", type: "cookie" }, { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/annunci.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/annunci.tsx index 432bf19..44bd1bf 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/annunci.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/annunci.tsx @@ -7,6 +7,7 @@ import { Status500 } from "~/components/status-page"; import { AnnunciTable } from "~/components/tables/annunci-tables"; import { Button } from "~/components/ui/button"; import type { NextPageWithLayout } from "~/pages/_app"; +import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const Admin_Annunci: NextPageWithLayout = () => { @@ -62,6 +63,18 @@ const Admin_Annunci: NextPageWithLayout = () => { ); }; +export async function getServerSideProps() { + const helpers = generateSSGHelper(); + + await helpers.annunci.getAnnunciList.prefetch(); + + return { + props: { + trpcState: helpers.dehydrate(), + }, + }; +} + export default Admin_Annunci; Admin_Annunci.getLayout = function getLayout(page) { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/banners.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/banners.tsx index 506a5da..9b743d1 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/banners.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/banners.tsx @@ -17,6 +17,7 @@ import { import { FormBanners } from "~/forms/FormBanners"; import type { NextPageWithLayout } from "~/pages/_app"; import type { Banners } from "~/schemas/public/Banners"; +import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const AdminBanners: NextPageWithLayout = () => { @@ -83,6 +84,17 @@ const AdminBanners: NextPageWithLayout = () => { ); }; export default AdminBanners; +export async function getServerSideProps() { + const helpers = generateSSGHelper(); + + await helpers.settings.getBannerAllData.prefetch(); + + return { + props: { + trpcState: helpers.dehydrate(), + }, + }; +} AdminBanners.getLayout = function getLayout(page) { return {page}; diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/blacklist.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/blacklist.tsx index 5bf6e1d..b72408a 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/blacklist.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/blacklist.tsx @@ -1,4 +1,5 @@ import { Plus, RefreshCcw } from "lucide-react"; +import type { GetServerSideProps } from "next"; import { useState } from "react"; import toast from "react-hot-toast"; import { AreaRiservataLayout } from "~/components/Layout"; @@ -17,6 +18,7 @@ import { import { FormBanlist } from "~/forms/FormBanlist"; import type { NextPageWithLayout } from "~/pages/_app"; import type { Banlist } from "~/schemas/public/Banlist"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const AdminBlacklist: NextPageWithLayout = () => { @@ -84,6 +86,23 @@ const AdminBlacklist: NextPageWithLayout = () => { }; export default AdminBlacklist; +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.banlist.getBanlist.prefetch(); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; + AdminBlacklist.getLayout = function getLayout(page) { return {page}; }; diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/chats.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/chats.tsx index 51090ef..e8df107 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/chats.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/chats.tsx @@ -1,3 +1,4 @@ +import type { GetServerSideProps } from "next"; import Head from "next/head"; import { Sidebar } from "~/components/area-riservata/sidebar"; import { ChatSidebar } from "~/components/chat/chat-sidebar"; @@ -7,6 +8,7 @@ import { Status500 } from "~/components/status-page"; import type { NextPageWithLayout } from "~/pages/_app"; import { useTranslation } from "~/providers/I18nProvider"; import { useSession } from "~/providers/SessionProvider"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const AdminChats: NextPageWithLayout = () => { @@ -55,6 +57,24 @@ const AdminChats: NextPageWithLayout = () => { }; export default AdminChats; +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.chat.getActiveChats.prefetch(); + await helpers.trpc.users.getActiveUsersWithoutChat.prefetch(); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; + AdminChats.getLayout = function getLayout(page) { return (
diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/etichette.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/etichette.tsx index ad4334d..dcd936a 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/etichette.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/etichette.tsx @@ -1,4 +1,5 @@ import { Plus, RefreshCcw } from "lucide-react"; +import type { GetServerSideProps } from "next"; import { useState } from "react"; import toast from "react-hot-toast"; import { AreaRiservataLayout } from "~/components/Layout"; @@ -17,6 +18,7 @@ import { import { FormEtichette } from "~/forms/FormEtichette"; import type { NextPageWithLayout } from "~/pages/_app"; import type { Etichette } from "~/schemas/public/Etichette"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const AdminEtichette: NextPageWithLayout = () => { @@ -84,6 +86,23 @@ const AdminEtichette: NextPageWithLayout = () => { }; export default AdminEtichette; +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.settings.getAllEtichette.prefetch(); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; + AdminEtichette.getLayout = function getLayout(page) { return {page}; }; diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/flags.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/flags.tsx index 705e4e7..5007b67 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/flags.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/flags.tsx @@ -1,4 +1,5 @@ import { Plus, RefreshCcw } from "lucide-react"; +import type { GetServerSideProps } from "next"; import { useState } from "react"; import toast from "react-hot-toast"; import { AreaRiservataLayout } from "~/components/Layout"; @@ -15,6 +16,7 @@ import { } from "~/components/ui/dialog"; import { FormFlags, type initialValues } from "~/forms/FormFlags"; import type { NextPageWithLayout } from "~/pages/_app"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const AdminFlags: NextPageWithLayout = () => { @@ -82,6 +84,23 @@ const AdminFlags: NextPageWithLayout = () => { }; export default AdminFlags; +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.settings.GetFlags.prefetch(); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; + AdminFlags.getLayout = function getLayout(page) { return {page}; }; diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/ordini.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/ordini.tsx index 87f47e1..4846748 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/ordini.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/ordini.tsx @@ -1,3 +1,4 @@ +import type { GetServerSideProps } from "next"; import Head from "next/head"; import { AreaRiservataLayout } from "~/components/Layout"; import { LoadingPage } from "~/components/loading"; @@ -5,6 +6,7 @@ import { Status500 } from "~/components/status-page"; import { OrdiniTable } from "~/components/tables/orders-table"; import type { NextPageWithLayout } from "~/pages/_app"; import { useTranslation } from "~/providers/I18nProvider"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const Ordini: NextPageWithLayout = () => { @@ -36,6 +38,23 @@ const Ordini: NextPageWithLayout = () => { }; export default Ordini; +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.servizio.getOrdini.prefetch({}); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; + Ordini.getLayout = function getLayout(page) { return {page}; }; diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/prezziario.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/prezziario.tsx index 4686e72..4609fea 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/prezziario.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/prezziario.tsx @@ -20,6 +20,7 @@ import type { Prezziario, PrezziarioIdprezziario, } from "~/schemas/public/Prezziario"; +import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const Admin_Prezziario: NextPageWithLayout = () => { @@ -72,6 +73,18 @@ const Admin_Prezziario: NextPageWithLayout = () => { ); }; +export async function getServerSideProps() { + const helpers = generateSSGHelper(); + + await helpers.prezziario.getPrezziario.prefetch(); + + return { + props: { + trpcState: helpers.dehydrate(), + }, + }; +} + export default Admin_Prezziario; Admin_Prezziario.getLayout = function getLayout(page) { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/storage.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/storage.tsx index 3743b97..be91a87 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/storage.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/storage.tsx @@ -1,4 +1,5 @@ import { ChevronsUpDown, RefreshCcw } from "lucide-react"; +import type { GetServerSideProps } from "next"; import { useState } from "react"; import toast from "react-hot-toast"; import { AreaRiservataLayout } from "~/components/Layout"; @@ -42,6 +43,7 @@ import type { StorageindexId, } from "~/schemas/public/Storageindex"; import type { Users } from "~/schemas/public/Users"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const AdminStorage: NextPageWithLayout = () => { @@ -91,6 +93,23 @@ const AdminStorage: NextPageWithLayout = () => { ); }; + +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.storage.getAll.prefetch(); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; export default AdminStorage; const StorageTableHeader = ({ diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/testi-stringhe.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/testi-stringhe.tsx index b5bf787..efa7535 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/testi-stringhe.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/testi-stringhe.tsx @@ -1,4 +1,5 @@ import { Plus, RefreshCcw } from "lucide-react"; +import type { GetServerSideProps } from "next"; import { useState } from "react"; import toast from "react-hot-toast"; import { AreaRiservataLayout } from "~/components/Layout"; @@ -17,6 +18,7 @@ import { import { FormStringhe } from "~/forms/FormStringhe"; import type { NextPageWithLayout } from "~/pages/_app"; import type { TestiEStringhe } from "~/schemas/public/TestiEStringhe"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const AdminTestiStringhe: NextPageWithLayout = () => { @@ -82,6 +84,23 @@ const AdminTestiStringhe: NextPageWithLayout = () => {
); }; + +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.settings.getStringhe.prefetch(); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; export default AdminTestiStringhe; AdminTestiStringhe.getLayout = function getLayout(page) { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/utenti.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/utenti.tsx index 16c5bba..d70fba4 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/utenti.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/utenti.tsx @@ -1,4 +1,5 @@ import { RefreshCcw } from "lucide-react"; +import type { GetServerSideProps } from "next"; import { useState } from "react"; import { AreaRiservataLayout } from "~/components/Layout"; import { LoadingPage } from "~/components/loading"; @@ -16,6 +17,7 @@ import { import { FormNewUser } from "~/forms/FormNewUser"; import type { NextPageWithLayout } from "~/pages/_app"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; @@ -56,6 +58,23 @@ const Admin_Utenti: NextPageWithLayout = () => { export default Admin_Utenti; +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.users.getUsersWChatInfo.prefetch(); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; + Admin_Utenti.getLayout = function getLayout(page) { return {page}; }; diff --git a/apps/infoalloggi/src/pages/area-riservata/allegati.tsx b/apps/infoalloggi/src/pages/area-riservata/allegati.tsx index f70ae23..bb34670 100644 --- a/apps/infoalloggi/src/pages/area-riservata/allegati.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/allegati.tsx @@ -24,6 +24,12 @@ const Allegati: NextPageWithLayout = () => { }; export default Allegati; +export async function getServerSideProps() { + return { + props: {}, + }; +} + Allegati.getLayout = function getLayout(page) { return {page}; }; diff --git a/apps/infoalloggi/src/pages/area-riservata/comunicazioni.tsx b/apps/infoalloggi/src/pages/area-riservata/comunicazioni.tsx index 25bf922..0225f4b 100644 --- a/apps/infoalloggi/src/pages/area-riservata/comunicazioni.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/comunicazioni.tsx @@ -27,6 +27,11 @@ const Comunicazioni: NextPageWithLayout = () => { ); }; export default Comunicazioni; +export async function getServerSideProps() { + return { + props: {}, + }; +} Comunicazioni.getLayout = function getLayout(page) { return {page}; diff --git a/apps/infoalloggi/src/pages/area-riservata/dashboard.tsx b/apps/infoalloggi/src/pages/area-riservata/dashboard.tsx index 50f47f1..8a96de2 100644 --- a/apps/infoalloggi/src/pages/area-riservata/dashboard.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/dashboard.tsx @@ -30,6 +30,12 @@ const Dashboard: NextPageWithLayout = () => { export default Dashboard; +export async function getServerSideProps() { + return { + props: {}, + }; +} + Dashboard.getLayout = function getLayout(page) { return {page}; }; diff --git a/apps/infoalloggi/src/pages/area-riservata/ordini.tsx b/apps/infoalloggi/src/pages/area-riservata/ordini.tsx index fa76347..0ee3612 100644 --- a/apps/infoalloggi/src/pages/area-riservata/ordini.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/ordini.tsx @@ -1,3 +1,4 @@ +import type { GetServerSideProps } from "next"; import Head from "next/head"; import { AreaRiservataLayout } from "~/components/Layout"; import { LoadingPage } from "~/components/loading"; @@ -7,6 +8,7 @@ import type { NextPageWithLayout } from "~/pages/_app"; import { useTranslation } from "~/providers/I18nProvider"; import { useEnforcedSession } from "~/providers/SessionProvider"; import type { UsersId } from "~/schemas/public/Users"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const Ordini: NextPageWithLayout = () => { @@ -24,6 +26,23 @@ const Ordini: NextPageWithLayout = () => { }; export default Ordini; +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.servizio.getOrdini.prefetch({}); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; + const SessionWrapper = ({ userId }: { userId: UsersId }) => { const { data, isLoading } = api.servizio.getOrdini.useQuery({ userId, diff --git a/apps/infoalloggi/src/pages/area-riservata/profilo.tsx b/apps/infoalloggi/src/pages/area-riservata/profilo.tsx index 5591361..16e47de 100644 --- a/apps/infoalloggi/src/pages/area-riservata/profilo.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/profilo.tsx @@ -1,3 +1,4 @@ +import type { GetServerSideProps } from "next"; import Head from "next/head"; import { AreaRiservataLayout } from "~/components/Layout"; import { LoadingPage } from "~/components/loading"; @@ -17,6 +18,7 @@ import { ProfileFormAnagrafica } from "~/forms/FormProfilo_Anagrafica"; import type { NextPageWithLayout } from "~/pages/_app"; import { useTranslation } from "~/providers/I18nProvider"; import { useEnforcedSession } from "~/providers/SessionProvider"; +import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const Dashboard: NextPageWithLayout = () => { @@ -114,6 +116,23 @@ const Dashboard: NextPageWithLayout = () => { }; export default Dashboard; +export const getServerSideProps = (async (context) => { + const access_token = context.req.cookies.access_token; + + const helpers = await TrpcAuthedFetchingIstance({ access_token }); + if (helpers) { + await helpers.trpc.users.getClientProfilo.prefetch({ id: undefined }); + return { + props: { + trpcState: helpers.trpc.dehydrate(), + }, + }; + } + return { + props: {}, + }; +}) satisfies GetServerSideProps; + Dashboard.getLayout = function getLayout(page) { return {page}; }; diff --git a/apps/infoalloggi/src/pages/auth/new-password-reset.tsx b/apps/infoalloggi/src/pages/auth/new-password-reset.tsx index 823403e..476746c 100644 --- a/apps/infoalloggi/src/pages/auth/new-password-reset.tsx +++ b/apps/infoalloggi/src/pages/auth/new-password-reset.tsx @@ -20,4 +20,9 @@ const NewPasswordResetPage: NextPage = () => { ); }; +export async function getServerSideProps() { + return { + props: {}, + }; +} export default NewPasswordResetPage; diff --git a/apps/infoalloggi/src/pages/prezzi.tsx b/apps/infoalloggi/src/pages/prezzi.tsx index d11171c..a4e3fd1 100644 --- a/apps/infoalloggi/src/pages/prezzi.tsx +++ b/apps/infoalloggi/src/pages/prezzi.tsx @@ -11,6 +11,7 @@ import { Status500 } from "~/components/status-page"; import { Separator } from "~/components/ui/separator"; import { useTranslation } from "~/providers/I18nProvider"; import TipologiaPosizioneEnum from "~/schemas/public/TipologiaPosizioneEnum"; +import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const Prezzi: NextPage = () => { @@ -191,4 +192,14 @@ const Prezzi: NextPage = () => { ); }; +export async function getServerSideProps() { + const helper = generateSSGHelper(); + await helper.prezziario.getPrezziPerTipologiaAll.fetch(); + return { + props: { + trpcState: helper.dehydrate(), + }, + }; +} + export default Prezzi; diff --git a/apps/infoalloggi/src/pages/privacy-policy.tsx b/apps/infoalloggi/src/pages/privacy-policy.tsx index beecb7e..c21a221 100644 --- a/apps/infoalloggi/src/pages/privacy-policy.tsx +++ b/apps/infoalloggi/src/pages/privacy-policy.tsx @@ -1,7 +1,8 @@ -import type { NextPage } from "next"; +import type { GetServerSideProps, NextPage } from "next"; import Head from "next/head"; import { useTranslation } from "~/providers/I18nProvider"; import type { TestiEStringheStingaId } from "~/schemas/public/TestiEStringhe"; +import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const PrivacyPolicy: NextPage = () => { @@ -31,4 +32,19 @@ const PrivacyPolicy: NextPage = () => { ); }; +export const getServerSideProps = (async (context) => { + const locale = context.locale || "it"; + const key = locale === "en" ? "PRIVACY_POLICY_ENG" : "PRIVACY_POLICY"; + const helpers = generateSSGHelper(); + + await helpers.settings.getStringa.prefetch({ + stringaId: key as TestiEStringheStingaId, + }); + return { + props: { + trpcState: helpers.dehydrate(), + }, + }; +}) satisfies GetServerSideProps; + export default PrivacyPolicy; diff --git a/apps/infoalloggi/src/pages/termini-condizioni.tsx b/apps/infoalloggi/src/pages/termini-condizioni.tsx index f6fe72e..ef6c6b0 100644 --- a/apps/infoalloggi/src/pages/termini-condizioni.tsx +++ b/apps/infoalloggi/src/pages/termini-condizioni.tsx @@ -1,7 +1,8 @@ -import type { NextPage } from "next"; +import type { GetServerSideProps, NextPage } from "next"; import Head from "next/head"; import { useTranslation } from "~/providers/I18nProvider"; import type { TestiEStringheStingaId } from "~/schemas/public/TestiEStringhe"; +import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; const Termini_Condizioni: NextPage = () => { @@ -30,4 +31,19 @@ const Termini_Condizioni: NextPage = () => { ); }; +export const getServerSideProps = (async (context) => { + const locale = context.locale || "it"; + const key = locale === "en" ? "TERMINI_CONDIZIONI_ENG" : "TERMINI_CONDIZIONI"; + const helpers = generateSSGHelper(); + + await helpers.settings.getStringa.prefetch({ + stringaId: key as TestiEStringheStingaId, + }); + return { + props: { + trpcState: helpers.dehydrate(), + }, + }; +}) satisfies GetServerSideProps; + export default Termini_Condizioni; diff --git a/apps/infoalloggi/src/server/api/root.ts b/apps/infoalloggi/src/server/api/root.ts index 38adc61..65503bc 100644 --- a/apps/infoalloggi/src/server/api/root.ts +++ b/apps/infoalloggi/src/server/api/root.ts @@ -21,6 +21,8 @@ import { usersRouter } from "~/server/api/routers/users"; import { createTRPCRouter } from "~/server/api/trpc"; import { syncRouter } from "./routers/sync"; +//import { lazy } from '@trpc/server'; + export const appRouter = createTRPCRouter({ annunci: annunciRouter, auth: authRouter, diff --git a/apps/infoalloggi/src/server/api/routers/users.ts b/apps/infoalloggi/src/server/api/routers/users.ts index 708337f..8343297 100644 --- a/apps/infoalloggi/src/server/api/routers/users.ts +++ b/apps/infoalloggi/src/server/api/routers/users.ts @@ -4,7 +4,6 @@ import { adminProcedure, createTRPCRouter, protectedProcedure, - publicProcedure, } from "~/server/api/trpc"; import { blockUserHandler, @@ -93,7 +92,7 @@ export const usersRouter = createTRPCRouter({ return query; }), - getUsersWChatInfo: publicProcedure.query(async () => { + getUsersWChatInfo: adminProcedure.query(async () => { return await getUsersWithChatInfoHandler({ db }); }), });