Compare commits
20 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| caa70bc75f | |||
| 151ee62438 | |||
| d26aebb4ee | |||
| c17aadc9a8 | |||
| 8e5f7f01f2 | |||
| b5fb70d8a8 | |||
| c114273200 | |||
| 867ebffeba | |||
| 9943b207b3 | |||
| 460ef42016 | |||
| c2ba0eab80 | |||
| 7e7b78eec6 | |||
| 25128b1f70 | |||
| 1dfa01c181 | |||
| eb599bde4e | |||
| 2003e868f9 | |||
| b0af2a8616 | |||
| e8132b1aec | |||
| 1c71f1e70b | |||
| 1d2e6b659c |
@@ -4,7 +4,6 @@ import { Inter } from "next/font/google";
|
||||
import "./globals.css";
|
||||
import "@/lib/gsap-setup";
|
||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
||||
import Tag from "@/tag/Tag";
|
||||
import { getVisualEditScript } from "@/utils/visual-edit-script";
|
||||
import { Archivo } from "next/font/google";
|
||||
|
||||
@@ -35,7 +34,7 @@ export default function RootLayout({
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<ServiceWrapper>
|
||||
<body className={`${archivo.variable} antialiased`}>
|
||||
<Tag />
|
||||
|
||||
{children}
|
||||
<script
|
||||
dangerouslySetInnerHTML={{
|
||||
|
||||
278
src/app/page.tsx
278
src/app/page.tsx
@@ -4,221 +4,95 @@ import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import ReactLenis from "lenis/react";
|
||||
import FooterBase from '@/components/sections/footer/FooterBase';
|
||||
import HeroLogoBillboard from '@/components/sections/hero/HeroLogoBillboard';
|
||||
import MetricCardOne from '@/components/sections/metrics/MetricCardOne';
|
||||
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
|
||||
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
||||
import TeamCardOne from '@/components/sections/team/TeamCardOne';
|
||||
import TextAbout from '@/components/sections/about/TextAbout';
|
||||
import { ArrowDown, Layers, Shield, Zap } from "lucide-react";
|
||||
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
||||
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
|
||||
|
||||
export default function LandingPage() {
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="hover-magnetic"
|
||||
defaultTextAnimation="entrance-slide"
|
||||
borderRadius="soft"
|
||||
contentWidth="small"
|
||||
sizing="largeSmall"
|
||||
background="none"
|
||||
cardStyle="soft-shadow"
|
||||
primaryButtonStyle="radial-glow"
|
||||
secondaryButtonStyle="radial-glow"
|
||||
headingFontWeight="medium"
|
||||
defaultButtonVariant="hover-magnetic"
|
||||
defaultTextAnimation="reveal-blur"
|
||||
borderRadius="soft"
|
||||
contentWidth="mediumLarge"
|
||||
sizing="large"
|
||||
background="none"
|
||||
cardStyle="outline"
|
||||
primaryButtonStyle="flat"
|
||||
secondaryButtonStyle="solid"
|
||||
headingFontWeight="medium"
|
||||
>
|
||||
<ReactLenis root>
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarStyleApple
|
||||
navItems={[
|
||||
{
|
||||
name: "Home",
|
||||
id: "/",
|
||||
},
|
||||
{
|
||||
name: "Vehicles",
|
||||
id: "/vehicles",
|
||||
},
|
||||
{
|
||||
name: "Configurator",
|
||||
id: "/configurator",
|
||||
},
|
||||
{
|
||||
name: "About",
|
||||
id: "/about",
|
||||
},
|
||||
]}
|
||||
brandName="VALOR PERFORMANCE"
|
||||
/>
|
||||
</div>
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarStyleApple
|
||||
navItems={[
|
||||
{ name: "Home", id: "/" },
|
||||
{ name: "Vehicles", id: "/vehicles" },
|
||||
{ name: "Valkyrion", id: "/valkyrion" },
|
||||
{ name: "EON GT", id: "/eon-gt" },
|
||||
{ name: "Configurator", id: "/configurator" },
|
||||
{ name: "About", id: "/about" },
|
||||
]}
|
||||
brandName="VALOR PERFORMANCE"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="hero" data-section="hero">
|
||||
<HeroLogoBillboard
|
||||
background={{
|
||||
variant: "canvas-reveal",
|
||||
}}
|
||||
logoText="VALOR PERFORMANCE"
|
||||
description="Performance-Fahrzeuge, Umbauten und eigene Prototypen. Entwickelt ohne Rücksicht auf Konventionen."
|
||||
buttons={[
|
||||
{
|
||||
text: "Zum Konfigurator",
|
||||
href: "/configurator",
|
||||
},
|
||||
{
|
||||
text: "Valor Vehicles entdecken",
|
||||
href: "/vehicles",
|
||||
},
|
||||
]}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/young-man-closing-trunk_23-2148321895.jpg?_wi=1"
|
||||
imageAlt="Valor Engineering Performance Prototype"
|
||||
mediaAnimation="slide-up"
|
||||
/>
|
||||
</div>
|
||||
<div id="hero" data-section="hero">
|
||||
<HeroLogoBillboard
|
||||
logoText="ENGINEERED WITHOUT COMPROMISE"
|
||||
description="Built for those who demand control"
|
||||
buttons={[]}
|
||||
mediaAnimation="none"
|
||||
background={{ variant: "plain" }}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="about" data-section="about">
|
||||
<TextAbout
|
||||
useInvertedBackground={false}
|
||||
title="THE OATH"
|
||||
buttons={[
|
||||
{
|
||||
text: "Unsere Philosophie",
|
||||
href: "/about",
|
||||
},
|
||||
]}
|
||||
buttonAnimation="slide-up"
|
||||
/>
|
||||
</div>
|
||||
<div id="oath" data-section="oath">
|
||||
<TextAbout
|
||||
title="THE OATH"
|
||||
useInvertedBackground={false}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="product" data-section="product">
|
||||
<ProductCardThree
|
||||
animationType="slide-up"
|
||||
textboxLayout="split"
|
||||
gridVariant="two-columns-alternating-heights"
|
||||
useInvertedBackground={true}
|
||||
products={[
|
||||
{
|
||||
id: "1",
|
||||
name: "Valkyrion V12-HR",
|
||||
price: "Prototype",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/metallic-color-sport-car-bridge-sunset_114579-4083.jpg?_wi=1",
|
||||
},
|
||||
{
|
||||
id: "2",
|
||||
name: "Valor EON GT",
|
||||
price: "Concept",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/car-background-design_1268-550.jpg?_wi=1",
|
||||
},
|
||||
{
|
||||
id: "3",
|
||||
name: "Custom Builds",
|
||||
price: "Inquiry",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/diverse-business-leaders-sharing-their-expertise-new-collaboration-opportunity-discussing_482257-132123.jpg?_wi=1",
|
||||
},
|
||||
]}
|
||||
title="VALOR VEHICLES"
|
||||
description="Unsere Fahrzeuge folgen keiner Norm. Sie entstehen aus Überzeugung."
|
||||
/>
|
||||
</div>
|
||||
<div id="vehicles" data-section="vehicles">
|
||||
<ProductCardThree
|
||||
title="VEHICLES"
|
||||
description="Performance defined."
|
||||
animationType="none"
|
||||
gridVariant="three-columns-all-equal-width"
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
products={[
|
||||
{ id: "v1", name: "Valkyrion", price: "", imageSrc: "https://images.unsplash.com/photo-1542362567-b07e542567dc" },
|
||||
{ id: "v2", name: "EON GT", price: "", imageSrc: "https://images.unsplash.com/photo-1580273916550-e323be2ae537" },
|
||||
{ id: "v3", name: "Custom Builds", price: "", imageSrc: "https://images.unsplash.com/photo-1592198084033-aade902d1aae" }
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="metric" data-section="metric">
|
||||
<MetricCardOne
|
||||
animationType="slide-up"
|
||||
textboxLayout="default"
|
||||
gridVariant="uniform-all-items-equal"
|
||||
useInvertedBackground={false}
|
||||
title="Performance at Scale"
|
||||
description="Engineering-Benchmarks ohne Kompromisse."
|
||||
metrics={[
|
||||
{
|
||||
id: "m1",
|
||||
value: "1.580",
|
||||
title: "Horsepower",
|
||||
description: "Peak output achieved.",
|
||||
icon: Zap,
|
||||
},
|
||||
{
|
||||
id: "m2",
|
||||
value: "2.6t",
|
||||
title: "Downforce",
|
||||
description: "Maximum aerodynamic load.",
|
||||
icon: ArrowDown,
|
||||
},
|
||||
{
|
||||
id: "m3",
|
||||
value: "100%",
|
||||
title: "Precision",
|
||||
description: "Engineering standards.",
|
||||
icon: Shield,
|
||||
},
|
||||
{
|
||||
id: "m4",
|
||||
value: "22",
|
||||
title: "Concepts",
|
||||
description: "Unique development platforms.",
|
||||
icon: Layers,
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
<div id="build" data-section="build">
|
||||
<TextAbout
|
||||
title="BUILD YOUR PERFORMANCE"
|
||||
buttons={[{ text: "Begin Build", href: "/configurator" }]}
|
||||
useInvertedBackground={true}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="team" data-section="team">
|
||||
<TeamCardOne
|
||||
animationType="slide-up"
|
||||
textboxLayout="default"
|
||||
gridVariant="uniform-all-items-equal"
|
||||
useInvertedBackground={false}
|
||||
title="The Engineering Team"
|
||||
description="Hinter jeder Komponente steht pure Leidenschaft."
|
||||
members={[
|
||||
{
|
||||
id: "p1",
|
||||
name: "Erik Valor",
|
||||
role: "Lead Engineer",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/diverse-business-leaders-sharing-their-expertise-new-collaboration-opportunity-discussing_482257-132123.jpg?_wi=2",
|
||||
},
|
||||
{
|
||||
id: "p2",
|
||||
name: "Dr. Sarah Weiss",
|
||||
role: "Aerodynamics",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-man-closing-trunk_23-2148321895.jpg?_wi=2",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
<div id="about" data-section="about">
|
||||
<TextAbout
|
||||
title="ABOUT VALOR"
|
||||
useInvertedBackground={false}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterBase
|
||||
columns={[
|
||||
{
|
||||
title: "Models",
|
||||
items: [
|
||||
{
|
||||
label: "Valkyrion",
|
||||
href: "/vehicles",
|
||||
},
|
||||
{
|
||||
label: "EON GT",
|
||||
href: "/vehicles",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Brand",
|
||||
items: [
|
||||
{
|
||||
label: "About Us",
|
||||
href: "/about",
|
||||
},
|
||||
{
|
||||
label: "The Oath",
|
||||
href: "/about",
|
||||
},
|
||||
],
|
||||
},
|
||||
]}
|
||||
logoText="VALOR PERFORMANCE"
|
||||
copyrightText="Private Development Project"
|
||||
/>
|
||||
</div>
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterBase
|
||||
columns={[]}
|
||||
logoText="VALOR PERFORMANCE"
|
||||
copyrightText="© 2025 Valor Performance"
|
||||
/>
|
||||
</div>
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -10,15 +10,15 @@
|
||||
--accent: #ffffff;
|
||||
--background-accent: #ffffff; */
|
||||
|
||||
--background: #000000;
|
||||
--card: #0c0c0c;
|
||||
--background: #0a0a0a;
|
||||
--card: #1a1a1a;
|
||||
--foreground: #ffffff;
|
||||
--primary-cta: #cee7ff;
|
||||
--primary-cta: #e6e6e6;
|
||||
--primary-cta-text: #000000;
|
||||
--secondary-cta: #000000;
|
||||
--secondary-cta: #1a1a1a;
|
||||
--secondary-cta-text: #ffffff;
|
||||
--accent: #535353;
|
||||
--background-accent: #CEE7FF;
|
||||
--accent: #333333;
|
||||
--background-accent: #1a1a1a;
|
||||
|
||||
/* text sizing - set by ThemeProvider */
|
||||
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
||||
|
||||
39
src/app/vehicles/eon-gt/page.tsx
Normal file
39
src/app/vehicles/eon-gt/page.tsx
Normal file
@@ -0,0 +1,39 @@
|
||||
"use client";
|
||||
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import ReactLenis from "lenis/react";
|
||||
import FooterBase from '@/components/sections/footer/FooterBase';
|
||||
import TextAbout from '@/components/sections/about/TextAbout';
|
||||
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
|
||||
|
||||
export default function EonGtPage() {
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="hover-magnetic"
|
||||
defaultTextAnimation="reveal-blur"
|
||||
borderRadius="soft"
|
||||
contentWidth="mediumLarge"
|
||||
sizing="large"
|
||||
background="none"
|
||||
cardStyle="outline"
|
||||
primaryButtonStyle="flat"
|
||||
secondaryButtonStyle="solid"
|
||||
headingFontWeight="medium"
|
||||
>
|
||||
<ReactLenis root>
|
||||
<NavbarStyleApple
|
||||
navItems={[{ name: "Home", id: "/" }, { name: "Vehicles", id: "/vehicles" }, { name: "Configurator", id: "/configurator" }, { name: "About", id: "/about" }]}
|
||||
brandName="VALOR PERFORMANCE"
|
||||
/>
|
||||
<div className="pt-32 pb-20">
|
||||
<TextAbout
|
||||
title="EON GT"
|
||||
useInvertedBackground={false}
|
||||
buttons={[{ text: "Configure Now", href: "/configurator" }]}
|
||||
/>
|
||||
</div>
|
||||
<FooterBase columns={[]} logoText="VALOR PERFORMANCE" copyrightText="© 2025 Valor Performance" />
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
@@ -2,138 +2,45 @@
|
||||
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import ReactLenis from "lenis/react";
|
||||
import FeatureCardSixteen from '@/components/sections/feature/FeatureCardSixteen';
|
||||
import FooterBase from '@/components/sections/footer/FooterBase';
|
||||
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
||||
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
|
||||
import ProductCardOne from '@/components/sections/product/ProductCardOne';
|
||||
|
||||
export default function LandingPage() {
|
||||
export default function VehiclesPage() {
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="hover-magnetic"
|
||||
defaultTextAnimation="entrance-slide"
|
||||
borderRadius="soft"
|
||||
contentWidth="small"
|
||||
sizing="largeSmall"
|
||||
background="none"
|
||||
cardStyle="soft-shadow"
|
||||
primaryButtonStyle="radial-glow"
|
||||
secondaryButtonStyle="radial-glow"
|
||||
headingFontWeight="medium"
|
||||
defaultButtonVariant="hover-magnetic"
|
||||
defaultTextAnimation="reveal-blur"
|
||||
borderRadius="soft"
|
||||
contentWidth="mediumLarge"
|
||||
sizing="large"
|
||||
background="none"
|
||||
cardStyle="outline"
|
||||
primaryButtonStyle="flat"
|
||||
secondaryButtonStyle="solid"
|
||||
headingFontWeight="medium"
|
||||
>
|
||||
<ReactLenis root>
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarStyleApple
|
||||
navItems={[
|
||||
{
|
||||
name: "Home",
|
||||
id: "/",
|
||||
},
|
||||
{
|
||||
name: "Vehicles",
|
||||
id: "/vehicles",
|
||||
},
|
||||
{
|
||||
name: "Configurator",
|
||||
id: "/configurator",
|
||||
},
|
||||
{
|
||||
name: "About",
|
||||
id: "/about",
|
||||
},
|
||||
]}
|
||||
brandName="VALOR PERFORMANCE"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="feature" data-section="feature">
|
||||
<FeatureCardSixteen
|
||||
animationType="slide-up"
|
||||
textboxLayout="split"
|
||||
useInvertedBackground={false}
|
||||
negativeCard={{
|
||||
items: [
|
||||
"Not for sale",
|
||||
"Track only",
|
||||
"Extreme setup",
|
||||
"Prohibited road use",
|
||||
"Specialized logistics",
|
||||
],
|
||||
}}
|
||||
positiveCard={{
|
||||
items: [
|
||||
"1.580 PS",
|
||||
"2.600 kg Downforce",
|
||||
"Pure Engineering",
|
||||
"Advanced Metallurgy",
|
||||
"Precision Tuning",
|
||||
],
|
||||
}}
|
||||
title="VALOR VEHICLES"
|
||||
description="Valor Vehicles sind eigenständig entwickelte Hochleistungsfahrzeuge."
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="product" data-section="product">
|
||||
<ProductCardOne
|
||||
animationType="slide-up"
|
||||
textboxLayout="default"
|
||||
gridVariant="uniform-all-items-equal"
|
||||
useInvertedBackground={false}
|
||||
title="Current Fleet"
|
||||
description="Entdecke unsere aktuellen Prototypen."
|
||||
products={[
|
||||
{
|
||||
id: "v1",
|
||||
name: "Valkyrion",
|
||||
price: "POA",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/metallic-color-sport-car-bridge-sunset_114579-4083.jpg?_wi=2",
|
||||
},
|
||||
{
|
||||
id: "v2",
|
||||
name: "EON GT",
|
||||
price: "POA",
|
||||
imageSrc: "http://img.b2bpic.net/free-vector/car-background-design_1268-550.jpg?_wi=2",
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterBase
|
||||
columns={[
|
||||
{
|
||||
title: "Models",
|
||||
items: [
|
||||
{
|
||||
label: "Valkyrion",
|
||||
href: "/vehicles",
|
||||
},
|
||||
{
|
||||
label: "EON GT",
|
||||
href: "/vehicles",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Brand",
|
||||
items: [
|
||||
{
|
||||
label: "About Us",
|
||||
href: "/about",
|
||||
},
|
||||
{
|
||||
label: "The Oath",
|
||||
href: "/about",
|
||||
},
|
||||
],
|
||||
},
|
||||
]}
|
||||
logoText="VALOR PERFORMANCE"
|
||||
copyrightText="Private Development Project"
|
||||
/>
|
||||
</div>
|
||||
<NavbarStyleApple
|
||||
navItems={[{ name: "Home", id: "/" }, { name: "Vehicles", id: "/vehicles" }, { name: "Configurator", id: "/configurator" }, { name: "About", id: "/about" }]}
|
||||
brandName="VALOR PERFORMANCE"
|
||||
/>
|
||||
<div className="pt-32 pb-20">
|
||||
<ProductCardThree
|
||||
title="OUR VEHICLES"
|
||||
description="Engineered for ultimate performance."
|
||||
animationType="slide-up"
|
||||
gridVariant="three-columns-all-equal-width"
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
products={[
|
||||
{ id: "v1", name: "Valkyrion", price: "$250,000", imageSrc: "https://images.unsplash.com/photo-1542362567-b07e542567dc", priceButtonProps: { href: "/vehicles/valkyrion" } },
|
||||
{ id: "v2", name: "EON GT", price: "$180,000", imageSrc: "https://images.unsplash.com/photo-1580273916550-e323be2ae537", priceButtonProps: { href: "/vehicles/eon-gt" } }
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
<FooterBase columns={[]} logoText="VALOR PERFORMANCE" copyrightText="© 2025 Valor Performance" />
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
}
|
||||
39
src/app/vehicles/valkyrion/page.tsx
Normal file
39
src/app/vehicles/valkyrion/page.tsx
Normal file
@@ -0,0 +1,39 @@
|
||||
"use client";
|
||||
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import ReactLenis from "lenis/react";
|
||||
import FooterBase from '@/components/sections/footer/FooterBase';
|
||||
import TextAbout from '@/components/sections/about/TextAbout';
|
||||
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
|
||||
|
||||
export default function ValkyrionPage() {
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="hover-magnetic"
|
||||
defaultTextAnimation="reveal-blur"
|
||||
borderRadius="soft"
|
||||
contentWidth="mediumLarge"
|
||||
sizing="large"
|
||||
background="none"
|
||||
cardStyle="outline"
|
||||
primaryButtonStyle="flat"
|
||||
secondaryButtonStyle="solid"
|
||||
headingFontWeight="medium"
|
||||
>
|
||||
<ReactLenis root>
|
||||
<NavbarStyleApple
|
||||
navItems={[{ name: "Home", id: "/" }, { name: "Vehicles", id: "/vehicles" }, { name: "Configurator", id: "/configurator" }, { name: "About", id: "/about" }]}
|
||||
brandName="VALOR PERFORMANCE"
|
||||
/>
|
||||
<div className="pt-32 pb-20">
|
||||
<TextAbout
|
||||
title="VALKYRION"
|
||||
useInvertedBackground={false}
|
||||
buttons={[{ text: "Configure Now", href: "/configurator" }]}
|
||||
/>
|
||||
</div>
|
||||
<FooterBase columns={[]} logoText="VALOR PERFORMANCE" copyrightText="© 2025 Valor Performance" />
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user