add: NEXT_PUBLIC_STOREFRONT_URL and NEXT_PUBLIC_HOMEPAGE_URL. Remove NEXT_PUBLIC_MARKETPLACE_URL.
Build & Deploy / Build & Push Docker Image (push) Failing after 1m5s
Build & Deploy / Deploy to VPS (push) Has been skipped
Test / Type Check (all packages) (push) Failing after 32s
Test / API Unit Tests (push) Has been skipped
Test / Homepage Unit Tests (push) Has been skipped
Test / Storefront Unit Tests (push) Has been skipped
Test / Admin Unit Tests (push) Has been skipped
Test / Dashboard Unit Tests (push) Has been skipped
Test / API Integration Tests (push) Has been skipped
Build & Deploy / Build & Push Docker Image (push) Failing after 1m5s
Build & Deploy / Deploy to VPS (push) Has been skipped
Test / Type Check (all packages) (push) Failing after 32s
Test / API Unit Tests (push) Has been skipped
Test / Homepage Unit Tests (push) Has been skipped
Test / Storefront Unit Tests (push) Has been skipped
Test / Admin Unit Tests (push) Has been skipped
Test / Dashboard Unit Tests (push) Has been skipped
Test / API Integration Tests (push) Has been skipped
This commit is contained in:
@@ -7,7 +7,7 @@ import {
|
||||
type DashboardLanguage,
|
||||
useDashboardI18n,
|
||||
} from '@/components/I18nProvider'
|
||||
import { marketplaceUrl } from '@/lib/urls'
|
||||
import { storefrontUrl } from '@/lib/urls'
|
||||
|
||||
type FooterItem = {
|
||||
label: string
|
||||
@@ -15,9 +15,9 @@ type FooterItem = {
|
||||
}
|
||||
|
||||
const appPrivacyHref = {
|
||||
en: `${marketplaceUrl}/app-privacy-en`,
|
||||
fr: `${marketplaceUrl}/app-privacy-fr`,
|
||||
ar: `${marketplaceUrl}/app-privacy-ar`,
|
||||
en: `${storefrontUrl}/app-privacy-en`,
|
||||
fr: `${storefrontUrl}/app-privacy-fr`,
|
||||
ar: `${storefrontUrl}/app-privacy-ar`,
|
||||
} as const
|
||||
|
||||
const localeOptions: Array<{ value: DashboardLanguage; label: string; flag: string }> = [
|
||||
@@ -36,17 +36,17 @@ function getFooterContent(language: DashboardLanguage): {
|
||||
case 'fr':
|
||||
return {
|
||||
primary: [
|
||||
{ label: 'À propos de nous', href: `${marketplaceUrl}/footer/about-us` },
|
||||
{ label: 'Conditions d’utilisation', href: `${marketplaceUrl}/footer/terms-of-service` },
|
||||
{ label: 'Sécurité', href: `${marketplaceUrl}/footer/security` },
|
||||
{ label: 'Conformité', href: `${marketplaceUrl}/footer/compliance` },
|
||||
{ label: 'À propos de nous', href: `${storefrontUrl}/footer/about-us` },
|
||||
{ label: 'Conditions d’utilisation', href: `${storefrontUrl}/footer/terms-of-service` },
|
||||
{ label: 'Sécurité', href: `${storefrontUrl}/footer/security` },
|
||||
{ label: 'Conformité', href: `${storefrontUrl}/footer/compliance` },
|
||||
{ label: 'Politique de confidentialité', href: appPrivacyHref.fr },
|
||||
{ label: 'Politique relative aux cookies', href: `${marketplaceUrl}/footer/cookie-policy` },
|
||||
{ label: 'Politique relative aux cookies', href: `${storefrontUrl}/footer/cookie-policy` },
|
||||
],
|
||||
secondary: [
|
||||
{ label: 'Newsletter', href: `${marketplaceUrl}/footer/newsletter` },
|
||||
{ label: 'Contacter les ventes', href: `${marketplaceUrl}/footer/contact-sales` },
|
||||
{ label: 'Conditions générales', href: `${marketplaceUrl}/footer/general-conditions` },
|
||||
{ label: 'Newsletter', href: `${storefrontUrl}/footer/newsletter` },
|
||||
{ label: 'Contacter les ventes', href: `${storefrontUrl}/footer/contact-sales` },
|
||||
{ label: 'Conditions générales', href: `${storefrontUrl}/footer/general-conditions` },
|
||||
],
|
||||
localeLabel: 'Europe (French)',
|
||||
rightsLabel: 'Tous droits réservés.',
|
||||
@@ -54,17 +54,17 @@ function getFooterContent(language: DashboardLanguage): {
|
||||
case 'ar':
|
||||
return {
|
||||
primary: [
|
||||
{ label: 'من نحن', href: `${marketplaceUrl}/footer/about-us` },
|
||||
{ label: 'شروط الاستخدام', href: `${marketplaceUrl}/footer/terms-of-service` },
|
||||
{ label: 'الأمان', href: `${marketplaceUrl}/footer/security` },
|
||||
{ label: 'الامتثال', href: `${marketplaceUrl}/footer/compliance` },
|
||||
{ label: 'من نحن', href: `${storefrontUrl}/footer/about-us` },
|
||||
{ label: 'شروط الاستخدام', href: `${storefrontUrl}/footer/terms-of-service` },
|
||||
{ label: 'الأمان', href: `${storefrontUrl}/footer/security` },
|
||||
{ label: 'الامتثال', href: `${storefrontUrl}/footer/compliance` },
|
||||
{ label: 'سياسة الخصوصية', href: appPrivacyHref.ar },
|
||||
{ label: 'سياسة ملفات تعريف الارتباط', href: `${marketplaceUrl}/footer/cookie-policy` },
|
||||
{ label: 'سياسة ملفات تعريف الارتباط', href: `${storefrontUrl}/footer/cookie-policy` },
|
||||
],
|
||||
secondary: [
|
||||
{ label: 'النشرة الإخبارية', href: `${marketplaceUrl}/footer/newsletter` },
|
||||
{ label: 'تواصل مع المبيعات', href: `${marketplaceUrl}/footer/contact-sales` },
|
||||
{ label: 'الشروط العامة', href: `${marketplaceUrl}/footer/general-conditions` },
|
||||
{ label: 'النشرة الإخبارية', href: `${storefrontUrl}/footer/newsletter` },
|
||||
{ label: 'تواصل مع المبيعات', href: `${storefrontUrl}/footer/contact-sales` },
|
||||
{ label: 'الشروط العامة', href: `${storefrontUrl}/footer/general-conditions` },
|
||||
],
|
||||
localeLabel: 'North Africa (Arabic)',
|
||||
rightsLabel: 'جميع الحقوق محفوظة.',
|
||||
@@ -73,17 +73,17 @@ function getFooterContent(language: DashboardLanguage): {
|
||||
default:
|
||||
return {
|
||||
primary: [
|
||||
{ label: 'About Us', href: `${marketplaceUrl}/footer/about-us` },
|
||||
{ label: 'Terms of Service', href: `${marketplaceUrl}/footer/terms-of-service` },
|
||||
{ label: 'Security', href: `${marketplaceUrl}/footer/security` },
|
||||
{ label: 'Compliance', href: `${marketplaceUrl}/footer/compliance` },
|
||||
{ label: 'About Us', href: `${storefrontUrl}/footer/about-us` },
|
||||
{ label: 'Terms of Service', href: `${storefrontUrl}/footer/terms-of-service` },
|
||||
{ label: 'Security', href: `${storefrontUrl}/footer/security` },
|
||||
{ label: 'Compliance', href: `${storefrontUrl}/footer/compliance` },
|
||||
{ label: 'Privacy Policy', href: appPrivacyHref.en },
|
||||
{ label: 'Cookie Policy', href: `${marketplaceUrl}/footer/cookie-policy` },
|
||||
{ label: 'Cookie Policy', href: `${storefrontUrl}/footer/cookie-policy` },
|
||||
],
|
||||
secondary: [
|
||||
{ label: 'Newsletter', href: `${marketplaceUrl}/footer/newsletter` },
|
||||
{ label: 'Contact Sales', href: `${marketplaceUrl}/footer/contact-sales` },
|
||||
{ label: 'General Conditions', href: `${marketplaceUrl}/footer/general-conditions` },
|
||||
{ label: 'Newsletter', href: `${storefrontUrl}/footer/newsletter` },
|
||||
{ label: 'Contact Sales', href: `${storefrontUrl}/footer/contact-sales` },
|
||||
{ label: 'General Conditions', href: `${storefrontUrl}/footer/general-conditions` },
|
||||
],
|
||||
localeLabel: 'Global (English)',
|
||||
rightsLabel: 'All rights reserved.',
|
||||
|
||||
@@ -4,7 +4,7 @@ import { ChevronDown } from "lucide-react";
|
||||
import Image from "next/image";
|
||||
import { useEffect, useRef, useState } from "react";
|
||||
import { useDashboardI18n } from "@/components/I18nProvider";
|
||||
import { marketplaceUrl } from "@/lib/urls";
|
||||
import { storefrontUrl } from "@/lib/urls";
|
||||
|
||||
const BRAND_LOGO_SRC = "/dashboard/rentaldrivego.png";
|
||||
|
||||
@@ -84,16 +84,16 @@ export default function PublicHeader({
|
||||
setThemeMenuOpen((open) => !open);
|
||||
}
|
||||
|
||||
const signInHref = `${marketplaceUrl}/${language}#signin`;
|
||||
const signInHref = `${storefrontUrl}/${language}#signin`;
|
||||
|
||||
const signUpHref = `${marketplaceUrl}/${language}#demo`;
|
||||
const signUpHref = `${storefrontUrl}/${language}#demo`;
|
||||
|
||||
return (
|
||||
<header className="sticky top-0 z-50 border-b border-stone-200/80 bg-white/78 backdrop-blur-xl shadow-[0_10px_30px_rgba(15,23,42,0.08)] transition-colors dark:border-blue-900 dark:bg-blue-950/76 dark:shadow-[0_10px_30px_rgba(0,0,0,0.32)]">
|
||||
<div className="mx-auto flex min-h-14 max-w-7xl flex-col gap-1.5 px-4 py-1.5 sm:px-6 lg:flex-row lg:items-center lg:justify-between lg:gap-3 lg:px-8 lg:py-2">
|
||||
<div className="flex items-center justify-between gap-3">
|
||||
<a
|
||||
href={`${marketplaceUrl}/${language}`}
|
||||
href={`${storefrontUrl}/${language}`}
|
||||
className="flex items-center gap-1.5 text-[11px] font-bold uppercase tracking-[0.14em] text-stone-900 no-underline sm:text-sm sm:tracking-[0.2em] dark:text-stone-100"
|
||||
aria-label="RentalDriveGo home"
|
||||
>
|
||||
|
||||
@@ -24,7 +24,7 @@ import {
|
||||
AlertTriangle,
|
||||
} from 'lucide-react'
|
||||
import { DashboardLanguageSwitcher, DashboardThemeSwitcher, useDashboardI18n } from '@/components/I18nProvider'
|
||||
import { marketplaceUrl } from '@/lib/urls'
|
||||
import { storefrontUrl } from '@/lib/urls'
|
||||
import { EMPLOYEE_PROFILE_KEY, apiFetch } from '@/lib/api'
|
||||
import { toDashboardAppPath } from '@/lib/dashboardPaths'
|
||||
import { SHARED_LANGUAGE_KEY, readCurrentUserScopedPreference } from '@/lib/preferences'
|
||||
@@ -351,7 +351,7 @@ export default function Sidebar() {
|
||||
void fetch('/dashboard/api/v1/auth/employee/logout', { method: 'POST', credentials: 'include' })
|
||||
window.dispatchEvent(new CustomEvent('rentaldrivego:auth-changed'))
|
||||
notifyParent({ type: 'rentaldrivego:employee-logout' })
|
||||
window.location.href = marketplaceUrl
|
||||
window.location.href = storefrontUrl
|
||||
}
|
||||
|
||||
return (
|
||||
@@ -388,7 +388,7 @@ export default function Sidebar() {
|
||||
].join(' ')}
|
||||
>
|
||||
<a
|
||||
href={marketplaceUrl}
|
||||
href={storefrontUrl}
|
||||
target="_top"
|
||||
className="flex items-center gap-3 border-b border-blue-200/70 px-5 py-5 transition-colors dark:border-blue-400/10"
|
||||
>
|
||||
|
||||
Reference in New Issue
Block a user